Лабораторная работа. "Изучение принципов создания продукционных баз знаний"
![]()
|
Министерство транспорта Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования «Российский университет транспорта» (МИИТ) Институт экономики и финансов Кафедра «Информационные системы в цифровой экономике» Отчёт по лабораторной работе по дисциплине: “ИИС” на тему: “Изучение принципов создания продукционных баз знаний” Выполнил: студент группы ЭББ-412 Никонова Д.С. Проверила: Бритвин М.А. Москва - 2019 г. Цель и задачи работы Цель работы – изучить принципы и способы создания базы знаний продукционных экспертных систем, освоить методы сокращения баз знаний Задачи лабораторной работы: Выбрать предметную область для построения базы знаний. Разработать дерево целей базы знаний. Создать базу знаний для работы с оболочкой «Экспертная система». Пример Построим простую базу знаний, которая отвечает на вопрос: «Обработать ли онлайн заявку?» (см. рисунок 1.1). Истоками базы будут являться: наличие времени (рабочий день), наличие сводного времени (более важные задачи), наличие в заявке номера телефона(номер телефона), наличие Фио(Фио) Наличие электронной почты(электронная почта). Пусть нашим истокам соответствуют значения: рабочий день – закончился , есть время более важные задачи – есть, нет номер телефона – есть, нет Фио – нет, есть. Целевой вершиной будет являться: «Обработать заявку» со значениями – да, нет, связаться с тем кто оставил заявку. ![]() Обработать заявку ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Более важные задачи Рабочий день фио Номер телефона Рисунок 1.1 – Дерево целей для базы знаний «Обработать онлайн заявку» Значит мощность базы знаний равна = 2*2*2*3 = 24 правила Если присмотреться к имеющемуся на рисунке 1 дереву целей, можно прийти к выводу, что вершины «Номер телефона», «фио» и «сидячие места» логически описывают один из аспектов вопроса «Обработать ли онлайн заявку?». Поэтому их можно объединить одной общей вершиной –данные ![]() Обработать заявку ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Более важные задачи Рабочий день фио Номер телефона ![]() Данные Рисунок 1.2 – Дерево целей с промежуточной вершиной Данные –есть, нет ,частичные Мощность первой части=2*3=6 Мощность второй части=2*2*3=12 Общая мощность рассчитывается как сумма мощностей, входящих в нее частей, т.е. 6+12=18 Дерево решений. ![]() ![]() закончился Рабочий день ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Данные Обработать заявку= связаться с тем кто оставил заявку. Обработать заявку= да Обработать заявку= нет частичные нету Есть нету Обработать заявку= нет Есть Более важные задачи Обработать заявку= нет Есть времяч ![]() Рисунок 1.3 – Дерево решений для целевой вершины ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Данные=частичные Данные= нету Данные=частичные Данные= есть Есть нету Есть нету нету Есть Номер телефона Номер телефона фио Рисунок 1.4 – Дерево решений для промежуточной вершины «Данные» В результате, количество правил вместо 6+12=18 получится 6+4=10. Построим дерево правил, которое предназначено для изображения всех правил базы знаний. ![]() ![]() ![]() ![]() ![]() ![]() закончился есть нет Более важные задачи есть Рабочий день ![]() ![]() ![]() ![]() ![]() ![]() есть ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Обработать заявку да нет ![]() ![]() нет ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() нет есть нет телефон есть фио Связаться\ ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() есть Данные ![]() ![]() ![]() ![]() ![]() ![]() ![]() нет ![]() ![]() ![]() ![]() ![]() ![]() частичные частичные ![]() ![]() ![]() ![]() Рисунок 1.5 – Дерево правил Покажем пример работы с программной оболочкой для создания продукционных экспертных систем. Запускаем ES.exe (рисунок 1.6). ![]() Рисунок 1.6 – Внешний вид оболочки для построения экспертных систем Добавление новых переменных осуществляется через пункт меню «Редактировать – Добавить переменную» либо контекстное меню (правой кнопкой мыши по дереву слева). В появившейся панели справа необходимо указать наименование переменной, вид (входная, выходная или промежуточная), тип и набор значений. Входная переменная может использоваться в правилах только в левой части (посылке), выходная – только в правой (следствии), промежуточная – и в левой, и правой частях (рисунок 1.7). ![]() Далее необходимо создать в оболочке «ES» саму базу правил (рисунок 1.8). ![]() Протестировать работу экспертной системы возможно через меню «Вывод» (рисунок 1.9). ![]() Рисунок 1.9 – Выбор цели консультации пользователя и вводим входные переменные Система сама проверит все правила и выдаст результат (рисунок 1.10). ![]() Рисунок 1.10 – Результат тестирования экспертной системы Заключение Построил простую базу знаний, которая отвечает на вопрос: «Обработать ли онлайн заявку?». Так же построил дерево решений и дерево правил , после чего протестировал в программном продукте для создания продукционных экспертных систем. |