Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
laba1.doc
Скачиваний:
16
Добавлен:
16.04.2015
Размер:
222.72 Кб
Скачать

1 Этап.

Выбор проблемы включает:

Определение ПО и задачи,

Создание КР,

Определение подхода к решению проблемы,

Анализ расходов и прибыли,

Подготовку плана разработки.

2 Этап.

Прототипная система является усеченной версией ЭС. Объем прототипа – насколько десятков правил, фреймов или примеров. Также состоит из нескольких стадий:

идентификация проблемы,

извлечение знаний,

структурирование или концептуализация знаний,

формализация,

реализация,

тестирование.

3 Этап.

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

4 Этап.

Тестирование ЭС проводится в отношении критериев эффективности. ЭС оценивается пользователями, приглашенными экспертами, коллективом разработчиков.

5 Этап.

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

6 Этап.

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

Проектирование компонентов ЭС

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

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

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

Прямой порядок вывода – от фактов, которые находятся в рабочем множестве, к заключению. Если такое заключение удается найти, то оно заносится в рабочее множество. Прямой вывод часто называют выводом, управляемым данными.

Простой пример правила из повседневной жизни:

ЕСЛИ небо покрыто тучами, и барометр падает,

ТО скоро пойдет дождь. (правило 1)

ЕСЛИ скоро пойдет дождь,

ТО нужно взять с собой зонтик. (правило 2)

Предположим также, что факты «Небо покрыто тучами» и «Барометр падает» имеются в рабочем множестве, а целью системы является ответ на вопрос пользователя:

«Нужно взять с собой зонтик?»

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

Шаг 1. Рассматривается правило 1. Его условие истинно, так как оба элемента конъюнкции имеются в рабочем множестве. Применяем правило 1; добавляем к рабочему множеству факт ”Скоро пойдет дождь”.

Шаг 2. Рассматривается правило 2. Его условие истинно, т.к. утверждение из условия имеется в рабочем множестве. Применяем правило 2; добавляем к рабочему множеству факт “Нужно взять с собой зонтик”. Целевое утверждение выведено.

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

В рассматриваемом примере вывод целевого утверждения “Нужно взять с собой зонтик” обратной цепочкой рассуждений выполняется следующим образом:

Шаг 1. Рассматривается правило 1. Оно не содержит цели в правой части. Переходим к правилу 2.

Шаг 2. Рассматривается правило 2. Оно содержит цель в правой части правила. Переходим к правой части правила и рассматриваем в качестве текущей цели утверждения “Скоро пойдет дождь”.

Шаг 3. Текущей цели нет в рабочем множестве. Рассмотрим правило 1, которое содержит цель в правой части. Обе компоненты его условия имеются в рабочем множестве, так что условие истинно. Применим привило 1; в результате выводим утверждение “Скоро пойдет дождь”; которое было нашей предыдущей целью.

Шаг 4. Применяем правило 2, условием которого является данное утверждение. Получаем вывод исходного утверждения.

Заметим, что для упрощения ситуации мы предположили, что в обоих случаях факты “Небо покрыто тучами” и “Барометр падает” уже известны системе. На самом деле система выясняет истинность или ложность факта, входящего в условие некоторого правила, спрашивая об этом пользователя в тот момент, когда она пытается применить правило.

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

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

Итак, на примере простой ЭС и базы знаний диалог пользователя с системой можно представить себе следующим образом:

Система: Вы хотите узнать, нужно ли взять с собой зонтик?

Пользователь: Да.

Система: Верно ли, что небо покрыто тучами?

Пользователь: Да.

Система: Верно ли, что барометр падает?

Пользователь: Да.

Система: Нужно взять с собой зонтик.

Как видно из этого примера, в ходе консультации инициатива диалога принадлежит системе, а сама консультация у ЭС выглядит так же, как и консультация у эксперта – человека, – задается ряд вопросов и на основании их анализа выдается экспертное заключение. Однако в отличие от беседы со специалистом, диалог с ЭС имеет свои психологические особенности: большинство пользователей (по вполне понятным причинам, таким, как отсутствие опыта работы на компьютерах, лаконичность диалога с ЭС, отсутствие пояснений в ходе консультации и другим) склонны меньше доверять “мнению” ЭС, чем мнению “живого” эксперта.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]