Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник_Final.doc
Скачиваний:
59
Добавлен:
09.11.2019
Размер:
10.39 Mб
Скачать

8.4.2. Формирование прямой цепи рассуждений

Рассмотрим более подробно процесс рассуждений в прямом направлении, реализованный в ЭО KAPPA.

Цикл событийно-управляемых рассуждений начинается, когда элемент вида «объект : слот» переносится из списка слотов, подлежащих рассмотрению (Agenda). Этот элемент представляет собой уже сделанное изменение, последствия которого будут рассмотрены. Кроме того, пара «объект : слот» может быть помещена в список слотов и самим разработчиком.

Текущий элемент проверяется каждым правилом из списка активных правил, сформированного функцией ForwardChain.

Правило рассматривается, если хотя бы одна из предпосылок упоминает текущую пару «объект : слот». Для каждого рассмотренного правила проверяются все сохраняемые предпосылки. Правило, в котором все предпосылки поддаются проверке, является применимым, т.е. готовым к выполнению. Такое правило перемещается из списка и выходит из игры – его операторы-заключения оценены. Если новые данные отвечают первоначальному вопросу (цели), то цепь рассуждений прекращается. В противном случае, вход данных побуждает вставку недавно оцененных пар «объект : слот» в список слотов с соответствующими изменениями, последствия которых будут исследоваться в том же порядке.

Если цель не достигнута, то процесс формирования цепи рассуждений продолжается до тех пор, пока список слотов не опустеет.

8.4.3. Активная трассировка при формировании прямой цепи рассуждений

Процесс формирования прямой цепи рассуждений происходит в режиме активной трассировки (Active Trace Mode), который можно наблюдать по состоянию списка слотов (Agenda) и списка правил (Rule List) или же пройти в пошаговом режиме.

Окно трассировки правил (Rule Trace) содержит следующие объекты:

  • окно текста трассировки (Trace Text);

  • список слотов (Agenda List Box), в котором перечислены все необходимые в процессе рассуждения пары «объект : слот»);

  • список трассируемых правил (Rule List Box);

  • кнопку выполнения очередного шага (Step Button).

По умолчанию режим активной трассировки выключен, и пользователю доступно только окно Trace Text. В режиме активной трассировки (пункт меню Options окна Rule Trace) становятся видимыми остальные дочерние окна. Кнопка Step Button появляется в режиме пошаговой активной трассировки. Пошаговый режим автоматически вызывает функцию ForwardChain, диалоговая панель запроса аргументов которой показана на рис. 8.7.

Рис. 8.7. Установка аргументов функции ForwardChain

Размеры всех диалоговых панелей регулируются с помощью окна Resize Trace Window Contents, также открываемого из меню Options (рис. 8.8).

Рис. 8.8. Регулировка размера диалоговых панелей

Для дальнейшей работы необходимо в окне настройки трассировки (рис. 8.9) выбрать из списка доступных правил в левой части окна (Available Rules) те, трассировку которых требуется проследить, и поместить их в список в правой части окна (Selected Rules).

Рис. 8.9. Выбор правил в окне трассировки

Далее аналогичным образом необходимо выбрать требуемые слоты в меню Trace/Break, Slot Trace и поместить их список слотов (Agenda), либо выполнить это с помощью функции Assert. Затем, выбрав пункт меню Options / Step Mode, необходимо указать аргументы функции ForwardChain (рис. 8.10).

Рис. 8.10. Ввод аргументов функции ForwardChain

После ввода аргументов окно Rule Trace примет вид, показанный на рис. 8.11.

Рис. 8.11. Вид окна трассировки правил в начале работы

При нажатии кнопки STEP (рис. 8.12) программа переходит к очередному элементу списка слотов и добавляет в список правила, имеющие отношение к этому элементу («объект: слот»).

Рис. 8.12. Список активных правил

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

Рис. 8.13. Завершение процесса