Особенности экспертных систем

Автор работы: Пользователь скрыл имя, 06 Декабря 2010 в 21:18, Не определен

Описание работы

Особенности экспертных систем
Структура и режимы использования ЭС
Организация знаний в ЭС
Отличие ЭС от традиционных программ
Компетентность ЭС
Символьные рассуждения в ЭС
Глубина ЭС

Файлы: 1 файл

ЭС.doc

— 270.00 Кб (Скачать файл)

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

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

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

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

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

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

В [10] рассматривается, каким образом знания структурированы в программах, т. е. способы представления знаний. Существует много стандартных способов представления знаний, и при построении ЭС может быть использован любой из них, сам по себе или в сочетании с другими. Каждый способ позволяет получить программу с некоторыми преимуществами — делает ее более эффективной, облегчает ее понимание и модификацию. Широкий обзор наиболее важных способов можно найти в "Справочнике по искусственному интеллекту". В современных ЭС чаще всего применяются три самых важных метода представления знаний: правила (самый популярный), семантические сети и фреймы.

Представление знаний, основанное на правилах, построено  на использовании выражений вида ЕСЛИ (условие) — ТО (действие). Например:

[1] Если пациент  был по профессии изолировщиком до 1988 г., то пациент непосредственно работал с асбестом.

[2] Если пациент  непосредственно работал с асбестом  и находился при этом в закрытом  помещении, то пациент получил  большую дозу асбестовой пыли.

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

Сопоставление частей ЕСЛИ правил с фактами может породить так называемую цепочку выводов. Цепочка выводов, образованная последовательным применением правил 1 и 2, изображена на рис. 5.5. Эта цепочка показывает, как система использует правила для вывода о том, насколько серьезную дозу канцерогенного вещества пациент получил при работе с асбестом.

 
Рис. 5.5.  Цепочка вывода для получения заключения о накопленной дозе асбестовой пыли

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

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

Наиболее важные термины настоящей главы собраны  в таблице 5.1.

Таблица 5.1.
Термин Значение
Алгоритм Формальная процедура, которая гарантирует получение оптимального или корректного решения
База  знаний Часть системы, основанной на знаниях, или  экспертной системы, содержащей предметные знания
Диспетчер Часть механизма вывода, которая решает, когда и в каком порядке применять различные "куски" предметных знаний Знания Информация, необходимая программе для того, чтобы эта программа вела себя интеллектуально
Интерпретатор Часть механизма вывода, которая решает, каким образом применять предметные знания
Коэффициент уверенности Число, обозначающее вероятность или степень  уверенности, с которой можно  считать данный факт или правило  достоверным или справедливым
Механизм  вывода Та  часть ЭС, в которой содержатся общие знания о схеме управления решением задач
Правило Предметные знания, знания о предметной области
Представление знаний Процесс структурирования предметных знаний с  целью облегчить поиск решения  задачи
Семантическая сеть Метод представления знаний посредством  сети узлов, соответствующих концепциям или объектам — последние связаны дугами, которые описывают отношения между узлами
Система, основанная на знаниях Программа, в которой предметные знания представлены в явном виде и отделены от прочих знаний программы
Фрейм Метод представления знаний, когда свойства связываются с вершинами, представляющими концепции или объекты.

Свойства описываются  в терминах атрибутов (называемых слотами) и их значений

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

Отличие ЭС от традиционных программ

Еще один способ определить ЭС — это сравнить их с обычными программами. Главное  различие состоит в том, что ЭС манипулируют знаниями, тогда как обычные программы манипулируют данными. Фирма Teknowledge, которая занимается производством коммерческих экспертных систем, описывает эти различия, как показано в таблице 6.1 [81].

Таблица 6.1.
Обработка данных Инженерия знаний
Представление и использование  данных

Алгоритмы

Повторный прогон

Эффективная обработка  больших баз данных

Представление и использование знаний

Эвристики

Процесс логического  вывода

Эффективная обработка  баз знаний

Специалисты в  области ИИ имеют несколько более узкое (и более сложное) представление о том, что такое ЭС. Под экспертной системой понимается программа для ЭВМ, которая обладает свойствами, изображенными на рис. 6.1.

Рассмотрим эти  характеристики более подробно.

6.1.1. Компетентность ЭС

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

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

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

 
Рис. 6.1.  Особенности ЭС, отличающие ее от обычных программ

6.1.2. Символьные рассуждения в ЭС

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

Примеры символов:

  • продукт;
  • ответчик;
  • 0.8.

Эти символы  объединяют, чтобы выразить отношения  между ними. Когда эти отношения  представлены в программе ИИ, они  называются символьными структурами.

Примеры символьных структур:

(ДЕФЕКТНЫЙ продукт) (ВЫПУЩЕННЫЙ ответчиком продукт) (РАВНО (ОТВЕТСТВЕННОСТЬ ответчик) 0.8).

Эти структуры  можно интерпретировать следующим  образом: "продукт является дефектным", "продукт был выпущен в продажу  ответчиком" и "ответственность ответчика равна 0.8".

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

6.1.3. Глубина ЭС

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

Информация о работе Особенности экспертных систем