КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Формирование прямой цепи рассуждений
Пример. Rule1 (priority=0): If ob:s1 And ob:s3 == 4 Then ob:rez = 1 Rule2 (priority=1): If Not(ob:s2) And ob:s3 == 4 Then ob:rez = -1 Rule3 (priority=0): If ob:rez == -1 Then ob:v = 5 Рис. 8.4. Выборочная стратегия (selective) Рис. 8.5. Глубинная стратегия (depthfirst) Рис. 8.6. Широтная стратегия (breadthfirst) Рис. 8.7. Стратегия оценки лучшего (bestfirst) В процессе формирования прямой цепи рассуждений отслеживаются все отношения между правилами, участвующими в выводе (рис. 8.8). Из рисунка видно, что правило Rule3 будет проверено только после проверки правил Rule2 и Rule1, и, в зависимости от того, какое из этих правил истинно либо имеет больший приоритет (если оба истинны), будет соответственно, выполняться правило Rule3. Рис. 8.6. Пример отношения правил Рассмотрим более подробно процесс рассуждений в прямом направлении, реализованный в ЭО 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. Завершение процесса
Дата добавления: 2014-12-29; Просмотров: 473; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |