RSS    

   Реферат: Искуственный интеллект

торых в столбец выведены разрешенные значения. Перемещение по  таблице

осуществляется клавишами управления курсором или "мышью", выбор значе-

ния для предпосылки - клавишей <ENTER>, выбор значения для  заключения

- комбинацией клавиш <CTRL+ENTER>. Подробнее: выбор какого-либо значе-

ния клавишей <ENTER> равносилен записи в правило следующего пункта:

 ...ЕСЛИ <ОБЪЕКТ - заголовок столбца  выбранного  значения>=<выбранное

ЗНАЧЕНИЕ>...   ,

    выбор другого значения из другого столбца добавляет в правило сле-

дующую строку:

 ...И <ОБЪЕКТ 2>=<выбранное ЗНАЧЕНИЕ 2>...   ,

    то выбор какого-либо значения из какого-либо другого столбца  ком-

бинацией <CTRL+ENTER> добавит в правило строку:

 ...ТО <ОБЪЕКТ 3>=<выбранное ЗНАЧЕНИЕ 3>...   .

    Необходимо отметить, что особенности синтаксиса баз знаний, разра-

батываемых в системе "Консультант", позволяют в данном правиле для од-

ного объекта выделить только одно значение, а в самом правиле -  толь-

ко одно заключение (предпосылок может быть сколь угодно много).

    Редактор правил реадизуется процедурой RULEEDITING, которая загру-

жает из файла ресурсов EXPERT.AIR объект TRULEEDITOR, в который инкап-

сулированы все процедурыуправления событиями внутри него. Помимо  мат-

рицы (таблицы) редактор правил имеет также командные кнопки, такие  же

как и в предыдущих редакторах. При нажатии кнопки ВНЕСТИ  инкапсулиро-

ванная процедура INRULE вызывает процедуру  RULESFORMER,  обрабатываю-

щую помеченные в таблице значения и переводящая их во внутренний  фор-

мат базы правил.

    По окончании заполнения или редактирования базы правил  с  помощью

команды ДАЛЕЕ на экран выводится  диспетчер  редактора.  Его  вызывает

процедура CALLDISPECTHER, которая извлекает окно диспетчера  из  файла

ресурсов и выводит его на рабочую поверхность. Диспетчер  редактора  -

диалоговое окно с четырьмя командными кнопками, которые связаны с про-

цедурами,   аналогично   предыдущим   инкапсулированными   в    объект

TDICPETCHER.

    - Кнопка УПАКОВКА вызывает на исполнение процедуру PACKADER,  поз-

воляющую удалить из базы фактов незадействованные  при  редактировании

правил значения и объекты.

    - Кнопка ОПТИМИЗАЦИЯ связана с  процедурой  OPTIMIZE,  позволяющей

без нарушения логики знаний исправить базу правил таким образом,  что-

бы сократить ее размеры до минимальных и, следовательно, в  дальнейшем

при ее использовании уменьшить время  сеанса  консультации  (например,

удаление одинаковых правил, сокращение размеров логических цепей и  т.

д.).

    - Кнопка ПРОВЕРКА запускает процедуру LOOKFOR,  которая  проверяет

смысл введенных правил (например, устраняет зацикливание  правил  (см.

далее), указывает на неоднозначность (см.далее) и т. д.).

    - Кнопка СОХРАНИТЬ вызывает процедуру SAVEBASE, которая  выполняет

две функции: сохранение созданной или отредактированной БЗ на диске  и

выход из режима редактирования в основной режим (СУБЗ).

    Следует заметить, что если пользователь желает в  дальнейшем  про-

должить проектирование недоработанной БЗ,  ему  не  следует  применять

операции УПАКОВКА и ОПТИМИЗАЦИЯ по  отношению  к  незаконченной  базы,

поскольку часть фактов, значений и правил, возможно необходимых ему  в

дальнейшем, процедуры могут счесть ненужными. Эти  факты,  значения  и

правила будут безвозвратно потеряны.

                   3.3.3. Реализация машины вывода

    Входящая в систему "Консультант" машина вывода имеет  ряд  особен-

ностей, отличающей ее от машин других ЭС:

    - обработка правил, хранящихся в матричной форме (правила  в  дру-

гих ЭС имеют обычно текстовое представление);

    - использование стратегии комбинированного вывода (см. ниже);

    - возможность в ходе консультации возврата к предыдущему шагу.

    Машина вывода физически предсавляет собой комплекс процедур, выра-

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

цели в зависимости от ответов на задаваемые ей вопросы.

    На экране машина вывода  -  это  ряд  последовательно  выводящихся

окон, в каждом из которых содержится вопрос пользователю и список воз-

можных ответов на него.  Стандартное  окно  машины  вывода  процедурой

INITOUTPUTWINDOW извлекается из  файла  ресурсов  системы,  вопрос  об

объекте и список возможных его значений, считанные из файла  этой  ба-

зы, вставляются в окно этой же  процедурой.  Запустить  машину  вывода

можно тремя способами:

    1. Выбрать в списке баз окна банка знаний нужную базу, в сфере ко-

торой требуется получить консультацию, и нажать <ENTER>.

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

системы нажатием клавиши <F9>, выбрав пункт БАЗА и в нем операцию ОТК-

РЫТЬ, нажать <ENTER>.

    3. Дважды щелкнуть левой клавишей "мыши" на имени нужной базы.

    После этих действий автоматически запустится  процедура  OPENBASE,

которая, проведя необходимые настройки (поиск  файла  выбранной  базы,

извлечение из него баз фактов и правил и т. д.), запускает в свою оче-

редь процедуру OUTPUTMACHINE, являющуюся ядром всей машины вывода. Ал-

горитм функционирования машины вывода таков:

    1) Формирует базу целей.

    2) Выводит на экран окно с просьбой пользователю  выбрать  цель  и

списком возможных целей.

    3) Получив от пользователя цель и ее номер, ищет ее в базе целей.

    4) Исходя из этого номера, переформировывает базу  правил  в  вид,

удобный для поиска ответа (так называемую рабочую базу правил).

    5) Если в рабочей базе правил остался один элемент, выдает на  его

основании свое решение, иначе выводит на экран окно с вопросом и спис-

ком разрешенных значений для объекта с номером, полученным от  первого

объекта РБП, получает от пользователя номер значения и возвращается  к

шагу N4.

    6) Вызывает диспетчер вывода.

    Машина вывода применяет разработанную  стратегию  комбинированного

(смешанного вывода). При получении номера цели от пользователя, из уп-

равляющей программы вызывается процедура формирования РБП, которая ис-

пользует обратный вывод (так называемый "поиск в ширину").  Его  смысл

заключается в следующем: берется конечная  цель  (заключение),  ищется

для него предпосылка, затем для полученной таким  образом  предпосылки

ищется заключение в другом правиле и так до тех пор, пока  не  обнару-

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

дан вопрос пользователю. Однако машина вывода  "Консультанта"  в  этом

месте действует по иному. Выявив все необходимые для  достижения  цели

"висячие" предпосылки, она формирует новую одноцелевую РБП, все прави-

ла которой построены по следующему принципу: "висячие" предпосылки ис-

ходной базы правил образуют предпосылки РБП, а целевые заключения  ис-

ходной - заключения новой РБП. Так сформирована новая  база  правил  с

одной целью и одинаковым количеством предпосылок в каждом правиле. Да-

лее применяется метод прямого вывода ("поиска в  глубину").  С  каждым

ответом на вопрос, машина сужает область поиска,  отбрасывая  заведомо

ненужные правила до тех пор, пока не останется одно  правило,  состоя-

щее из одного элемента (заключения).

    Преимущества этой стратегии вывода в следующем:

    1) Количество вопросов сокращается до  минимума,  поскольку  метод

исключает возможность появления лишних.

    2) Сокращается время поиска вопросов для достижения цели; они фор-

мируются естественным путем при формировании РБП.

    3) Исключается возможность неоднозначных решений.

    Машина вывода реализуется следующими процедурами:

    - OUTPUTMACHINE - основная управляющая процедура;

    - INITOUTPUTWINDOW - выводит окно консультации с вопросом и  спис-

ком возможных ответов;

    - MAKETARGET - формирует базу целей;

    - WORKRULEBASEFORMER - формирует РБП из исходной базы  правил  об-

ратным методом;

    - WORKRULEBASEREFORMER - переформировывает РБП  в  зависимости  от

номера ответа пользователя (прямым методом);

    - CONCLUDE - выводит окончательное решение на экран.

    Следует отметить, что OUTPUTMACHINE использует все остальные  про-

цедуры машины вывода в своем теле.

    По окончании сеанса консультации процедура OUTPUTMACHINE  вызывает

из файла ресурсов диспетчер вывода - специальную сервисную  программу,

выполняющую некоторые полезные операции. Диспетчер вывода  -  диалого-

вое окно с пятью кнопками:

    - кнопка МАРШРУТ выводит на экран полный путь,  проделанный  маши-

ной вывода в поисках цели;

    - кнопка ПРОТОКОЛ создает на диске текстовый  файл  с  расширением

"REP" и именем XXXXXXXX (где первые две цифры - число,  вторые  две  -

месяц, третие две - год создания протокола, а последние две - порядко-

вый номер протокола за эти сутки), в который помещает протокол  прове-

дения консультации;

    - кнопка СПИСОК выдает диалоговое окно  выбора  сохраненных  ранее

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

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.