Искусственный интеллект: как создать свою экспертную систему?

Никита Борисович Культин, 2023

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

Оглавление

Архитектура экспертной системы

Архитектура экспертной системы, в которой знания представлены совокупностью правил логического вывода, показана на рис. 3.

Рис. 3. Архитектура экспертной системы на правилах (МВ — механизм или"машина"выводв; ИР — интерфейс разработчика; ОС — объясняющая система; ИП — интерфейс пользователя)

В простейшем случае экспертная система может состоять из базы знаний, механизма вывода и интерфейса разработчика-пользователя (рис. 4).

Рис. 4. Минимальная архитектура экспертной системы

(ИР — интерфейс разработчика; МВ — "машина"вывода)

База знаний

Основой экспертной системы является база знаний о предметной области. База знаний (БЗ) содержит знания — информацию об объектах предметной области.

В экспертных системах для представления знаний используют:

— семантические сети

— фреймы

— правила логического вывода

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

Правила логического вывода в общем случае представляют собой выражения вида

ЕСЛИ условие ТО заключение

Правила логического вывода отражают ход рассуждений человека-эксперта и позволяют наиболее естественно и понятно описать процесс принятия решений.

Например, на естественном языке правила выбора галстука можно записать так:

If jacket is blazer and shirt is white classic then tie is narrow

If jacket is sport coat and shirt is striped then no tie

В базе знаний экспертной системы эти правила выглядят так:

rule(1)

jacket = blazer

shirt = white_classic

then

tie=narrow;

rule(2)

jacket = sport_coat

shirt = striped

then

tie = no;

Факты базы знаний представляю собой утверждения вида

Объект = Значение, cf=к

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

Например, если на вопрос экспертной системы Shirt? пользователь введет white_classic, то в базу знаний будет добавлен факт

shirt=white_classic, cf=100

Если в процессе консультации в ответ на вопросы машины вывода Jacket? и Shirt? пользователь, соответственно, введет sport_coat и strip, то в базу знаний сначала будут добавлены факты

jacket=sport_coat, cf=100

shirt=strip, cf=100

Затем, в результате согласования текущих значений объектов jacket и shirt с предпосылкой правила 2 (см. выше) будет добавлен факт-заключение

tie=no,cf=60

Механизм вывода

Механизм или"машина"вывода (inference engine) моделирует процесс рассуждений эксперта, реализует цепочку вывода заключения путем сопоставления фактов и правил логического вывода.

Интерфейс пользователя

Интерфейс пользователя (user interface) обеспечивает взаимодействие пользователя с экспертной системой в процессе консультации.

Интерфейс разработчика

Интерфейс разработчика (developer interface) имеет доступ к базе знаний, что позволяет вносить в нее изменения, корректировать правила логического вывода.

Объясняющая система

Объясняющая система (explanation module) обеспечивает отображение цепочки вывода заключения, показывает правила, на основе которых заключение было сделано.

Смотрите также

а б в г д е ё ж з и й к л м н о п р с т у ф х ц ч ш щ э ю я