Технологии разработки экспертных систем
3. ТЕХНОЛОГИИ РАЗРАБОТКИ ЭКСПЕРТНЫХ СИСТЕМ
Технология создания интеллектуального программного обеспечения существенно отличается от разработки традиционных программ с использованием известных алгоритмических языков (таблица).
Характеристика | Программирование в системах искусственного интеллекта | Традиционное программирование |
Тип обработки Метод Задание шагов решения Рекомендуемые материалы4 lab вариант 13 9 lab вариант 13 Лабораторная работа L36 (№7) отчет+код Вариант 36(?) РК3 ООП (оцененное на максимум) FREE 3 лабораторная работа РК3 Искомое решение Управление и данные Знания Модификации | Символьный Эвристический поиск Неявное Удовлетворительное Смешаны Неточные Частые | Числовой Точный алгоритм Явное Оптимальное Разделены Точные Редкие |
Рассмотрим отработанные на сегодняшний день элементы технологии создания ИИС на примере разработки экспертных систем. Этот выбор обусловлен тем, что ЭС получили весьма широкое распространение во многих сферах человеческой деятельности, а технологии их создания имеют универсальный характер и не требуют аппаратных реализаций.
Экспертными системами называют сложные программные комплексы, аккумулирующие знания специалистов в конкретных предметных областях и тиражирующие этот эмпирический опыт для консультаций менее квалифицированных пользователей [4].
В самых первых ЭС не учитывалось изменение знаний, используемых в процессе решения конкретной задачи. Их назвали статическими ЭС. Типичная статическая ЭС содержит следующие основные компоненты (рис. 3.1):
• базу знаний;
• рабочую память, называемую также базой данных;
• решатель (интерпретатор);
• систему объяснений;
• компоненты приобретения знаний;
• интерфейс с пользователем (диалоговый компонент).
![]() |
Эксперт
пользователь
Рис. 3.1. Схема обобщенной экспертной системы
База знаний в ЭС предназначена для хранения долгосрочных данных, описывающих рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные преобразования данных в этой области.
База данных (рабочая память) служит для хранения текущих данных решаемой задачи.
База знаний в ЭС предназначена для хранения долгосрочных данных, описывающих рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные преобразования данных в этой области.
База данных (рабочая память) служит для хранения текущих данных решаемой задачи.
Решатель (интерпретатор), используя исходные данные из РП и знания из БЗ, формирует такую последовательность правил, которые, будучи примененными к исходным данным, приводят к решению задачи.
Система объяснений показывает, как система получила решение задачи (или почему она не получила решения) и какие знания она при этом использовала, что облегчает эксперту тестирование системы и повышает доверие пользователя к полученному результату.
Компоненты приобретения знаний необходимы для заполнения ЭС знаниями в диалоге с пользователем-экспертом, а также для добавления и модификации заложенных в систему знаний.
Интерфейс с пользователем (диалоговый компонент) ориентирован на организацию дружелюбного общения со всеми категориями пользователей как в ходе решения задач, так и приобретения знаний, объяснения результатов работы.
В разработке ЭС участвуют представители следующих специальностей:
эксперт в той проблемной области, задачи которой будет решать ЭС;
инженер по знаниям – специалист по разработке ЭС;
программист – специалист по разработке инструментальных средств (ИС).
Необходимо отметить, что отсутствие среди участников разработки инженера по знаниям (т. е. его замена программистом) либо приводит к неудаче процесс создания ЭС, либо значительно удлиняет его.
Эксперт определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введенных в ЭС знаний.
Инженер по знаниям помогает эксперту выявить и структурировать знания, необходимые для работы ЭС, осуществляет выбор того ИС, которое наиболее подходит для данной проблемной области, и определяет способ представления знаний в этом ИС, выделяет и программирует (традиционными средствами) стандартные функции (типичные для данной проблемной области), которые будут использоваться в правилах, вводимых экспертом.
Лекция "Характеристика МП In 8086" также может быть Вам полезна.
Программисты разрабатывают программное обеспечение ЭС и осуществляют его сопряжение со средой, в которой оно будет использоваться.
Экспертная система работает в двух режимах: приобретения знаний и решения задач (называемом также режимом консультации или режимом использования ЭС).
Любая ЭС должна иметь, по крайней мере, два режима работы. В режиме приобретения знаний эксперт наполняет систему знаниями, которые впоследствии позволят ЭС самостоятельно (без помощи эксперта) решать определенные задачи из конкретной проблемной области. Эксперт описывает проблемную область в виде совокупности данных и правил. Данные определяют объекты, их характеристики и значения, существующие в области экспертизы. Правила определяют взаимные связи, существующие между данными, и способы манипулирования данными, характерные для рассматриваемого класса задач.
В режиме консультации пользователь ЭС сообщает системе конкретные данные о решаемой задаче и стремится получить с ее помощью результат. Пользователи-неспециалисты обращаются к ЭС за результатом, не умея получить его самостоятельно, пользователи-специалисты используют ЭС для ускорения и облегчения процесса получения результата. Следует подчеркнуть, что термин «пользователь» является многозначным, так как использовать ЭС могут и эксперт, и инженер по знаниям, и программист. Поэтому, когда хотят подчеркнуть, что речь идет о том, для кого создавалась ЭС, используют термин «конечный пользователь».
В режиме консультации входные данные о задаче поступают в рабочую память. Решатель на основе входных данных из рабочей памяти и правил из БЗ формирует решение. В отличие от традиционных программ компьютерной обработки данных ЭС при решении задачи не только исполняет предписанную последовательность операций, но и сама формирует ее.
Существует широкий класс приложений, в которых требуется учитывать изменения, происходящие в окружающем мире за время исполнения приложения. Для решения таких задач необходимо применять динамические ЭС, которые наряду с компонентами статических систем содержат подсистему моделирования внешнего мира и подсистему связи с внешним окружением. Подсистема моделирования внешнего мира необходима для прогнозирования, анализа и адекватной оценки состояния внешней среды. Изменения окружения решаемой задачи требуют изменения хранимых в ЭС знаний, для того чтобы отразить временную логику происходящих в реальном мире событий. Компонента связи с внешним миром актуальна для автономных интеллектуальных систем (роботов), а также для интеллектуальных систем управления. Связь с внешним миром осуществляется через систему датчиков и контроллеров.