Создание прототипа экспертной системы Лабораторное занятие
Создание модуля expert Задание 1
Назначение Данный модуль предназначен для обеспечения перехода к выбранной базе знаний
Этап создания первого модуля На данном этапе проводится создание модуля координатора в виде базы experts.kb Для этого необходимо создать параметр expert и секцию start и титул Expert
Подготовительный этап На этом этапе необходимо выполнить следующие действия : Запустить оболочку ESTA (ни в коем случае не запускать Visual Prolog) Используя меню File выбрать New в открывшемся окне выбрать knowledge Base
Подготовительный этап Далее В меню Title выбрать – New title В появившемся окне напечатать Expert
Подготовительный этап Далее Щелкните по кнопке закрытия окна с текстом В появившемся диалоговом окне нажмите кнопку Yes В появившемся окне титула Expert нажмите кнопку Ок
Создание параметра Выполните команду Parameter – New Parameter.
Создание параметра В диалоговом окне выбрать тип category в окне Type а в строке Name введите имя параметра например expert Нажать Ок после этого появится шаблон
Шаблон В появившемся шаблоне необходимо ввести в полях options и question соответствующие записи. Текст записи см следующий слайд (выделено красным цветом)
Записи в полях шаблона Ввести текст parameter expert : ' ' type category options bz1 - 'Первый модуль' bz2 - 'Второй модуль', end - 'Модуль завершения работы'. question ' К какому модулю Вы хотите перейти ?'
Секция Start После этого создается секция Start. Для этого В меню Section выбрать New section Появится окно New section
Создание секции В появившемся окне в строке Name введите имя секции. В данном случае это должна быть секция Start
В результате В результате появляется окно шаблона секции Start в который вводятся соответствующие операторы и команды
Записи в окне секции section start ' ' if expert = 'bz1' chain 'ZAMOK.KB' if expert = 'bz2' chain 'X.KB' if expert = 'end' chain 'END.KB'
Завершение этапа Сохранить данный модуль. Для этого в меню файл выбирается команда Save as… нажимается кнопка Ok В папке должен появится файл experts.kb
Создание модуля завершения работы Задание 2
Подготовительный этап Проводится также как и в первом пункте За исключением того, что в заголовки не вводится картинка, а текст набирается прямо в окне. Sub knowledge base (end.kb) _______________________________________ | |Ending of consultation | |______________________________________|
Создание параметра Выполните команду Parameter – New Parameter.
Создание параметра В диалоговом окне выбрать тип bolean в окне Type а в строке Name введите имя параметра например again
Шаблон В результате появляется шаблон В полях которого вводятся соответствующие записи
Параметр again В полях для параметра again следует записать parameter again type boolean question 'Хотите ли ВЫ продолжить консультацию ?'
Секция Start После этого создается секция Start. Для этого В меню Section выбрать New section Появится окно New section
Создание секции В появившемся окне в строке Name введите имя секции. В данном случае это должна быть секция Start
Текст в шаблоне section start Это модуль завершения консультации ' call save_values('1aid.dat') /* Clear datafile */ if again chain 'experts.kb' if not again (advice До свидания', call clear_dialog() )
Использование параметров text и number Задание 3
Задание Используя параметры типа text и number создайте базу для обеспечения доступа в систему (модуль zamok.kb)
Создание заголовка Выполните создание заголовка BZ Zamok
Создание параметра Выполните команду Parameter – New Parameter.
Создание параметра В диалоговом окне выбрать тип Text Type а в строке Name введите имя параметра например Name
Создание параметра В появившемся окне появится шаблон parameter Name : ' ' type text explanation ' ' /* rules field */ question ' ' picture ' ' введите в поле question текст Введите вашу фамилию
Создание параметра В появившемся окне появится шаблон parameter Name : ' ' type text explanation ' ' /* rules field */ question ' ' picture ' ' введите в поле question текст Введите вашу фамилию
Создание параметра В появившемся диалоговом окне нажмите кнопку Yes
Создание секции В меню Section выбрать New section
Создание секции В появившемся окне в строке Name введите имя секции. В данном случае это должна быть секция Start
Создание секции Нажмите Ok. В появившемся шаблоне введите текст –section start : ' ' –if name = 1' do sec1 –advice Фамилия введена неправильно
Дальнейшие шаги Создайте последовательно параметры age и соответствующую секцию sec1
Дальнейшие шаги Создайте параметр tel и соответствующую секцию sec2 Внимание! Тип параметра tel должен быть number
Дальнейшие шаги Внимание! Запись в шаблоне секции sec2 должна иметь вид
Сохранить результат Сохраните файл под именем zamok.kb Дальше действуйте по указанию преподавателя
Создание текстовых документов Задание 4
Первый шаг Запустить оболочку ESTA Используя меню File выбрать команду New в открывшемся окне выбрать Text File
Второй шаг В появившемся окне необходимо набрать текст по указанию преподавателя. Это будет вопрос из лекции либо дополнительный материал.
Текст набран Позовите преподавателя для проверки выполнения данного пункта.
Третий шаг Сохраните документ Для этого сначала щелкнуть по кнопке закрытия Перейдите на следующий слайд.
Сохранение текстового документа После того, как вы щелкните по кнопке закрытия Появится окно Щелкнуть по кнопке Yes
Сохранение текстового документа В появившемся окне, выберите папку куда будете сохранять документ, введите имя файла, Нажмите кнопку сохранить.
Имя текстового файла Имя текстового файла определяется документом первоисточником. Например OIIL4V2 Основы Искусственного Интеллекта Лекция 4 вопрос 2
Проверка Проверить наличие файла. Для этого в меню File выбрать Open.
Проверка В открывшемся окне выбрать в поле Тип файлов выбрать Text file
Проверка Проверить наличие текста
Внимание ! Повторить два раза алгоритм создания текстового файла. В результате у Вас должна быть создана база текстовых документов После этого приступите к созданию базы знаний.
Создание базы текстовых документов. Для этого создайте параметр Lit и секцию start по алгоритму, рассмотренному на предыдущих занятиях.
Внимание В секции Start должны быть использованы процедуры типа if lit = L2V1'(call display(OIIL2V1.txt'),chain '')
После выполнения задания Получить дополнительное задание от преподавателя.