Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция ЭИС 19-2 Функции экспертных систем.docx
Скачиваний:
31
Добавлен:
21.03.2015
Размер:
25.36 Кб
Скачать

Решение задач с использованием знаний

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

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

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

1) просмотр существующих фактов из рабочего множества и правил из базы знаний и добавление (по мере возможности) в рабочее множество новых фактов;

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

Цель экспертной системы — вывести некоторый заданный факт, который называется целевым утверждением, т.е. в результате применения правил добиться того, чтобы этот факт был включен в рабочее множество, либо опровергнуть этот факт, т.е. убедиться, что его вывести невозможно, следовательно, при данном уровне знаний системы он является ложным. Целевое утверждение либо «заложено» заранее в базу знаний системы, либо извлекается системой из диалога с пользователем.

Работа системы представляет собой последовательность шагов, на каждом из которых система выбирает из базы некоторое правило, которое можно применить к текущему содержимому рабочего множества. Цикл заканчивается, когда выведено или опровергнуто целевое утверждение. Цикл работы экспертной системы иначе называется логическим выводом. Логический вывод может происходить многими способами, из которых наиболее распространенные — прямой и обратный порядок вывода.

Прямой порядок вывода — от фактов, которые находятся в рабочем множестве, к заключению. Если такое заключение удается найти, то оно заносится в рабочее множество. Прямой вывод часто называют выводом, управляемым данными. Для иллюстрации добавим к нашему примеру базы знаний о здоровье еще одно правило (правило 2):

ЕСЛИ

«Риск высокий»

ТО

«Продолжительность жизни менее 60 лет».

Предположим также, что факты «Пациент курит» и «Кровяное давление выше среднего» имеются в рабочем множестве, а целью системы является определение наиболее вероятной продолжительности жизни пациента (пользователя).

При прямом выводе работа системы будет протекать следующим образом.

1. Рассматривается правило 1. Его условие истинно, так как оба элемента конъюнкции имеются в рабочем множестве. Применяем правило 1. Добавляем к рабочему множеству факт «Риск высокий».

2. Рассматривается правило 2. Его условие истинно, так как утверждение из условия имеется в рабочем множестве. Примеряем правило 2. Добавляем к рабочему множеству факт «Продолжительность жизни менее 60 лет». Целевое утверждение выведено. При обратном порядке вывода заключения просматриваются до тех пор, пока не будут обнаружены в рабочей памяти или получены от пользователя факты, подтверждающие одно из них. В системах с обратным выводом вначале выдвигается некоторая гипотеза, а затем механизм вывода в процессе работы как бы возвращается назад, переходя от нее к фактам, и пытается найти среди них те, которые подтверждают эту гипотезу. Если достоверность доказана, то выбирается следующая гипотеза, детализирующая первую и являющаяся по отношению к ней подцелью. Далее отыскиваются факты, подтверждающие истинность подчиненной гипотезы. Вывод такого типа называется управляемым целями.

Обратный поиск применяется в тех случаях, когда цели известны и их сравнительно немного. Заметим, что для упрощения ситуации мы предположили, что в обоих случаях факты «Пациент курит» и «Кровяное давление выше среднего» уже известны системе. На самом деле система выясняет истинность или ложность факта, входящего в условие некоторого правила, спрашивая об этом пользователя в тот момент, когда она пытается применить правило.

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