Лекция № 12. Базы знаний.

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

Более развернутое и содержательное определение экспертной системы содержится в [22]. Согласно этому определению, идеальная экспертная система должна обладать следующими основными свойствами: компетентностью, т. е. принятые ею решения должны быть такого же высокого уровня, как и у эксперта-профессионала; способностью к рассуждению на основе символьных преобразований; способностью использовать как общие, так и частные схемы рассуждения; способностью решать трудные задачи из сложных реальных, предметных областей; способностью к переформулированию запросов и задач; способностью к мета-рассуждениям, т. е. к рассуждениям о собственной работе и структуре.

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

знаний и некоторой схемы рассуждения, называемой обычно системой логического вывода.

В этом смысле материал, излагаемый здесь, имеет пересечения с материалом гл. 2, 3.

Экспертные системы имеют и существенные отличия от других решающих систем искусственного интеллекта. Эти отличия связаны прежде всего с наличием в составе ЭС систем приобретения знаний и систем отображения и пояснения решения. Кроме того, в отличие от излагаемых в гл. 2,3 решателей и систем управления базами знаний экспертная система, как правило, предназначена для узкой области применения (исключение могут составлять экспертные системы-оболочки, представляющие собой инструментальное средство для разборки конкретных ЭС).

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

 
 

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

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

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

С помощью модуля отображения и объяснения решения происходит отображение промежуточных и окончательных решений и объяснение пользователю действий системы. Как правило, система отвечает на вопросы «как» и «почему», т.е. на вопросы типа «как достигнуто то или иное заключение», «почему оно было достигнуто «или» почему отброшены другие альтернативы» (см. § 5.4). Многие специалисты полагают, что наличие модуля объяснения является той важной особенностью экспертных систем, которая обеспечивает необходимый уровень доверия пользователя к системе. Более того, неявно предполагается, что если метод рассуждения, реализованный в экспертной системе, не может быть объяснен человеку, то он должен быть признан неудовлетворительным. Эта ситуация отличается от той, которая существует в области разработки решателей (см. гл. 3), где важно само решение и не столь существен процесс объяснения этого решения.

Функция модуля приобретения знаний состоит в поддержке процесса извлечения знаний о соответствующей узкоспециализированной предметной области (см. § 5.4). Как правило, эти знания, носящие эмпирический характер, плохо формализованы и отсутствуют в специальной литературе: учебниках, инструкциях, отчетах. Такие знания приобретаются экспертом в результате

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

 

 

 

Рассмотрим вопросы представления знаний, структуру базы знаний и вопросы вывода в заданной модели некоторой типичной экспертной системы. Чаще всего для представления знаний в экспертных системах используются логические, продукционные и семантические модели. Логические и семантические модели достаточно подробно рассмотрены в гл. 3 и 2 соответственно, поэтому здесь рассмотрим только продукционные модели.

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

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

Работа продукционной системы состоит из последовательности итераций «идентификация — действие» [23]. Каждая итерация включает в себя процедуры принятия решения о вызове очередного правила и выполнения действий, определяемых им. Действия вызывают изменения во множестве фактов, которые могут влиять на выбор подходящего правила. Идентификация основана на сопоставлении условий из левой части правила продукции с содержанием базы данных. Из множества правил, у которых совпали левые части, формируется так называемый конфликтный набор. После этого применяется та или иная процедура разрешения конфликта, в результате чего выбирается некоторое правило из конфликтного набора, исполняется его правая часть и цикл повторяется. Существует ряд способов повышения эффективности выбора требуемой продукции из множества (процедур разрешения конфликта). К ним относятся:

— упорядочение продукций (линейное или частичное), т.е. указывается порядок применения правил;

— задание правил недавности (свежести) данных, т. е. используется возраст данных;

— введение правил различий, т. е. используется память состояний, например если данная интерпретация выполнялась, то она уже не выполняется;

— задание класса специальных случаев, т.е. используется отношение между означиваниями: некоторое правило используется, если искомая продукция является специальным случаем другой продукции;

— применение в первую очередь продукций с наиболее жесткими требованиями (продукций с наиболее длинным списком условий).

Процедур разрешения конфликтов и информация о последовательности примененных к базе данных продукций составляет ядро стратегии управления продукционной системы.

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

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

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

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

Обычно в развитых экспертных системах выделяют четыре типа знаний: фактуальные (декларативные); процедурные; управляющие; метазнания.

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

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

Управляющие знания представляют собой некоторый набор стратегий.

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

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

Метазнания могут выступать в разнообразных формах. В [22] приводятся примеры применения метазнаний:

— для адекватного выбора правила продукции при текущем состоянии базы фактов;

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

— для помощи в обнаружении ошибок;

— для усиления возможностей ЭС давать объяснения;

— для облегчения ввода в систему новых знаний

(фактов, правил) с использованием демонстрации основных конструкций знании аналогичного типа.