Будем называть такую цепочку
14. 4. 3. Формирование ответа на вопрос "как"
Получив ответ на свой вопрос, пользователь возможно захочет увидеть,
Назад | Содержание | Вперёд
Назад | Содержание | Вперёд
14. 5. Реализация
Теперь мы приступим к реализации нашей оболочки, следуя тем идеям, которые обсуждались в предыдущем разделе. На рис. 14.9 показаны основные объекты, которыми манипулирует оболочка.
Цель - это вопрос, подлежащий рассмотрению; Трасса - это цепочка, составленная из "целей-предков" и правил, находящихся между вершиной Цель и вопросом самого верхнего уровня; Ответ - решающее дерево типа И / ИЛИ для вершины Цель.Рис. 14. 9.
Отношение рассмотреть( Цель, Трасса, Ответ).Ответ
- это И / ИЛИ решающее дерево для целевого утверждения Цель.Основными процедурами оболочки будут:
рассмотреть( Цель, Трасса, Ответ)
Эта процедура находит ответ Ответ
на вопрос Цель. Процедураответпольз( Цель, Трасса, Ответ)
порождает решения для тех вопросов Цель
, которые можно задавать пользователю. Она спрашивает пользователя об истинности утверждения Цель, а также отвечает на вопросы "почему". Процедуравыдать( Ответ)
выводит результат и отвечает на вопросы "как". Все эти процедуры приводятся в действие процедурой-драйвером
эксперт.14. 5. 1. Процедура рассмотреть
Центральной процедурой оболочки является процедура
рассмотреть( Цель, Трасса, Ответ)
которая будет находить ответ Ответ
на заданный вопрос Цель, используя принципы, намеченные в общих чертах в разд. 14.4.1: найти Цель среди фактов базы знаний, или применить правило из базы знаний, или спросить пользователя, или же обработать Цель как И / ИЛИ-комбинацию подцелей.Аргументы имеют следующий смысл и следующую структуру:
Цель
вопрос, подлежащий рассмотрению, представленныйкак И / ИЛИ-комбинация простых утверждений, например
X имеет перья или X летает или
X откладывает яйца
Трасса
цепочка, составленная из целей-предков и правил,расположенных между
Цель и исходной целью самого верхнего уровня. Представляется как список, состоящий из элементов видаЦель по Прав
что означает: Цель
рассматривалась с использованием правила Прав. Например, пусть исходной целью будет "питер это тигр", а текущей целью - "питер ест мясо". В соответствии с базой знаний рис. 14.5 имеем трассу[( питер это хищник) по прав3,
( питер это тигр) по прав5 ]
Смысл ее можно выразить так:
Я могу использовать "питер ест мясо" для того, чтобы проверить по прав3, что "питер это хищник".
Далее, я могу использовать "питер это хищник" для того, чтобы проверить по прав5, что "питер это тигр".
Ответ
решающее И / ИЛИ-дерево для вопроса Цель. Общая формапредставления для объекта
Ответ:Заключение было Найдено
где Найдено
- это обоснование для результата Заключение. Следующие три примера иллюстрируют различные варианты ответов:(1) ( соед( радиатор, предохр1) это правда) было
'найдено как факт'
(2) (питер ест мясо) это ложь было сказано