Машина висновуванняМашина висно́вування — програма, яка робить логічні висновки з попередньо побудованої бази фактів і правил згідно з законами формальної логіки. Компоненти машини висновуванняПравила продукційної моделі не впорядковані. Кожне з них існує незалежно від інших правил. У зв'язку з цим потрібний спеціальний механізм, який керуватиме перебиранням правил. Такий механізм і є машиною висновування. Машина висновування є однією із складових експертної системи і своєю чергою складається з двох компонентів:
Інтерпретатор правил працює за таким алгоритмом:
Схематично процес інтерпретації правил зображено на рисунку: У цій схемі робота машини висновування залежить від стану бази знань і критерію вибору правил. Існує також варіант організації машини висновування, за якого враховується передісторія її роботи, тобто поведінка механізму виведення на попередніх ітераціях. Стратегії керування висновуваннямМашина висновування має вирішувати, як перебирати факти і правила бази знань, а також на підставі якого критерію слід вибирати правила з конфліктної множини. Відповідні рішення приймаються згідно з обраною стратегією керування висновування. Зазвичай основні складові цієї стратегії вбудовані в машину висновування і їх не можна змінити. Розробляючи стратегію керування висновуванням, слід вирішити такі питання:
Пряме і зворотне висновуванняУ системах з прямим висновуванням за відомими фактами відшукується факт, який з них випливає (див. мал. 2). Якщо такий факт вдається знайти, то він записується в базу фактів. Пряме висновування називають також висновуванням, керованим даними, або висновуванням, керованим посилками правил. Під час зворотного висновування спочатку висувається гіпотеза, а потім механізм висновування ніби повертається назад, переходячи до фактів і намагаючись знайти в базі фактів ті, які підтверджують гіпотезу (рис.2б). Якщо гіпотеза не підтверджується фактами з бази фактів, одна з її можливих посилок вважається гіпотезою, що деталізує початкову і є стосовно неї підціллю. Далі відшукуються факти, які могли б підтвердити дану підціль, тобто процес рекурсивно повторюється. Висновування цього типу називається також висновуванням, керованим цілями. Пошук вглиб та вширПід час пошуку вглиб черговою підціллю стає та, що відповідає детальнішому рівню опису задачі. Виконуючи пошук ушир, машина висновування спочатку спробує знайти розв'язок серед можливих варіантів одного рівня і потім, за необхідності, перейде на наступний рівень деталізації. ПроблемиПродукційна модель знімає обмеження, характерні для логіки, проте з нею пов'язані інші пробеми: нескінченні цикли, можлива суперечність знань і непрозорість поведінки машини висновування. If A then B; If B then C; If C then A. Суперечливі знання з'являються тоді, коли додавання нових правил призводить до суперечності тим фактам, які можна було отримати раніше. Непрозорість поведінки обумовлена тим, що немає жодних принципів, які б встановлювали порядок перегляду правил і їхнього застосування в тому випадку, коли може бути застосовано кілька правил. Унаслідок цього досить важко обробляти всі продукційні бази знань великого обсягу, оскільки навіть за умов коректності всіх наявних правил хибний порядок їхнього виконання може привести до помилок, які важко виявити. Семантичні мережі та фрейми, найчастіше використовуються у моделях, які підтримують структурні абстракції. Література
Див.також
|