Основные компоненты экспертных систем
Основными компонентами ИТ, используемой в ЭС, являются: интерфейс пользователя, база знаний, интерпретатор, модуль создания системы.
Рис. 9.1. основные компоненты ИТ экспертных систем
Интерфейс пользователя.Менеджер (специалист) использует интерфейс для ввода информации и команд в экспертную систему и получения выходной информации из нее. Команды включают в себя параметры, направляющие процесс обработки знаний. Информация обычно выдается в форме значений, присваиваемых определенным переменным.
Руководитель может использовать четыре метода вводаинформации: меню, команды, естественный язык и собственный интерфейс,
Технология экспертных систем предусматривает возможность получать в качестве выходнойинформации не только решение, но и необходимые объяснения. Различают два вида объяснении:
- объяснения, выдаваемые, по запросам. Пользователь в любой момент может потребовать от экспертной системы объяснения своих действий;
- объяснения полученного решения проблемы. После получения решения пользователь может потребовать объяснений того, как оно было получено. Система должна пояснить каждый шаг своих рассуждений, ведущих к решению задачи.
База знаний.Она содержит факты, описывающие проблемную область, а также логическую взаимосвязь этих фактов. Центральное место в базе знаний принадлежит правилам. Правилоопределяет, что следует делать в данной конкретной ситуации, и состоит из двух частей: условия, которое может выполняться или нет, и действия, которое следует произвести, если условие выполняется. Все используемые в экспертной системе правила образуют систему правил, которая даже для сравнительно простой системы может содержать несколько тысяч правил.
Все виды знаний могут быть представлены с помощью одной либо нескольких семантических моделей. К наиболее распространенным моделям относятся логические, продукционные, фреймовые и семантические сети
Интерпретатор. Это часть ЭС, производящая в определенном порядке обработку знаний (мышление), находящихся в базе знаний. Технология работы интерпретатора сводится к последовательному рассмотрению совокупности правил (правило за правилом). Если условие, содержащееся в правиле, соблюдается, выполняется определенное действие, и пользователю предоставляется вариант решения его проблемы.
Во многих экспертных системах вводятся дополнительные блоки: база данных, блок расчета, блок ввода и корректировки данных. Блок расчета необходим в ситуациях, связанных с принятием управленческих решений. При этом важную роль играет база данных, где содержатся плановые, физические, расчетные, отчетные и другие постоянные или оперативные показатели. Блок ввода и корректировки данных используется для оперативного и своевременного отражения текущих изменений в базе данных.
Модуль создания системы. Он служит для создания набора (иерархии) правил. Существуют два подхода, которые могут быть положены в основу модуля создания системы: использование алгоритмических языков программирования и использование оболочек экспертных систем.
Для представления базы знаний специально разработаны языки Лисп и Пролог, хотя можно использовать и любой известный алгоритмический язык.
Оболочка экспертных систем представляет собой готовую программную среду, которая может быть приспособлена к решению определенной проблемы путем создания соответствующей базы знаний. В большинстве случаев использование оболочек позволяет создавать экспертные системы быстрее и легче в сравнении с программированием.
Модели знаний
Знания – это выявленные закономерности предметной области (принципы, связи, законы), позволяющие решать задачи в этой области. Для хранения знаний используются базы знаний.
Знания могут быть классифицированы по следующим категориям:
- поверхностные – знания о видимых взаимосвязях между отдельными событиями и фактами в предметной области;
- глубинные – абстракции, аналогии, схемы, отражающие структуру и процессы в предметной области.
Существуют десятки моделей представления знаний для различных предметных областей. Большинство из них может быть сведено к следующим классам:
- продукционные;
- семантические сети;
- фреймы;
- формальные логические модели.
Продукционная модель, или модель, основанная на правилах, позволяет представить знания в виде предложений типа: Если (условие), то (действие).
Под условием понимается некоторое предложение-образец, по которому осуществляется поиск в базе знаний, а под действием — действия, выполняемые при успешном исходе поиска (они могут быть промежуточными, выступающими далее как условия, и терминальными или целевыми, завершающими работу системы).
При использовании продукционной модели база знаний состоит из набора правил. Программа, управляющая перебором правил, называется машиной вывода. Чаще всего вывод бывает прямой (от данных к поиску цели) или обратный (от цели для ее подтверждения — к данным). Данные — это исходные факты, на основании которых запускается машина вывода — программа, перебирающая правила из базы.
Продукционная модель чаще всего применяется в промышленных экспертных системах. Она привлекает разработчиков своей наглядностью, высокой модульностью, легкостью внесения дополнений и изменений и простотой механизма логического вывода.
Семантическая сеть — это ориентированный граф, вершины которого — понятия, а дуги — отношения между ними.
Понятиями обычно выступают абстрактные или конкретные объекты, а отношения — это связи типа: "это" ("is"), "имеет частью" ("has part"), "принадлежит", "любит". Характерной особенностью семантических сетей является обязательное наличие трех типов отношений:
- класс — элемент класса;
- свойство — значение;
- пример элемента класса.
Выделяют несколько классификаций семантических сетей:
- по количеству типов отношений (однородные – с единственным типом отношений; неоднородные – с различными типами отношений);
- по типам отношений (бинарные – в которых отношения связывают два объекта; n-арные – отношения, связывающие более двух понятий).
Наиболее часто в семантических сетях используются следующие отношения:
- связи типа “часть-целое”;
- функциональные связи;
- количественные;
- пространственные;
- временные;
- атрибутные связи;
- логические связи.
Проблема поиска решения в базе знаний типа семантической сети сводится к задаче поиска фрагмента сети, соответствующего некоторой подсети, соответствующей поставленному вопросу.
Основное преимущество этой модели – в соответствии современным представлениям об организации долговременной памяти человека. Недостаток модели – сложность поиска вывода на семантической сети.
Под фреймом понимается абстрактный образ или ситуация. В психологии и философии известно понятие абстрактного образа. Например, слово "комната" вызывает у слушающих образ комнаты: "жилое помещение с четырьмя стенами, полом, потолком, окнами и дверью, площадью 6-20 м2 ". Из этого описания ничего нельзя убрать (например, убрав окна, мы получим уже чулан, а не комнату), но в нем есть "дырки", или "слоты", — это незаполненные значения некоторых атрибутов — количество окон, цвет стен, высота потолка, покрытие пола и др.
В теории фреймов такой образ называется фреймом. Фреймом называется также и формализованная модель для отображения образа.
Структуру фрейма можно представить так:
ИМЯ ФРЕЙМА:
(имя 1-го слота: значение 1-го слота),
(имя 2-го слота: значение 2-го слота),
…………………..
(имя N-ro слота: значение N-ro слота).
Различают фреймы-образцы, или прототипы, хранящиеся в базе знаний, и фреймы - экземпляры, которые создаются для отображения реальных ситуаций на основе поступающих данных.
Модель фрейма является достаточно универсальной, поскольку позволяет отобразить все многообразие знаний о мире через:
- фреймы-структуры, для обозначения объектов и понятий (заем, залог, вексель);
- фреймы-роли (менеджер, кассир, клиент);
- фреймы-сценарии (банкротство, собрание акционеров, празднование именин);
- фреймы-ситуации (тревога, авария, рабочий режим устройства) и др.
Важнейшим свойством теории фреймов является заимствованное из теории семантических сетей наследование свойств.
Основным преимуществом фреймов как модели представления знаний является способность отражать концептуальную основу организации памяти человека, а также ее гибкость и наглядность.
В представлении знаний выделяют формальные логические модели, основанные на классическом исчислении предикатов I порядка, когда предметная область или задача описывается в виде набора аксиом. Эта логическая модель применима в основном в исследовательских "игрушечных" системах, так как предъявляет очень высокие требования и ограничения к предметной области. В промышленных же экспертных системах используются различные ее модификации и расширения.
Модели знаний – продукционная, фреймовая, семантических сетей – обладают практически равными возможностями представления знаний. Дополнительно каждая модель знаний обладает следующими свойствами:
- продукционная модель позволяет легко расширять и усложнять множество правил вывода;
- фреймовая модель позволяет усилить вычислительные аспекты обработки знаний за счет расширения множества присоединенных процедур;
- модель семантических сетей позволяет расширять список отношений между вершинами и дугами сети, приближая выразительные возможности сети к уровню естественного языка.