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