Лекция 9

Тема: Экспертные системы (ЭС). Назначение, структура и функционирование ЭС.

 

План.

 

1. Назначение, определение и обоснование появления ЭС.

2. Общая структура экспертной системы. Компоненты ЭС.

3. Инструментальные средства проектирования и разработки экспертных систем на ПК.

4. Виды знаний. Модели представления знаний.

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

6. Примеры реализации ЭС.

 

Ключевые слова

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

 

1. Назначение, определение и обоснование появления ЭС.

 

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

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

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

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

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

ЭС должна обладать следующими характерными особенностями:

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

· анализировать и объяснять свои действия и выводы в терминах, понятных пользователю;

· располагать средствами диалога с пользователем или экспертом, не являющимся специалистом;

· приобретать новые знания.

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

 

2. Общая структура экспертной системы. Компоненты ЭС

 

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

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

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

 

Рис. 1. Общая структура ЭС.

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

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

 

3. Инструментальные средства проектирования и разработки экспертных систем на ПК.

 

Для проектирования ЭС используются универсальные и проблемно-ориентированные инструментальные средства (ИС). К основным характеристикам ИС относятся:

· особенности представления знаний о предметной области в БЗ ЭС и способ вывода заключений в ходе консультации (способ рассуждений);

· средства работы в условиях неопределенности;

· интерфейс пользователя, наличие и особенности компоненты объяснения;

· интерфейс разработчика ЭС, средства редактирования БЗ и отладки -окружение разработки;

· системный интерфейс – средства связи с внешним по отношению к ИС и ЭС системным и прикладным программным обеспечением.

Средства проектирования ЭС

К средствам проектирования ЭС относятся:

1. Традиционные алгоритмические языки программирования и специальные программные среды.

2. Функциональные, объектно-ориентированные языки и языки логического программирования.

3. Языки представления знаний.

4. ИС для разработки ЭС системного уровня.

В качестве традиционных алгоритмических языков выделяют Паскаль, С, Бейсик, Фортран. Специальные программные средыобъединяют быстрые компиляторы, экранные редакторы и интерактивные средства отладки: Turbo-Pascal, Turbo-C. Эта категория ИС позволяет создавать наиболее быстродействующие, но и наиболее трудоемкие ЭС для ПК. Функциональные, объектно-ориентированные и языки логического программирования дают возможность достаточно просто моделировать БЗ и машину логического вывода ЭС. К функциональным языкам можно отнести – Лисп (LISP), INTER LISP, к объектно-ориентированным – Смолток (Small-Talk), к языкам логического программирования – Пролог (PROLOG). Широкое применение нашел язык Пролог. Пролог основан на языке формальной логики предикатов и обеспечивает представление знаний в виде фактов и правил вывода.

Другой класс ИС – языки представления знаний – содержат механизмы представления знаний и управления. К ним можно отнести язык OPS5, LOODS, KES (Computer Thought Comporation). OPS5 – обеспечивает потребности инженерии знаний, но не отвечает конкретным стратегиям решения задач или схемам представления знаний.

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

Оболочки дают возможность работать на системном уровне, т.е. уровне понятий предметной области; при этом основная роль разработчика заключается в пополнении БЗ знаниями экспертов. Оболочки содержат невидимые для пользователя структуры данных и управляющую стратегию, необходимую для каждого конкретного приложения. оболочки появились как развитие «пустых» ЭС. Затем оболочки строились на основе существующих ЭС.

 

4. Виды знаний, модели представления знаний

 

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

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

Под декларативными знаниями подразумевают знания типа «А это В» и они характерны для баз данных (например «скарлатина – это инфекционное заболевание»). К процедурным знаниям относятся сведения о способах преобразования декларативных знаний.

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

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

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

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

Особенности представления знаний и стратегия логического вывода определяют два основных элемента ЭС-БЗ и машину логического вывода. Моделями представления знаний в ЭС системах служат:

· продукционные системы;

· логические модели;

· фреймы;

· семантические сети и др.

Наиболее распространенными моделями представления знаний являются продукционные системы, в которых для представления знаний в основном используются правила продукции вида «Если (условие), То (следствие)». Здесь знания представляются в виде совокупности специальных единиц, имеющих следующую структуру.

· имя продукции: Сфера;

· предусловие;

· условие;

· если А, то В;

· постусловие.

Сфера позволяет анализировать только правила, относящиеся к делу.

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

Условия определяют возможность применения того или иного правила.

Ядро продукции «Если А, То В» описывает преобразование, которое составляет суть продукционного правила.

Постусловие говорит о том, что надо делать, когда данное продукционное правило сработало.

Продукционная система включает следующие компоненты:

· базу данных, содержащую множество факторов;

· базу правил, содержащую набор продукций;

· интерпретатор (механизм логического вывода) или правила работы с продукциями.

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

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

Логические модули представления знаний реализуются средствами логики предикатов. Предикатом называется функция, принимающая только два значения – истина и ложь – и предназначенная для выражения свойств объектов или связей между ними. Выражения, в котором утверждается или отрицается наличие каких-либо свойств у объекта, называется высказываниями. Отдельные высказывания могут соединяться связками И, ИЛИ, НЕ, которые называются булевыми операторами. Основу исчисления высказываний составляют правила образования сложных высказываний из атомарных. В качестве примеров сложных (составных) высказываний можно привести следующие:

· А – истинно и В ложно;

· А и В ложно;

· А и В истинно.

Здесь переменные обозначают логические высказывания, о которых можно сказать, что они истины или ложны. Логические операторы имеются в большинстве языков программирования.

В общем случае модели, основанные на логике предикатов, описываются формальной системой, которая задается четверкой:

 

М=(Т,Р,А,П),

 

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

Главное преимущество логических моделей представления знаний заключается в возможности непосредственно запрограммировать механизм вывода синтаксически правильных высказываний.

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

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

 

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

 

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

В ЭС GURU используется Байесовский подход в условиях неопределенности лингвистических описаний предметной области.

 

6. Примеры реализации ЭС

 

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

Широкий интерес различных категорий пользователей к ЭС, постоянное увеличение производительности и объемов оперативной и внешней памяти ПК, стимулировали стремительный рост числа ЭС, ориентированных на ПК. Большинство ЭС разрабатывается для ПК совместимых с IBM PC XT/AT или PS/2. Например, ЭС созданная для диагностики неисправностей электронного оборудования разработана на ПК совместимая с IBM PC/AT. Медицинская диагностическая ЭС на основе технологии Mycin разработана на ПК совместимая с IBM PC XT (фирмой Pro. MD).

 

 

Контрольные вопросы и задания

 

1. Дайте определение понятию «экспертная система». Каково основное назначение ЭС?

2. Для каких целей разрабатывается ЭС?

3. Какие существенные компоненты можно выделить в ЭС?

4. В каких областях приложений ЭС нашла широкое применение?

5. Перечислите основные инструментальные средства используемые при создании ЭС.

6. Отметьте особенности медицинских ЭС SETH и PERFEX.

7. Назовите известные модели представления знаний в ЭС.

8. Для чего создаются оболочки в ЭС?

9. Объясните назначение и функции интерфейса пользователя, интерфейса разработчика и системного интерфейса.

10. Чем отличаются функциональные, объектно-ориентированные и языки логического программирования?

11. Какие языки программирования используются при создании ЭС? К каким языкам относится ЛИСП?

12. Какие функции выполняет подсистема объяснений?

13. Выделите виды знаний используемые в ЭС.

 

 

Литература: 6, 8, 11, 7.