Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Коломієць_диплом2-4.docx
Скачиваний:
2
Добавлен:
17.09.2019
Размер:
543.14 Кб
Скачать

3.2. Реалізація інтерогативної машини

Для реалізації інтерогативної машини нам необхідно створити базу даних для зберігання інформації.

Маючи онтологію, ми можемо судити про структуру бази даних. Перш за все, база даних повинна містити перелік класів, тобто таблицю, в якій будуть зберігатись назви класів. В нашій онтології маємо родо-видові зв’язки, тобто зв’язки «бути підкласом», тобто в базі даних повинна бути таблиця, яка реалізує ці зв’язки. Кожен клас характеризується певною властивістю, тобто база даних повинна мати таблицю у якій зберігаються всі властивості класів, а також таблицю, яка б зв’язувала назву класу з певною, притаманною лише йому властивістю.

Базу даних будемо реалізовувати, використовуючи MySQL, такий вибір надає базі даних універсальності та робить сумісною з найпоширенішими операційними системами.

Схема бази даних наведена на рис.3.1.

Рис. 3.1. Схема бази даних.

3.3. Опис алгоритму

Необхідно зазначити, що при проведенні діалогу з машиною, експерт повинен враховувати структуру онтології предметної області, а саме, рухатись від більш загальних понять до часткових, тобто назва підкласу не може бути введена раніше, ніж назви усіх його надкласів.

Діалоговий цикл:

  1. Мотивація питання;

  2. Формулювання питання та альтернативних відповідей (в разі необхідності);

  3. Передача питання партнеру (експерту);

  4. Отримання відповіді від партнера (експерта);

  5. Обробка відповіді та збереження інформації.

Необхідно зазначити, що наша машина для отримання необхідної інформації буде формулювати запитання типу «який?»[8].

Першим формулюється питання стосовно назви суперкласу (базового поняття). Далі машина формулює запитання стосовно властивостей суперкласу. Після того, як назва та властивості суперкласу визначені, машина переходить до запитань стосовно назви класу. Такі питання можуть задаватись безперервно, поки пасивний експертом не буде здійснений перехід до наступних типів питань, а саме, питань стосовно властивостей класів.

На наступному етапі будуть формулюватись запитання про властивості класів, назви яких були введені. Мотивацією для таких запитань служить відсутність в базі інформації про властивості того чи іншого класу. Необхідно враховувати, що підклас наслідує всі властивості свого надкласу, а тому немає необхідності повторного введення всіх властивостей надкласів. Дострокове припинення діалогу на цьому етапі призведе до неповної інформації про властивості класів.

Далі машина формулює питання про надклас (надкласи) класів. Ці запитання необхідні для визначення родо-видових зв’язків між класами. Кількість надкласів в загальному випадку (коли базових понять може бути кілька і при цьому вони не зв’язані між собою) може бути довільною, проте в нашій онтології вона не може бути меншою за одиницю.

Якщо попередні етапи проходили послідовно, то можна говорити про повну інформацію, отриману від експерта (звісно враховуючи число рівнів абстракції [9]). Тому машина переходить до формулювання визначень. Визначення формуються таким чином: спочатку виводиться назва надкласу (надкласів), а потім властивість, яка притаманна лише цьому класу та виокремлює його серед інших об’єктів надкласу.