Главная arrow книги arrow Копия Глава 7. Логические агенты arrow Прямой и обратный логический вывод
Прямой и обратный логический вывод

Алгоритм обратного логического вывода, как указывает само его название, действует в обратном направлении от запроса. Если удается сразу же узнать, что высказывание, содержащееся в запросе д, является истинным, то не нужно выполнять никакой работы. В противном случае алгоритм находит те импликации в базе знаний, из которых следует g Если можно доказать, что все предпосылки одной из этих импликаций являются истинными (с помощью обратного логического вывода), то высказывание дтакже является истинным. Будучи применен к запросу Q, показанному на рис. 7.7, этот алгоритм будет проходить вниз по графу до тех пор, пока не достигнет множества известных фактов, которые образуют основу для доказательства. Разработку подробного алгоритма оставляем читателю в качестве упражнения; как и в случае алгоритма прямого логического вывода, эффективная реализация этого алгоритма выполняет свою работу за линейное время.

Обратный логический вывод представляет собой одну из форм рассуждения, направляемого целями. Такая форма является полезной при получении ответов на конкретные вопросы, наподобие следующих: "Что теперь мне следует делать?" и "Где же находятся мои ключи?" Зачастую стоимость обратного логического вывода намного меньше по сравнению со стоимостью, линейно зависящей от размера базы знаний, поскольку в этом процессе затрагиваются только факты, непосредственно относящиеся к делу. Вообще говоря, агент должен разделять работу между процессами прямого и обратного формирования рассуждений, ограничивая прямое формирование рассуждений выработкой фактов, которые, по всей вероятности, будут относиться к запросам, подлежащим решению с помощью обратного логического вывода.