Искуственный интеллект
Как уже упоминалось ранее, БЗ может быть запущена на исполнение
непосредственно из СУБЗ. То есть, при запуске системы пользователь
вначале видит информационное окно, сообщающее об авторах системы, пос-
ле
нажатия клавиши
но банка знаний со списком баз знаний. Пользователь подсвеченной поло-
сой
выбирает нужную
ему базу и нажимает
ет сеанс консультации.
Консультация представляет собой последовательную смену окон, в
каждом из которых высвечивается вопрос и список возможных ответов на
него. Внизу каждого окна этапа консультации имеется три кнопки: ДА-
ЛЕЕ, НАЗАД и ВЫХОД. Первые две кнопки позволяют передвигаться "внут-
ри" консультации, а последняя - выйти из нее в любой момент работы.
Первоначально в режиме "Консультация" система запросит у пользова-
теля цель (если база - многоцелевая). Пользователь должен из предос-
тавленного ему списка целей выбрать ему нужную и нажать кнопку ДАЛЕЕ
или
клавишу
начиная задавать пользователю вопросы, помогающие ей прийти к цели.
Если пользователь ошибочно ввел не то значение, которое бы ему хоте-
лось, он может вернуться к предыдущему шагу, нажав кнопку НАЗАД и исп-
равить неточность.
По окончании консультации, как уже упоминалось, пользователю дис-
петчером вывода предоставляются различные услуги. Так, например, он
может создать протокол (то есть, текст, содержащий весь ход консульта-
ции) и сохранить его на диске, нажав только одну кнопку ПРОТОКОЛ. Пу-
тем нажатия кнопки ПЕЧАТЬ, пользователь может вывести протокол на
принтер.Нажатием кнопки СПИСОК, пользователь при желании может вывес-
ти на экран диалоговое окно со списком протоколов других консультаций
и, выбрав интересующий его протокол, просмотреть его или распечатать.
Он может просмотреть ход рассуждений машины вывода, нажав кнопку МАРШ-
РУТ.
В комплект системы "Консультант" входит демонстрационная база зна-
ний "Оценка состояния здоровья военнослужащего".
4.3. Создание собственной базы знаний
В случае необходимости эксперт в какой-либо области знаний может
создать собственную базу знаний. Первоначально он должен четко выде-
лить объекты, их возможные значения, вопросы и правила. Следует пом-
нить, что правила не должны противоречить друг другу, то есть недопус-
тимо совместное использование таких правил:
ЕСЛИ ОБЪЕКТ N 1 = ЗНАЧЕНИЕ N 11 ТО ОБЪЕКТ N 2 = ЗНАЧЕНИЕ N 21,
ЕСЛИ ОБЪЕКТ N 1 = ЗНАЧЕНИЕ N 11 ТО ОБЪЕКТ N 2 = ЗНАЧЕНИЕ N 22
(это называется разветвлением - одна предпосылка приводит к двум
разным заключениям); или:
ЕСЛИ ОБЪЕКТ N 1 = ЗНАЧЕНИЕ N 11 ТО ОБЪЕКТ N 2 = ЗНАЧЕНИЕ N 21,
ЕСЛИ ОБЪЕКТ N 2 = ЗНАЧЕНИЕ N 21 ТО ОБЪЕКТ N 1 = ЗНАЧЕНИЕ N 11
(это называется зацикливанием - то, что в первом правиле является
предпосылкой, во втором это - заключение, и наоборот).
Определившись с базой знаний, следует приступить к ее набору:
1. Из пункта верхнего меню БАЗА выбрать пункт НОВАЯ и в появившем-
ся окне набрать имя новой БЗ, затем нажать кнопку ПУСК. В окне банка
знаний появится введенное имя новой базы.
2. Подвести к полученному таким образом имени полосу-указатель и,
войдя в меню, выбрать в пункте БАЗА операцию РЕДАКТИРОВАТЬ. В выведен-
ном на экран диалоговом окне установки редактора желательно не делать
никаких настроек, поскольку там уже установлены параметры, как пара-
метры по умолчанию, наиболее распространенного типа БЗ и редактора.
По окончании всех операций в окне нажать кнопку ПУСК (или клавишу <
ENTER>).
3. Как уже говорилось ранее, редактор знаний - пошаговый редактор
и структурно состоит из редактора объектов, редактора значений и ре-
дактора правил. Он последовательно предлагает пользователю вносить в
создаваемую базу сперва объекты и вопросы посредством редактора объек-
тов, затем значения с помощью редактора значений и, наконец, правила
через редактор правил. В редакторе объектов в верхней полосе ввода
следует набрать объект, в нижней - вопрос об этом объекте, после чего
нажать
кнопку ВНЕСТИ
или клавишу
называемый список ввода (history list), отображаемый в свернутов сос-
тоянии в виде кнопки с указателем вниз справа от полосы ввода. В нем
можно просмотреть все те объекты или вопросы, которые в настоящий мо-
мент вводятся. Если объект или вопрос был набран ошибочно, его можно
удалить с помощью кнопки УДАЛИТЬ. Если же пользователем принято реше-
ние освободить весь список объектов или вопросов, следует нажать кноп-
ку ОЧИСТИТЬ. После завершения набора объектов и вопросов рекомендует-
ся сохранить их, нажав кнопку ЗАПИСЬ. Кнопкой ДАЛЕЕ осуществляется пе-
реход к следующему шагу - редактору значений, кнопкой НАЗАД - к преды-
дущему - установке редактора. С помощью кнопки ОТМЕНА можно выйти из
режима редактирования в основной режим - режим СУБЗ.
4. После набора объектов и вопросов об объектах, нажав кнопку ДА-
ЛЕЕ, пользователь переходит на следующий этап создания БЗ - создание
значений. Эту функцию полностью берет на себя редактор значений. Он
представляет собой нечто вроде картотеки - ряд последовательно выводя-
щихся окон с именем "своего" объекта каждое, строкой ввода и кнопками
управления в каждом. Командные кнопки каждого окна редактора значений
аналогичны кнопкам редактора объектов, за исключением появившейся но-
вой кнопки - ДРУГОЙ. Пользователь для каждого объекта должен ввести
свой список значений, после чего нажатием кнопки ДРУГОЙ он переходит
в окно следующего объекта. Действия остальных кнопок аналогичны дейст-
виям соответствующих кнопок редактора объектов. По окончании заполне-
ния значениями всех ранее набраных объектов и, желательно, сохранив
их на диске кнопкой ЗАПИСЬ, можно переходить к следующему этапу - ре-
дактированию правил. Это производится нажатием кнопки ДАЛЕЕ.
5. Перевижение по матрице фактов редактора правил можно клавишами
управления курсором или "мышью". Для занесения какого-либо правила в
базу
правил необходимо
отметить клавишей
"мыши"
все предпосылки
данного правила
и комбинацией
клавиш
SPACE> - заключения, после чего нажать кнопку ВНЕСТИ или клавишу <
ENTER> (следует заметить, что командные кнопки редактора правил анало-
гичны кнопкам предшествующих редакторов). Необходимо помнить, что син-
таксис "Консультанта" не позволяет вводить правила такого вида:
ЕСЛИ ОБЪЕКТ N 1 = ЗНАЧЕНИЕ N 11 И ОБЪЕКТ N 1 = ЗНАЧЕНИЕ N 12 ...
или такого:
... ТО ОБЪЕКТ N 1 = ЗНАЧЕНИЕ N 11 И ОБЪЕКТ N 2 = ЗНАЧЕНИЕ N 21.
Одним словом, в предпосылке правила у одного объекта не может
быть два разных значения, а в правиле не может быть более одного зак-
лючения. Редактор правил построен таким образом, что правила такого
рода просто не смогут сформироваться.
Итак, например, для ввода такого правила:
ЕСЛИ ВОДА = ХОЛОДНАЯ И ПОГОДА = СЫРАЯ ТО ПРОСТУДА = ОБЕСПЕЧЕНА,
необходимо в столбце значений объекта ВОДА отметить ранее упомяну-
тым способом значение ХОЛОДНАЯ, а столбце ПОГОДА - значение СЫРАЯ,
как предпосылки (отмеченные значения станут другого цвета); в столбце
ПРОСТУДА отметить значение ОБЕСПЕЧЕНА, как заключение (это значение
также выделится цветом, причем отличным от цвета предпосылок).После
нажатия кнопки ВНЕСТИ создаваемая база правил пополнится новым прави-
лом. Так же, как и в предыдущих редакторах, по окончании набора жела-
тельно для надежности сохранить базу правил, нажав кнопку ЗАПИСЬ. Для
перехода к следующему заключительному шагу нужно как и в прежних слу-
чаях, нажать кнопку ДАЛЕЕ.
6. Заключительный этап создания или редактирования любой базы зна-
ний - вывод диспетчера редактора. Дипетчер необходим для проведения
сервисных операций с базой знаний: оптимизации, упаковки, проверки на
непротиворечивость и сохранения. Ранее уже описывался смысл этих опе-
раций; следует отметить особенности операций ОПТИМИЗАЦИЯ и УПАКОВКА.
Если пользователь еще не закончил отлаживание своей базы, он их не
должен проводить, если же он уверен в том, что сформированная им база
является окончательным вариантом, то желательно проделать эти опера-
ции, соответственно нажав кнопки ОПТИМИЗАЦИЯ и УПАКОВКА. Операция про-
верки базы на правильность построения необходимо, поэтому желательно
ее провести; эта операция не изменяет структуру базы знаний, поэтому
ее можно проводить в любой момент. Кнопка СОХРАНИТЬ записывает базу
на диск, если поледняя не была сохранена нажатием кнопки ЗАПИСЬ редак-
тора правил и обновременно осуществляет выход в режим СУБЗ.
Итак, теперь на диске и в списке банка знаний имеется новая база
знаний.
4.4. Редактирование баз знаний и управление ими
Редактирование БЗ производится в том же порядке, что и создание,
причем, если, например, не требуется редактировать объекты, можно ли-
бо "пролистнуть" появившийся редактор объектов кнопкой ДАЛЕЕ, либо в
окне установок редактора знаний в группе СОСТАВЛЯЮЩИЕ установить оп-
цию РЕДАКТОР ЗНАЧЕНИЙ (в этом случае после нажатия кнопки ПУСК сразу
запустится редактор значений).
Процесс редактирования напоминает процесс создания новой базы.
Исключение составляет лишь то, что в строках ввода уже будут находит-
ся какие-либо данные. Если, например, пользователя интересует какой-
то объект, он может запустить редактор объектов (по умолчанию, нажав
кнопку ПУСК в окне установок), активизировать список ввода строки
ввода объектов (щелчком левой клавишей "мыши" на кнопке списка ввода
либо нажатием клавиши <курсор вниз>), с помощью вертикальной полосы
скроллинга (линейки прокрутки) найти нужный ему объект и исправить
его как в обычном текстовом редакторе или удалить его кнопкой УДА-
ЛИТЬ. Последующие действия аналогичны действиям в процессе создания
новой базы.
Управление базами знаний производится с помощью пункта верхнего
меню БАЗА. Операции данного пункта позволяют переименовывать и уда-
лять любые базы в списке банка знаний. Так, чтобы переименовать выб-
ранную базу, нужно в окне переименования в строку ввода ввести новое
имя
базы и нажать
кнопку ПУСК
или клавишу
имя базы исчезнет из списка и появится новое. Для удаления базы следу-
ет выбрать ее полосой указателем и, выбрав в меню БАЗА операцию УДА-
ЛИТЬ,
нажать
в котором следует нажать кнопку ПУСК.
4.5. Утилиты
В процессе создания системы "Консультант" были созданы две утили-
ты (сервисные программы), которые не входят в файловый состав системы
"Консультант", но могут входить в комплект поставки.
4.5.1. Утилита VIEWER.EXE
Файл VIEWER.EXE - утилита для просмотра любых баз знаний, создан-
ных в формате "Консультанта". Она позволяет увидеть базу знаний та-
кой, какая она на самом деле, то есть в том самом виде, в каком она
находится в своем файле. Поскольку файл базы знаний не просматривает-
ся ни одним из просмотщиков Norton Commander, возникла необходимость
создания специализированной программы-просмотрщика для проверки пра-
вильности составления БЗ.
С помощью VIEWER.EXE можно просмотреть файл базы знаний (то есть
файл *.PRO). Формат команды следующий:
<имя диска>:EXPERTviewer.exe base<номер>.pro
Если пользователь в качестве основной оболочки использует Norton
Commander и постоянно работает с базами знаний, то ему следует сде-
лать в конфигурационном файле NC.CFG Norton Commander следующие уста-
новки:
- в разделе "Описание" внести следующие строки
!Файлы баз знаний
;ФАЙЛЫ БЗ
:*.pro
- в разделе "Установки" - такие строки
#Утилита просмотра файлов "Консультанта"
~viewer.exe
$*.pro
После сохранения таких установок в файле конфигурации Norton
Commander,
любые файлы
формата PRO будут
просматриваться
клавишей >
в том виде, какой
задает утилита
VIEWER.EXE. Следует
заметить, что в
этом случае
желательно,
чтобы утилита
была перенесена
или скопирова- на
в каталог NC в
комплект других
утилит просмотра
оболочки Norton Commander. Нужно
отметить, что
в операционной
оболочке Windows 3.х
такая ус- тановка
невозможна.
4.5.2. Утилита
IMPORT.EXE Данная
утилита позволяет
устанавливать
в интегрированную
систему "Консультант"
базы знаний,
созданные в
этой же системе,
но на другом компьютере
или в другом
месте. Как известно,
система при
создании ба- зы
знаний автоматически
присваивает
файлу этой БЗ
имя. При переносе файлов
БЗ с одного
компьютера
на другой возникает
проблема внесения переносимой
базы в другую
систему. IMPORT.EXE
позволяет
обойти эту проблему. Формат
команды следующий: <имя
диска>:EXPERTimport.exe
base<номер>.pro Пусть,
например, в
одной организации
в системе
"Консультант"
соз- дана
БЗ "Проверка
состояния
прибора". Файл
этой базы с
именем BASE6. PRO
передан в другую
организацию.
В другой организации
тоже имеется "Консультант"
и установлены
восемь баз
знаний от BASE1.PRO
до BASE8. PRO.
При использовании
утилиты IMPORT.EXE
следует набрать
команду, например:
C:EXPERTimport.exe
A:NEWBASESbase6.pro Эта
команда означает,
что в систему,
установленную
на диске С: в каталоге
EXPERT, следует включить
считываемый
с дискеты (дисковод
А:, каталог
NEWBASES) файл BASE6.PRO с новой
базой. Утилита
запросит у пользователя
имя новой базы:
Введите
имя новой базы:> После
этой подсказки,
пользователь
должен ввести
имя новой базы (в
данном примере
- "Проверка
состояния
прибора") и
нажать После
этого новая
база будет
установлена
в банк знаний
пол введенным именем,
а имя ее файла
станет BASE9.PRO.
4.6. Выводы При
работе с системе,
следует помнить
о следующих
особенностях: 1)
Быстрый просмотр
осуществляется
вне среды
"Консультанта",
одна- ко
просмотреть
базу не выходя
из системы
можно с помощью
редактора знаний. 2)
Вход в меню и
выход из системы
осуществляется
не так, как в приложениях,
созданных в
Турбо-Паскале
(клавиша ALT+X>),
а как в оболочке
Norton Commander (клавиши
ответственно). 3)
Операции работы
с окнами, диалоговыми
окнами и меню
в основном сходны
с операциями
других популярных
приложений,
созданных в
Турбо- Паскале
(DOS-Navigator, Dr.Web, Инфо-Бухгалтер). 4)
Импорт других
баз знаний,
созданных на
других машинах,
в отли- чие
от других приложений,
связан с некоторыми
трудностями
и не может производиться
из среды системы. 5)
Система обладает
некоторыми
ограничениями: -
количество
баз знаний в
банке - 10000 (однако
не желательно
та- кое
их количество,
поскольку
замедлится
скорость работы); -
количество
сохраненных
за сутки протоколов
- 100; Остальные
ограничения
зависят лишь
от технических
характеристик компьютера,
на котором
установлена
система. Таким
образом, система
"Консультант"
является оболочкой,
ориенти- рованной
на неподготовленного
пользователя. Часть
5. Оценка затрат
и эффективность
использования
экспертной
системы 5.1.
Оценка затрат
при создании
системы 5.1.1.
Затраты на
аппаратную
часть Исходя
из ранее приведенных
требований
к аппаратной
части, необхо- димой
для разработки
и нормального
функционирования
созданной
системы можно
произвести
расчет стоимости
аппаратуры
(в ценах 1997 года): -
IBM-совместимый
компьютер
: 1500000 руб. -
принтер матричный
9-игольчатый
: 700000 руб.
───────────────────────────────────────────────────────────── Итого
: 2200000 руб. 5.1.2.
Затраты на
программное
обеспечение Стоимость
необходимых
для реализации
системы программных
продук- тов: -
операционная
система MS-DOS :
бесплатно (устанавливается
при покупке
компьютера) -
оболочка Norton
Commander : бесплатно -
пакет Norton Utilities :
бесплатно -
драйверы устройств
: бесплатно -
система Турбо-Паскаль
6.0. : 50000 руб.
────────────────────────────────────────────────────────────── Итого