Обратный метод логического дедуктивного вывода
Для решения задач в продукционной интеллектуальной системе существует два основных метода дедуктивного логического вывода: обратный и прямой. Может использоваться и комбинация этих двух методов.
При обратном логическом выводе процесс интерпретации правил начинается с правил, непосредственно приводящих к решению задачи. В них в правой части находятся заключения с фактами, являющимися решением (целевыми фактами). При интерпретации этих правил в процесс решения могут вовлекаться другие правила, результатом выполнения которых являются факты, участвующие в условиях конечных правил и т.д.
Метод обратного логического вывода можно применять тогда, когда необходимо минимизировать количество обращений к источнику данных (например, пользователю), исключив из рассмотрения заведомо ненужные для решения задачи факты.
В самом общем виде алгоритм обратного логического вывода, записанный на псевдокоде в виде функции, выглядит так (условие ограничено конъюнкцией элементарных условий).
функцияДоказана_Цель(Цель): boolean;Поместить Цель в стек целей.
покастек целей не пустциклВыбор цели из стека целей и назначение ее текущей.
Поиск множества правил, в правой части которых находится текущая цель (множества подходящих правил).
Считать, что Цель не доказана.
покамножество походящих правил не пустои Цель не доказана
цикл
Выбор из этого множества одного текущего правила с использованием определенной стратегии. Считать текущим элементарным условием первое.
покане проверены все элементарные условия правила и ненадо прервать проверку условия
цикл
еслив текущем элементарном условии участвуетфакт, встречающийся в правой части какого-то правила
то
еслине Доказана_Цель(Этот факт)тоНадо прервать проверку условия
конец_если иначе
Запросить информацию о факте. Проверить элементарное условие. еслиэлементарное условие истинното
Добавить факт в базу данных. Перейти к следующему элементарному Условию.
иначе
Надо прервать проверку условия.
конец_если конец_если конец_цикла еслиусловие правила истинното
Выполнить заключение. Исключить Цель из стека целей. Считать, что Цель доказана.
конец_если конец_цикла конец_цикла конец_функции.
Существует много различных стратегий выбора правила из подходящих. Наиболее простой и часто встречающейся стратегией является «первая попавшаяся». При этой стратегии решение задачи зависит от порядка расположения (перебора) правил в базе знаний.
Дата добавления: 2017-08-01; просмотров: 1285;