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

8. Экспертные системы, базирующиеся на правилах

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

Таким образом, экспертная система на правилах (на Турбо-Прологе) со­держит множество правил, которые вызываются посредством входных данных в момент сопоставления. Наряду с этим экспертная система содержит в ме­ханизме вывода интерпретатор, который выбирает и активизирует различные модули системы. Работу этого интерпретатора можно описать последователь­ностью трех шагов:

  1. Интерпретатор сопоставляет образец правила с элементами данных в базе знаний.

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

  3. Интерпретатор применяет выбранное правило, чтобы найти ответ на поставленный вопрос.

Этот трехшаговый процесс интерпретации является циклическим и называется циклом распознавание - действие.

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

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

  1. Использовать минимально достаточное множество условий при определении продукционного правила.

  2. Избегать противоречащих продукционных правил.

  3. Конструировать правила, опираясь на структуру, присущую предмет­ной области.

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

Предположим, что пользователь в ответ на вопросы экспертной системы сообщил множество признаков животного. Интерпретатор работает в цикле «распознавание – действие». Если признаки сопоставимы с признаками животного, составляющими часть базы знаний, тогда вызывается соответствующее продукционное правило и в результате животное идентифици­руется. Затем результат сообщается пользователю. Аналогично, если животное не идентифицировано, это тоже сообщается пользователю.

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

animal_is("гепард") if

it_is("млекопитающее") and

it_is("плотоядное") and

positive("имеет","рыжевато-коричневый цвет") and

positive("имеет","темные пятна").

animal_is("тигр") if

it_is("млекопитающее") and

it_is("плотоядное") and

positive("имеет","рыжевато-коричневый цвет") and

positive("имеет","темные полосы").

В этих правилах цвет может быть представлен с помощью предиката positive в виде

positive (“имеет”, " рыжевато-коричневый цвет ").

Использование предиката it_is позволяет ограничить "пространство по­иска" (количество данных, проверяемых при поиске решения) одним подде­ревом древовидной структуры, содержащей информацию о разных видах животных (см. рис. 3).

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

Рис.3. Древовидная структура базы знаний экспертной системы для идентификации животного

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