
- •Глава 1 Введение в экспертные системы 7
- •Глава 2. Состояние работ в области искусственного интеллекта. Роль экспертных систем в исследованиях по искусственному интеллекту 19
- •Глава 3. Классификация экспертных систем и инструментальных средств 27
- •Глава 4. Анализ состояния экспертных систем и инструментальных средств 39
- •Глава 5. Представление знаний в системах, основанных на знаниях 53
- •Глава 6. Методы и стратегии поиска решений в системах, основанных на знаниях 71
- •Глава 7. Основы методологии разработки экспертных систем 94
- •Глава 8. Инструментальный комплекс для создания статических экспертных систем (на примере интегрированного комплекса эко) 110
- •Глава 9. Инструментальный комплекс для создания экспертных систем реального времени (на примере интегрированной среды g2-gensym corp., сша) 119
- •Предисловие
- •Глава 1 Введение в экспертные системы
- •1.1. Назначение экспертных систем
- •1.2. Формальные основы экспертных систем
- •1.3 Архитектура статических и динамических экспертных систем
- •1.4 Этапы разработки экспертных систем
- •Литература
- •Вопросы для самопроверки
- •Глава 2. Состояние работ в области искусственного интеллекта. Роль экспертных систем в исследованиях по искусственному интеллекту
- •2.1 Основные направления искусственного интеллекта
- •2.2 Состояние работ в области экспертных систем
- •2.3 Состояние работ в области естественно - языковых систем
- •2.4 Состояние работ в области нейронных сетей
- •2.5 Состояние работ по новым направлениям искусственного интеллекта
- •Литература
- •Вопросы для самопроверки
- •Глава 3. Классификация экспертных систем и инструментальных средств
- •3.1 Классификация экспертных систем
- •3.1.1 Тип приложения
- •3.1.2 Стадия существования
- •3.1.3 Масштаб эс (тип эвм )
- •3.1.4 Тип проблемной среды
- •3.2 Классификация инструментальных средств
- •3.2.1 Уровень используемого языка
- •3.2.2 Парадигмы программирования (механизмы реализации исполняемых утверждений)
- •3.2.3 Способ представления знаний
- •3.2.4 Механизмы вывода и моделирования
- •3.2.5 Средства приобретения знаний
- •3.2.6 Технология разработки эс
- •3.3 Сопоставление инструментальных средств с типами проблемных сред
- •Литература
- •Вопросы для самопроверки
- •Глава 4. Анализ состояния экспертных систем и инструментальных средств
- •4.1 Анализ состояния статических экспертных систем
- •4.2 Анализ состояния динамических экспертных систем
- •4.2.1 Основные производители ис для эс рв
- •4.2.2 Сравнение ис для создания эс рв
- •Литература
- •Вопросы для самопроверки
- •Глава 5. Представление знаний в системах, основанных на знаниях
- •5.1 Состав и организация знаний в экспертных системах
- •5.1.1 Уровни представления и уровни детальности
- •5.1.2 Организация знаний в рабочей памяти
- •5.1.3 Организация знаний в базе знаний
- •5.2 Модели представления знаний
- •5.2.1 Логические модели представления знаний
- •5.2.2 Семантические модели
- •5.2.3 Фреймы
- •5.2.4 Объектно-ориентированный подход
- •5.2.5 Продукционные модели и модули, управляемые образцами
- •5.3 Практика использования моделей представления знаний в экспертных системах
- •5.3.1. Применение продукционных правил
- •5.3.2 Использование семантических сетей
- •5.3.3 Использование фреймов
- •5.3.4 Использование управляемых образцами модулей
- •5.3.5 Смешанные представления (объекты и правила)
- •Литература
- •Вопросы для самопроверки
- •Глава 6. Методы и стратегии поиска решений в системах, основанных на знаниях
- •6.1 Механизмы вывода экспертных систем
- •6.2 Стратегии как механизмы управления
- •6.3 Методы поиска решений в экспертных системах
- •6.3.1 Поиск решений в одном пространстве
- •6.3.2 Поиск в иерархии пространств
- •6.3.3. Поиск в альтернативных пространствах
- •6.3.4 Поиск с использованием нескольких моделей
- •6.3.5 Выбор метода решения задач
- •Литература
- •Вопросы для самопроверки
- •Глава 7. Основы методологии разработки экспертных систем
- •7.1 Идентификация
- •7.2 Концептуализация
- •7.3 Формализация
- •7.3.1 Структуризация исходной задачи
- •7.3.2 Структуризация предметной области на основе иерархии классов
- •7.3.3 Структуризация выполняемых утверждений базы знаний приложений
- •7.3.4 Структуризация приложения на основе иерархии "часть/целое"
- •7.4 Выполнение
- •7.5 Отладка и тестирование
- •7.5.1 Методы тестирования экспертных систем
- •7.5.2 Механизм инспекции экспертной системы
- •7.5.3 Применение архивных данных для формирования сценариев отладки и тестирования динамических экспертных систем (дэс)
- •7.6 Опытная эксплуатация и внедрение
- •Литература
- •Вопросы для самопроверки
- •Глава 8. Инструментальный комплекс для создания статических экспертных систем (на примере интегрированного комплекса эко)
- •8.1 Средства представления знаний и стратегии управления
- •8.1.1 Структура комплекса эко
- •8.1.2 Средства представления знаний в оболочке эко
- •8.1.3 Стратегии управления в оболочке эко
- •8.2 Приобретение знаний и решение задач средствами оболочки эко
- •8.3 Ввод общих знаний средствами системы к-эко
- •8.4 Формирование баз знаний на основе обучающей выборки средствами системы илис
- •Литература
- •Вопросы для самопроверки
- •Глава 9. Инструментальный комплекс для создания экспертных систем реального времени (на примере интегрированной среды g2-gensym corp., сша)
- •9.1 База знаний
- •9.1.1 Сущности и иерархия классов
- •9.1.2 Иерархия модулей и рабочих пространств
- •9.1.3 Структуры данных бз
- •9.2 Машина вывода, планировщик и подсистема моделирования
- •9.2.1 Машина вывода
- •9.2.2 Планировщик
- •9.2.3 Подсистема моделирования
- •9.3 Среда разработчика в системе g2
- •9.3.1 Естественно-языковый текстовый редактор
- •9.3.2 Интерфейс с пользователем
- •9.3.3 Средства инспекции и отладки
- •9.4 Интерфейс с внешним окружением
- •9.5 Проблемно/предметно-ориентированные среды и графические языки на базе g2
- •9.5.2 ReThink (подумай еще)
- •9.5.5 BatchDesign_Kit – интеллектуальное проектирование серийного производства в фармакологии
- •Литература
- •Вопросы для самопроверки
- •Литература
- •Приложение 2 Бизнес-Процесс "реинжиниринг" и интеллектуальное моделирование компаний
- •Литература
- •Приложение 3 Нейросетевая технология
- •Литература
- •Приложение 4 Системы поддержки принятия решений, хранилища данных и извлечение знаний
- •Литература
- •Приложение 5 Опыт применения динамических оболочек экспертных систем
6.3.3. Поиск в альтернативных пространствах
Рассмотренные выше методы поиска исходят из молчаливой предпосылки, что знания о предметной области и данные о решаемой задаче являются точными и полными и для них справедливо следующее:
• все утверждения, описывающие состояние, являются истинными;
• применение оператора к некоторому состоянию формирует некоторое новое состояние, описание которого состоит только из истинных фактов.
Однако при решении любых практических задач и особенно при решении неформализованных задач распространена обратная ситуация. Эксперту приходится работать в условиях неполноты и неточности знаний (данных) и, как правило, в условиях дефицита времени. Когда эксперт решает задачу, он использует методы, отличающиеся от формальных математических рассуждений. В математических рассуждениях каждое заключение должно строго следовать из предыдущей информации. В противоположность этому в правдоподобных рассуждениях, основанных на здравом смысле, заключения основываются на частичной информации. В этом случае эксперт делает правдоподобные предположения, которые он не может доказать; тем самым вопрос об их истинности остается открытым. Все утверждения, полученные на основе этих правдоподобных предположений, также не могут быть доказаны.
Один из способов обоснования предположений заключается в том, чтобы рассматривать их как возможные значения, задаваемые по умолчанию. Например, высказав предположение, что сейчас 14 ч (посмотрев на часы), мы молчаливо предполагаем, что часы идут и идут правильно. Обычно человек знает, что некоторые предположения верны только при определенных условиях. Если информация, указывающая на нарушение этих условий; отсутствует, то предположение может быть высказано. Другое обоснование предположений базируется на рассмотрении рассуждения как процесса с ограниченными ресурсами. Так, можно считать, что предположение (X) имеет место, если, используя ограниченные ресурсы, нельзя доказать истинность противоположного утверждения. Предположение и выводы, сделанные на его основе, должны устраняться, если появилась информация, показывающая ошибочность этого предположения. Этот аспект в построении умозаключений с использованием предположений называется немонотонностью.
Любая
формальная
система является
монотонной,
т.е.
если А, В и С есть некоторые высказывания,
такие, что если В
выводится
из А,
то
В
будет
выводиться и из
.
Система немонотонна,
если
В
выводится
из A,
но
выводится
из
[8].
Немонотонные рассуждения особенно
важны при решении задач планирования
и конструирования. В этих задачах
пространство поиска иногда очень велико,
и нет возможности предвидеть все
последствия сделанного выбора. Так,
например, конструктор знает, чего он
хочет, но не знает, как это сделать.
Поэтому при конструировании предположения
выступают в виде пробных решений,
последствия которых затем анализируются
с точки зрения их пригодности
(непригодности). Если последствия не
противоречат тому, что хотел конструктор,
то процесс конструирования продолжается
дальше, возможно, с выдвижением новых
предположений. В противном случае
необходимо устранить все последствия
и сделать альтернативное предположение
и т.д.
Итак, для того чтобы система могла делать умозаключения, основанные на здравом смысле, при работе с неполными (неточными) данными и знаниями, она должна быть способна делать предположения, а при получении новой информации, показывающей ошибочность предположений, отказываться как от сделанных предположений, так и от умозаключений, полученных на основе этих предположений. Мнение системы о том, какие факты имеют место, изменяется в ходе рассуждения, т.е. можно говорить о ревизии мнений. Таким образом, даже если рассматривать проблемную область как статическую, неполнота (и неточность) знаний и данных влечет за собой рассмотрение этой области при различных (и даже противоположных) предположениях, что, в свою очередь, приводит к представлению области в виде альтернативных пространств, соответствующих различным, возможно, противоречивым и (или) взаимодополняющим предположениям и мнениям.
Мнение В можно представлять в виде отношения, состоящего из субъекта мнения a (индивида или системы, имеющих рассматриваемое мнение), объекта мнения p (то, о чем субъект имеет мнение) и обоснования мнения r (причины, по которым субъект имеет данное мнение), или в формальном виде - B (а, р, r) (a думает, что p, так как r).
Будем говорить, что множество мнений, свойственных некоторому индивиду (системе), составляет его систему мнений. Основываясь на некоторой системе мнений, можно образовать пространство поиска, предназначенное для решения каких-либо задач. В ходе рассуждений человек (система) может менять свои мнения, образуя различные системы мнений. Совокупность мнений, которой система придерживается в текущий момент, будем называть активной системой мнений. Каждой из систем мнений соответствует свое пространство поиска, а все вместе они образуют альтернативные пространства. На рис. 6.7 изображены три альтернативных пространства Р, Q и R. Пространство Р образовано исходными посылками C1, B1, предположениями А1 и выводами, сделанными на их основе; пространство Q образовано из C1, B1, предположений A2, D1 и выводов, сделанных на их основе; пространство R образовано из C1, B1, предположений A2, D2 и выводов, сделанных на их основе.
Рис.6.7. Пример альтернативных пространств
Для того чтобы изменить мнение, система должна быть способна рассуждать о зависимостях, существующих в активной системе мнений. Новые мнения могут быть следствием новой информации, полученной извне, или выведенной. Зависимости в системе мнений должны содержать сведения о мнениях, правилах вывода и обоснованиях (поддержках) мнений. Простейшим видом обоснования (justification) может являться информация о том, на каких мнениях основываются данные. Например, предположим, что система имеет следующие утверждения:
Мнение 1: R участвует в совещании в среду в 13 ч.
Мнение 2: Если R присутствует на совещании, то он занят.
Правило
3: Modus
ponens
.
Из этой информации можно сделать вывод:
Мнение 4: R занят в среду в 13 ч.
Обоснованием для этого мнения может быть следующая запись:
Обоснование 1:
Поддержка для: Мнение 4.
Правило вывода: Правило 3.
Посылки: (Мнение 1, Мнение 2).
Обоснование может использоваться для поддержки или изменения текущей системы мнений (ревизии мнений).
Остановимся на особенностях механизма поиска в альтернативных пространствах. В рассмотренных ранее методах поиск в некотором направлении прерывался при достижении целевого или терминального состояния. Если достигалось целевое состояние, то либо работа завершалась (при поиске одного решения), либо продолжался поиск следующего решения. При достижении терминального состояния необходимо вернуться в некоторое предыдущее состояние пространства и продолжить поиск в новом направлении. Обычно при реализации поиска использовался механизм бэктрекинга (backtracking). Бэктрекинг работает по принципу "last-in, first-out" ("последним вошел, первым вышел"), т.е. сначала устраняется последнее рассматриваемое состояние, для реализации которого может быть применен механизм стека.
Применение механизма бэктрекинга при поиске в альтернативных мирах будет приводить к излишней неэффективности, так как все неудачи, возникшие при поиске в одном направлении, не запоминаются при переходе к поиску в другом направлении, Та же самая причина неудачи может заново обнаруживаться и на новом направлении. Так, например, если мы взяли стакан правой рукой и из-за того, что он горячий, отпустили его, то нецелесообразно тут же пытаться брать стакан левой рукой (что, образно говоря, будет делать бэктрекинг).
Таким образом, механизм традиционного бэктрекинга отбрасывает слишком много информации. Осуществлять возврат целесообразно не к состоянию, непосредственно предшествующему данному, а к тому состоянию, которое является причиной возникновения неудачи. В используемых нами терминах причиной неудач являются предположения, т.е. недоказуемые утверждения. Поэтому при обнаружении неудачи необходимо возвращаться в состояние, где это предположение было сделано, и испытывать другое предположение. Так, например, если при получении утверждения 8 (см. рис. 6.7) система установила наличие неудачи (противоречия), то возврат нужно делать не к предыдущему шагу (к утверждению 7), а к шагу 5, на котором было сделано предположение A1, и заменять A1 на некоторое новое предположение А2. Таким образом осуществляется переход из пространства P в новое пространство (R или Q). Для выполнения описан-
кого способа поиска можно использовать информацию о зависимости, представленную в том или ином виде. По этой причине данный метод поиска называют поиском, направляемым зависимостью.