ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 21.06.2021
Просмотров: 483
Скачиваний: 3

1
Тема 5
Экспертные системы.
1.
Понятие экспертной системы. Определение, назначение требования к экспертным
системам.
2.
Структура экспертных систем.
3.
Инструментальные средства построения экспертных систем.
4.
Языки и оболочки для создания экспертных систем.
5.
Технология разработки экспертной системы. Этапы разработки.
1.Понятие экспертной системы
Экспертная система - система искусственного интеллекта, включающая знания об
определенной слабо структурированной и трудно формализуемой узкой предметной области и
способная предлагать и объяснять пользователю разумные решения. Экспертная система
состоит из базы знаний, механизма логического вывода и подсистемы объяснений.
Важность экспертных систем состоит в следующем:
технология экспертных систем существенно расширяет круг практически
значимых задач, решаемых на компьютерах, решение которых приносит
значительный экономический эффект;
технология ЭС является важнейшим средством в решении глобальных проблем
традиционного программирования: длительность и, следовательно, высокая
стоимость разработки сложных приложений;
высокая стоимость сопровождения сложных систем, которая часто в несколько
раз превосходит стоимость их разработки; низкий уровень повторной
используемости программ и т.п.;
объединение технологии ЭС с технологией традиционного программирования добавляет
новые качества к программным продуктам за счет: обеспечения динамичной модификации
приложений пользователем, а не программистом; большей "прозрачности" приложения
(например, знания хранятся на ограниченном ЕЯ, что не требует комментариев к знаниям,
упрощает обучение и сопровождение); лучшей графики; интерфейса и взаимодействия.
Экспертная система - это программа, которая ведет себя подобно эксперту в
некоторой, обычно узкой прикладной области. Типичные применения экспертных систем
включают в себя такие задачи, как медицинская диагностика, локализация
неисправностей в оборудовании и интерпретация результатов измерений. Экспертные
системы должны решать задачи, требующие для своего решения экспертных знаний в
некоторой конкретной области. В той или иной форме экспертные системы должны обладать
этими знаниями. Поэтому их также называют системами, основанными на знаниях. Однако
не всякую систему, основанную на знаниях, можно рассматривать как экспертную.
Экспертная система должна также уметь каким-то образом объяснять свое поведение и свои
решения пользователю, так же, как это делает эксперт-человек. Это особенно необходимо в
областях, для которых характерна неопределенность, неточность информации (например, в
медицинской диагностике). В этих случаях способность к объяснению нужна для того,
чтобы повысить степень доверия пользователя к советам системы, а также для того, чтобы
дать возможность пользователю обнаружить возможный дефект в рассуждениях системы. В
связи с этим в экспертных системах следует предусматривать дружественное
взаимодействие с пользователем, которое делает для пользователя процесс рассуждения
системы "прозрачным".
Часто к экспертным системам предъявляют дополнительное требование -
способность иметь дело с неопределенностью и неполнотой. Информация о поставленной

2
задаче может быть неполной или ненадежной; отношения между объектами предметной
области могут быть приближенными. Например, может не быть полной уверенности в
наличии у пациента некоторого симптома или в том, что данные, полученные при измерении,
верны; лекарство может стать причиной осложнения, хотя обычно этого не происходит. Во
всех этих случаях необходимы рассуждения с использованием вероятностного подхода.
В самом общем случае для того, чтобы построить экспертную систему, мы должны
разработать механизмы выполнения следующих функций системы:
1. решение задач с использованием знаний о конкретной предметной области
возможно, при этом возникнет необходимости иметь дело с неопределенностью;
2. взаимодействие с пользователем, включая объяснение намерений и решений
системы во время и после окончания процесса решения задачи.
Экспертные системы и системы искусственного интеллекта отличаются от систем
обработки данных тем, что в них в основном используются символьный (а не числовой) способ
представления, символьный вывод и эвристический поиск решения (а не исполнение
известного алгоритма).
2.Структура экспертной системы
Экспертные системы применяются для решения только трудных практических (не
игрушечных) задач. По качеству и эффективности решения экспертные системы не уступают
решениям эксперта-человека. Решения экспертных систем обладают "прозрачностью", т.е.
могут быть объяснены пользователю на качественном уровне. Это качество экспертных систем
обеспечивается их способностью рассуждать о своих знаниях и умозаключениях. Экспертные
системы способны пополнять свои знания в ходе взаимодействия с экспертом. Необходимо
отметить, что в настоящее время технология экспертных систем используется для решения
различных типов задач (интерпретация, предсказание, диагностика, планирование,
конструирование, контроль, отладка, инструктаж, управление ) в самых разнообразных
проблемных областях, таких, как финансы, нефтяная и газовая промышленность, энергетика,
транспорт, фармацевтическое производство, космос, металлургия, горное дело, химия,
образование, целлюлозно-бумажная промышленность, телекоммуникации и связь и др.
Обобщенная структура экспертной системы представлена на рисунке 8. Следует учесть,
что реальные экспертные системы могут иметь более сложную структуру.
Процесс функционирования экспертной системы можно представить следующим
образом:
пользователь,
желающий
получить
необходимую
информацию,
через
пользовательский интерфейс посылает запрос к экспертной системе, решатель пользуясь базой
знаний, генерирует и выдает пользователю подходящую рекомендацию, объясняя ход своих
рассуждений при помощи подсистемы объяснений.
Пользователь
Инженер + Эксперт
по знаниям
Рисунок 8: Структура экспертной системы
Пользователь – специалист предметной области, для которого предназначена система.
Обычно его квалификация недостаточно высока и поэтому он нуждается в помощи и
поддержке своей деятельности со стороны ЭС.
Интерфейс
пользователя
Интеллектуаль
ный редактор
базы знаний
Решатель
База знаний
Подсистема
объяснений

3
Инженер по знаниям – специалист в области искусственного интеллекта, выступающий
в роли промежуточного буфера между экспертом и базой знаний. Синонимы: когнитолог,
инженер-интерпритатор, аналитик.
Интерфейс пользователя – комплекс программ, реализующих диалог пользователя с ЭС
как на стадии ввода информации, так и при получении результатов.
База знаний – ядро ЭС, совокупность знаний предметной области, записанная на
машинный носитель в форме, понятной эксперту и пользователю.
Решатель – программа, моделирующая ход рассуждений эксперта на основании знаний,
имеющихся в БЗ. Синонимы: дедуктивная машина, машина вывода, блок логического вывода.
Подсистема объяснений – программа, позволяющая пользователю полечить ответы на
вопросы: «Как была получена та или иная рекомендация?» и «Почему система приняла такое
решение?» Ответ на вопрос «как» - это трассировка всего процесса получения решения с
указанием использованных фрагментов БЗ, то есть всех шагов цепи умозаключений. Ответ на
вопрос «почему» - ссылка на умозаключение, непосредственно предшествовавшие
полученному решению, то есть отход на один шаг назад. Развитые подсистемы объяснений
поддерживают и другие типы вопросов.
Интеллектуальный редактор БЗ – программа, представляющая инженеру по знаниям
возможность создавать БЗ в диалоговом режиме. Включает в себя систему вложенных меню,
шаблонов языка представления знаний, подсказок («help» - режим) и других сервисных средств,
облегчающих работу с базой.
Структура экспертных систем
Типичная статическая ЭС состоит из следующих основных компонентов (рис. 9.):
решателя (интерпретатора);
рабочей памяти (РП), называемой также базой данных (БД);
базы знаний (БЗ);
компонентов приобретения знаний;
объяснительного компонента;
диалогового компонента.
База данных (рабочая память) предназначена для хранения исходных и промежуточных
данных решаемой в текущий момент задачи. Этот термин совпадает по названию, но не по
смыслу с термином, используемым в информационно-поисковых системах (ИПС) и системах
управления базами данных (СУБД) для обозначения всех данных (в первую очередь
долгосрочных), хранимых в системе.
База знаний (БЗ) в ЭС предназначена для хранения долгосрочных данных, описывающих
рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные
преобразования данных этой области.
Решатель, используя исходные данные из рабочей памяти и знания из БЗ, формирует
такую последовательность правил, которые, будучи примененными к исходным данным,
приводят к решению задачи.
Компонент приобретения знаний автоматизирует процесс наполнения ЭС знаниями,
осуществляемый пользователем-экспертом.
Объяснительный компонент объясняет, как система получила решение задачи (или
почему она не получила решение) и какие знания она при этом использовала, что облегчает
эксперту тестирование системы и повышает доверие пользователя к полученному результату.

4
Рисунок 9: Структура статической ЭС
Диалоговый компонент ориентирован на организацию дружественного общения с
пользователем как в ходе решения задач, так и в процессе приобретения знаний и объяснения
результатов работы.
В разработке ЭС участвуют представители следующих специальностей:
эксперт в проблемной области, задачи которой будет решать ЭС;
инженер по знаниям - специалист по разработке ЭС (используемые им
технологию, методы называют технологией (методами) инженерии знаний);
программист по разработке инструментальных средств (ИС), предназначенных
для ускорения разработки ЭС.
Необходимо отметить, что отсутствие среди участников разработки инженеров по
знаниям (т. е. их замена программистами) либо приводит к неудаче процесс создания ЭС, либо
значительно удлиняет его.
Эксперт определяет знания (данные и правила), характеризующие проблемную область,
обеспечивает полноту и правильность введенных в ЭС знаний.
Инженер по знаниям помогает эксперту выявить и структурировать знания,
необходимые для работы ЭС; осуществляет выбор того ИС, которое наиболее подходит для
данной проблемной области, и определяет способ представления знаний в этом ИС; выделяет и
программирует (традиционными средствами) стандартные функции (типичные для данной
проблемной области), которые будут использоваться в правилах, вводимых экспертом.
Программист разрабатывает ИС (если ИС разрабатывается заново), содержащее в
пределе все основные компоненты ЭС, и осуществляет его сопряжение с той средой, в которой
оно будет использовано.
Экспертная система работает в двух режимах: режиме приобретения знаний и в режиме
решения задачи (называемом также режимом консультации или режимом использования ЭС).
3. Инструментальные средства построения экспертных систем.
Рассмотрим особенности инструментальных средств для создания статических ЭС на
примере комплекса ЭКО, разработанного в РосНИИ ИТ и АП. Наиболее успешно комплекс
применяется для создания ЭС, решающих задачи диагностики (технической и медицинской),
эвристического оценивания (риска, надежности и т.д.), качественного прогнозирования, а также
обучения.
Комплекс ЭКО используется: для создания коммерческих и промышленных экспертных
систем на персональных ЭВМ, а также для быстрого создания прототипов экспертных систем с
целью определения применимости методов инженерии знаний в некоторой конкретной
проблемной области.

5
На основе комплекса ЭКО было разработано более 100 прикладных экспертных систем.
Среди них отметим следующие:
- поиск одиночных неисправностей в персональном компьютере;
- оценка состояния гидротехнического сооружения (Чарвакская ГЭС);
- подготовка деловых писем при ведении переписки с зарубежными партнерами;
- проведение скрининговой оценки иммунологического статуса;
- оценка показаний микробиологического обследования пациента, страдающего
неспецифическими хроническими заболеваниями легких;
Комплекс ЭКО включает три компонента.
Ядром комплекса является интегрированная оболочка экспертных систем ЭКО, которая
обеспечивает быстрое создание эффективных приложений для решения задач анализа в
статических проблемных средах типа.
При разработке средств представления знаний оболочки преследовались две основные
цели: эффективное решение достаточно широкого и практически значимого класса задач
средствами персональных компьютеров; гибкие возможности по описанию пользовательского
интерфейса и проведению консультации в конкретных приложениях. При представлении
знаний в оболочке используются специализированные (частные) -утверждения типа "атрибут -
значение" и частные правила, что позволяет исключить ресурсоемкую операцию сопоставления
по образцу и добиться эффективности разрабатываемых приложений. Выразительные
возможности оболочки удалось существенно расширить за счет интегрированности,
обеспечиваемой путем вызова внешних программ через сценарий консультации и стыковки с
базами данных (ПИРС и dBase IV) и внешними программами. В оболочке ЭКО обеспечивается
слабая структуризация БЗ за счет ее разделения на отдельные компоненты - для решения
отдельных подзадач в проблемной среде - модели (понятию "модель" ЭКО соответствует
понятие "модуль" базы знаний системы G2).
С точки зрения технологии разработки ЭС оболочка поддерживает подходы, основанные
на поверхностных знаниях и структурировании процесса решения.
Оболочка функционирует в двух режимах: в режиме приобретения знаний и в режиме
консультации (решения задач). В первом режиме разработчик ЭС средствами диалогового
редактора вводит в БЗ описание конкретного приложения в терминах языка представления
знаний оболочки. Это описание компилируется в сеть вывода с прямыми адресными ссылками
на конкретные утверждения и правила. Во втором режиме оболочка решает конкретные задачи
пользователя в диалоговом или пакетном режиме. При этом решения выводятся от целей к
данным (обратное рассуждение).
Для расширения возможностей оболочки по работе с глубинными знаниями комплекс
ЭКО может быть дополнен компонентом К-ЭКО (конкретизатором знаний), который позволяет
описывать закономерности в проблемных средах в терминах общих (абстрактных) объектов и
правил. К-ЭКО используется на этапе приобретения знаний вместо диалогового редактора
оболочки для преобразования общих описаний в конкретные сети вывода, допускающие
эффективный вывод решений средствами оболочки ЭКО. Таким образом, использование
конкретизатора обеспечивает возможность работы с проблемными средами типа 2.
Третий компонент комплекса - система ИЛИС, позволяющая создавать ЭС в статических
проблемных средах за счет индуктивного обобщения данных (примеров) и предназначенная для
использования в тех приложениях, где отсутствие правил, отражающих закономерности в
проблемной среде, возмещается обширным экспериментальным материалом. Система ИЛИС
обеспечивает автоматическое формирование простейших конкретных правил и автономное
решение задач на их основе; при этом используется жесткая схема диалога с пользователем.
Поскольку при создании реальных приложений эксперты представляют, как правило, и знания
о закономерностях в проблемной среде, и экспериментальный материал (для решения частных
подзадач), возникает необходимость в использовании правил, сформированных системой
ИЛИС, в рамках более сложных средств представления знаний. Комплекс ЭКО обеспечивает
автоматический перевод таких правил в формат оболочки ЭКО. В результате удается получить