Московский государственный открытый университет им. В.С. Черномырдина
Опубликован: 21.01.2011 | Доступ: свободный | Студентов: 975 / 254 | Оценка: 3.86 / 3.63 | Длительность: 14:33:00
Специальности: Разработчик аппаратуры
Лекция 3:

Экспертные системы в технологии как класс интеллектуальных систем

< Лекция 2 || Лекция 3: 12 || Лекция 4 >

3.4. Организация знаний в ЭС

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

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

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

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

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

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

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

Экспертные системы как системы, основанные на знаниях

Рис. 3.2. Экспертные системы как системы, основанные на знаниях

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

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

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

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

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

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

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

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

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

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

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

Контрольные вопросы

  1. Что понимают под экспертной системой?
  2. Назовите особенности экспертных систем.
  3. Приведите структуру экспертной системы.
  4. Какими качествами должна обладать ЭС?
  5. Назовите трудности, возникающие при разработке ЭС.
  6. Что называют метазнаниями?
  7. Что дают пользователю экспертные системы?
  8. Назовите типы задач, решаемых ЭС.
  9. Какие действия выполняет диалоговый компонент ЭС?
  10. Какие функции выполняет решатель?
  11. Какие действия выполняет объяснительный компонент?
  12. Опишите режимы работы ЭС.
  13. Что означает термин "знание" в искусственном интеллекте?
  14. Покажите различие между алгоритмическим и эвристическим методами.
  15. Что входит в понятие " фрейм "?
  16. Опишите режим консультации ЭС.
  17. Что входит в компонент приобретения знаний?
  18. Что такое система, основанная на знаниях?
< Лекция 2 || Лекция 3: 12 || Лекция 4 >
Роман Пархоменко
Роман Пархоменко
Россия, Sankt Piterburg, 182, 1997
Олег Корсак
Олег Корсак
Латвия, Рига