Разработка эс в среде guru



Дата23.11.2018
Размер65.5 Kb.
Название файла-
ТипЛабораторная работа

Лабораторная работа №3

Разработка ЭС в среде GURU

Цель работы: научиться строить дерево целей для разрабатываемой экспертной системы, реализовывать экспертную систему в среде GURU и тестировать ее.

1. Теоретическая часть.

Основными этапами создания ЭС являются:


  • идентификация проблемной области;

  • концептуализация проблемной области;

  • формализация базы знаний;

  • реализация базы знаний;

  • тестирование базы знаний;

  • опытная эксплуатация.

При идентификации проблемной области определяется назначение и сферы применения ЭС, подбираются эксперты, инженеры по знаниям, выделяются ресурсы, осуществляется постановка и параметризация решаемых задач.

ЭС предназначаются для работы в одном из следующих направлений:



  • консультация (обучение) неопытных пользователей;

  • тиражирование уникального опыта экспертов для решения задач;

  • автоматизация работ в области принятия решений;

  • оптимизация решения проблем, порождение и проверка гипотез.

Ограничения на разработку экспертных систем:

  • сроки разработки;

  • финансовые ресурсы;

  • программно-технические средства.

Основные параметры проблемной области:

  • класс решаемых задач (диагностика, прогнозирование, планирование, проектирование, управление и т.д.);

  • критерии эффективности результатов работы ЭС (оптимизация затрат ресурсов, показатели качества продукции и услуг, оборот вложенных средств и т.д.)

  • критерии эффективности процесса решения задачи (точность принимаемых решений, объем учитывающих факторов, количество рассматриваемых альтернативных решений, адаптивность к изменениям проблемной области, требованиям пользователей и т.д.);

  • цели решаемых задач (выбор из альтернатив или синтез значения);

  • подцели (при разбиении задачи на подзадачи, для каждой определяется своя цель);

  • исходные данные;

  • особенности используемых знаний (детерминированность/неопределенность, статичность/динамичность, одноцелевая/многоцелевая, количество источников знаний).

Концептуальное моделирование представляет целостное и системное описание используемых знаний, адекватно отражающих предметную область. Результаты этого этапа отображаются в виде наглядных графических схем. Выделяются три уровня моделирования:

  • объектный – структура предметной области представляется совокупностью взаимосвязанных объектов;

  • функциональный – моделируются действия и преобразования над объектами;

  • поведенческий – представляется взаимодействие объектов во временном аспекте.

На функциональном уровне, в результате моделирования строится дерево целей (граф "И-ИЛИ"). Модель строится путем последовательной декомпозиции целей – для цели определяются подцели, для этих подцелей устанавливаются свои подцели и т.д., пока в качестве подцелей не окажутся исходные факты. В графе "И-ИЛИ" каждый зависимый факт есть целевая переменная – корневая вершина, а определяющие его (факт) факты-аргументы – связанные с корнем подчиненные вершины. Условие конъюнкции (совместное влияние факторов) обозначается пересекающей дугой, а условие дизъюнкции (независимость факторов) никак не обозначается. Если какой-нибудь факт-аргумент определяется другими факторами, то он становится подцелью.

Н
а рис. 1. представлено дерево целей, для решения задачи определения вида вклада. Вершиной дерева является определение вида вклада (акции, сбережения, акции + сбережения). На вид вклада могут влиять уровень дохода и уровень сбережения или текущая экономическая ситуация (стабильная/нестабильная). В свою очередь, уровень дохода зависит от текущего совокупного дохода, требуемого дохода на одного человека (потребительская корзина), числа иждивенцев и стабильности совокупного дохода. Уровень сбережений зависит от текущих сбережений и требуемого уровня сбережений.


2. Ход работы.

Создание ЭС, для решения этой задачи, начинается с определения переменных. Для этого необходимо выполнить следующие действия.



  1. Найти и запустить файл guru.exe.

  2. На вопрос: "Resume previous session?" ("Продолжить использование предыдущего протокола?") ответить: "Y" и нажать "Enter".

  3. Появится окно, в котором есть имя протокольного файла SESSION. Нажать "Enter".

  4. В появившемся окне выбрать "Expert System". Нажать "Enter".

  5. В новом окне выбрать "Buid an Expert System" ("Построение экспертной системы"). Нажать "Enter".

  6. В новом окне выбрать "New Rule Set" ("Установка новых правил"). Нажать "Enter".

  7. В ответ на приглашение "Enter rule set name:" ("Введите имя установленных правил") ввести имя для набора правил - имя файла, например petrov_n (расширение rss устанавливается для файла с текстом правил, а для исполняемого модуля – после компиляции, расширение будет – rsc). Нажать "Enter".

  8. В появившемся окне выбрать "Defenition" ("Определение"). Нажать "Enter".

  9. В новом окне выбрать "Goal" ("Цель"). Нажать "Enter".

  10. В ответ на приглашение "Enter goal variable:" ("Введите переменную цели") набрать имя целевой переменной VKLAD. Нажать "Enter".

  11. Для перехода к предыдущему меню выбрать "Previous Menu" или клавишу "Esc".

  12. В появившемся (предыдущем) окне выбрать "Initialization". Нажать "Enter".

  13. Появится окно для ввода настроек программыи описания переменных.

Параметры обозначают:

e.rigr = "a" – задается выполнение всех правил. По умолчанию используется минимальное число правил.

e.unkn = 40 - порог доверия результатам (cf - фактор уверенности). По умолчанию устанавливается равным 20, а пользователи, обычно, устанавливают равным 40.

Далее идет объявление переменных vklad, doxod, sber и присвоение им неизвестных значений. Если не объявлять, то переменные будут хранить значения предыдущего сеанса и выдавать их вместо вычисленных. Переменным ndoxod, nsber задаются начальные значения. Составляется меню ввода текущих значений параметров. Вид окна, с объявленными переменными, представлен на рис.2.



  1. Вернуться в главное меню (предыдущее окно) и выбрать "Rules". Нажать "Enter".

  2. В окне "Rules" выбираем команду "Create". В окне с приглашением "Enter rule name:", ввести имя правила, например, R1. Нажать "Enter".

  3. Появится окно с окошечками, для создания базы знаний (ввода правил). Переход между окошками осуществляется с помощью клавиш "PageUp" и "PageDown".

  4. Для первого правила (R1) в окне "if" набираем doxod=true and sber=true , а в окне "then" набираем vklad="akcii".

  5. Для R2 в окне "if" набираем doxod=false , а в окне "then" набираем vklad="sber". Это правило может быть набрано полностью все, а можно использовать и режим копирования. С этой целью в окне "Rules" (Правила) выбрать команду "Copy" (Копировать). В окошке "Select a rule" (Выбор правила) выделить имя правила, которое требуется скопировать, например, R1. В появившемся окошке, с приглашением "Enter new or existing name:", введите имя правила, которое будет создаваться, например, R2. На запрос "Edit now (Y/N)?" ответить "Y" и приступить к правке текста правила.


Рис. 2. Окно с объявленными переменными.




  1. Для R3 в окне "if" набираем doxod=true and sber=false , а в окне "then" набираем vklad="sber + akcii" .

  2. Для R4 в окне "if" набираем tdoxod>=ndoxod*(igd +1) and stab="+" , а в окне "then" набираем doxod=true .

  3. Для R5 в окне "if" набираем tdoxodor stab="-" , а в окне "then" набираем doxod=false .

  4. Для R6 в окне "if" набираем tsber>=nsber , а в окне "then" набираем sber=true .

  5. Для R7 в окне "if" набираем tsbersber , а в окне "then" набираем sber=false .

  6. Для R8 в окне "if" набираем ecsyt="+" , а в окне "then" набираем vklad={"akcii", "sber + akcii"} .

Для объединения нескольких исходов используются "{…}", а для переноса на новую строку обратный слэш – " \ ". Для разделения операторов используется " ; ".

  1. Для R9 в окне "if" набираем ecsyt="-" , а в окне "then" набираем vklad= "sber" .

  2. Перейти в главное меню окна "Rule Set: ___.rss" и выбрать команду "Variables" (Переменные) – можно не определять, - и нажать "Enter".

  3. В новом окне выбрать "Create" и нажать "Enter".

  4. На приглашение "Enter variables name:" ввести имя vklad . Нажать "Enter".

  5. В окошке "Label" задаются значения переменной для прямого вывода. (НЕ ВВОДИТЬ)

  6. В окошке "Find" задаются значения переменных при обратном выводе. (НЕ ВВОДИТЬ).

  7. Перейти в главное меню окна "Rule Set: petrov_n.rss" и выбрать команду "Completion". Нажать "Enter".

  8. В окне "Completion" выполняются завершающие действия для вывода результатов. ? "Recommendation:", vklad - означает, что будет выводиться значение полученной целевой переменной VKLAD.

  9. Перейти в главное меню окна "Rule Set: ___.rss".

(В этом окне можно выбрать команду "Print" - НЕ ВЫБИРАТЬ).

После выбора "Exit" выполняем команду "Save". Оставляем имя файла таким же.



  1. Осуществляем компиляцию с помощью команды "Compile". В окне появится имя файла с расширением .rsc - petrov_n.rsc. После нажатия "Enter", иногда появляются сообщения о диагностике. Нажать Enter.

  2. Для выхода из системы выполнить команду Quit и нажать любую клавишу.


Проверка работоспособности системы.

  1. Выбрать "Expert System" и нажать "Enter".

  2. В новом списке меню выбрать "Consult an Expert System".

  3. Из появившегося списка файлов выбрать созданный и нажать "Enter".

  4. В нижнем левом углу появится сообщение "CONSULT _имя файла_ и параметр для ввода данных. Необходимо ввести соответствующие данные.

  5. После ввода всех данных система выдаст рекомендации.

Для редактирования базы знаний выбирается команда меню "Existing Rule Set" (Существующие правила).






Поделитесь с Вашими друзьями:


База данных защищена авторским правом ©genew.ru 2020
обратиться к администрации

    Главная страница
Контрольная работа
Курсовая работа
Лабораторная работа
Рабочая программа
Методические указания
Практическая работа
Методические рекомендации
Теоретические основы
Пояснительная записка
Общая характеристика
Учебное пособие
История развития
Общие сведения
Физическая культура
Теоретические аспекты
Практическое задание
Федеральное государственное
Техническое задание
Теоретическая часть
Направление подготовки
Самостоятельная работа
Дипломная работа
Общие положения
государственное бюджетное
Методическая разработка
Образовательная программа
квалификационная работа
Техническое обслуживание
Технологическая карта
Выпускная квалификационная
учебная программа
Решение задач
История возникновения
Методическое пособие
Краткая характеристика
Исследовательская работа
Рабочая учебная
Общие требования
Общая часть
Основная часть
История создания
Рабочая тетрадь
Метрология стандартизация
Техническая эксплуатация
Название дисциплины
Математическое моделирование
Организация работы
Современное состояние
Экономическая теория
Информационная безопасность
Государственное регулирование