Правила вывода. Прямой вывод. Достоинства и недостатки его использования.



Вывод, ведущий от исходных аксиом к целевому выражению называется прямым.

БП – База Правил есть набор правил, используемый как база знаний.

РП – Рабочая Память (или память для кратковременного хранения), в

ней хранятся предпосылки, касающиеся конкретных задач предметной области, и результаты выводов, полученных на их основании.

 Механизм вывода ( логического вывода) – использует правила в соответствии с содержанием РП

Способ получения логического вывода в продукционной системе, при котором предварительно записанные в РП данные дополняются путем применения правил из БП, называется прямым выводом.

Способ получения логического вывода в продукционной системе, при котором на основании фактов, требующих подтверждения на предмет использования в качестве заключения, исследуется возможность применения правила, пригодного для подтверждения, называется обратным выводом.

Наглядно результат прямого вывода по дереву вывода - Восходящий разбор английского предложения

Достоинства алгоритма восходящего разбора:

1. Наличие стандартного алгоритма вывода;

2. Возможность предсказать результат на любом этапе разработки программы;

3. Простота отладки правил (но не алгоритма вывода!);

4. Средняя сложность реализации в "процедурных" языках и языках логического программирования (Пролог).

Недостатки алгоритма:

1. Сложность реализации в алгоритме коэффициентов уверенности;

2. Время выполнения вывода растёт экспоненциально с ростом числа правил;

3. ("Неустранимый" недостаток данной цепочки рассуждений). При организации прямой цепочки рассуждений на каждом шаге терминальному символу ставится в соответствие нетерминальный символ ("основа"). Как найти эту основу и то, к чему она должна приводиться? Именно этот недостаток, требующий "подбора методом проб и ошибок", и является основанием для недостатка 2;

4. Следствием недостатка №3 является то, что "в системе с реальным числом правил имеется столь много подразумеваемых (скрытых) фактов, что, будучи обнаружены, они затмят те несколько фактов, которые действительно представляют интерес и являются полезными".

Поэтому в реальных системах в прямую цепочку вывода часто добавляют элементы системы продукций. Это позволяет изменить приоритеты в обработке правил, что позволяет сократить время работы программы и "отсечь" бесперспективные "ветви вывода".

 

Правила вывода. Обратный вывод. Достоинства и недостатки его использования

Прямая цепочка хороша тогда, когда имеется небольшое число исходных фактов и больше число правил и зависимостей. Например, прямая цепочка рассуждений хорошо подходит для грамматического разбора языков программирования, компиляции и интерпретации программ на языках "высокого уровня" (абстракций). В них имеется ограниченное число "лексем" ("языковых конструкций"), которые описывают большое число алгоритмов.

Ситуация меняется, когда мы рассматриваем дерево вывода. В этом случае у нас имеется единственный "корень" дерева (обозначенный нами как <предложение>) и множество "листьев" - фактов. Естественно, перебор всех возможных "фактов" и "отсев" ненужных комбинаций займёт много времени (см. недостаток №3 прямой цепочки рассуждений). В то же время "доказательство" корневой части можно оптимизировать таким образом, чтобы исключить из рассмотрения заведомо "неправильные" цепочки рассуждений.

Итак, "обратный вывод" подразумевает доказательство цели, находящейся в "корне" дерева, путём "нисходящего" обхода дерева вывода и последовательные "доказательства" нижеследующих правил (вплоть до фактов). Обратный вывод лучше всего применять при большом количестве "фактов" (терминальных цепочек) и не высокой сложности правил вывода.

Достоинства нисходящего разбора:

1. Наличие стандартного алгоритма вывода;

2. Наличие языка программирования с реализацией этого алгоритма;

3. Возможность предсказания результата на любом этапе разработки программы;

4. Простота отладки;

5. Достаточно лёгкая реализация коэффициентов уверенности и системы объяснения машинного вывода.

Недостатки обратного вывода:

1. Сложность реализации стандартного алгоритма в "процедурных" языках;

2. Время выполнения программы растёт экспоненциально с ростом числа правил;

3. ("Неустранимый" недостаток данной цепочки рассуждений). При организации обратной цепочки рассуждений могут встретиться правила с альтернативами, меняющие направление разбора. Как узнать, какую альтернативу следует использовать при выводе? Именно этот недостаток, требующий "подбора методом проб и ошибок", и является основанием для недостатка 2;

 


Дата добавления: 2018-05-12; просмотров: 867; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!