You are on page 1of 211

Э. В.Попов, И.Б. Фоминых, Е.В. Кисель, М.Д.

Шапот
СТАТИЧЕСКИЕ И ДИНАМИЧЕСКИЕ ЭКСПЕРТНЫЕ СИСТЕМЫ
Рекомендовано
Министерством общего и профессионального
образования Российской Федерации
в качестве учебного пособия
для студентов высших учебных заведений,
обучающихся по специальностям
"Прикладная математика",
"Автоматизированные системы
обработки информации и управления"

Москва
"Финансы и статистика" 1996
УДК 007:681.51
ББК32.817.я73
С 78
Рецензенты: кафедра прикладной математики Московского энергетического института,
кафедра "Проектирование и организация систем" Московского физико-технического
института и президент Ассоциации искусственного ин-теллекта Российской Федерации
академик РАЕН, профессор, доктор технических наук Д.А. Поспелов
С78 Статические и динамические экспертные системы: Учеб. пособие/Э.В. Попов, И.Б.
Фоминых, Е.Б. Кисель, М.Д. Шапот. - М.: Финансы и статистика, 1996. - 320с.: ил.
ISBN 5-279-01598-9.
Учебное пособие посвящено одной из центральных проблем искусственного
интеллекта - проблеме построения экспертных систем (ЭС), или систем, основанных на
знаниях. Рассмотрено современное состояние исследований в области искусственного
интеллекта. Обоснована важность ЭС как подхода к разработке интегрированных
прикладных систем, объединяющих технологии инженерии знаний и традиционного
программирования. Приведена классификация ЭС и инструментальных средств. Описаны
принципы, методы и средства построения ЭС. Особое внимание уделено новому классу
экспертных систем - динамическим системам реального времени.
Для студентов и преподавателей вузов, аспирантов и научных работников.
2404000000-100
С ———————— 73-96 ББК32.817.я73 010(01)-96
ISBN 5-279-01598-9
© Э.В.Попов, И.Б Фоминых, Е.Б. Кисель, М.Д. Шапот, 1996

ОГЛАВЛЕНИЕ
ПРЕДИСЛОВИЕ................................................................................................................................................................5
ГЛАВА 1 Введение в экспертные системы.....................................................................................................................7
1.1. Назначение экспертных систем.............................................................................................................................7
1.2. Формальные основы экспертных систем.............................................................................................................9
1.3 Архитектура статических и динамических экспертных систем.......................................................................11
1.4 Этапы разработки экспертных систем.................................................................................................................15
ЛИТЕРАТУРА..............................................................................................................................................................17
Вопросы для самопроверки........................................................................................................................................18
ГЛАВА 2. Состояние работ в области искусственного интеллекта. Роль экспертных систем в исследованиях по
искусственному интеллекту...........................................................................................................................................19
2.1 Основные направления искусственного интеллекта..........................................................................................19
2.2 Состояние работ в области экспертных систем..................................................................................................19
2.3 Состояние работ в области естественно - языковых систем.............................................................................22
2.4 Состояние работ в области нейронных сетей.....................................................................................................24
2.5 Состояние работ по новым направлениям искусственного интеллекта..........................................................25
ЛИТЕРАТУРА..............................................................................................................................................................26
Вопросы для самопроверки........................................................................................................................................26
ГЛАВА 3. Классификация экспертных систем и инструментальных средств..........................................................27
3.1 Классификация экспертных систем.....................................................................................................................27
3.1.1 Тип приложения..............................................................................................................................................27
3.1.2 Стадия существования...................................................................................................................................28
3.1.3 Масштаб ЭС (тип ЭВМ )...............................................................................................................................28
3.1.4 Тип проблемной среды..................................................................................................................................29
3.2 Классификация инструментальных средств.......................................................................................................31
3.2.1 Уровень используемого языка.......................................................................................................................32
3.2.2 Парадигмы программирования (механизмы реализации исполняемых утверждений)..........................32
3.2.3 Способ представления знаний......................................................................................................................34
3.2.4 Механизмы вывода и моделирования...........................................................................................................34
3.2.5 Средства приобретения знаний.....................................................................................................................35
3.2.6 Технология разработки ЭС............................................................................................................................35
3.3 Сопоставление инструментальных средств с типами проблемных сред........................................................36
ЛИТЕРАТУРА..............................................................................................................................................................37
Вопросы для самопроверки........................................................................................................................................37
ГЛАВА 4. Анализ состояния экспертных систем и инструментальных средств......................................................39
4.1 Анализ состояния статических экспертных систем...........................................................................................39
4.2 Анализ состояния динамических экспертных систем.......................................................................................43
4.2.1 Основные производители ИС для ЭС РВ.....................................................................................................45
4.2.2 Сравнение ИС для создания ЭС РВ..............................................................................................................48
ЛИТЕРАТУРА..............................................................................................................................................................52
Вопросы для самопроверки........................................................................................................................................52
ГЛАВА 5. Представление знаний в системах, основанных на знаниях.....................................................................53
5.1 Состав и организация знаний в экспертных системах.......................................................................................53
5.1.1 Уровни представления и уровни детальности.............................................................................................55
5.1.2 Организация знаний в рабочей памяти........................................................................................................55
5.1.3 Организация знаний в базе знаний...............................................................................................................56
5.2 Модели представления знаний.............................................................................................................................57
5.2.1 Логические модели представления знаний..................................................................................................58
5.2.2 Семантические модели..................................................................................................................................60
5.2.3 Фреймы............................................................................................................................................................62
5.2.4 Объектно-ориентированный подход.............................................................................................................63
5.2.5 Продукционные модели и модули, управляемые образцами.....................................................................64
2

5.3 Практика использования моделей представления знаний в экспертных системах........................................66
5.3.1. Применение продукционных правил..........................................................................................................66
5.3.2 Использование семантических сетей...........................................................................................................67
5.3.3 Использование фреймов................................................................................................................................67
5.3.4 Использование управляемых образцами модулей......................................................................................68
5.3.5 Смешанные представления (объекты и правила)........................................................................................69
ЛИТЕРАТУРА..............................................................................................................................................................69
Вопросы для самопроверки........................................................................................................................................70
ГЛАВА 6. Методы и стратегии поиска решений в системах, основанных на знаниях............................................71
6.1 Механизмы вывода экспертных систем..............................................................................................................71
6.2 Стратегии как механизмы управления................................................................................................................76
6.3 Методы поиска решений в экспертных системах...............................................................................................78
6.3.1 Поиск решений в одном пространстве.........................................................................................................79
6.3.2 Поиск в иерархии пространств.....................................................................................................................84
6.3.3. Поиск в альтернативных пространствах.....................................................................................................88
6.3.4 Поиск с использованием нескольких моделей............................................................................................91
6.3.5 Выбор метода решения задач........................................................................................................................92
ЛИТЕРАТУРА..............................................................................................................................................................93
Вопросы для самопроверки........................................................................................................................................93
ГЛАВА 7. Основы методологии разработки экспертных систем...............................................................................94
7.1 Идентификация......................................................................................................................................................95
7.2 Концептуализация.................................................................................................................................................96
7.3 Формализация........................................................................................................................................................98
7.3.1 Структуризация исходной задачи.................................................................................................................98
7.3.2 Структуризация предметной области на основе иерархии классов..........................................................99
7.3.3 Структуризация выполняемых утверждений базы знаний приложений................................................100
7.3.4 Структуризация приложения на основе иерархии "ЧАСТЬ/ЦЕЛОЕ".....................................................101
7.4 Выполнение..........................................................................................................................................................102
7.5 Отладка и тестирование......................................................................................................................................104
7.5.1 Методы тестирования экспертных систем.................................................................................................105
7.5.2 Механизм инспекции экспертной системы................................................................................................106
7.5.3 Применение архивных данных для формирования сценариев отладки и тестирования Динамических
Экспертных Систем (ДЭС)...................................................................................................................................106
7.6 Опытная эксплуатация и внедрение..................................................................................................................107
ЛИТЕРАТУРА............................................................................................................................................................109
Вопросы для самопроверки......................................................................................................................................109
ГЛАВА 8. Инструментальный комплекс для создания Статических Экспертных Систем (на примере
интегрированного комплекса ЭКО).............................................................................................................................110
8.1 Средства представления знаний и стратегии управления...............................................................................110
8.1.1 Структура комплекса ЭКО...........................................................................................................................110
8.1.2 Средства представления знаний в оболочке ЭКО.....................................................................................111
8.1.3 Стратегии управления в оболочке ЭКО.....................................................................................................114
8.2 Приобретение знаний и решение задач средствами оболочки ЭКО...............................................................115
8.3 Ввод общих знаний средствами системы К-ЭКО.............................................................................................117
8.4 Формирование баз знаний на основе обучающей выборки средствами системы ИЛИС............................117
ЛИТЕРАТУРА.............................................................................................................................................................118
Вопросы для самопроверки......................................................................................................................................118
ГЛАВА 9. Инструментальный комплекс для создания экспертных систем реального времени (на примере
интегрированной среды G2-GENSYM CORP., США)...............................................................................................119
9.1 База знаний...........................................................................................................................................................121
9.1.1 Сущности и иерархия классов....................................................................................................................121
9.1.2 Иерархия модулей и рабочих пространств................................................................................................121
9.1.3 Структуры данных БЗ..................................................................................................................................122
9.2 Машина вывода, планировщик и подсистема моделирования.......................................................................126
9.2.1 Машина вывода............................................................................................................................................126
3

9.2.2 Планировщик................................................................................................................................................127
9.2.3 Подсистема моделирования.........................................................................................................................128
9.3 Среда разработчика в системе G2......................................................................................................................130
9.3.1 Естественно-языковый текстовый редактор..............................................................................................131
9.3.3 Средства инспекции и отладки...................................................................................................................135
9.4 Интерфейс с внешним окружением...................................................................................................................136
9.5 Проблемно/предметно-ориентированные среды и графические языки на базе G2......................................139
9.5.1 G2 Diagnostic Assistant, Statistical Process Control, Neuron-Line..............................................................140
9.5.2 Rethink (подумай еще)..................................................................................................................................141
9.5.3 Gensym Scheduling Toolkit, Dynamic Scheduling Package.........................................................................141
9.5.4 Fault Expert....................................................................................................................................................142
9.5.5 Batchdesign_Kit - интеллектуальное проектирование серийного производства в фармакологии........143
ЛИТЕРАТУРА............................................................................................................................................................143
Вопросы для самопроверки......................................................................................................................................144
ПРИЛОЖЕНИЯ.............................................................................................................................................................145
Новые информационные технологии, интегрируемые с технологией экспертных систем...................................145
ПРИЛОЖЕНИЕ 1..........................................................................................................................................................145
Объектно-ориентированная технология..................................................................................................................145
ЛИТЕРАТУРА............................................................................................................................................................151
ПРИЛОЖЕНИЕ 2..........................................................................................................................................................152
Бизнес-Процесс "РЕИНЖИНИРИНГ" и интеллектуальное моделирование компаний.....................................152
ЛИТЕРАТУРА............................................................................................................................................................168
ПРИЛОЖЕНИЕ 3..........................................................................................................................................................169
Нейросетевая технология.........................................................................................................................................169
ЛИТЕРАТУРА............................................................................................................................................................184
ПРИЛОЖЕНИЕ 4..........................................................................................................................................................185
Системы поддержки принятия решений, хранилища данных и извлечение знаний..........................................185
ЛИТЕРАТУРА............................................................................................................................................................195
ПРИЛОЖЕНИЕ 5..........................................................................................................................................................196
Опыт применения динамических оболочек экспертных систем..........................................................................196

4

В пятой главе рассматриваются состав знаний. индуктивные) методы и т. не имеющим навыков программирования. в задачу которого входят разработка. При написании данного учебного пособия авторы стремились систематически изложить принципы построения экспертных систем и их основных компонентов и таким образом подготовить читателя к самостоятельной работе в этой области. экспертные системы при решении практических задач позволяют получать результаты. что резко расширяет сферу использования вычислительной техники. Здесь большое внимание уделено особенностям проектирования динамических ЭС.д. сравнимые. учебное пособие только кратко касается таких важных вопросов. приобретение знаний от эксперта или базы данных. Во-первых. как методы и средства приобретения знаний. необходимых для функционирования ЭС. основанных на знаниях) в этих исследованиях. и основные модели представления знаний. объяснительные возможности ЭС. 5 . Малое внимание. В восьмой и девятой главах рассмотрены инструментальные комплексы для создания статических и динамических ЭС соответственно на примере интегрированной системы ЭКО. в шестой главе . Первая глава вводит читателя в проблематику экспертных систем. а иногда и превосходящие те. экспертные системы позволяют специалистам. уделенное в данном пособии объяснительным возможностям ЭС. технология бизнеспроцесс реинжиниринга.е.описание эффективных методов и стратегий автоматического решения задач в статических и динамических ЭС. Методы приобретения знаний по своей структуре являются неоднородными и разнообразными: приобретение правил от эксперта. Огромный интерес к экспертным системам (ЭС) вызван следующими основными причинами. Одному из аспектов этой проблематики . автоматизированные или автоматические (например. признанной специалистами одной из лучших отечественных статических систем.это дело отдельной книги (а скорее всего не одной).д. хорошо сочетающиеся и дополняющие технологию ЭС (объектно-ориентированная технология.ПРЕДИСЛОВИЕ В начале 80-х годов в рамках искусственного интеллекта сформировалось самостоятельное направление . Седьмая глава содержит описание основ методологии проектирования экспертных систем. В-четвертых. Здесь рассмотрены назначение. являющейся признанным лидером в классе динамических ЭС. т. Несмотря на значительный объем. пакетами прикладных программ и т. Учебное пособие состоит из девяти глав и четырех приложений. рассматриваемым при проектировании ЭС: проблемам представления Знаний и механизмам вывода.) в интегрированные приложения. Вторая глава посвящена описанию состояния работ в области искусственного интеллекта и места технологии экспертных систем (систем. на приложения."инженерия знаний". формальные основы и архитектура ЭС. США ). адекватное решаемым задачам. которые может получить эксперт-человек. нейросетевая технология и технология извлечения знаний из баз данных). Во-вторых. В третьей главе рассматриваются вопросы классификации ЭС и инструментальных средств их создания по различным основаниям. исследование и использование экспертных систем. Систематическое изложение методов приобретения знаний . Классификация позволяет выбрать инструментальное средство. создавать практически значимые приложения. они ориентированы на решение широкого круга задач в неформализованных областях. В-третьих. и интегрированной среды G2 (фирмы Gensym.извлечению знаний из баз данных посвящено Приложение 4 настоящего пособия. В приложениях рассмотрены информационные технологии. посвященной только данной теме. Причины этого следующие. которые до недавнего времени считались малодоступными для вычислительной техники. Четвертая глава посвящена анализу состояния статических и динамических ЭС в соответствии с введенной в главе 3 классификацией. современные ЭС легко объединяются с традиционными программными системами (системами управления базами данных. Главы пятая и шестая посвящены центральным вопросам.

Н. Поповым и Е. за последние годы в традиционном подходе к объяснительным возможностям ЭС.Б. Таким образом. Поповым и И. главы 4 и 7 . M.Э. Шапот. Приложение 3 .Поповым. Во-первых.В. Поповым и М. Поповым.В.В.Б.Голицину. язык изображений позволяет визуально фиксировать события. Приложение 1 .Ломакиной и Н.В.Н. Ch.Д. а язык изображений (например.). Е. гл.Б. Шапот. Киселем и М.Kiezulas. глава 8 . Г.А. Авторы считают своим приятным долгом выразить благодарность R.Lauer. состоящем в использовании естественного языка (ЕЯ) при ответе на вопросы "Почему?" и "Как?". а использование "демонов" и системных функций "Инспектировать" (см. 5. Поповым. объяснение которых может интересовать пользователя. Шапот.В. изменение цвета некоторой сущности или ее поворот.В. В. Приложение 2 . Е. главы 2. что для объяснения текущего состояния ЭС более эффективно использовать не естественный язык.Д. Во-вторых.И.Е. Поповой за техническую помощь при работе над рукописью книги. Киселем.Moore. 6 написаны совместно Э.вызвано двумя причинами.В.Б. Фоминых. Фоминых.Б.Э. передвижение и т.В.Кондрашевой.Э.В.В. Поповым и М. Приложение 5 .Б.Э. Ю.Новоженову за предоставленные материалы. 3. не произошло каких-либо заметных продвижений. в последнее время специалисты ИИ пришли к выводу. 9) позволяет объяснить причины появления этого события. Киселем и И.Э.п. Фоминых. Фоминых. Приложение 4 . 6 .Д. Поповым и И.Э.Б. глава 9 . Глава 1 написана Э.

память). получаемым экспертом. разработки. низкий уровень повторной используемости программ и т. неоднозначностью. Неформализованные задачи обычно обладают следующими особенностями: • ошибочностью. а не программистом.п. неполнотой и противоречивостью знаний о проблемной области и решаемой задаче. упрощает обучение и сопровождение). обеспечит революционный прорыв в интеграции приложений из готовых интеллектуальновзаимодействующих модулей. базирующиеся на технологии экспертных систем. производства. • большой размерностью пространства решения. • алгоритмическое решение существует. неполнотой и противоречивостью исходных данных. поддержки и оказания услуг. но его нельзя использовать из-за ограниченности ресурсов (время. Фейгенбаумом [7] как "привнесение принципов и инструментария исследований из области искусственного интеллекта в решение трудных прикладных проблем. интерфейса и взаимодействия. решение которых приносит значительный экономический эффект. получают результаты. требующих знаний экспертов". введенный Е. Исследователи в области ЭС для названия своей дисциплины часто используют также термин "инженерия знаний". высокая стоимость сопровождения сложных систем. • технология ЭС является важнейшим средством в решении глобальных проблем традиционного программирования: длительность и. • ошибочностью. т. большей "прозрачности" приложения (например. ЭС не отвергают и не заменяют традиционного подхода к разработке программ. высокая стоимость разработки сложных приложений.Саймону [13]. • объединение технологии ЭС с технологией традиционного программирования добавляет новые качества к программным продуктам за счет: обеспечения динамичной модификации приложений пользователем. Назначение экспертных систем В начале восьмидесятых годов в исследованиях по искусственному интеллекту сформировалось самостоятельное направление. или инженерии знаний (в дальнейшем будем использовать их как синонимы). 7 . Цель исследований по ЭС состоит в разработке программ. • не существует алгоритмического решения задач. получившая коммерческое распространение. ориентированного на решение формализованных задач.е. Важность экспертных систем состоит в следующем: • технология экспертных систем существенно расширяет круг практически значимых задач. продажи.е.Ньюэллу и М.ГЛАВА 1 Введение в экспертные системы 1. ЭС предназначены для так называемых неформализованных задач. к неформализованным (ill-structured) будем относить такие задачи.. которые при решении задач. перебор при поиске решения весьма велик. получили значительное распространение в мире. решаемых на компьютерах. что не требует комментариев к знаниям. т. неоднозначностью.1. не уступающие по качеству и эффективности решениям. • цели не могут быть выражены в терминах точно определенной целевой функции. которая часто в несколько раз превосходит стоимость их разработки. получившее название "экспертные системы" ОС). лучшей графики. распределения. которые обладают одной или несколькими из следующих характеристик: • задачи не могут быть заданы в числовой форме. • технология ЭС. в недалекой перспективе ЭС найдут следующее применение: • ЭС будут играть ведущую роль во всех фазах проектирования. По мнению ведущих специалистов [10]. Программные средства (ПС). Следуя А. трудных для эксперта-человека. следовательно. знания хранятся на ограниченном ЕЯ.

дол. Использование ЭС сократило количество ошибок от 30% (допускал человек) до 1% (допускает ЭС).е. контроль. что в них в основном используются символьный (а не числовой) способ представления. как финансы. Приведем некоторые примеры успешного применения технологии ЭС: • фирма DEC (США) ежегодно экономит [10] 70 млн. ЭС реализована на базе описываемого ниже ИС G2 (фирма Gensym). [6] за счет ЭС. конструирование. что некоторые специалисты (как правило. что на заре появления ЭС специфика используемых в них языков.. • фирма Monsanto (США) ежегодно экономит от 250 до 500 тыс. они исходили из того. которые демонстрировали пригодность СИИ для практического использования. позволяет находить в деятельности компании неэффективные процессы и рабочие потоки и производить оперативные изменения для увеличения продуктивности работы. что ЭС и СИИ не оправдали возлагавшихся на них ожиданий и умерли [5]. управление) в самых разнообразных проблемных областях. энергетика. символьный вывод и эвристический поиск решения (а не исполнение известного алгоритма). успехи ИИ касались в основном исследовательских разработок.дол.• динамически изменяющимися данными и знаниями.1985 гг. т. отладка. технологии 8 . решаемых ЭВМ.). Экспертные системы и системы искусственного интеллекта отличаются от систем обработки данных тем. Необходимо отметить. т. Причины таких заблуждений состоят в том. Начиная примерно с 1985 г. дол. управляющей трубопроводом. Это качество экспертных систем обеспечивается их способностью рассуждать о своих знаниях и умозаключениях. Коммерческие успехи к фирмам-разработчикам систем искусственного интеллекта (СИИ) пришли не сразу. Экспертные системы применяются для решения только трудных практических (не игрушечных) задач. таких. образование. Экспертные системы способны пополнять свои знания в ходе взаимодействия с экспертом. Следует подчеркнуть. диагностика. инструктаж. транспорт. а не в ИИ) продолжают утверждать. (в массовом масштабе с 1988 1990 гг. • фирма Aetna Insurance (США) уже сэкономила более 5 млн. целлюлозно-бумажная промышленность. Специфика приложений экспертных систем по сравнению с другими системами искусственного интеллекта состоит в следующем. планирование. полученных с помощью числовых алгоритмов. используемой для моделирования страховых исков. Многие специалисты считают. специалисты в программировании. стоящие перед заказчиком. а общий планируемый эффект составит около 15-20 млн. а в последние годы системы. металлургия. ЭС реализована на базе ИС G2 (фирма Gensym). в первую очередь ЭС. химия. быть объяснены пользователю на качественном уровне (в отличие от решений. что ЭС в одиночестве (в изоляции от других программных средств) полностью решают задачи. что в настоящее время технология экспертных систем используется для решения различных типов задач (интерпретация. дол. предсказание. благодаря ЭС. что эти авторы рассматривали ЭС как альтернативу традиционному программированию.е. На протяжении 1960 . которая по заказу покупателя составляет конфигурацию вычислительной системы VAX. в год благодаря ЭС XCON/XSEL. реализованная на базе ИС G2. космос. фармацевтическое производство. По качеству и эффективности решения экспертные системы не уступают решениям эксперта-человека. что эти задачи являются наиболее массовым классом задач. телекоммуникации и связь и др. могут. обрабатываемых компанией. что неформализованные задачи представляют большой и очень важный класс задач. нефтяная и газовая промышленность. воспринимающие естественный язык (ЕЯ-системы). дол. Решения экспертных систем обладают "прозрачностью". Надо отметить. Следует обратить внимание на то. ЭС. и нейронные сети (НС) стали активно использоваться в коммерческих приложениях. горное дело. благодаря ЭС выявления и блокирования неисправностей в нефтехимической промышленности. и в особенности от решений полученных статистическими методами). • фирма Sira (США) сократила затраты на строительство трубопровода в Австралии на 40 млн.

классы. что позволило: снизить стоимость оборудования. повторную используемость информационного и программного обеспечения (объекты.п. следующие. Интегрированность. технология ЭС нашла свое применение при создании интегрированных.. обеспечивающих открытость и переносимость [14].Поста. Архитектура клиент-сервер. Lisp-машины) давала основания предполагать. приложений. пересылаемой между ЭВМ. В настоящее время высказанные соображения становятся понятными и тем специалистам. Проблемно/предметно-ориентированные ИС ИИ. реализованным на языках традиционного программирования (С.. что перечисленные выше причины успеха могут рассматриваться как общие требования к коммерческим ИС для создания СИИ. увеличение эффективности использования ИС. Использование рабочих станций (вместо ПК) резко увеличило круг приложений. накладываемых реальными приложениями. контроллерами. Использование языков традиционного программирования и рабочих станций. что ЭС умерли [11]. возникающие при создании интегрированных приложений. который в 1943 г.. Формальные основы экспертных систем Большинство экспертных систем базируется на понятии "формальная продукционная система". C++ и т.п. ввел термины продукция и каноническая (продукционная) система [2]. Для того чтобы эта интеграция была эффективной. приведшие СИИ к коммерческому успеху. Причины. Разработаны инструментальные средства искусственного интеллекта (ИС ИИ). невыполнимой задачей при ограничениях. Пятое и третье требования являются следствием стремления обеспечить эффективное выполнение задач ИИ на ЭВМ с традиционной архитектурой. процедуры).с} и системой базисных продукций 9 . и каждый модуль приложения выполняется на адекватном ему оборудовании).Пост показал.). Переход от разработок ИС ИИ общего назначения (хотя они не утратили свое значение как средство для создания ориентированных ИС) к проблемно/предметно-ориентированным ИС ИИ [9] обеспечивает: сокращение сроков разработки приложений. Открытость и переносимость. может быть реализована в виде одной из продукционных систем Е. децентрализовать приложения.). которые считали. упростил обеспечение интегрированности. Однако в настоящее время коммерческие инструментальные средства (ИС) для создания ЭС разрабатываются я полном соответствии с современными технологическими тенденциями традиционного программирования. к ИС ИИ. Другими словами. Е. реализованных на языках ИИ (Lisp. Prolog и т. т. которые могут быть выполнены на ЭВМ с использованием ИС ИИ. легко интегрирующиеся с другими информационными технологиями и средствами (с CASE. концентраторами данных и т. упрощение и ускорение работы эксперта. Переход от ИС ИИ. Отметим. т. Продукционные системы берут свое начало с работ Е. объединяющих в рамках единого комплекса традиционные программные системы с системами ИИ.2. Говоря другими словами. что снимает проблемы. оперирующая символами. При этом первые четыре требования вытекают из необходимости создания интегрированных приложений.е. правила. ИС ИИ разрабатываются с соблюдением стандартов. продукционные системы универсальны. 1. СУБД. снизил требования приложений ИИ к быстродействию ЭВМ и объемам оперативной памяти. что интеграция ЭС с традиционными. поддерживающие распределенные вычисления по архитектуре клиент-сервер.п.разработки приложений и используемого оборудования (например.). [3]. возможно. инструментальные средства ИИ должны разрабатываться в полном соответствии с основными тенденциями традиционного программирования. а не изолированных приложений во многих областях. программными системами является сложной и. Разработаны ИС ИИ.Поста. любая формальная система. что продукционная система является логической системой. используемого в приложениях. Система продукций Поста задается своим алфавитом С= {с . повысить надежность и общую производительность (так как сокращается количество информации.. эквивалентной машине Тьюринга [2].е.

. начиная с продукции. т. который в цикле выполняет следующие действия: определяет множество означиваний. Формализуя предложения Ньюэлла. рассуждая. где xi. Пусть некоторое слово Y начинается словом xi . имеющей наивысший приоритет. е. на котором это правило удовлетворяется}. подобные сетям Петри [1]. W . что. Например. В .. K. реализующий процесс вывода. изменяя слово. т.. Механизм выбора может быть тривиальным (на каждом цикле выбираются все правила и все данные) или более сложным [4] для того. содержащая текущие данные (элементы рабочей памяти).е.е. .Y) считается истинным (применимым). где R . получим слово ас. выполнение действий.е. K . где pi (F. причем каждое pi применимо к элементам множества {di} (будем также говорить.слова в алфавите С. Применить к Y продукцию xiW →Wyi это значит вычеркнуть из Y начальный отрезок xi и затем к оставшемуся слову приписать слово yi. yi . где pi  Pv. которая может быть применена к слову. содержащая множество продукций (правил вида: "условие → действие"). пока не найдется ни одной применимой продукции либо не будет применена некая продукция. какое из означиваний будет выполняться. W).процесс.процесс сопоставления. .. Затем процесс проверки применимости продукций продолжается. Интерпретатор формально может быть представлен четверкой: I = (V. I>. Наложив на набор упорядоченных продукций неявную управляющую структуру. человек использует правила. производя изменения в рабочей памяти. если слово Y получается из F при помощи продукции xiW → Wyi. где V . Каждая система продукций понимается как формальная система с правилами вывода pi (i = 1. множество пар: {правило (рi). S . Психологические исследования процессов принятия решений человеком [13] показали. Механизм разрешения конфликтов [4] может быть неявным или явным (например.база знаний. В усложненных системах механизм выбора может использовать иерархию правил. указанных в правой части правила). метаправила или сложные схемы управления. применив к слову aba продукцию abW →Wc. осуществляющий выполнение выбранного означенного правила (т. А.. Метаправила позволяют обеспечить прямым и понятным способом применение динамических эвристик для разрешения конфликтов. определяющий. аналогичные продукциям.процесс разрешения конфликтов (или процесс планирования).Ньюэлл [12] предложил использовать продукционные системы для моделирования на ЭВМ процесса принятия решений. т. что "pi удовлетворяется на элементах множества {di}"). в виде некоторого множества метаправил или процедур. так как в общем случае влечет за собой означивание многих переменных. множество пар: правило (рi) . В алгоритме Маркова упорядоченные продукции (формулы подстановок) применяются к некоторому заданному слову. Первая же из упорядоченных продукций. выполняет определенные означивания. чтобы устранить из рассмотрения те правила. определяющий множество означиваний. правила вида "условие → действие". 1).1). Операция сопоставления может требовать много времени.рабочая память системы (называемая также базой данных).xiW→Wyi (i =1. {di}  Rv. В.данные (di).интерпретатор (решатель). которые будут использованы в очередном цикле работы интерпретатора. помеченная как заключительная.. набор текущих данных (aj). Результатом выполнения является модификация данных в R или операция ввода-вывода. S. Этот цикл "проверка (выполнение)" продолжается до тех пор. 10 . применяется. перейдем к понятию нормального алгоритма Маркова [2]. описывающих выбор выполняемого правила). условия которых заведомо не удовлетворяются данными рабочей памяти или малополезны. определим продукционную систему (PS) следующим образом: PS = <R.процесс выбора из В и из R подмножества активных продукций Bv и подмножества активных данных Rv соответственно. I .

Можно показать, что продукционные системы по Ньюэллу являются некоторым
неформальным обобщением алгоритмов Маркова. Причины успешного практического
использования экспертных систем состоят в том, что при их построении были учтены уроки
предшествующих исследований в области искусственного интеллекта. Сформулируем эти
уроки в виде трех принципов (два из них впервые высказаны Е. Фейгенбаумом [8]).
1. Мощность экспертной системы обусловлена в первую очередь мощностью базы
знаний и возможностью ее пополнения и только во вторую очередь - используемыми ею
методами (процедурами). В исследованиях по искусственному интеллекту господствовала
обратная точка зрения. Источником интеллектуальности считали небольшое количество
общих мощных процедур вывода. Однако опыт показал, что важнее иметь разнообразные
специальные знания, а не общие процедуры вывода.
2. Знания, позволяющие эксперту (или экспертной системе) получить качественные и
эффективные решения задач, являются в основном эвристическими, экспериментальными,
неопределенными, правдоподобными. Причина этого заключается в том, что решаемые
задачи являются неформализованными или слабоформализованными. Необходимо также
подчеркнуть, что знания экспертов имеют индивидуальный характер, т.е. свойственны
конкретному человеку.
3. Учитывая неформализованность решаемых задач и эвристический, личностный
характер используемых знаний, пользователь (эксперт) должен иметь возможность
непосредственного взаимодействия с экспертной системой в виде диалога.
Архитектура экспертной системы вытекает из принципов, сформулированных выше. В
соответствии с первыми двумя принципами ЭС включает два компонента: решатель
(процедуры вывода) и динамически изменяемую базу знаний. Выбор в качестве основы для
реализации решателя систем продукций предопределяет наличие в ЭС также и рабочей
памяти.
Третий принцип предъявляет к системе следующие требования:
• способность вести диалог о решаемой задаче на языке, удобном пользователю
(эксперту), и, в частности, приобретать в ходе диалога новые знания;
• способность при решении задачи следовать линии рассуждения, понятной
пользователю (эксперту);
• способность объяснять ход своего рассуждения на языке, удобном для пользователя
(эксперта), что необходимо как при использовании, так и при совершенствовании системы (т.
е. при отладке и модификации базы знаний).
Первое требование реализуется диалоговым компонентом ЭС и компонентом
приобретения знаний, а для выполнения второго и третьего требований в ЭС вводится
объяснительный компонент. Кроме того, второе требование накладывает ограничения на
способ решения задачи: ход рассуждения в процессе решения должен быть понятен
пользователю (эксперту).

1.3 Архитектура статических и динамических экспертных систем
Типичная статическая ЭС состоит из следующих основных компонентов (рис. 1.1):
• решателя (интерпретатора);
• рабочей памяти (РП), называемой также базой данных (БД);
• базы знаний (БЗ);
• компонентов приобретения знаний;
• объяснительного компонента;
• диалогового компонента.
База данных (рабочая память) предназначена для хранения исходных и
промежуточных данных решаемой в текущий момент задачи. Этот термин совпадает по
названию, но не по смыслу с термином, используемым в информационно-поисковых
системах (ИПС) и системах управления базами данных (СУБД) для обозначения всех
данных (в первую очередь долгосрочных), хранимых в системе.
База знаний (БЗ) в ЭС предназначена для хранения долгосрочных данных,
описывающих рассматриваемую область (а не текущих данных), и правил, описывающих
11

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

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

характеристики и значения, существующие в области экспертизы. Правила определяют
способы манипулирования с данными, характерные для рассматриваемой области.
Отметим, что режиму приобретения знаний в традиционном подходе к разработке
программ соответствуют этапы алгоритмизации, программирования и отладки,
выполняемые программистом. Таким образом, в отличие от традиционного подхода в случае
ЭС разработку программ осуществляет не программист, а эксперт (с помощью ЭС), не
владеющий программированием.
В режиме консультации общение с ЭС осуществляет конечный пользователь, которого
интересует результат и (или) способ его получения. Необходимо отметить, что в
зависимости от назначения ЭС пользователь может не быть специалистом в данной
проблемной области (в этом случае он обращается к ЭС за результатом, не умея получить его
сам), или быть специалистом (в этом случае пользователь может сам получить результат, но
он обращается к ЭС с целью либо ускорить процесс получения результата, либо возложить
на ЭС рутинную работу). Следует подчеркнуть, что термин "пользователь" является
многозначным, так как использовать ЭС кроме конечного пользователя может и эксперт, и
инженер по знаниям, и программист. Поэтому когда хотят подчеркнуть, что речь идет о том,
для кого делалась ЭС, используют термин "конечный пользователь".
В режиме консультации данные о задаче пользователя после обработки их диалоговым
компонентом поступают в рабочую память. Решатель на основе входных данных из рабочей
памяти, общих данных о проблемной области и правил из БЗ формирует решение задачи.
Подчеркнем, что в отличие от традиционных программ ЭС при решении задачи не только
исполняет предписанную последовательность операции, но и предварительно формирует ее.
Если реакция системы не понятна пользователю, то он может потребовать объяснения:
"Почему система задает тот или иной вопрос?", "как ответ, собираемый системой, получен?".
Структуру, приведенную на рис. 1.1, называют структурой статической ЭС. ЭС
данного типа используются в тех приложениях, где можно не учитывать изменения
окружающего мира, происходящие за время решения задачи. Первые ЭС, получившие
практическое использование, были статическими. Они нашли применение в широком классе
приложений (см. п.4.1).
Из общих соображений понятно, что существует огромный класс приложений, в
которых требуется учитывать динамику, т. е. изменения, происходящие в окружающем мире
за время исполнения приложения. На рис. 1.2 показано, что в архитектуру динамической ЭС
по сравнению со статической ЭС вводятся два компонента: подсистема моделирования
внешнего мира и подсистема связи с внешним окружением. Последняя осуществляет связи с
внешним миром через систему датчиков и контроллеров. Кроме того, традиционные
компоненты статической ЭС (база знаний и машина вывода) претерпевают существенные
изменения, чтобы отразить временную логику происходящих в реальном мире событий
(подробнее см. гл.9).
Подчеркнем, что структура ЭС, представленная на рис. 1.1 и 1.2, отражает только
компоненты (функции), и многое остается "за кадром". На рис. 1.3 приведена обобщенная
структура современного ИС для создания динамических ЭС, содержащая кроме основных
компонентов те возможности, которые позволяют создавать интегрированные приложения в
соответствии с современной технологией программирования (более подробно см. гл.9).

13

Рис. 1.2. Архитектура статических и динамических ЭС (компоненты, подвергающиеся
изменениям, заштрихованы)

Рис. 1.3. Структура современных ИС для ЭС
В основе ИС лежат объектно-ориентированная база знаний (ОО-технология БЗ) и
механизм вывода, способный оперировать с правилами, в которых явным образом отражено
время (РВ - механизм вывода). Во внутреннем кольце расположены компоненты,
обеспечивающие моделирование, анимацию, активную графику, механизм общих правил и
14

т.1). так как подобные знания пока не удается (в достаточном количестве) вложить в системы искусственного интеллекта. но не оправдано. а не алгоритмическую природу. которые могут быть 15 . но все же должна относиться к достаточно "понятной" и структурированной области. либо вообще приводит к отрицательному результату. • использование ЭС целесообразно при необходимости решать задачу в окружении. инженер по знаниям должен рассмотреть вопрос. ее решение должно требовать применения эвристических правил. Перед тем как приступить к разработке ЭС. "оправдано". Применение ЭС может быть оправдано одним из следующих факторов: • решение задачи принесет значительный эффект. п. Ниже будут уточнены использованные понятия "возможно". либо из-за необходимости выполнять экспертизу одновременно в различных местах. В обобщенном виде ответ может быть таким. 4) решение задачи требует только рассуждений. 2) задача должна иметь эвристическую. следует ли разрабатывать ЭС для данного приложения. Во внешнем кольце отражены технологии и требования. Использование ЭС в данном приложении может быть возможно. т. Дело в том. как принято в математических методах и в традиционном программировании. должны быть выделены основные понятия. Приложение соответствует методам ЭС.д. оправдана и методы инженерии знаний соответствуют решаемой задаче. 1. 7) решение задачи не должно в значительной степени использовать "здравый смысл" (т. а не действий. "соответствует".е. если решаемая задача обладает совокупностью следующих характеристик: 1) задача может быть естественным образом решена посредством манипуляции с символами (т. враждебном для человека. когда при передаче информации эксперту происходит недопустимая потеря времени или информации. обязательные в современных ИС для создания ЭС (см. 1. ее решение должно занимать у эксперта несколько часов или дней.е. чем начинающие специалисты. • использование человека-эксперта невозможно либо из-за недостаточного количества экспертов. необходимо одновременное выполнение по крайней мере следующих требований: 1) существуют эксперты в данной области. что неформализованность задач. в противном случае трудно рассчитывать на то. 5) задача не должна быть слишком трудной (т. когда разработка ЭС возможна. 2) эксперты сходятся в оценке предлагаемого решения. Чтобы разработка ЭС была возможной для данного приложения.4 Этапы разработки экспертных систем Разработка ЭС имеет существенные отличия от разработки обычного программного продукта. а не недель).е. как увеличивается знание разработчиков о проблемной области.е. широкий спектр общих сведений о мире и о способе его функционирования. либо чрезмерно затягивает процесс создания ЭС. например экономический. которые знает и умеет использовать любой нормальный человек). иначе нельзя будет оценить качество разработанной ЭС. а не манипуляций с числами. отношения и известные (хотя бы эксперту) способы получения решения задачи. 6) задача хотя и не должна быть выражена в формальном виде.е. решаемых ЭС. использовать ЭС следует только тогда. что знания экспертов будут "извлечены" и вложены в ЭС. с помощью символических рассуждений). принятой в традиционном программировании.т. отсутствие завершенной теории ЭС и методологии их разработки приводят к необходимости модифицировать принципы и способы построения ЭС в ходе процесса разработки по мере того. • использование ЭС целесообразно в тех случаях. Опыт создания ЭС показал. что использование при их разработке методологии. которые решают задачу значительно лучше. 3) эксперты способны вербализовать (выразить на естественном языке) и объяснить используемые ими методы. Задачи.

В связи с тем. данный этап является наиболее важным и наиболее трудоемким этапом разработки ЭС. При разработке ЭС. На начальном этапе они создают прототип (прототипы) ЭС. чтобы ЭС могла ее решать. чтобы можно было максимально запараллелить процесс накопления и отладки знаний (осуществляемый экспертом) с процессом выбора (разработки) программных средств (осуществляемым инженером по знаниям и программистом). средств представления и манипулирования знаниями. Суть этой концепции состоит в том. включающая шесть следующих этапов (рис. используется концепция "быстрого прототипа". Процесс приобретения знаний разделяют на извлечение знаний из эксперта. чтобы оправдать затраты на разработку ЭС. На этапе выполнения осуществляется наполнение экспертом базы знаний. тестирование. как правило. опытную эксплуатацию (подробнее см. понятном ЭС. моделируется работа системы. раздел 7. В случае успеха эксперт с помощью инженера по знаниям расширяет знания прототипа о проблемной области. 16 . Процесс приобретения знаний осуществляется инженером по знаниям на основе анализа деятельности эксперта по решению реальных задач.гарантированно решены (с соблюдением заданных ограничений) с помощью некоторых формальных процедур. Однако она не должна быть чрезмерно сложной (решение занимает у эксперта часы. На этапе формализации выбираются ИС и определяются способы представления всех видов знаний. что разработчики не пытаются сразу построить конечный продукт. выявляются используемые понятия и их взаимосвязи. чтобы решаться методами ЭС. Для удовлетворения указанным требованиям. и практически значимой. определяются методы решения задач. При неудаче может потребоваться разработка нового прототипа или разработчики могут прийти к выводу о непригодности методов ЭС для данного приложения. По мере увеличения знаний прототип может достигнуть такого состояния. не подходят для применения ЭС. организацию знаний. Прототип должен продемонстрировать пригодность методов инженерии знаний для данного приложения. что основой ЭС являются знания. ускоряющие процесс проектирования. а не недели). так и уменьшение требуемой памяти. Преобразование прототипа ЭС в конечный продукт обычно приводит к перепрограммированию ЭС на языках низкого уровня. выполнение. Трудоемкость и время создания ЭС в значительной степени зависят от типа используемого инструментария. В ходе работ по созданию ЭС сложилась определенная технология их разработки [4]. обеспечивающую эффективную работу системы. формализацию. 1. а с другой время и трудоемкость их разработки должны быть весьма незначительны. определяются способы интерпретации знаний. оценивается адекватность целям системы зафиксированных понятий. при создании прототипа используются разнообразные средства. 4) задача должна быть достаточно узкой. методов решений. когда он успешно решает все задачи данного приложения. 3) задача должна быть достаточно сложна. На этапе идентификации определяются задачи. которые подлежат решению.1). концептуализацию. и представление знаний в виде. формализуются основные понятия. На этапе концептуализации проводится содержательный анализ проблемной области. обеспечивающих как увеличение быстродействия ЭС. они должны решать типичные задачи конкретного приложения. Прототипы должны удовлетворять двум противоречивым требованиям: с одной стороны. определяются эксперты и типы пользователей. как правило. выявляются цели разработки.4): идентификацию.

Компьютеруик. Минский М.: Мир. //Communications of the ACM. 4. 1972. Hayes-Roth F. P. 3. Экспертные системы еще живы. Mc Graw-Hill. Taming the Tiger.P. Feigenbaum E.31. 1992. Migration to Open Systems. Технология разработки ЭС На этапе тестирования эксперт (и инженер по знаниям) в интерактивном режиме с использованием диалоговых и объяснительных средств системы проверяет компетентность ЭС. Production systems: models of comtrol structures//Visual information processing.P. 1987. Процесс создания ЭС не сводится к строгой последовательности перечисленных выше этапов.R.-288с. 6. . 1014-1029. -158 с. 5-11 октября. Процесс тестирования продолжается до тех пор. Давенпорт Т. 1965. 13. В ходе разработки приходится неоднократно возвращаться на более ранние этапы и пересматривать принятые там решения. New Jersey: Prentice-Hall.P.Englewood Cliffs. пока эксперт не решит. Котов В. Алгоритмы и рекурсивные функции. . March.. 12. . . что система достигла требуемого уровня компетентности.21 с. . . 11. Feigenbaum E.М. Perky D.37.252. 1994. 463 . 19 94. Jacobstein N. A. The Market for intelligent Software Products Intelligent Software Strategies. . Human problem solving. (Minsky М.-1995. . 1973.P. 7.3 .1995.В. July. На этапе опытной эксплуатации проверяется пригодность ЭС для конечных пользователей. .25. 1. p.. Мальцев А. 2. . 1979. Е. 14.А. -36(194). 1977.P.. Эпитафия экспертным системам//Компьютеруик.364 с.N3. Simon M. .V. ЛИТЕРАТУРА 1.М. Themes and case studies of knowledge engineering//Expert systenvin micro electronic age. По результатам этого этапа может потребоваться существенная модификация ЭС.A. -27(185). 10.М.V. .27 . Решение неформализованных задач в диалоге с ЭВМ.391 с. .39. Expert system saves 20 million L on pipeline management. . .:Наука.//C&I. '2. Newell A. Сети Петри. Loofbourrow Т. Newell A.526. . 5.) Вычисление и автоматы. The art of artificial intelligence: Themes and case studies of knowledge engineering//The fifth International Joint Conference on Artificial Intelligence.5 -12. A. Экспертные системы. The State of Knowledge-Based Systems.Рис. 1984. Boston: MIT. 1971.8. 1993.: Наука. 17 . Harmon P.. 9. Попов Э.Наука. .4. 8.М.Edinburgh: Infotach Limited.New York: Academic Press.

Дайте формальное определение продукционной системы (по Е. 18 . Назовите примеры успешного применения технологии ЭС. Перечислите основные компоненты статической ЭС.Ньюэллу). Перечислите и охарактеризуйте основные этапы разработки ЭС. Объясните основные причины успеха современной технологии ЭС . Охарактеризуйте основные режимы работы ЭС.Посту и А. Поясните отличия архитектуры динамической ЭС от архитектуры стати-ческой ЭС.Вопросы для самопроверки Сформулируйте отличия ЭС от традиционных систем обработки данных. Укажите состав и роли участников разработки ЭС.

7]. дол.275 млн. объем продаж ИС составил 275 млн... символьные ЭВМ (СЭВМ). демонстрируя устойчивый рост [5. "размытые" (fuzzy) логики . Роль экспертных систем в исследованиях по искусственному интеллекту 2. Состояние работ в области искусственного интеллекта..ГЛАВА 2. дол.30 млн.5 млн. предназначенные для автоматизации всех этапов существования приложения. 2. из них 700 млн.. дол. составляла примерно 1. дол. рабочие станции (РСт). ЕЯ-системы . в общем объеме продаж США доля приложений ИИ составила примерно 25 млн. что в настоящее время к рабочим станциям 19 . дол. а доля ИС . При этом ИС по направлениям ИИ распределились так: СОЗ 196 млн. извлечение знаний . дол. проблемно/предметно-ориентированные (ППО). 6. в последние годы для обозначения ЭС часто используют термин "системы. представлено рис. основанные на знаниях" (СОЗ).38 млн.. Распределение объема продаж по направлениям ИИ в 1994 и 1995 гг. здесь смешаны различные основания классификации: тип ЭВМ и тип ИС. дол. Некоторым оправданием может служить тот факт. По нашему мнению. 8]: персональные компьютеры (ПК) и компьютеры фирмы "Макинтош" (МАК). большие ЭВМ (БЭВМ). следует отметить устойчивый рост продаж ИС искусственного интеллекта. Объективной оценкой практической значимости ИИ является объем продаж продуктов ИИ за год. приходились на долю США [7]. В 1995 г. • нейронные сети (НС). дол. доминирующую роль ИС для создания СОЗ (более 70% от общего объема) и выделение в качестве новых направлений ИИ нечетких логик.1 млрд. Необходимо подчеркнуть. Стоимость произведенных продуктов ИИ в мире в 1995 г.. Анализируя тенденции в целом.2. что большинство проблемно/предметно-ориентированных ИС разработано для рабочих станций.2 Состояние работ в области экспертных систем Американские специалисты распределяют ИС для создания ЭС (СОЗ) по следующим секторам рынка [6.5 млн. В 1995 г. • естественно-языковые системы (ЕЯ-системы). средств для извлечения знаний и генетических алгоритмов.5. дол.. Средства ИИ можно разделить на системы ИИ (приложения) и на инструментальные средства (ИС). дол. НС .1 Основные направления искусственного интеллекта Выделяют следующие основные направления в искусственном интеллекте (ИИ): • экспертные системы.1.

работающие под ОС Unix. отображающая тенденции практического использования ЭС [5.2. работающие под ОС Unix и Windows NT. На рис.6 приведены данные по Рис. 8]. 7. Распределение объема продаж ИС для РСт распределению объемов продаж ИС для всех перечисленных выше типов компьютеров за последние пять-шесть лет.урезанная версия ИС. 6. 2.3.2 . так и ПК типа 486 и Pentium. Рис. 2.4. 2. 2. 2. Распределение объема продаж ИС для БЭВМ 20 . Распределение объема продаж ИС для ПК и МАК Рис. 1. а на рис. На основании анализа представленных диаграмм могут быть сделаны следующие выводы. При некотором росте объемов продаж ИС для ПК и МАК доля ИС этого типа в общем объеме продаж ничтожна и составляет чуть более 2%.7 .интегральная диаграмма.относят как собственно рабочие станции. В числе основных производителей ИС для ПК и МАК можно указать следующие фирмы (в скобках разработанное фирмой ИС): The Haley Enterprise (Eclipse).2.. IBI (Level5 Object . в полном объеме данное ИС поставляется для РСт).

Attar Software (XpertRule). ориентированных в первую очередь на РСт. можно считать. Exsys (Exsys Professional). Art Enterprise). Кроме этих фирм. можно выделить фирмы Trinzic (продукт Рис.5. Inference (Art-IM.Рис.AionDS. Объем продаж ИС для СЭВМ (в основном имеются в виду Лисп-машины) 21 . составляя в 1995 г. Smart Elements). Тенденции практического использования ЭС AionDS) и IBM (TIRS). 2. Объем продаж ИС для РСт устойчиво составляет более 31% от общего объема продаж ИС. Intellicorp (KAPPA). Объем продаж ИС для БЭВМ имеет устойчивую тенденцию к небольшому снижению. Распределение объема продаж ИС для СЭВМ Acquired Intelligence (Acquire). Распределение объема продаж ППО ИС Рис. IBI (Level5 Object-50 Professional). 4. 2. 2.6. Учитывая. но с успехом используются и на РСт. Exsys (Exsys RuleBook). IBM (TIRS). составил около 81% от общего объема продаж ИС и имеет устойчивую тенденцию к росту Среди производителей ИС для РСт лидирующую роль занимают следующие фирмы и ИС Neuron Data (Nexpert Object/Smart Elements. около 12%. Inference (ART). что объем ИС для РСт в 1995 г. KBMS). 3.7. что ППО ИС в основном исполняются на Рст. чьи ИС в основном ориентированы на большие ЭВМ. Среди производителей ИС для больших ЭВМ только три реальных участника: Trinzic Corp (ИС . 2.

Intellicorp. дол.поставщики Lisp-продуктов: Harlequim.29 млн. Объем продаж ИС данной категории имеет тенденцию к спаду.CBR Express. Franz. 3) масштабируемые средства для распознавания речи (Large-Vocabulary Talkwriter). доход от этого направления ИИ составил 21 млн. см. Rethink [1. 2) ИС для систем-советчиков (help-desk application). используемых в управлении технологическими процессами и имитационном моделировании (см. Среди производителей символьных ЭВМ основу составляют фирмы . 38 млн. Наибольшего коммерческого успеха в этом направлении добилась фирма Gensym со своими продуктами: G2. NOL.Trinzic (AionDS). составил около 50% от общего объема продаж ИС. затем идут Talarian (RTworks) и Comdale Technologies (Comdale/C. В области ИС для систем. Лидирующее положение среди фирм. Gold Hill. основанных на прецедентах. GDA. Inference (ART). Анализ этих диаграмм позволяет сделать следующие выводы. Inference. В области ИС и динамических ЭС доминирующие позиции занимает фирма Gensym (G2. за четыре года объем продаж ППО ИС вырос более чем в 4.относительно стабилен и составляет 5% от общего объема продаж. CasePoint. Все ведущие производители ИС для ЭС (Gensym. 5. безусловным лидером является фирма Inference (ИС .. Объем продаж проблемно/предметно-ориентированных ИС растет наиболее быстрыми темпами и в 1995 г. Artificial Intelligence Technologies (Mercury).2 книги). ИС первой категории преобразуют ЕЯ-запросы пользователя в SQL-запросы к БД. 4) средства голосового ввода. дол. ServiSoft. Заметное место занимают фирмы Intellisys. GDA.BPA). В этом секторе по-прежнему заметное место занимают фирмы Intellicorp (KEE).2). Inference (Art*Enterprise). 2) ЕЯ-поиск в текстах и содержательное сканирование текстов (Natural Language text retieval and Contents Scanning Systems). . отображающие тенденции практического использования ЕЯ-систем. 2.. п. Neuron Data) безоговорочно признали и реализуют проблемно-предметную ориентацию ИС. а в том. 5) компоненты речевой обработки (Voice-Recognition Programming Tools). 3. 2. Однако специалисты считают этот спад временным. 3) ИС для систем. 4.8 приведены диаграммы.около 97 млн. основанных на прецедентах. .75 млн. DSP. NeurOn-Line.4]. Neuron Data (Nexpert Object\Smart Elements).2. 2. 22 . дол.5 раза. DSP). . Если в 1991 г. В области ИС для систем-советчиков лидирующие позиции у фирм Software Artistry (Expert Advisor) и Carnegie Group (TestBench). 4. В данном направлении выделяют следующие категории ИС: 1) ЕЯ-интерфейс к базам данных (БД). то в 1994г.) . На рис. производящих ИС этого типа. (в 1994 г. Emerald Intelligence.B рассмотренных выше четырех из пяти направлений ИС представлены в основном статические ИС общего назначения и статические проблемно/предметно-ориентированные ИС. Forest&Trees). KMBS. HelpDeskSeries).языковых систем Объем продаж ИС этого направления составил по итогам 1995 г. т. дол. . управления и сбора данных (Voice Input and Control Products and Data Collection Systems). а как ИС для проведения автоматизации бизнес-процессов (БПА) (Business Process Automation . Причина спада не в ошибочности технологии ЕЯ-обработки. а в 1995 г. что практически все разработчики ИС.см..3 Состояние работ в области естественно . Inference (KAPPA\OMW) подают себя не как ИС для создания ЭС. что производители ЕЯ-систем недооценили трудоемкость интеграции их продуктов с БД. п. 7]. Интересно отметить. ориентированных на создание статических ЭС.е.1 [5.рис. Comdale/X) (подробнее см. дол. В проблемно/предметно-ориентированных ИС можно выделить следующие поднаправления: 1) ИС для динамических экспертных систем реального времени. Приложение 2. Следующие позиции занимают Cognitive Systems (ReMind) и Esteem Software (ESTEEM). занимает упоминаемая выше фирма Trinzic (ИС AionDS.

что связано прежде всего с необходимостью обработки огромного количества текстов. ИС пятой категории ориентированы на программистов.фирма Linguistic Technology с перспективным ИС Natural Wizard. Dragon Systems Inc. Ведущие позиции в этом секторе занимают следующие фирмы: Kurzweil Applied Informatics (ИС . ИС этого типа предназначены для ввода голосовых команд.1995 гг. Ведущие позиции здесь занимают такие гиганты. Недавно появился новый производитель . Наибольшего успеха в этом секторе добились следующие фирмы: Excaliber Software. что привело к снижению цен на эти ИС и к их более широкому распространению.5 млн. Ведущие позиции здесь занимают следующие фирмы: Articulate Systems (Voice Navigator). имеющих четкую и заранее известную структуру. в ИС этой категории поиск осуществляется в ЕЯ-текстах. В отличие от ИС первой категории.8. Ожидается рост этого сектора. Micrisoft (Windows Sound System). ИС второй категории осуществляют по запросам пользователей поиск. которые хотят добавить возможности по распознаванию речи в разрабатываемые ими приложения или коммерческие продукты. например программы сбора данных в тех приложениях. чем ИС третьей категории. Объем продаж ИС этой категории растет наиболее быстрыми темпами.систем ИС третьей категории распознают голосовую информацию и преобразуют ее в последовательность символов.Лидирующее положение в этом небольшом секторе занимает фирма Symantec ( ИС . Основу этого направления составляют следующие типы приложений: системы машинного перевода (СМП). ИС четвертой категории в отличие от ИС третьей категории ориентированы на работу со словарем не более 1000 слов и существенно ограничены в возможностях распознавания. BBN.VoiceMED). Vocollect Inc. фильтрацию и сканирование текстовой информации. Объем продаж ИС этой категории низок и относительно стабилен. Объем продаж ИС данной категории также относительно стабилен. большинство ИС этой категории были переведены на ПК под Windows и OS/2. доступных по глобальной международной сети Internet. (DragonWriter). смешанные системы [7]. в которых у исполнителей заняты руки. составлял 53 млн. Talkman). Тенденции практического использования ЕЯ. которые совершенно не структурированы. как AT&T. IBM (VoiceType).25. Рис. 2. дол.Q&A). Около половины объема продаж в этом направлении составляют СМП (в 1995 г. дол. где поиск осуществляется в БД. 23 . Ardilog Inc. Объем продаж ИС этой категории относительно стабилен. . управляющих работой некоторого продукта. программы контроля/исправления правописания и стиля. За 1994 . ИС этого типа отражают состояние дела в проблеме создания компьютерных систем распознавания речи и ориентированы на работу со словарями объемом от 30 000 до 70 000 слов. (Talknet. но на более низком стоимостном уровне. IBM.). Architext Software. Verity. Объем продаж коммерческих ЕЯ-приложений по итогам 1995 г.

Pavilion Technologies (Process Insights -управление процессами). ИС для РСт поддерживают от 5 до 30 нейросетевых алгоритмов. и имеет тенденцию к устойчивому росту.распознавание символов). предметно-ориентированные (domain-specific) ИС. Ведущие позиции здесь занимают фирмы: NeuralWare (NeuCOP -управление процессами). Cognitive Technology (NeuroSmarts for Excel). Анализ этих данных позволяет сделать следующие выводы.управление запасами. ИС общего назначения подразделяются на ИС для: ПК (МАК) и РСт. Ведущие позиции в гибридных ИС первой категории занимают фирмы: Talon Development Corp. объединяющие НС с электронными таблицами типа Excel (Microsoft) или Lotus 1-2-3.9. Объем продаж гибридных ИС очень незначителен.9 приведены диаграммы. Заметные позиции среди гибридных ИС второй категории занимают фирмы Cognition Technology (ИС для НС . распознавание оптических символов (optical character recognition OCR). Charles River Analytics (ИС для НС . рис. Рис. дол. Объем продаж ИС этой категории относительно стабилен. объединенное либо с ЭС Nexpert Object. Продукты данного направления обычно делят на следующие категории: ИС общего назначения. распознавание символов и др. ИС для ПК (МАК) обычно поддерживает менее 5 нейросетевых алгоритмов. основанными на правилах. гибридные ИС.NNU).2. FALCON . объединяющие НС с системами. химия (конструирование химических формул).2.NueX. как управление процессами.NeuroSmarts. Ведущими производителями являются: NeuralWare (NeuralWorks Pro II. предсказание ситуаций на фондовом рынке.обнаружение 24 .4 Состояние работ в области нейронных сетей Объем продаж ИС для нейронных сетей в 1995 г. skuPLAN . как финансовая сфера (управление кредитными рисками. 2. NeuralWare (Predict). (BRAIN). оценка стоимости недвижимости). составил 30 млн дол. Nestor (NestorReader . Лидирующие позиции в этом секторе рынка занимают следующие фирмы: HNC (AREAS .). Promised Land Technologies (Braincell). Ведущими фирмами являются: California Scientific и Software Ward Systems Group. (в 1994 г. и ИС. Технология НС нашла довольно широкое применение в таких областях. либо с ЭС HyperCard).27 млн. Объем продаж предметно-ориентированных ИС для НС составляет 3/4 от общего объема продаж и имеет устойчивую тенденцию к росту. 2. поддерживающий 27 алгоритмов).1 [5. На рис. 7]. отображающие тенденции практического использования нейронных сетей. см. Объем продаж коммерческих НС-приложений составил в 1995 г. IBM (Neural Net Utility . В настоящее время ИС этой категории применяются в таких областях. Тенденции практического использования нейронных сетей Гибридные ИС подразделяются на ИС.оценка недвижимости. 65 млн.. объединенное с DocuSmarts-средством для создания multimedia приложений).

ориентированное на прогнозирование рынка ценных бумаг. но и в секторе бизнеса. В настоящее время большинство ИС используется для построения приложений в области нечеткого управления. объем продаж ИС этого типа составил 1. (см. (NeuroForecaster/GA).NeuFuz).1. существовало всего одно коммерческое приложение в этой области. будет иметь широкое распространение только при интеграции с другими технологиями. специалисты выделяют их. По итогам 1995 г.распознавание символов при вводе факсимильных сообщений). рис. т. Большинство продуктов этого сектора рынка ориентировано на опытных программистов. В 1995 г. разработанное фирмой IBM и предназначенное для определения мошенничества в области медицинского страхования. более подробно новое ключевое направление в области ИИ . несколько уменьшился по сравнению с 1994 г. Ведущие позиции занимали следующие фирмы: National Semiconductor (ИС . статистических методов и визуализации данных. см. рис 2. дол. ориентированный на решение задач оптимизации. .уже 5 млн. NIBS Inc.5 млн. California Scientific Software (Brainmaker GA Training). В 1995 г.. генетических алгоритмов и интеллектуальных средств извлечения знаний из баз данных. (6. использующих технологию генетических алгоритмов (ГА). (CubiCalc and CubiQuick). в самостоятельную категорию (см. ИС для генетических алгоритмов предназначены для разработки приложений. включила в свое ИС для НС (NeuroForecaster).1). AlWare (CAD/Chem . Nestor (N'Route . что они являются альтернативой ЙС для НС и на них возлагаются большие надежды. начиная с 1994 г. Cosmic (Splicer). По итогам 1994 г. 2. использующих технологии размытого (нечеткого) моделирования.3 млн. основанным на знаниях.5 млн. (Evolver). объем продаж ИС для размытой логики оценивался в 5. в свое ИС.5 Состояние работ по новым направлениям искусственного интеллекта Как было отмечено выше. Ведущие позиции в данной области занимают следующие фирмы: Axcelis Inc.). предназначенное для извлечения знаний и разработки ЭС.. Hyperlogic Corp. обеспечивающими автоматическую генерацию и настройку архитектуры нейронной сети.5 млн. перспективы развития ИС размытой логики и коммерческих приложений на их основе связаны прежде всего с появлением ИС. объединяющих как возможности раз-мытой логики. 2. в Северной Америке в данном секторе работало около 25 производителей [7].подделок кредитных карточек). и в настоящее время в основном используются для проведения исследований. Attar Software (XpertRule Analyzer).конструирование химических формул). ИС для извлечения знаний из БД объединяют следующие возможности: ЭС. По мнению экспертов. ГА-компоненты. Ведущие производители ИС для ГА продвигаются в этом направлении: • фирма Attar Software включила ГА-компонент. дол. однако в связи с тем. подобно технологии НС.. машинного обучения (индуктивных методов и(или) НС). и размытых рассуждений. одной из тенденций в развитии систем ИИ является появление в последние годы коммерческих продуктов в области размытых логик.1994 гг. дол. По итогам 1995 . дол. так и возможности ЭС и ориентированных на применение не только в секторе управления. ИС для размытой (fuzzy) логики предназначены для построения приложений. ГА-технология.средства извлечения знаний обсуждается в Приложении 4. С точки зрения пользователя ИС извлечения знаний из БД должны решать задачи трансформации: данных (неструктурированные наборы чисел и символов) → информацию (описание обнаруженных закономерностей) → знания (значимые для пользователя 25 . • фирма California Scientific Software связала свое ИС для НС (NeuralWare) с ГАкомпонентами. • фирма NIBS Inc. По мнению экспертов. объем продаж ИС для ГА стабильно очень мал и составлял 0. Приложение 4). Кратко рассмотрим практические успехи в этих направлениях. по мнению финансовых экспертов. а в 1995 г. ИС для извлечения знаний относятся к системам. которые.е. позволят уточнить прогнозы.

. Data Patterns (PCMARS).13.М: ЦРДЗ.1996. ..V. . Фоминых И. . Hall С. Система Rethink. Harmon P.№1.. Шапот М.1996. Попов Э. V. и кратко охарактеризуйте их.с. 10. Статические и динамические экспертные системы.5 .Б. . (ModelWare). 3. 12. . The Intelligent Software Development Tools Market//Part II. Назовите ведущие тенденции в разработке ИС для естественно-языковых систем.И. Intelligent Software Strategies.12. Перечислите главные тенденции в разработке ИС для экспертных систем. . Сформулируйте основные направления практических успехов искусственного интеллекта.М: ЦРДЗ.P.В. Ведущие позиции в данном секторе рынка занимают следующие фирмы: AbTech Corp.1 . (AIM). .58 .P. 5. Применение. 5. The Intelligent Software Development Tools Market//Part I. Перечислите новые направления ИИ. Harmon P. .V. 1996. Attar Software (XpertRule Analyzer).№.№2. . Экспертные системы реального времени//Материалы семинара "Экспертные системы реального времени". 1995.Д. 1 -16. . 3. 2. The Intelligent Software Development Tools Market//Part I. -February. Кисель Е. Hall C. В настоящее время в Северной Америке существует примерно 15 -20 производителей ИС извлечения знаний. 1995. Реинжиниринг бизнес-процессов и интеллектуальное моделирование//Материалы семинара "Динамические интеллектуальные системы в управлении и моделировании". .6. 2. Teranet IA Inc.1995.1 .№2.3. . 6. Аспекты/Материалы семинара "Динамические интеллектуальные системы в управлении ".1 . . The Size of the Commercial Al Market in the US//lntelligent Software Strategies.закономерности) → решения (последовательности шагов.М:ЦРДЗ. Reduct Systems (DataLogic).P.М: ЦРДЗ.P. Вопросы для самопроверки 1.22. направленные на достижение потребностей пользователя).В.В. 26 . Попов Э.11. . . в которых обозначились существенные практические успехи. . Agnoss Software (KnowledgeSEEKER)..64. 4.с.с. Попов Э. Сформулируйте основные тенденции в разработке ИС для нейронных сетей.Б.V.22 .1994. 7. 8.12. Intelligent Software Strategies. .1996. 4. . ЛИТЕРАТУРА 1 Петров Э.. Intelligent Software Strategies.126 с.30. . . .

По нашему мнению. 1. До некоторой степени верно и-обратное. 3. • интегрированное приложение. 3. являются интегрированными. использования и сопровождения (модификации) ЭС?" Будем классифицировать приложения с ЭС по следующим параметрам: • тип приложения.ГЛАВА 3.д. так как понимание входящих в нее параметров не требует профессиональных знаний в ЭС). по которым предлагается классифицировать ЭС. а не просто будет сдана пользователю?". возникающие у пользователя на различных этапах существования приложения. " Когда ЭС будет использоваться для решения практических задач пользователя. Возможность взаимодействия приложения с другими программными средствами: • изолированное приложение. "Какова стоимость разработки. состоящее из ЭС и других программных систем. Это позволит разработчику ЭС выбрать ИС. как СУБД. По нашему мнению. за экспертом?". термин "приложения с ЭС" (для простоты "приложение") является более точным. так как прикладные системы реальной степени сложности являются интегрированными системами. 27 . системой датчиков и т. объединяющими не только ЭС. пакеты прикладных программ и т. Во-вторых. но и такие подсистемы традиционного программирования. Подчеркнем. состоящее из ЭС. и другую. • стадия существования. параметры классификации ИС и ЭС подобны. "Адекватны ли выбранные разработчиком ИС задачам пользователя?". разумно включить в параметры классификации ИС. п. не являющийся специалистом в ЭС. используемыми конечным пользователем (например. Предлагаемая ниже классификация достаточно условно разделена на классификацию ЭС и ИС. используемых для решения практически значимых задач. с БД. что большинство современных (особенно динамических) ЭС. должен быть способен характеризовать особенности своего приложения. что не существует идеальной классификации. адекватное данному приложению.1. с которыми ЭС взаимодействует в ходе работы. целесообразно иметь две классификации: одну.1 Классификация экспертных систем Для классификации ЭС выберем такие параметры. если не тождественны. электронными таблицами. достаточной для ответа на стратегические вопросы. пакетами прикладных программ. • тип проблемной среды. "Насколько создаваемая ЭС будет критична к предполагаемой смене платформ (ЭС с операционной системой)?". параметры и их различные значения должны обеспечивать разработчика ЭС информацией. пользователь. которые удовлетворяют двум условиям. ориентированную на конечного пользователя (ее мы назовем классификацией ЭС. выбирая значение этих параметров. ориентированную на разработчика ИС и ЭС (ее мы назовем классификацией ИС). удовлетворяющей всем мыслимым основаниям. контроллерами. На самом деле все параметры.). но надо помнить. "Сможет ли ЭС решать все задачи данного приложения или часть останется. например. стоящих перед пользователем. Во-первых. Классификация экспертных систем и инструментальных средств Приложения (в которых используются ЭС) и ИС для их создания можно классифицировать по различным основаниям. электронные таблицы. "Каковы сроки окупаемости ЭС?". "Будет ли ЭС работать с разнородной программно-технической средой пользователя?". чем "ЭС". • масштаб. являются следующие: "Сможет ли создаваемая ЭС использовать созданные ранее программы?". не способной взаимодействовать с другими программными системами. Иначе говоря.1 Тип приложения Тип приложения характеризуют следующие наборы параметров. Примерами вопросов.

3 Масштаб ЭС (тип ЭВМ ) Многие специалисты классифицируют ЭС (приложения) по их сложности (типу используемой ЭВМ) на малые. при этом количество исполняемых утверждений в базе знаний увеличивается до 100. которые ориентированы на исполнение в разнородном программно-аппаратном окружении и в идеале могут быть перенесены на другие платформы без перепрограммирования.9 месяцев.2. Большие ЭС реализуются на рабочих станциях или ЭВМ общего назначения (mainframe). достигшая стадии промышленной системы. При наличии развитых инструментальных средств (ИС) для разработки исследовательского прототипа требуется примерно 2 . в настоящее время обычно используется архитектура клиент-сервер [2]. при использовании только частных утверждений их количество возрастает в 3 . Исследовательский прототип обычно имеет в базе знаний не больше 50 общих исполняемых утверждений. 3. которая решает представительный класс задач приложения. Архитектура приложения: • приложение реализуется как централизованное. 28 . • децентрализованное распределенное приложение. Средние ЭС реализуются на рабочих станциях.5 . • промышленная система. • открытые приложения. но для решения сложных задач может требовать чрезмерно много времени и (или) памяти. Малые ЭС обычно используются в целях первичного обучения или для исследования возможности использования технологии ЭС в данной области. имеют доступ к огромным БД. • коммерческая система. Доведение ЭС от начала разработки до стадии промышленной системы на развитом ИС требует примерно 12 .2 года. ЭС. 3. Приведенные выше сроки справедливы для ЭС средней сложности. Исследовательским прототипом называют систему. Данные приложения охватывают весь спектр использования ЭС. которые исполняются только в программной среде данной фирмы и могут быть перенесены на другие платформы только путем перепрограммирования приложения.10 раз. Доведение системы от начала разработки до стадии действующего прототипа требует примерно 6 .1. Обобщение задач.1. Они бывают изолированными и интегрированными с БД и электронными таблицами.2 Стадия существования Стадия существования характеризует степень проработанности и отлаженности ЭС.4 месяца. Обычно выделяют следующие стадии: • исследовательский прототип. к системе. Малые ЭС реализуются на ПК типа PC или Macintosh. пригодной не только для собственного использования. 3. большие и символьные. Возможность исполнять приложение на разнородной аппаратуре и переносить его на различные платформы: • закрытые приложения.18 месяцев. • действующий прототип. на базе центральной ЭВМ. т. обеспечивает высокое качество решений всех задач при минимуме времени и памяти. но может быть неустойчива в работе и не полностью проверена. но и для продажи различным потребителям.е. с которой связаны терминалы. Действующий прототип надежно решает все задачи. позволяет перейти к стадии коммерческой системы. Обычно процесс преобразования действующего прототипа в промышленную систему состоит в расширении базы знаний (до 150 исполняемых утверждений) и ее тщательной отладке. решаемых ЭС на стадии промышленной системы. Доведение системы до коммерческой стадии требует примерно 1. часто являясь изолированными ЭС. как правило. Они. средние.

процедуры. 2) способ описания сущностей предметной области: совокупность атрибутов и их значений (фиксированный состав сущностей). ссылающиеся на произвольное количество сущностей.е. являются исследовательскими и не используются для решения реальных задач. описывающих область экспертизы. значения других (не входных) данных изменяются только ЭС. Обычно вводится описание объекта некоторого типа.е. т. что наряду с понятием "проблемная среда" используется синонимичный ему термин "проблемная область".). т.Символьные ЭС реализуются на символьных ЭВМ или с использованием ИС типа Lisp и Prolog. множество объектов. В связи с этим проблемная среда определяется характеристиками соответствующей предметной области и характеристиками типов решаемых в ней задач. вместо ссылки на атрибут i (1*K) объекта X (l  N) использовали ссылку на атрибут j (l  (KxN)). совокупность классов (объектов) и их экземпляров (изменяемый состав сущностей). вместо K атрибутов вводили KxN атрибутов. приходится использовать частные (специализированные) утверждения. структурирование сущностей БЗ по различным иерархиям (наиболее распространенные иерархии: "общее/частное". входные данные. динамический. общие исполняемые утверждения. формул и т. Эти ЭС.е. состав представляемых сущностей при таком представлении проблемной области является изменяемым. процедур. "часть/целое"). представляемых в БЗ. п.е. 2) частность (общность) исполняемых утверждений (правил. функции и т. поступающие от внешних источников. проблемная среда включает сущности (структуры данных) и решаемые над ними задачи. формул и т. Таким образом. значения других данных изменяются ЭС или подсистемой моделирования внешнего окружения. что реально существующие объекты (сущности) предметной области стали представляться в виде фиксированного количества размноженных имен соответствующих атрибутов. При этом количество экземпляров объекта никак не ограничивается. конкретные) исполняемые утверждения. Например. Недостатки в общем случае весьма значительны. изменяются во времени. статические или динамические задачи. что обеспечивает наследование свойств сущностей. 3) способ организации сущностей в БЗ: неструктурированная БЗ.1. Достоинства этого подхода состоят в том. состоящих из атрибутов со значениями. Заметим. как правило. д. т. что увеличивает их количество. Следствием этого упрощения явилось то. в соответствии с которым создаются конкретные экземпляры объектов этого типа. Наиболее естественным для человека способом описания сущностей предметной области является соотнесение с ними в памяти ЭВМ объектов. 3. Они заключаются в следующем: 1) невозможно использовать "общие" исполняемые утверждения (правила.4 Тип проблемной среды Понятие "проблемная среда" включает предметную область (множество сущностей. Характеристиками типов задач являются: 1) тип решаемых задач: задачи анализа и (или) синтеза. Характеристики предметной области определяются следующим набором параметров: 1) тип предметной области: статический. Однако для простых приложений при малом количестве объектов (от 1 до 5) иногда применяют упрощенное представление в виде атрибут/значение без упоминания объекта.). что обеспечивается прямая ссылка на атрибут (объект). Иначе говоря. 29 .): частные (специализированные. представляемые в виде исполняемых утверждений (в виде правил. процедур. п. значений их характеристик и связывающих их отношений) и решаемых в предметной области задач. т. которому эти атрибуты принадлежат. входные данные не изменяются за время сеанса работы приложения.

и таким образом сократить перебор при выборе решения. не изменяется за время решения задач. которым должны удовлетворять характеристики (функции) некоторой "неизвестной" модели сущности. решающей задачу анализа. Задачи синтеза и анализа могут решаться в статических и динамических областях. характеризующим предметную область. ЭС работает в статической проблемной среде. разработчик. решение задачи анализа). состоящий из следующих шагов: 1) создание исследовательской модели сущности. решаемые ЭС. то говорят о статической предметной области (точнее о статическом представлении области в ЭС). 2) устранение объектов не позволяет явно определить естественные взаимосвязи между атрибутами одного объекта (все атрибуты являются как бы независимыми). 3) с устранением объектов исчезает возможность определить иерархию классов объектов (см. что в процессе создания конкретной ЭС. Таким образом. однако они в отличие от статических систем получают и обрабатывают данные. В задаче синтеза задаются условия.9). если информация о предметной области изменяется за время решения задач. Системы псевдореального времени. 5. то говорят. Если ЭС базируется на предположении. явно не учитывают фактор времени и (или) не изменяют в процессе своего решения данные (знания) об окружающем мире. Смысл структурирования БЗ состоит в следующем: 1) ограничить круг сущностей. создавая БЗ (модель области экспертизы). Обычно выделяют следующие системы реального времени: "псевдореального" времени. Системы псевдореального времени решают задачу быстрее. то говорят о динамической предметной области. многие специалисты называют их приложениями (ЭС). поступающие от внешних источников. Таким образом. что исходная информация о предметной области (об окружающем мире). Кроме того. 2) анализ этой модели (т. то говорят о решении динамических задач. задача синтеза включает в себя анализ. решает задачу синтеза. Решение задачи синтеза представляет собой итерационный процесс. Системы "мягкого" реального времени работают в тех приложениях. и требуется в результате анализа этой модели определить некоторые неизвестные характеристики (функции) модели. что значительно упрощает процесс приобретения и использования знаний. Следующим параметром. если она использует динамическое представление и (или) решает динамические задачи. При представлении динамической области возникает задача моделирования окружающего мира. гл. не являются системами реального времени. 2) обеспечить наследование свойств сущностей. которые должны рассматриваться механизмом вывода.е передачу свойств вышестоящих в иерархии сущностей нижестоящим. работающими в реальном времени. если она использует статическое представление и решает статические задачи. т. на основе которой решается задача. "мягкого" реального времени и "жесткого" реального времени. е. 3) сравнение результатов анализа с условиями задачи. Отметим. где допустимо 30 . В подобной иерархии наследуется отношение "являться подмножеством (экземпляром)". Например.Кроме того. ЭС работает в динамической проблемной среде. что ЭС решает статические задачи. Если задачи. чем происходят значимые изменения информации об окружающем мире. а построенная ЭС будет решать задачу анализа. общие свойства класса "автомобиль" автоматически наследуются всеми подклассами автомобилей и конкретными экземплярами этих подклассов. В задаче анализа задана модель сущности (объекта). в частности моделирования активных агентов. если задачи учитывают фактор времени и (или) изменяют в процессе решения данные об окружающем мире."является частью". при изменении состава сущностей в БЗ приходится вводить новые соответствующие им специализированные утверждения. является наличие (отсутствие) структурирования БЗ. По типу решаемых задач в первую очередь все задачи целесообразно разделить на задачи анализа и синтеза. и требуется построить модель этой сущности. Учитывая значимость времени в динамических проблемных средах. широко применяется и другая иерархия . как следует из названия.

Статическая проблемная среда: статическая предметная область. Динамическая проблемная среда: динамическая предметная область. Выделим несколько наиболее часто встречающихся типов проблемных сред. сущности представляются в виде атрибутов со значениями или вырожденных объектов (фреймов). • способ представления знаний. сущности представляются в виде объектов. сущности представляются совокупностью атрибутов и их значений. относящиеся к любым сущностям заданного типа (вне зависимости от их числа и имени). работающие в "жестком" реальном времени. БЗ структурирована. решаются динамические задачи анализа. состав сущностей изменяемый. Тип 3. изменяемый состав сущностей. что. Тип 1. Тип 2. состав сущностей неизменяемый. используются только специализированные исполняемые утверждения. содержащие ссылки на конкретные сущности (объекты). но. вовторых. обеспечивающие быстрое время реакции. по которым целесообразно различать ИС. состав сущностей неизменяемый. содержит основные значимые параметры. нам не известны. т. либо слабо выражена (нет наследования свойств). 31 . по нашему мнению.2 Классификация инструментальных средств Будем классифицировать ИС по следующим параметрам: • уровень используемого языка. Задачи. операцию сопоставления (см. предлагаемая классификация ИС не является исчерпывающей. Использование общих утверждений позволяет значительно лаконичнее представлять знания. характеризующих проблемную среду. решаются статические задачи анализа и синтеза. приведенная выше классификация ЭС включается (по всем параметрам) в классификацию ИС (чего мы не делаем явно во избежание повторов). Тип 4. Статическая проблемная среда: статическая предметная область. используются общие и специализированные исполняемые утверждения. Однако так как общие утверждения не содержат явных ссылок на конкретные сущности. а специализированные ОС и специализированные бортовые ЭВМ. сущности представляются как совокупность атрибутов и их значений. • средства приобретения знаний. во-первых. выполнить. используются специализированные исполняемые утверждения. встречаются на практике. иерархия БЗ либо отсутствует. состав сущностей неизменяемый. для их использования требуется затратить значительную работу по определению тех сущностей. Используются как частные (специализированные) утверждения. Не все сочетания перечисленных выше параметров. решаются статические задачи анализа.0. • механизм вывода и моделирования. решаются динамические задачи анализа и синтеза. к которым они должны применяться. Тип 5. т.1 . решаются статические задачи анализа. как говорят специалисты.время реакции на события более 0. сущности представляются в виде объектов. К этому диапазону относятся почти все существующие ЭС реального времени. Системы "жесткого" реального времени должны обеспечивать время реакции быстрее 0.е. • технология разработки приложения. утверждения. используются специализированные исполняемые утверждения. так и общие утверждения. 6). 3. используются общие и специализированные исполняемые утверждения. Для достижения такого быстродействия они используют не стандартные операционные системы (ОС) типа Unix и Windows NT. БЗ не структурирована. решаемые ЭС. БЗ структурирована.1 . Статическая проблемная среда: статическая предметная область. БЗ не структурирована.5 с.е. гл. различают тем. как представляются исполняемые утверждения.1 с. Динамическая проблемная среда: динамическая предметная область. Подчеркнем. В настоящее время ЭС. • парадигма программирования.

но не имеющие знаний о конкретных предметных средах. как OPS 5. При применении четвертого и пятого типов ИС разработчик приложения полностью освобождается от работ по созданию программ. принятый в инструментарии. Lisp. и др. однако многие из этих парадигм не имеют отношения к программированию в его общепринятом смысле. прогнозирования и т. Если хотят подчеркнуть. 2) язык представления знаний. 4. но не все компоненты ЭС. Действительно. от которого требуются знание программирования и умение интегрировать компоненты в программный комплекс. гл. эти ИС используются не для создания ЭС. Традиционные (в том числе объектно-ориентированные) языки программирования типа С. Примерами таких средств для создания статических ЭС являются: Nexpert Object.3. управления. при использовании инструментария первого. что сокращает время разработки БЗ. 8). написанными на языках традиционного программирования. Эти ИС в последнее время. содержащие все программные компоненты.2 Парадигмы программирования (механизмы реализации исполняемых утверждений) Способы реализации механизма исполняемых утверждений часто называют парадигмами программирования. вложенные в механизм вывода инструментария. В приведенной классификации инструментальные средства перечислены в порядке убывания трудозатрат.1 Уровень используемого языка Трудозатраты на разработку ЭС в значительной степени зависят от используемых инструментальных средств (ИС). как правило. может не подходить для данного приложения. 3. что может привести к неэффективным. Примерами являются ЭКО (см. • предметно-ориентированные средства (domain-specific). что в последнее время термин "оболочка" (shell) используется реже. C++ (как правило. Leonardo. взаимодействующий с данной системой. Значительная компенсация этих трудностей достигается применением проблемно/предметно-ориентированных средств (ИС пятого типа). что средство используется не только на стадии разработки приложения. Prolog и их разновидности). В связи с этим рассмотрим классификацию современных ИС по уровню используемого языка. ART*Enterprise.).2. его основные трудозатраты связаны с наполнением базы знаний общими и (или) специфическими знаниями. К основным парадигмам относят: 32 . включающие знания о некоторых типах предметных областей. Инструментарий. ИЛИС (см. 8). Оболочки ЭС общего назначения.п. его заменяют на более широкий термин "среда разработки" (development environment). а для создания ИС). то употребляют термин "полная среда" (complete environment). Level 5 Object и др. и неправильным решениям. не используются в реальных приложениях в связи с тем. что они плохо приспособлены к объединению с программами. которые использует эксперт. но и на стадиях использования и сопровождения. 5. Kappa и др. 3. содержащий многие. Проблемно/предметно-ориентированные оболочки (среды): • проблемно-ориентированные средства (problem-specific). 2. При использовании инструментария четвертого типа могут возникнуть следующие трудности: 1) управляющие стратегии.2. ориентированные на некоторый класс решаемых задач и имеющие в своем составе соответствующие этому классу альтернативные функциональные модули (примерами таких классов задач являются задачи поиска. могут не соответствовать методам решения. Эти средства предназначены для разработчика. 1. планирования. Подчеркнем. второго и третьего типов в задачу разработчика входит программирование всех или части компонентов ЭС на языке довольно низкого уровня. Средства этого и последующего типов не требуют от разработчика приложения знания программирования. гл. Символьные языки программирования (например. Nexpert Object. ProKappa. необходимых на создание с их помощью конкретной экспертной системы. а возможно. Примерами являются такие средства.

т. управляемой данными.е. гл. удобен для описания поведения. Однако при использовании парадигмы. Объект. Си и Паскаль). как и программы в процедурной парадигме. Особенно он удобен для интегрированных ЭС. т. Однако если в процедурной парадигме поведение задается детерминированной последовательностью операторов. независимо их изменяют. когда различные процедуры. Здесь программа организуется вокруг сущностей. гибко и разнообразно реагирующего на большое многообразие состояний данных. то в парадигме. что обрабатывается способом. ориентированного на данные. Малая зависимость процессов обозначает. Подобные способы задания поведения удобны для описаний детерминированной последовательности действий либо одного процесса.е. Поведение (функционирование) в этой парадигме организуется путем пересылки сообщений между объектами. Формирование поведения осуществляется по следующей схеме. позволяет организовать поведение мало зависимых процессов. Итак. и те правила. которые в текущий момент обрабатываются программой (системой). Особенностью этой парадигмы являются "боковые эффекты". становятся претендентами на выполнение. Программирование. что правила-претенденты могут выполняться одновременно при наличии нескольких процессов (см. активную роль играют данные. но строго взаимосвязанных процессов. При использовании программирования. получив сообщение. 6). предписанным процедурами. причем процедура активизируется вызовом. что трудно реализовать в процедурной парадигме. ориентированной на правила. либо нескольких. Правила в данной парадигме играют такую же роль. без перепрограммирования). что они могут рассматриваться и программироваться отдельно. а не данным. указанного в правой части правила). являющиеся тем. Условия правил сопоставляются с текущими данными. Здесь со структурами активных данных связывают некоторые действия (процедуры). поведение (последовательность действий) задается не заранее предписанной последовательностью правил. • программирование. которые активизируются тогда. В процедурной парадигме активная роль в организации поведения отводится процедурам. ориентированное на данные. Затем по определенному критерию осуществляются выбор одного правила среди претендентов и его выполнение (т. основываясь на локальных процедурах и данных. а формируется на основе значений тех данных. Парадигма объектного программирования (подробнее см. условия которых удовлетворяются значениями текущих данных. ориентированное на данные. Подчеркнем. Приложение 1) в отличие от процедурной парадигмы не разделяет программу на процедуры и данные. ориентированной на правила. Условие задает образ данных. Здесь явно выделяют два вида различных сущностей: 1) процедуры. В парадигме. не зависящей для широкого класса обрабатываемых данных от значений этих данных. что задает поведение (функционирование) программы. • программирование. выполнение действия. Некоторые специалисты называют этот способ активации действий "демонами". а не процедуры. выполняющие пассивную роль. осуществляет его локальную интерпретацию. когда осуществляется доступ к этим данным. которые включают локальные процедуры (методы) и локальные данные (переменные). подход. 33 . при возникновении которого действие правила может быть выполнено. являющиеся тем. е. ориентированный на правила. использующие общие данные. возникающие в тех случаях. Такой подход позволяет описывать сложные системы наиболее естественным образом. е. эти независимо запрограммированные процессы могут взаимодействовать между собой без их изменения (т. Способность составлять процедуры из команд (операторов) и вызывать их является ключом данной парадигмы. ориентированное на правила. называемых объектами. Парадигма процедурного программирования наиболее широко распространена среди существующих языков программирования (например. поведение определяется множеством правил вида: условие → действие. 2) данные.• процедурное программирование. • объектно-ориентированное программирование. выполняющие активную роль.

обеспечивающий в соответствии с приоритетами всю деятельность 34 . который обрабатывает не только правила.сначала раскрывается одна наиболее значимая вершина -Г1. Обычно способ представления знаний в ЭС характеризуют моделью представления знаний. Процесс генерации предположений и сети вывода (см. классифицирующие ИС по механизму вывода и по системе моделирования (см. используются различные средства для сокращения количества правил и (или) сущностей. Рассмотрим отдельно параметры. 6): • направленность поиска: от данных к цели. 2. является сама ЭС. п. непосредственно связанные с текущей обрабатываемой вершиной Т. называют гибридными. применяется алгоритм сопоставления Rete (см. 6): • режим генерации сети вывода: генерация в режиме приобретения знаний. 5 ). от целей к данным. двунаправленный поиск. ориентированной на правила. использует объектноориентированную парадигму.4 Механизмы вывода и моделирования В статической ЭС единственным активным агентом. имеющие в своем составе более одной модели представления знаний. семантические сети. В динамической ЭС изменение данных является следствием: функционирования механизма исполняемых утверждений. гл.3 Способ представления знаний Наличие различных способов представления знаний вызвано в первую очередь стремлением с наибольшей эффективностью представить различные типы проблемных сред. на которых условия этого правила удовлетворяются (см.). определяющей пары: правило ni – совокупность данных. 6) или используются метазнания типа действий focus и invoke (см.3. гл. д. но и процедуры.2. изменяющим информацию. 6). связанная с текущей Т. выполнение рассуждений по обоснованию (опровержению) предположений. гл. Применительно к статическим ИС механизм вывода можно характеризовать следующими параметрами: 1. затем вершина Г1 делается текущей. участвующих в операции сопоставления. поиск решения в сетях вывода [1]. 9). 6). гл. (см. "поиск в глубину" . ее механизмы вывода (точнее механизм исполняемых утверждений. что ИС. гл. Механизм вывода для динамических проблемных сред дополнительно содержит: • планировщик. • порядок перебора вершин в сети Вывода: "поиск в ширину" -сначала раскрываются (обрабатываются) все вершины. логические модели (исчисление предикатов) и др. функции и т. выбор решения из дерева вывода в режиме решения задачи. гл. • в режиме решения задач ЭС осуществляет выработку правдоподобных предположений (при отсутствии достаточной информации для решения). гл. Структура процесса получения решения: • компиляция в режиме приобретения знаний дерева вывода из обучающей выборки (индуктивные методы приобретения знаний). 3. и для нее раскрывается одна наиболее значимая вершина Г2 и т. Поиск (выбор) решения (см. фреймы или объекты. объединенную с парадигмой. поиск решения в сети вывода в режиме решения задачи. Большинство современных ИС. как правило. генерацию альтернативных сетей вывода. генерация в режиме решения задачи. генерация сети вывода осуществляется в ходе выполнения операции сопоставления. формулы. • полнота генерируемой сети вывода: операция сопоставления применяется ко всем правилам и всем типам указанных в правилах сущностей на каждом цикле работы механизма вывода (обеспечивается полнота генерируемой сети). происходящих в окружающем мире. 3. изменений. Напомним. • компиляция в режиме приобретения знаний сети вывода из специфических правил. функционирования системы моделирования внешнего окружения. например. • генерация сети вывода и поиск решения в режиме решения задачи. К основным моделям представления знаний относят: правила (продукции).2.

• ЕЯ и язык изображений. Уровень языка. использующих данный подход. являющаяся внешней по отношению к ИС. Системы моделирования общего назначения используют для описания модели алгебраические. обеспечивающим меньшую точность.2. модель химического предприятия). 3. которые релевантны решаемой задаче.5 Средства приобретения знаний ИС в части приобретения знаний могут быть охарактеризованы следующим набором параметров.2. в систему моделирования включается несколько альтернативных методов. Как правило. какую технологию разработки ЭС допускает это инструментальное средство. в котором осуществляется приобретение знаний: • формализованный язык. изменяющихся во времени. на котором реализуется ЭС. • средства. в качестве 35 . Подход. что предопределяет использование поиска в пространстве состояний в качестве универсального механизма вывода. 3) существует специализированная система моделирования. В отличие от распространенного мнения о наличии единой технологии создания ЭС можно выделить по крайней мере четыре значительно отличающиеся технологии: 1) подход. • ограниченный естественный язык (ЕЯ).ЭС. Тип приобретаемых знаний: • данные в виде таблиц. 4) смешанный подход. 2. Обычно в ЭС. 1. применяется к сложным задачам. являющаяся частью ИС.6 Технология разработки ЭС ИС можно классифицировать по тому. • систему поддержания истинности значений переменных. Тип приобретаемых данных: • атрибуты со значениями. 3. базирующийся на использовании поверхностных и глубинных знаний. либо методом Эйлера. гарантирующие получение лучшего решения в условиях ограниченности ресурсов. • общие и специализированные правила. Специализированные системы моделирования учитывают специфику приложения (например. 2) существует система моделирования общего назначения. • классы структурированных объектов и их экземпляры. содержащих значения входных и выходного атрибутов ( по которым индуктивными методами строится дерево вывода). получающие значения атрибутов по наследованию. по выбору пользователя уравнение решается либо методом Рунге-Кутта. Этот подход заключается в получении от эксперта фрагментов знаний (часто эвристических). Например. но более быстрое получение решения. 2) структурный подход. При этом не предпринимается никаких попыток систематического или глубинного изучения области. • язык пиктограмм и изображений. обеспечивающим лучшую точность. базирующийся на поверхностных знаниях. • специализированные правила. • объекты. Динамические ИС по отношению к системе моделирования могут быть охарактеризованы следующим образом: 1) система моделирования отсутствует. которые не могут быть точно описаны. 3) подход. базирующийся на глубинных знаниях. 3. базирующийся на поверхностных знаниях. разностные и дифференциальные уравнения (обычно первого порядка).

БЗ не структурирована. процедурно). иерархическое наследование свойств.способа представления выбираются правила. которая не сопоставится ни с одним правилом. что в процессе поиска решения последовательность формируемых таким образом ситуаций не оборвется до получения решения. Поиск решения состоит в выполнении тех правил. возникающего при отсутствии правил.е. ИС. Структурный подход в различных приложениях целесообразно сочетать с поверхностным или глубинным. управляемое данными). что структурирование должно довести задачу до алгоритма (как в традиционном программировании). ориентация на решение статических задач анализа. ориентированное на правила. 36 . а предполагается. ИС ориентировано на решение статических задач анализа. п. не возникнет неизвестной ситуации.п. базирующаяся на поверхностных знаниях. . Направление поиска решения: от цели к данным. При разработке ЭС используется технология. образцы которых сопоставляются с текущими данными. Глубинный (модельный) подход требует явного описания структуры и взаимоотношений между различными сущностями области. Используются программирование. активные знания (программирование. передача сообщений объектам (объектноориентированное программирование) и т. Данный подход с успехом применяется к широкому классу приложений.3 Сопоставление инструментальных средств с типами проблемных сред В соответствии с введенными выше параметрами классификации проблемных сред и ИС можно выделить следующие типы ИС. удовлетворяющих текущей ситуации в рабочей памяти. справедливых для области экспертизы. Смешанный подход в общем случае может сочетать поверхностный. как правило. Тип 1. что часть задачи решается с помощью поиска. Структурный подход к построению ЭС обусловлен тем. Например. При этом предполагается. ориентированное на правила. структурирование БЗ слабо выражено. Глубинные ЭС кроме возможностей поверхностных ЭС обладают способностью при возникновении неизвестной ситуации определить с помощью некоторых общих принципов. Действительно. Условие каждого правила определяет образец некоторой ситуации. как правило. В глубинном подходе компетентность ЭС базируется на модели той проблемной среды. ИС применяется для создания ЭС в статических средах типа 2. соответствующие типам проблемных сред. т. однако он оказывается неэффективным в тех приложениях. ИС применяется для создания ЭС в статических проблемных средах типа 1 (см. 3. в которой эта ЭС работает. При этом подходе необходимо использовать ИС. являются оболочкой (средой) и характеризуются следующими особенностями: сущности представляются совокупностью атрибутов и значений. обладающие мощными моделирующими возможностями: объекты с присоединенными процедурами. Правила и данные вводятся экспертом или создаются автоматически из данных индуктивными методами. Тип 2. Сопоставление не используется. что для ряда приложений применение только техники поверхностных знаний не обеспечивает решения задачи. поверхностный подход может быть использован для поиска адекватных знаний.оболочка (среда) со следующими особенностями: сущности представляются в виде атрибутов или вырожденных объектов (фреймов). Примеры ИС: 1-st class. Используется программирование. когда задача может быть заранее структурирована или при решении задачи может быть использована Некоторая модель. которые затем используются некоторой глубинной моделью. Однако применительно к ЭС речь не идет о том. использование поиска в качестве механизма вывода в неструктурированной базе знаний может приводить к. какие действия следует выполнить. при соблюдении которой правило может быть выполнено. Модель может быть определена различными способами (декларативно. Структурный подход к построению ЭС подобен структурному программированию. ненадежным и (или) некачественным решениям. и зачатки объектно-ориентированного программирования.1). Необходимость в ряде приложений использовать модели вызвана стремлением исправить несовершенство поверхностного подхода. 3. ИЛИС и др. Правила конкретные. ИС. Сеть или дерево вывода компилируется в режиме приобретения знаний. структурный и глубинный подходы.

гл. гл. Leonardo и др.е. ИС применяется для создания ЭС в динамических средах типа 5 ИС. Примеры ИС данного типа: Nexpert Object. ориентация на статические задачи анализа и синтеза. Система моделирования отсутствует. Тип 5. Определите понятия интегрированного приложения. 4). 4). Сопоставление обычно не используется. Сущности представляются в виде атрибутов и значений. ProKappa. генерацию сети вывода и поиска. Попов Э. так как с их помощью можно получать только простые правила. Тип 4. . объектно-ориентированное и процедурное программирование. Система поддержания истинности обеспечивает получение новых значений для переменных. из которых программируется ЭС. Guru. ИС.М. . как правило. гл. совокупность компонентов. Тип 3.. гл. Кисель Е Б Статические и динамические ЭС. ориентированное на правила. БЗ не структурирована. ИС применяется для создания ЭС в динамических средах типа 4. При разработке ЭС используются структурный. Activation Frame Work. используется операция сопоставления. Экспертные системы. Используется система моделирования. Решение неформализованных задач в диалоге с ЭВМ.288 с.-126с Вопросы для самопроверки 1. При разработке ЭС используются поверхностный. Используется как поиск от цели. ART. При разработке ЭС используются поверхностный и структурный подходы. поверхностный и глубинный подходы. Направление поиска решения: от цели к данным. Операция сопоставления направляется метазнаниями путем фокусирования на группах правил и (или) классе объектов (объекте). Level 5 Object. 1987.оболочка (среда) со следующими особенностями сущности представляются классами объектов и их экземплярами. 8). Используется (по выбору) поиск в ширину или в глубину.. Направление поиска задается пользователем (от данных или от целей). так и от данных. Примеры ИС данного типа: ЭКО (см. решаются динамические задачи анализа и синтеза. правила конкретные. 9). 1995. но в ряде ИС данного типа используются общие правила. ЛИТЕРАТУРА 1 Попов Э. ИС представляет собой инструментарий.:ЦРДЗ. т. Используется программирование. открытого приложения и распределенного приложения. Примеры ИС данного типа: G2 (см. Направление поиска решения по выбору: от цели к данным и от данных к целям. Rocky. 3.. ИС применяется для создания ЭС в статических средах типа 3. Используется поиск в глубину и ширину. Правила конкретные и общие. Планировщик обеспечивает получение лучшего решения в условиях ограниченных ресурсов. т. Наука.В.оболочка (среда) со следующими особенностями: сущности представляются в виде объектов.Правила обычно конкретные. Поясните отличия коммерческой системы от промышленной и действующего прототипа от исследовательского 37 . Процесс получения решения состоит из генерации сети вывода и поиска. Фоминых И Б. Сопоставление не используется. БЗ структурирована. Правила и структуры данных вводятся экспертом. . При разработке ЭС используются поверхностный и структурный подходы. 2. структурный и глубинный подходы. Сформулируйте параметры классификации экспертных систем. Примеры ИС данного типа: TDC Expert (см. Данные и правила вводятся на ограниченном ЕЯ с использованием изображений. Процесс получения решения включает: генерацию сети вывода и поиска или выработку предположений. как правило.В. БЗ структурирована. решаются динамические задачи анализа в реальном времени. ADS. Правила конкретные и общие. ориентированное на правила. М. объектноориентированное программирование и процедурное программирование. В ИС этого и последующих типов индуктивные методы обычно не применяются. Процесс получения решения обычно состоит в генерации сети вывода в режиме приобретения знаний. 2. Используется программирование.е. RTworks (см.

решаемых экспертной системой. Определите статические и динамические задачи. 5.4. определяющие свойства предметной области. 7 Назовите основные типы проблемных сред и ИС 38 . Перечислите основные параметры. 6 Укажите главные характеристики типов задач.

могут присутствовать и конкретные знания). т. ЭС на символьных ЭВМ (6% объема продаж) и. сколько имеется объектов). Personal Consultant Plus. используют архитектуру клиент-сервер. а не между их экземплярами. реализованные на рабочих станциях (более 80% объема продаж). определяющую множество допустимых решений. (см. ЭС на ПК и МАК (2% объема продаж). По масштабу ЭС (типу ЭВМ) безусловным лидером.гл. количество экземпляров некоторой сущности определяется только в процессе использования ЭС. 2 и 3 (см.е. т. гл. правила о вычислении некоторой характеристики любого объекта данного класса) придется представлять их в конкретном виде (писать для каждого объекта аналогичное правило. затем идут ЭС на больших ЭВМ (12% объема продаж). По типу приложений большинство ЭС являются интегрированными и открытыми. а к выбору его из множества допустимых. по данным 1995 г. OPS 5.сложные ЭС.е. Однако это в ряде случаев будет приводить к значительным неудобствам на этапе приобретения знаний. в которых возможности объектно-ориентированного программирования объединяются с общими правилами. 6). отсутствует возможность сопоставления в 39 . т. что значительно уменьшает количество правил. а не на стадии приобретения знаний) и наличием общих знаний (естественно. реализованные на ПК. отсутствующими в специализированных правилах. е. При представлении сред типа 3 избежать интерпретации невозможно. При использовании частных правил в процессе решения задачи удается избежать трудоемкой операции сопоставления. Тенденция объединить правила и объекты (фреймы) существовала в традиционных ИС с 1985 г.е. Nexpert Object). как правило. на рабочих станциях (следующее место занимают большие ЭВМ и символьные ЭВМ). По типу проблемной среды статические ЭС разрабатываются в средах типа 1. 3). реализуемые на рабочих станциях. 3 классификации состояние статических ЭС и ИС можно охарактеризовать следующим образом.е. как правило. При этом в средах типа 1 и 2 используются простые ЭС. среды типа 3 характеризуются общими знаниями.либо в виде дерева решений (без правил). ЭС. гл. В принципе с помощью частных правил можно представлять и проблемные среды с общими знаниями.1 Анализ состояния статических экспертных систем С точки зрения введенной в гл. Однако на ПК и больших ЭВМ архитектура клиент-сервер еще не стала доминирующей. Анализ состояния экспертных систем и инструментальных средств 4. вместо одного правила вводить столько правил. знания эксперта об области экспертизы выражаются общими понятиями. Поэтому для представления общих знаний (например. Действительно. однако в этих ИС (по сравнению с современными ИС для областей типа 3) либо реализовано ограниченное сопоставление (например. а в средах типа 3 . либо в виде специализированных (частных) правил (см. необходимых для описания области. (например. наконец. что наличие сопоставления позволяет хранить правила в общем виде. по определению. Для представления сред типа 3 в последнее время используются гибридные ИС. 2). описывать взаимоотношения между классами. т. Подчеркнем. при использовании некоторого общего правила в процессе консультации необходимо выполнять операции сопоставления. что дает возможность свести процесс решения задачи на этапе консультации не к генерации решения. Проблемные среды типа 3 характеризуются изменяемым составом знаний (т. Можно сказать.ГЛАВА 4. являются ЭС. ИС для сред типа 1 и 2 представляют данные в виде атрибутов и их значений. Наличие в правиле прямых адресных ссылок позволяет (для повышения эффективности) в режиме приобретения знаний компилировать правила в сеть вывода. реализованные. что частные правила являются естественным и наиболее распространенным способом представления поверхностных знаний. а исполняемые утверждения . в результате которых анализируются все экземпляры упоминаемого в правиле класса объекта.

3. Оперативная память 512 Кбайт . а не малого. 2. Представление: специализированные правила и простые механизмы вывода. большие и символьные). 3. Примерами современных гибридных статических ИС являются: ADS (5.. 5. Oracle). С. либо реализовано ограниченное объектно-ориентированное окружение (отсутствуют классы методов и (или) посылка сообщений). SQL/DS. Изолированные и интегрированные ЭС.32 Мбайт. которые объединяют несколько объектов). 6 Среда программирования: UNIX. 4. Встречаются индуктивные методы и гиперсредства. Средняя цена общие ИС . жесткий диск не обязателен. Доступ к БД (Oracle.32 Мбайт.64 Мбайт.правилах. Характеристики ИС для ЭС (США) Малые ИС (23 фирмы): 1.е. Среда программирования. С. DB2. dBase. классы объектов 2. IMS. 5. либо они реализованы на диалектах языка Лисп. рабочие станции. Sybase. Среда программирования: MVS. классы объектов 2 Интегрированные ЭС. WindowsNT. требуется жесткий диск. Однако обычно ИС относят к тому типу. ИС GURU работает на IBM PC и MicroVax. Oracle. их можно было бы отнести к различным типам ИС. Наиболее популярные ИС для ЭС (США) Большие ИС: 40 . символьные ЭВМ). 4. DB2. Доступ к БД (dBase III) и интегрированным пакетам (Lotus I-2-3) 4.1). Встречаются индуктивные методы и гиперсредства. 6. требуется жесткий диск. Большие ИС (5 фирм): 1 Представление: гибридные средства. Сначала проанализируем ИС общего назначения (малые. так как в США это средство в основном используется на MicroVax. альтернативные меры.4 Мбайта. 3. 7 Средняя цена: 80 000 дол. С. Доступ к БД (dBase. ADABAS). 6. подчеркнем следующее. требуется жесткий диск. но его относят к ИС среднего типа. Многие ИС реализованы на нескольких типах ЭВМ (например. Представление: гибридные средства. 5. Интегрированные ЭС. Например. 3. Средняя цена: 500 дол Средние ИС (10 фирм): 1. т. RDb. специализированные и общие правила. классы объектов. 2. распространенные в США. Оперативная память 8 . Оперативная память 8 . 6. специализированные и общие правила. Представление: гибридные средства. Рассмотрим более подробно ИС. Pascal.6500 дол. а не на языках традиционного программирования. Интегрированные ЭС. Pascal. DB2. средние. ПК. Символьные ИС (5 фирм): 1. а затем проблемно/предметно-ориентированные. 7. Unix. Перед тем как перейти к рассмотрению ИС.20 000 дол. 5. диалекты Лисп. Ниже приведены характеристики и названия ИС общего назначения по типам используемых ЭВМ. Доступ к БД (DL/1. ориентированные ИС . Unix. Modula II. общие и специализированные правила. PL/1. 7. X Windows 4. в котором оно пользуется наибольшим спросом. VMS) и Lotus. Pascal. Kappa. Fortran. MS Windows. 7. Оперативная память 8 . Средняя цена 12 500 дол. Среда программирования: MVS. Level 5 Object.

Procedure Consultant и Personal Consultant Easy (TI. PC Expert Professional (Software Artistry). ПИЭС. Art-IM. Символьные ИС: 1. Средние ИС: 1. 300 Кбайт TURBO С.) и др. Некоторые ИС используют индуктивные методы приобретения знаний (например.). Level5 (Information Builders Inc. 240 Кбайт ЭСПЛАН Москва Turbo Prolog. что многие из отечественных ИС (малых. SIMER+MIR.). VP Expert (Paperback Software). Level 5 Object (IBI). Expertfacts. HyperCard). требования ОЗУ ЭКО SIMER+MIR Рос НИИ ИТ и АП. AionDS 5. так как большинство коллективов разработчиков распалось. 2. 4. KEE (Intellicorp). Expert Edge (Helix Expert Systems Ltd).5. Большинство этих малых ИС (см. Gold Works (Golden Hill). Из малых ИС. Наиболее популярны следующие ИС: 1st-CLASS FUSION (фирма 1st-CLASS Expert Systems Inc. Instant Expert+ (Human Intellect Systems). Надо подчеркнуть. Intelledgent Developer. PC.). ExperOPS5 (Expertelligence). ЗНАТОК. 1st Class (1st Class Expert System). Москва Lisp. 400 Кбайт 41 . VP Expert (Paperback Software). KDS 2&3. МЭС. Intelligent Developer (Hyperpress Publishing Corp. Москва MuLisp XSIMP ЭПСИЛОН-СП. ФИАКР. Кроме того. Crystal. PC. средних и больших) скорее всего не поддерживаются. МОДИС. Personal Consultant Easy. Expert Common.). ЭКСПЕРТ. VAX КРИС Москва - ТЕТ-А-ТЕТ Москва PC. реализованы на языках Си и Паскаль. ЭВМ. Exsys (Exsys Inc. которые сопряжены со средствами обработки гипертекстов (Hypertext.1. PC. распространены такие ИС: Crystal (Intelligent Environment Ltd. 2. KBMS (Trinzic). Level 5. жесткий диск не обязателен. ШЕДЛ и др. Москва Институт программных систем АН. Большинство малых ИС. Москва Lisp. Тверь С. KDS 2&3 (KDS Corp.1 ИС Предприятие Язык программирования. ЛЭДИ. Москва НОВИНТЕХ. разработанных в России (табл.1 (Trinzic). как Instant Expert+.). ART Enterprise (Inference). OPS. ProKappa(Intellicorp). ИС для России Таблица 4. 1st-CLASS FUSION. Необходимо подчеркнуть. Mercury (AIT). что существуют такие ИС. Nexpert Object (Neuron Data). Переяславль-Залесский ИНТЕРЭКСПЕРТ Центр программных систем. требуют от 512 Кбайт до 4 Мбайт оперативной памяти. Заметное использование в США имеют 23 малые коммерческие ИС. Procedure Consultant.). PC. ЭКРАН. Super Expert и др. выше) имеют доступ к БД (обычно dBase) и интегрированным пакетам (обычно Lotus 1-2-3). ART (Inference). можно назвать следующие: ЭКО. распространенных в США. 2. 400 Кбайт ЛЭДИ ИНКОММЕД.1). PC Язык ДЕКЛ. PC ЭКСПЕРТМИКРО СПЕЙС ШЕДЛ Москва ВНИИСИ. ЭСПЛАН. Малые ИС: 1. ART (Inference).).

Так. • ИС для систем советчиков (help-desk application) (см. Средняя цена на предметно-ориентированные ИС приблизительно 24 тыс. Nexpert Object -Neuron Data) и Level 5 Object (Information Builders Inc. написаны на языках Си. Среди отечественных средних ИС можно отметить НЭКС.). DB2. Объем продаж символьных ИС с 1990 г. Большие ИС имеют доступ к нескольким сложным БД (DB2. SQL/DS. PC Аргумент Интеграл. Fortran. среди них Level 5 Object и ARTIM. РЕЛЯП и др. разработавшие средние ИС. специализированные и общие правила. например ADS-5.) и некоторые генерируют SQL-код (см. КОМФОРТ. Символьные ИС написаны на диалектах LISP и часто предназначены для Lisp-машин. выше). генерируют SQL-коды. КОНС-ПРОЛОГ. п. Knowledge Tool. Oracle и т. Цены на проблемно-ориентированные ИС зависят от сложности задачи. В США заметное распространение имеют не более 6 ИС [3]. ПРОДУС и др. переносят их на рабочие станции и PS/2. Отечественные символьные ИС. дол. то теперь почти все ИС этого типа могут выполняться и на многих ЭВМ традиционной архитектуры. Modula II. Oracle. HP. разработавшие большие ИС.1) (Trinzic). ЭКСПЕРТ-МИКРО. IMS и т. дол. Expert System Environment (ESE). IMS/DB. существенно зависит от типа ЭВМ. по состоянию на 1990 г. достигшие коммерческой стадии. PC. КОНСУЛЬТАНТ-2. Москва Си. Ведущую роль среди ИС этого класса играют KEE (Intellicorp) и его модификация IBM/KEE (IBM и Intellicorp).2). п. Среди отечественных больших ИС можно отметить: НЭКС. развивались слабо. IBM. Значительное распространение получили ИС ART (Inference Corp. Символьные ИС ориентированы на использование большой оперативной памяти (обычно 8 32 Мбайт). начал заметно сокращаться. TIRS (IBM). KBMS (Trinzic).). п.2). Необходимо подчеркнуть. Eloquent (Eloquent Systems Corp. требуют от 8 до 32 Мбайт оперативной памяти. RuleMaster).). 4. 2. основанных на прецедентах (см. DL/1. типа ЭВМ. ADABAS). жесткий диск обязателен (см. бывших в перечне средних. Kappa (фирма Intellicorp.64 Мбайт. Они разрабатываются для всех типов ЭВМ. ART IM (Inference Corp. выше).2). Необходимо подчеркнуть. 300 Кбайт Средние ИС в США используются в основном на рабочих станциях (Sun. Москва Smalltalk.) Большинство средних ИС имеют доступ к БД (к dBase. версия 5. переносят их на большие ЭВМ (например. интегрированным пакетам (Lotus 1-2-3). хотя встречаются случаи использования на PC и MAC. • ИС для систем. нам не известны. п.). Ряд средних ИС генерирует SQL-коды (Nexpert Object.п.1 (Aion Corp. в США значительное распространение получили только пять ИС: Aion Development System. В проблемно/предметно-ориентированных ИС можно выделить следующие поднаправления: • ИС для динамических экспертных систем реального времени. DB2.). DEC). PS/2.OPS/ST ИНФОТЕХ. среди которых лидером является Aion Development System (ADS. используемых в управлении технологическими процессами и имитационном моделировании (см. 2.). а фирмы. что фирмы. Цена на символьные ИС и на KEE. МЕДИФОР. Среди них есть ИС. к списку больших ИС добавился ряд ИС. Nexpert Object (Neuron Data. средняя цена приблизительно 20 тыс. Большинство средних ИС написаны на языке С . что если 5 лет назад символьные ИС выполнялись только на символьных ЭВМ. ПЛ/1. в частности. ориентированные на индуктивные методы приобретения знаний (TIMM.). Средние ИС используют гибридные представления. требуют память 8 . В 1990 г. ADS (Trinzic). Многие из них имеют доступ к БД (dBase. используются также языки Pascal. Nexus). ОПС-86. Наиболее популярны следующие средние ИС: Level 5 (Information Builders Inc. Перечислим те проблемы и 42 . ЭКСНА.). Большие ИС до 1990 г. IDMS. Паскаль. Проблемно/предметно-ориентированные ИС в США активно развиваются.

а поставляются в составе ИС общего назначения. 4. модификацию и маркетинг БЗ. которое упрощает приобретение знаний для ИС Nexpert Object. поддержка разработчика планов и программ (Service /Maintenance Planner (Carnegie Group) и др. редактировании и управлении знаниями о конкретной проблеме. 43 . но доступно клиентам. Каждая БЗ KnowledgePak ориентирована на поиск и устранение конфликтов в программном обеспечении типа Windows. ориентированные на приобретение знаний. Типичным примером является ИС CAMEO (Arthur D. Коммерческие БЗ используются совместно с коммерческими ИС и предлагаются третьими фирмами. Так. Индуктивные средства приобретения знаний. Эти фирмы обеспечивают разработку.). среди всех видов ИС наиболее динамично развиваются ЭС реального времени. Эти средства либо включаются в состав ИС общего назначения (например. Их цель помочь разработчику в накоплении.). диагностика электронного оборудования -ICAT (Automated Reasoning Corp. В 1995 г.области.Cogensys Judgement Software (Cogensys Corp. Наиболее широкое использование имеет ИС ETS (фирма Boeing). Средства приобретения знаний.CAIS (Rosh Intelligent Systems Inc. для которых разработаны ориентированные ИС. фирма ServiceWare предлагает базы знаний.Test Bench (TI и Carnegie Group). называемые "KnowledgePaks". автоматизация конструирования . ориентированные на конкретные ИС общего назначения.это диагностика оборудованея . которые могут быть использованы с продуктами фирмы Inference CBR Express и CasePoint.).ICAD (ICAD Inc. 3.Intelligen (CIMTelligence Corp. ИС. а используется только для внутренних приложений фирмы (известно несколько сотен приложений средства). VP-Expert. работающим совместно с ADL. Это ИС не продается. Типичным примером является ИС KAT.Flexis ToolSet (Savoir Systems Group) и др. в настоящее время обычно не выделяются в самостоятельный продукт.). управление производством . 1. продукт BEAGLE фирмы VRS Consulting для PC и для VAX).). 2.ADL). 4. 5. Данное средство фирмой не продается. приведенных в гл. основанные на деревьях решений. либо распространяются как самостоятельное средство (например. объем продаж ЭС реального времени составил примерно 70% рынка проблемно/предметно-ориентированных СОЗ и был равен 38 млн дол. Тем не менее коммерческие ИС приобретения знаний в США существуют и могут быть охарактеризованы следующим образом. Келли. Средства этого типа обычно включаются в состав ИС общего назначения. KDS 2&3 и др. реализованное на символьной ЭВМ и базирующееся на методе репертуарных решеток Дж. Средства приобретения знаний. базирующиеся на психологической теории. Кроме перечисленных выше поднаправлений проблемно/предметно-ориентированных ИС можно указать еще коммерческие базы знаний (help-desk application) и ИС. поиск повреждений . Средства приобретения знаний. 1st-CLASS FUSION. например. Типичными примерами являются ИС общего назначения для ПК Procedural Consultant (фирма TI) и ИС общего назначения для рабочих станций DEC и VAX Dession Expert (фирма DEC). предназначенное для помощи в создании БЗ для ИС Level 5. Данные средства не ориентируются ни на какое ИС.2 Анализ состояния динамических экспертных систем Как видно из данных. Word. Средства приобретения знаний общего назначения. интеллектуальный вход-выход к реляционным БД (Genesis V (Help/Systems Inc. ProGenisis (Quantum in KNOWvations). сопровождение. не являющимися разработчиками ИС. генерирование планов . они используются не только для создания БЗ ЭС.). Diagnostic Reasoning Template (Coherent Thought).). Nextra сочетает индуктивный метод и метод репертуарных решеток и реализовано на ПК Macintosh. Для проблемно-ориентированных ИС . 2. Предметно-ориентированные ИС разработаны для следующих областей: разработка финансовых приложений . Lotus 1-2-3 и содержит решение от 450 до 500 различных задач. ориентированные на приобретение знаний.Little . и средство Nextra.

повышающую качество. что в отличие от статических ИС и ЭС.интегрированная система мониторинга и планирования для прокатного стана на базе распределенной системы.система обеспечения безопасности и моделирования событий для ядерной электростанции.е. 44 . Mrs. таких. для БПА. финансовые операции. включающей G2 и Telewindows. Приложение 2). Caterpillar (США) . . Intelsat (США) .система управления. Интерес к ИС этого типа инициируется тем.G2 используется на ряде заводов 3М в Миннесоте для управления технологическими процессами и поддержки принятия решений. разработанная для улучшения производства блоков памяти и питания на заводе IBM в Торонто и интегрированная в производственный процесс. т. Всего на базе G2 разработано более 700 ЭС РВ. используемых.). MOM объединяет системы G2. Serveio's Gemstone OODBMS и последовательную SPS в единую систему управления и контроля за производством печатных плат. IBM (США) . предсказывающую систему для GE Nuclear в Сан Хозе.3 млн. Обеспечивает помощь при восстановлении спутников путем мониторинга критических состояний и диагностики сбоев коммуникационных каналов до и во время их появления. систему для производства и тестирования самолетных двигателей в Лин-не. ИС для БПР используются для решения существенно более значимых и сложных задач. поступающих от печи на дальнейшую обработку. Гараж не требует присутствия людей и размещает 800 машин на том же пространстве. аэрокосмические исследования. связь и многие другие. Ниже перечислены некоторые области применения ЭС РВ.автоматизированный.GE разработала ряд систем на базе G2: систему для наземных станций слежения за спутниками в GE Aerospace в Филадельфии. Camunsa (Испания) .CarTech использует DSP (ИС на базе G2) для моделирования операций горячего прокатного стана и связанных с ним печей. работающих более чем в 30 областях. дол.. Использует более 130 диаграмм различной формы для отображения процесса. 9). как указано ранее. производстве цемента. Значимость ИС и ЭС реального времени (РВ) определяется не столько их бурным коммерческим успехом (хотя и это достойно тщательного анализа). транспортировка и переработка нефти(газа). качество. DSP разрабатывает расписание печи и потока материалов. фармакологии. СА. для "фундаментального переосмысления и радикального перепроектирования деловых процессов для достижения существенных улучшений в главных показателях деятельности компаний. но в первую очередь тем.Baird's Bakery (США) . окупаемость и производительность завода.MOM (Measurement of On-line Manufacturing) . интеллектуальный гараж в Барселоне.(в 1988 г. как: управление непрерывными производственными процессами в химии. Lafarge использует возможности нечеткой логики G2 для обеспечения замкнутого цикла управления мельничными установками. (США) . Lafarge Coppee (США) . Содержит более 200 правил. питания и т. т. управление атомными и тепловыми электростанциями. где при обычном подходе размещаются только 300. мониторинга и контроля сети. что только с помощью подобных средств создаются стратегически значимые приложения в таких областях. В последнее время на основе динамических ИС начинают создаваться ИС для интеллектуального имитационного моделирования. услуги и темпы"[2].система диагностики.е. для автоматизации текущего состояния бизнеса. разработанных на базе ИС G2 (см. используемые в реинжиниринге (реорганизации) бизнес-процессов (БПР) (см. Области применения ЭСРВ (перечень фирм и характеристик приложений) 3М (США) . General Electric (США) .самая большая частная пекарня в США использует G2 для планирования и управления всем производственным процессом. разработанная за 4 месяца на базе G2. Carpenter Technology Corp. как стоимость. гл. расположенных по всему миру. разработанный к летним Олимпийским играм 1992 г. Forsmark Nuclear Plant (Швеция) .25 установок G2 на цементных заводах.п.

несмотря на значительное количество объявленных ИС. обеспечивать восстановление после сбоя. Т а б л и ц а 4. осуществляя проверку всех параметров от температуры до курса. так как они не выполняют требования. образовала частную фирму Gensym. способности одновременно решать несколько задач (т.3 года ряд других фирм начал создавать свои ИС для ЭС РВ. • обеспечивать механизм рассуждения при ограниченных ресурсах (время.е. • моделировать "окружающий мир". США).. G2 обрабатывает данные от 16 000 датчиков в секунду. • обеспечивать уровень защиты информации (по категориям пользователей) и предотвращать несанкционированный доступ. поступивших в систему. системы управления верхнего уровня. общих правил. планирование. Это ИС называлось Picon.0. работающим в реальном времени: • представлять изменяющиеся во времени данные.советчики оператора. в этом списке много либо незавершенных ИС. в ряде систем для космических аппаратов. В настоящее время работает версия 4. диагностика. гарантию того. заложенные в Picon. Windows NT. обеспечивать создание различных его состояний. обеспечивать хранение и анализ изменяющихся данных. обеспечивающими маневрирование челнока. системы обнаружения неисправностей. которые только с большой натяжкой могут быть отнесены к ИС для создания ЭС РВ. т. т. • обеспечивать предсказуемость поведения системы.2 [1] приведен достаточно полный перечень всех фирм и объявленных ими продуктов. включая управление 38 реактивными двигателями.). Следует отметить. Успех этого ИС привел к тому. что каждая задача будет запущена и завершена в строгом соответствии с временными ограничениями. Например. системы . ILOG Rules (ILOG. поступающие от внешних источников. остается G2 (Gensym. COGSYS (SC. составление расписаний. Реализация этого механизма предъявляет требования к высокой скорости работы системы. значительно развив идеи. е. либо ИС. безусловно. Франция).2. предъявляемые к системам. ИС под названием G2. Канада). следующие места со значительным отставанием (реализовано менее 50% возможностей G2 [1]) занимают RTworks .NASA использует G2 с октября 1988 г. • обеспечивать настройку системы на решаемые задачи (проблемно-предметная ориентация). США). системы проектирования и т. память). требование предсказуемости не допускает использования в ЭС РВ механизма сборки мусора. п. В настоящее время наиболее продвинутым ИС. планировать в соответствии с приоритетами обработку процессов. и оно исполнялось на символьных ЭВМ Symbolics. модульности и т.2 45 .2 и готовится к выпуску версия 5. которая. выпустила в 1988 г. • обеспечивать наполнение базы знаний (БЗ) для приложений реальной степени сложности с минимальными затратами времени и труда (необходимо использование объектно-ориентированной технологии. выпустила фирма Lisp Machine Inc. Традиционные статические ИС и ЭС не способны решать подобных задач. 4. оптимизация.0. п. • протоколировать свои действия и действия персонала. COMDALE/C (Comdale Techn. В табл. С отставанием от Gensym на 2 . что группа ведущих разработчиков Picon в 1986 г. но не MS DOS). необходимо использовать операционные системы UNIX. • выполнять одновременно временные рассуждения о нескольких различных асинхронных процессах (задачах).1 Основные производители ИС для ЭС РВ ИС для создания ЭС реального времени впервые в 1985 г.фирма Talarian. рассматриваемый в данном приложении. что. США. • обеспечивать создание и поддержку пользовательских интерфейсов для различных категорий пользователей. ЭС РВ решают следующие классы задач: мониторинг в реальном масштабе времени. VMS. 4.NASA/ Space Shuttle (США) . е. свойственного языку Lisp. версия 1.

фокусирование на классах объектов или правил) одновременное выполнение правил и (или) процедур Графическое определение объектов Клонирование объектов и их групп ИС G2 + Rtworks + + + + (Нет общих) + + + + + + + (Только на Си) + + + - + - + + 46 . UK 12 Montrex Stone and Webster. UK 14 Rocky Expert Edge. USA 15 RTAC M/Power Mitech. USA 13 Promass Unibit.№ 1 2 3 4 Коммерческие ИС для ЭС РВ (1993 г. USA 7 Chronos S20. USA 18 RT Expert Integrated Systems Inc. USA 19 SNAP Template Software. USA 16 RTES Knowledge systems Inc. L*Star) COMDALE/C COGSYS Gensym Corp. USA 5 ILOG Rules (XRete) ILOG. France 6 Activation Framework Real Time Intelli Systems.3 Сравнительные характеристики G2 и RT works Возможности ИС Объектно-ориентированная технология: связи между объектами отношения между объектами иерархия объектов Представление знаний: правила (общие и специализированные) Процедуры динамические модели функции в ЕЯ Механизм рассуждений: от данных от цели Сканирование метарассуждения (события. 4. USA 10 Mercury KBE Intelligence Tech. US A 11 Muse Cambridge Consultans. USA 17 RT/AI Intellisys.) Продукт Фирма G2 RTworks (R*Time. USA Из приведенного в табл. USA < 50 % Comdale Tech. что G2 значительно превосходит ближайшего конкурента RTworks [4]. Таблица 4. Сравнение G2 и RTworks проводилось путем разработки одного и того же приложения на этих ИС двумя организациями: NASA (США) и Storm Integration (США). Canada SC Scicon/Cogsys Comp. France 8 Escort PA Consultans.3 сравнения видно. USA 20 TDC Expert Honeywell. USA 100% Talarian Corp. UK 9 Expert 90 Bailey.

редактор многослойных пиктограмм 13 Исполнение на ряде универсальных ЭВМ. понимание + связей между объектами 7 Библиотеки знаний являются ASCII-файлами. наследование свойств. кнопки. обеспечивающие + + + эффективную связь с внешними системами и базами данных Общий итог по результатам сравнения 16 позиций таков: 1) в группе А реализовано 3 свойства из 16 (18% от функциональных возможностей 47 . • супервизорныё системы управления (группа В). Intell 14 Кооперация ЭС реального времени по сетевому протоколу + TCP/IP или DECnet с другими приложениями 15 Удаленные окна. + портируемыми на любые аппаратные платформы без какоголибо дополнительного программирования 8 Развитый редактор для сопровождения базы знаний без + программирования 9 Средства инспекции базы знаний + + + 10 Средства управления доступом с помощью механизма + авторизации пользователя и обеспечение желаемого взгляда на приложение 11 Средства трассировки и отладки БЗ + + + 12 Интерфейс оператора. + применимые к классам объектов 4 Обратный и прямой вывод. внутренний планировщик. + + шкалы. В. сканирование. IBM. диаграммы. SG. • ЭС реального времени.4 Сравнительная характеристика G2 и программных продуктов групп А. табл. Таблица 4. включающий график. HP. уравнения и динамические модели. + + + параллельные процессы рассуждения 2 Структурированный естественно-языковый интерфейс с + управлением по меню и автоматической проверкой синтаксиса 3 Общие правила. С и D № Свойства ЭС РВ А В С D (G2) 1 Работа в реальном времени.4) по 16 свойствам. используется ИС Dataviews) - + + + G2-G2 Приведем результаты сравнения G2 со следующими группами программного обеспечения (см. + использование метазнаний 5 Интеграция подсистемы моделирования с динамическими + моделями 6 Структурирование БЗ. 4. фокусирование. включая интерактивную + многопользовательскую работу 16 Интерфейсы с источниками данных. • ЭС G2. исключая G2 (группа С).Графические пользовательские интерфейсы для различных категорий пользователей + Многопользовательская кооперативная разработка приложения ИС запрограммировано на Си Распределенное приложение + (Нет собственной графики. характеризующим ЭС РВ [5]: •статические ЭС (группа А). SUN. включая рабочие + + + станции DEC.

Особенностью машины вывода G2 является богатый набор способов возбуждения правил. что хранится в БЗ и с чем оперирует система. относящимися к конкретным экземплярам.последовательный или параллельный. касающимися целого класса объектов. гл.4 приведено общее сравнение G2 (см. присутствующих в экземпляре данного класса. Кроме того. Правило в G2 может возбуждаться одним из 9 способов: 1) данные. т. 4.наследования свойств и иерархии классов. 9) с другими ИС. Класс в смысле TDC Expert .2 Сравнение ИС для создания ЭС РВ В табл. архитектура приложений. указывающие порядок исполнения утверждений условия . Класс в G2 является основой представления знаний.2). автомобиль с четырьмя колесами) становится практически неразрешимой в RTworks. с которыми работает система.G2). табл. Правила в системе G2 могут быть общими. Представление знаний Базу знаний во всех трех системах можно условно разделить на структуры данных. В системе RTworks множественное наследование для классов разрешено. экземпляр производного класса не может рассматриваться как экземпляр классародителя.2.это просто описание набора атрибутов. Все.к простым ИС (для проблемных сред типа 4). которые обеспечивают манипулирование данными. на самом деле в этой системе отсутствует реализация основной концепции объектно-ориентированного подхода . так и процедуры. переносимость приложений. и специфическими. Можно сказать. Проведем более детальный сравнительный анализ трех ИС: G2. изменились (используется в прямом выводе 48 . 2) в группе В реализовано 5 свойств из 16 (31% от функциональных возможностей G2). чем с объектами. оперирующие сразу со множеством классов. и командный язык. Все синтаксические конструкции G2 тоже являются классами. Разработчику предоставляется возможность использовать как продукционные правила. специфичных для класса. RTworks и TDC Expert (см. что TDC Expert оперирует скорее с записями. Кроме того. Структуры данных Все три системы в части использования структур данных основаны на объектноориентированном подходе. интерфейс с конечным пользователем. Описание класса (тоже экземпляр специального класса) включает ссылку на суперкласс (по иерархии is-a) и перечень атрибутов. однако каждая из систем вносит свою специфику в объектноориентированное представление данных. однако в отличие от G2 каждый конкретный экземпляр может быть представителем только одного класса. что тривиальная в G2 задача описания составных объектов (например. а третье . 4. Первые два ИС относятся к наиболее развитым ИС (для проблемных сред типа 5). что не позволяет записывать обобщенные утверждения. 3) в группе С реализовано 3 свойства из 16 (18% от функциональных возможностей G2). Заключение правила может содержать условные выражения и директивы. и выполняемые утверждения. в отличие от G2 атрибутом класса не может быть экземпляр другого класса. Хотя в TDC Expert пользователь тоже оперирует понятиями "класс" и "экземпляр класса". е. в последней (четвертой) версии системы G2 реализованы механизмы множественного наследования (раньше разрешались только древовидные схемы наследования свойств) и возможность написания присоединенных процедур-методов для класса.3 и 4. Исполняемые утверждения Самый богатый спектр исполняемых утверждений для представления знаний предлагается в системе G2. 4. входящие в условие правила. Это значит. является экземпляром того или иного класса. Сравнение будем производить по следующим характеристикам: представление знаний. среда разработки.

Упрощение взаимодействия разработчика с системой достигается за счет оригинального подхода. которое требуется другому правилу или процедуре (используется в обратном выводе -backward chaining).е. 3) возбуждается каждые n секунд. Если первые два способа достаточно распространены и в статических экспертных системах. учитывающими работу процедуры в реальном времени: ожиданием наступления событий.на правилах определенной. более предпочтительным является процедурный подход. Еще одна интересная особенность языка . задающими последовательное или параллельное выполнение операторов. Мощность языковых конструкций для представления продукционных правил и количество способов их возбуждения в RTworks также гораздо слабее.число. реализованного в текстовом редакторе. заранее введенной пользователем категории. 2) правило определяет значение переменной. присвоено значение независимо от того. что резко повышает эффективность прикладной системы. Работа TDC Expert основана не на системе продукций. где n . Несмотря на то. изменилось оно или нет. в некоторых случаях. директивами. Операция focus позволяет в определенный момент работы приложения из всего множества правил концентрироваться только на тех.путем применения операций фокусирования . 9) переменная не получила значения в результате обращения к своему источнику данных. разрешением другим задачам прерывать выполнение данной процедуры. Перечисленные свойства языка позволяют системе одновременно выполнять множество различных процедур или множество копий одной и той же процедуры для множества различных объектов. а на дереве решений. 4) явное или неявное возбуждение другим правилом . что гарантирует введение только 49 . чем в G2 или RTworks. входящей в условие правила. Система RTworks не обладает возможностью описания процедурных знаний. которые касаются определенного объекта. Язык программирования. Поэтому разрабатываемые приложения покрывают гораздо более узкий круг задач. определенное для данного правила (используется в механизме сканирования (scan)). позволяющие организовать цикл над множеством экземпляров класса. Среда разработки Развитая система встроенных текстовых и графических редакторов системы G2 и средств визуализации знаний приближает ее по возможностям к современным CASEсредствам. 5) переменной. Пользователь описывает конкретные ситуации (узлы дерева решений) и рекомендации оператору для данных ситуаций.9 возбуждают правило при возникновении некоторого события (см. что продукционные правила обеспечивают достаточную гибкость для описания реакций системы на изменения окружающего мира. т. 8) определенное отношение между объектами установлено или уничтожено. для написания процедур пользователю предлагается разрабатывать их на языке Си и подключать в качестве внешних программных модулей (в системе G2 такая возможность тоже предусмотрена). гл. Особый интерес представляют действия фокусирования (focus и invoke) или концентрации внимания. а третий хорошо известен как механизм запуска процедур-демонов. используемый в G2 для представления процедурных знаний. Правил в привычном смысле в TDC Expert не существует. 7) определенный объект на экране перемещен пользователем или другим правилом.итераторы. а операция invoke . Кроме стандартных управляющих конструкций язык расширен элементами. чем в G2. то остальные являются уникальной особенностью системы G2. Процесс редактирования все время направляется процедурой грамматического разбора. 9). 6) возбуждается каждый раз при запуске приложения.forward chaining). запуск или остановку комплекса оборудования). отсутствуют в RTworks и TDC Expert Методы 4 .focus или invoke. В RTworks используются только механизмы построения прямого и обратного вывода и сканирования правил. когда нам необходимо выполнить жесткую последовательность действий (например. является достаточно близким родственником Паскаля.

Разработчик может набирать вводимый текст на клавиатуре или выбирать подходящие шаблоны из подсказки. и использование среды Unix для поддержки распределенной обработки обеспечивают открытость системы Rtworks. Во-первых. которые должны вычисляться в процессе функционирования приложения. написанными на Си. Архитектура приложения Система RTworks базируется на возможностях операционной системы UNIX для организации распределенной обработки (рис. • человеко-машинный интерфейс (RThci). графическое отображение взаимосвязей между объектами приложения может напрямую использоваться в декларативных конструкциях языка описания знаний. В окне редактирования появляется динамически изменяемая подсказка. Очевидно. При редактировании доступны клавиатурные команды и контекстно-зависимое меню операций редактирования. которая включает следующие подсистемы: • коммуникационный сервер (RTserver). Интерфейс с конечным пользователем Система G2 предоставляет разработчику богатые возможности для формирования простого. Подсистемы типичного приложения на базе Rtworks Приложения на базе RTworks имеют модульную структуру. что в значительной степени ограничивает его возможности. ясного и выразительного графического интерфейса с пользователем с элементами мультипликации. Кроме того. Создание приложения в TDC Expert заключается в заполнении таблиц. • подсистему получения данных (RTdaq). 4. Недостаточно просто 50 . какие языковые конструкции пользователь может вводить.е. что отсутствие интерактивных средств разработки увеличивает стоимость и продолжительность этапа создания приложения. Разработчик приложения вынужден использовать систему Dataview фирмы VI Corporation. К сожалению. Интерфейс с пользователем TDC Expert ограничен возможностями системы TDC 3000. RTworks не обладает собственными средствами для отображения текущего состояния управляемого процесса. начиная с текущей позиции курсора. взаимодействие с конечным пользователем ограничивается текстовым режимом работы. т. это должно быть специфицировано специальной командой машины вывода. 4. Фирма Talarian представляет такой подход как возможность пользоваться "Вашим любимым текстовым редактором". Система RTworks не обладает встроенными средствами редактирования базы знаний.1. представляющих перечень атрибутов объектов. Предлагаемый инструментарий позволяет наглядно отображать технологические процессы практически неограниченной сложности на разных уровнях абстракции и детализации. распределенная архитектура RTworks дорого обходится разработчику. • подсистему логического вывода (RTie).синтаксически правильных конструкций языка. если заключение машины вывода отображается процессом RThci.1). Приложение должно быть сначала записано в виде ASCII-файла и затем подвергнуто грамматическому разбору средствами RTworks. Рис. указывающая. описывающих анализируемые "ситуации" и выражения. Наличие интерфейса с внешними процедурами.

изменить значение в базе знаний.в порядке ввода. DEC Rdb). и в спецификации базы разделяемых данных. AEG Modicon). Подсистема GSI работает параллельно функционированию прикладной системы как независимый обработчик событий и обеспечивает ее двустороннее (в отличие от RTworks) взаимодействие с широким спектром программируемых контроллеров ведущих фирм (Alien Bradley. Библиотека GSI и так называемые G2 Bridge products позволяют легко интегрировать G2-приложения в существующие АСУТП. Структура типичного приложения на базе TDC Expert представлена на рис. Организация распределенной разработки средствами G2 В системе TDC Expert специальных средств для распределенной обработки не предусмотрено. Siemens. В-третьих. отличающихся друг от друга. Средства связи с управляемым процессом обеспечиваются комплексом TDC 3000. базы разделяемых данных и базы знаний. Невозможность послать через RTdaq запрос на получение данных делает задачу верификации показаний и диагностики неисправности датчиков практически неразрешимой. С другой стороны. получающей значения от другого G2-процесса. Недостатком RTworks является и односторонняя передача данных через процесс RTdaq. Yokogawa. а в RThci .3. GE-Fanuc. эти различные среды разработки часто требуют избыточных описаний. G2 предоставляет разработчику гораздо более гибкие и мощные средства для формирования распределенных приложений на базе архитектуры клиент-сервер (рис. ORSI). который передаст его процессу RThci.2). 51 . можно разрабатывать приложение как иерархическую систему. Foxboro. Например. разработка интерфейса RThci. 4.2. каждая переменная RThci должна быть описана и в среде разработки RThci. концентраторов данных (DEC BASEstar. Перечень описаний в базе разделяемых данных хранится в алфавитном порядке. Fisher. На разработчика возлагается ответственность за то. просто указать номер сетевого порта источника. Sybase. При этом обмен данными осуществляется на уровне переменных через протокол ICP (Intelligent Communication Protocol). Во-вторых. систем сбора данных (ABB. Рис. Для этого фирмой Gensym разработана клиентная система Telewindows. Alien Bradley Pyramid Integrator. 4. 4. Связь с внешними источниками данных строится на основе библиотеки стандартных интерфейсов и сервера GSI (G2 Standard Interface). требует от разработчика знания трех различных программных интерфейсов. Informix. SETPOINT SETCIM) и развитых СУБД (Oracle. обеспечивающая множественный доступ к централизованной базе знаний и групповую работу с приложением. В зависимости от требований конкретной задачи можно построить систему как содружество автономных интеллектуальных агентов на базе интерфейса G2↔G2. Для организации обмена необходимо в описании переменной. чтобы оба описания были идентичными и при внесении изменений перекомпиляции были подвергнуты оба модуля. разработчик обязан еще указать имя переменной в RThci и послать измененное значение коммуникационному серверу.

4. Gensym Corporation.1996. Приведите результаты сравнения наиболее развитой динамической экспертной Системы G2 с другими классами экспертных систем. Назовите основные направления использования проблемно/предметноориентированных ИС. решается элементарно просто. значимые параметры. and others. April.. 107-114. Gensym Corporation.28. . 7. Система RTworks также доступна на широком спектре Unix-платформ.3. DEC. Приведите примеры статических и динамических экспертных систем. который однозначно интерпретируется на любой из поддерживаемых платформ (Unix SUN. . Reengineering the Corporation. . ЛИТЕРАТУРА 1.. . по которым целесообразно проводить сравнение различных динамических экспертных систем. Назовите примеры применения технологии динамических экспертных систем. IBM. Перенос приложения не требует его перекомпиляции и заключается в простом переписывании файлов БЗ. TDC Expert работает только на мини-ЭВМ семейства VAX под управлением операционной системы VMS. Clements B. . HP. 3.N2. Эти жесткие ограничения заставили фирму Honeywell использовать в своих разработках для систем управления (в том числе и на базе TDC 3000) оболочку экспертных систем реального времени G2 фирмы Gensym вместо собственной системы TDC Expert. and Champy J. 5. -P. -1993. Укажите основные характеристики инструментальных средств для каждого типа ЭВМ. Memorandum//Copyright. Questions and Answers about G2//Copyright. 26 . Выделите.1993. Hammer M. VAX под VMS и Intell под Windows NT). .. Однако отсутствие поддержки Open VMS для рабочих станций фирмы DEC и Windows NT для систем на базе процессоров DEC Alpha и Intel ограничивает возможность переносимости RTworks-приложений по сравнению с G2-приложениями. Функциональные возможности и внешний вид приложения не претерпевают при этом никаких изменений. 52 . Evaluting Commercial Real Time Expert System Software for Use in the Process Industries. Структура системы на базе TDC Expert Переносимость приложений В рамках G2 больной вопрос для всех профессиональных программистов переносимость разрабатываемых приложений. Moore В.R.New York: Harper Colins. Вопросы для самопроверки 1.P. Intelligent Software Strategies. Интерфейс с устройствами сбора данных предусмотрен только для серии TDC 3000.1993.1993. 4. База знаний сохраняется в обычном ASCII-файле.C&I. SG. 4. 2. 6. . 2. and Preto F.Рис. 5. Приведите примеры современных гибридных инструментальных средств для статических экспертных систем. Moore B. A Manifesto for Business Revolution. 3.

"ЧТО ПРЕДСТАВЛЯТЬ" в экспертной системе [5]. что эта задача возникает для любого языка представления и способы решения этой задачи являются одинаковыми (либо сходными) вне зависимости от используемого формализма. тем. • каковы предпочтительные способы и методы решения. выбранный способ представления может оказаться непригодным в принципе либо неэффективным для выражения некоторых знаний. организацию знаний. кроме того.е.е. • каковы цели пользователей. языком общения. что эти две проблемы не являются независимыми. По нашему мнению. • знания о способах представления и модификации знаний. 2) знания о модели внешнего мира. • при каких ограничениях на количество результатов и способы их получения должна быть решена задача. 1. Зависимость состава знаний от требований пользователя проявляется в следующем: • какие задачи (из общего набора задач) и с какими данными хочет решать пользователь. в круг вопросов. решаемых при представлении знаний. Необходимо отметить. • знания о языке общения и способах организации диалога. Состав знаний ЭС определяется следующими факторами: проблемной средой. архитектурой экспертной системы. представление знаний. в частности.е. так и от требуемого 53 . потребностями и целями пользователей. определение "модели представления. определение того. вопрос "КАК ПРЕДСТАВЛЯТЬ" можно разделить на две в значительной степени независимые задачи: как организовать (структурировать) знания и как представить знания в выбранном формализме. управляющие знания). В соответствии с общей схемой статической экспертной системы (см. необходимы следующие знания: 1) знания о методах взаимодействия с внешним окружением. Представление знаний в системах. • какова степень общности (конкретности) знаний о проблемной области. Стремление выделить организацию знаний в самостоятельную задачу вызвано. Второй вопрос касается того.1 Состав и организация знаний в экспертных системах Первый и основной вопрос. используемые компонентом приобретения знаний. Для динамической ЭС. • поддерживающие структурные и управляющие знания. • каковы требования к языку общения и организации диалога. . используемые объяснительным компонентом. Действительно."ЧТО ПРЕДСТАВЛЯТЬ" определяется тем. "КАК ПРЕДСТАВЛЯТЬ" знания. рис. Состав знаний о языке общения зависит как от языка общения. будем включать следующие: определение состава представляемых знаний.1) для ее функционирования требуются следующие знания: • знания о процессе решения задачи (т. Итак. используемые интерпретатором (решателем).ГЛАВА 5. т. который надо решить при представлении знаний.это вопрос определения состава знаний. Важность вопроса. используемые лингвистическим процессором (диалоговым компонентом). что решение именно этой проблемы обеспечивает адекватное отображение моделируемых сущностей в системе. доступная пользователю. т. основанных на знаниях 5.

Отметим. Однако мы избегаем использовать термин "процедурные знания". Собственно предметные знания разбиваются на факты и исполняемые утверждения.уровня понимания.п. о назначении знаний. Поддерживающие знания используются при создании системы и при выполнении объяснений. Исполняемые утверждения содержат информацию о том. то он не "осознает" этих знаний. задающие процедуры обработки. 9. Они содержат информацию о причинах ввода знаний. которые способен интерпретировать решатель (интерпретатор). Предметные знания содержат данные о предметной области и способах преобразования этих данных при решении поставленных задач. описывают способ использования знаний и получаемый эффект. В первом случае внимание фокусируется на элементах рабочей памяти.это знания. но и в декларативной форме. хранящие информацию о лексике и грамматике языка общения. Говоря другими словами. Решатель не знает их структуры и содержания.2). Интерпретируемые знания можно разделить на предметные знания. С учетом архитектуры экспертной системы знания целесообразно делить на интерпретируемые и неинтерпретируемые [5]. Обычно фокусирующие знания содержат сведения о наиболее перспективных объектах или правилах. гл. [5]. 2) метазнания используются для обоснования целесообразности применения правил из области экспертизы. п. Семантические поддерживающие знания содержат смысловое описание этих знаний. Поддерживающие знания имеют описательный характер. Фокусирующие знания описывают. Все остальные знания относятся ко второму типу. как коэффициент определенности правил и данных. Если эти знания используются каким-либо компонентом системы. Поддерживающие знания подразделяются на технологические и семантические. какие знания следует использовать в той или иной ситуации. Эти знания применяются для выбора стратегий или эвристик. знаний о знаниях. информацию о структуре диалога. Технологические поддерживающие знания содержат сведения о времени создания описываемых ими знаний. Поддерживающие знания выполняют роль описаний (обоснований) как интерпретируемых знаний. во втором на правилах базы знаний. меры важности и сложности. используемую для выбора способа интерпретации знаний. наиболее эффективных для решения данной задачи. т. Факты определяют возможные значения сущностей и характеристик предметной области. так и действий системы. они могут применяться для достижения различных целей. подходящего к текущей ситуации. но ход этой обработки решатель не осознает. В предметных знаниях можно выделить описатели и собственно предметные знания. К первому типу относятся те знания. Качественные и количественные показатели экспертной системы могут быть значительно улучшены за счет использования метазнаний. об авторе знаний и т. Описатели содержат определенную информацию о предметных знаниях. такую.е. что эти знания могут быть заданы не только в процедурной. управляющие знания и знания о представлении.6): 1) метазнания в виде стратегических метаправил используются для выбора релевантных правил. Вспомогательные знания обрабатываются естественно-языковой компонентой. так как хотим подчеркнуть. Знания о представлении содержат информацию о том. Управляющие знания можно разделить на фокусирующие и решающие. и поддерживающие знания. Решающие знания содержат информацию. каким образом (в каких структурах) в системе представлены интерпретируемые знания. Неинтерпретируемые знания подразделяются на вспомогательные знания. Перечислим возможные назначения метазнаний (см. которые целесообразно использовать при проверке соответствующих гипотез (см. исполняемые утверждения . Метазнания не представляют некоторую единую сущность. так как этот этап обработки входных сообщений является вспомогательным для проведения экспертизы. 3) метаправила используются для обнаружения синтаксических и семантических 54 . что по отношению к предметным знаниям знания о представлении и знания об управлении являются метазнаниями. как можно изменять описание предметной области в ходе решения задач.

т. так как позволяет производить изменения на одном уровне. что оказывается необходимым для обеспечения согласованности структур данных и программ. какие средства используются для представления знаний нулевого уровня. определить. не затрагивая другие. В современных экспертных системах данные в рабочей памяти рассматриваются как изолированные или как связанные. • организация знаний в базе знаний. [5]) и уровень данных предметной области (уровень решений). Выделение уровней усложняет структуру экспертной системы. Данные в рабочей памяти могут быть однородны или разделяются на уровни по типам данных. а во втором . а что не знает. Разделение знаний по уровням представления обеспечивает расширение области применимости системы.е.ошибок в предметных правилах. но делает систему более эффективной. При этом сложный элемент соответствует множеству простых. знания о представлении базовых понятий первого уровня. что система знает. отражающих соответственно общую. при приобретении и объяснении действий системы. Число уровней представления может быть больше двух. Второй уровень представления содержит сведения о знаниях первого уровня. но использование изолированных элементов в сложных предметных 55 . то первый уровень представления содержит метазнания. знания первого уровня независимы от проблемной среды.2 Организация знаний в рабочей памяти Рабочая память (РП) экспертных систем предназначена для хранения данных. экспертная система должна иметь знания о том. знания о том. готовых к выполнению) (см. она должна уметь не только использовать свои знания. В последнем случае на каждом уровне рабочей памяти хранятся данные соответствующего типа. объектов). т. Выделение уровней детальности позволяет рассматривать знания с различной степенью подробности.1. выделяется не менее трех уровней детальности. как представлены ее знания о проблемной среде.е. В связи с тем. Количество уровней детальности во многом определяется спецификой решаемых задач. можно выделить уровень планов. была способна приобретать новые знания и объяснять свои действия. т. Первый уровень содержит знания о том. Выделим следующие аспекты проблемы организации знаний : • организация знаний по уровням представления и по уровням детальности.е.1 Уровни представления и уровни детальности Для того чтобы экспертная система могла управлять процессом поиска решения. • организация знаний в рабочей памяти. Как правило. Введение нескольких уровней детальности обеспечивает дополнительную степень гибкости системы. объединенных в единую сущность Теоретически оба подхода обеспечивают полноту. Вопросы организации знаний необходимо рассматривать в любом представлении. Если знания о проблемной среде назвать знаниями нулевого уровня представления. т. как представлены во внутреннем мире системы знания нулевого уровня. 5) метаправила позволяют явно указать возможности и ограничения системы. 4) метаправила позволяют системе адаптироваться к окружению путем перестройки предметных правил и функций. Знания первого уровня играют существенную роль при управлении процессом решения. что знания первого уровня не содержат ссылок на знания нулевого уровня. объемом знаний и способом их представления. 5.из одного или нескольких (при нескольких уровнях в РП) сложных элементов (например. и их решение в значительной степени не зависит от выбранного способа (модели) представления. В первом случае рабочая память состоит из множества простых элементов . логическую и физическую организацию знаний. но и обладать способностью понимать и исследовать их. Например.е. 5. Однако наличие различных уровней препятствует распространению изменений с одного уровня на другие. Изменения на одном уровне детальности могут приводить к дополнительным изменениям на этом же уровне . уровень агенды (упорядоченного списка правил.1.

Основной проблемой при работе с большой базой знаний является проблема поиска знаний. не имеющие средств для определения релевантных знаний. Системы. обеспечивающим ускорение поиска релевантных знаний. Многие исследователи классифицируют внешние связки на логические и ассоциативные. релевантных решаемой задаче. то она ищет объект. В связи с тем. В проблеме доступа к знаниям можно выделить три аспекта: связность знаний и данных. Операция сопоставления может использоваться не только как средство выбора нужного объекта из множества кандидатов. Если в РП требуется анализировать одновременно несколько различных объектов. ограничивающих сферу применения экспертных систем. что знания следует организовывать вокруг наиболее важных объектов (сущностей) предметной области.1. необходим более общий механизм доступа. Можно утверждать. совершается предварительный выбор в базе знаний потенциальных кандидатов на роль желаемых объектов. к каким объектам относятся рассматриваемые характеристики. механизм доступа к знаниям и способ сопоставления. При этом переменные могут трактоваться как характеристики некоторого объекта. На втором этапе путем выполнения операции сопоставления потенциальных кандидатов с описаниями кандидатов осуществляется окончательный выбор искомых объектов. Данные в РП в простейшем случае являются константами и (или) переменными. имеющемуся в рабочей памяти. неизбежно сталкиваются с проблемой "комбинаторного взрыва". Логические связки выражают семантические отношения между элементами знаний. Связность (агрегация) знаний является основным способом. что в обрабатываемых данных может не содержаться явных указаний на значения. Все знания. Для идентификации неизвестного объекта он 56 . На первом этапе. Необходимо отметить. Нахождение желаемых объектов в общем случае уместно рассматривать как двухэтапный процесс. Очевидно. связываются и представляются в виде отдельного объекта. Внутренние связки объединяют элементы в единый объект и предназначены для выражения структуры объекта. характеризующие некоторую сущность. чтобы по некоторому описанию сущности . Ассоциативные связки предназначены для обеспечения взаимосвязей. что для ускорения поиска и сопоставления данные в РП могут быть связаны не только логически. найти в базе знаний объекты. существующие между объектами в области экспертизы. описывающих текущую проблемную ситуацию. Одним из способов решения этой задачи является явное указание того. что эта проблема является одной из основных причин. способствующих ускорению процесса поиска релевантных знаний. подтверждения. Если РП состоит из сложных элементов. При организации подобного механизма доступа возникают определенные трудности: Как выбрать критерий пригодности кандидата? Как организовать работу в конфликтных ситуациях? и т. она может быть использована для классификации. а затем уже внутри объекта отыскивает информацию о данной сущности. 5. если системе потребовалась информация о некоторой сущности. например заданием семантических отношений.п. соответствующем процессу выбора по ассоциативным связкам. Большинство специалистов пришли к убеждению. то связь между отдельными объектами указывается явно. В объектах целесообразно выделять два типа связок между элементами: внешние и внутренние.3 Организация знаний в базе знаний Показателем интеллектуальности системы с точки зрения представления знаний считается способность системы использовать в нужный момент необходимые (релевантные) знания. чем метод прямого доступа (метод явных ссылок). а константы как значения соответствующих характеристик. но и ассоциативно. что упорядочение и структурирование знаний могут значительно ускорить процесс поиска. то необходимо указывать. Внешние связки отражают взаимозависимости. к какому объекту относится характеристика. Задача этого механизма состоит в том. При подобной организации знаний.областях приводит к потере эффективности. декомпозиции и коррекции. удовлетворяющие этому описанию. При этом каждый объект может иметь свою внутреннюю структуру. требуемые для их обработки. описывающий эту сущность.

5. определяющие тип констант. каким образом используется данное утверждение. и может оказаться неудобным фиксировать эти способы заранее. то система сообщает. В наиболее совершенном виде эта проблема реализована в объектно-ориентированном подходе (см.в чисто декларативном представлении. накладывают требования. вложенное в программы. которые удобно представить в виде процедур и весьма трудно . Иногда на переменные. ДП основано на предпосылке. что переменная одного образца может быть идентична любой константе (или выражению) другого образца. что интеллектуальная деятельность есть знание проблемной среды. что в ДП нет необходимости указывать способ использования конкретных фрагментов знания. выскажем несколько общих соображений. параметрическое. в результате которого образцы оказываются идентичными. Однако известно. что существует значительное количество сущностей. Результат синтаксического сопоставления является бинарным: образцы сопоставляются или не сопоставляются . входящие в образец. В ДП знание рассматривается как множество независимых или слабо зависимых фактов. Если эти процедуры не в состоянии осуществить сопоставление. При использовании ДП считается. что интеллектуальность базируется на некотором универсальном множестве процедур. т. Вопрос состоит в силе принуждения. так как здесь необходимо учитывать. так как позволяет по-разному использовать одни и те же факты. Если осуществлять сопоставление некоторого известного объекта с неизвестным описанием. При поиске сопоставление используется для подтверждения некоторых кандидатов из множества возможных. то в случае успешного сопоставления будет осуществлена частичная декомпозиция описания. В случае принуждаемого сопоставления один сопоставляемый образец рассматривается с точки зрения другого. что позволяет осуществлять модификацию знаний и обучение простым добавлением или устранением утверждений. Это позволит классифицировать неизвестный объект как такой известный образец.2 Модели представления знаний Перед тем как перейти к описанию моделей представления. фрейм-представление или сети с присоединенными процедурами) или процедурное представление в виде модулей с декларативными образцами. Обычно выделяют следующие их формы: синтаксическое. Обычно считается. Операции сопоставления весьма разнообразны. что успех может быть достигнут только в том случае.3). КАК". декларативное представление с присоединенными процедурами (например. если определенные части рассматриваемых сущностей можно считать сопоставляющимися. Принуждение могут выполнять специальные процедуры. Успешным является сопоставление. Простые утверждения могут использоваться несколькими способами. В отличие от других типов сопоставления здесь всегда может быть получен положительный результат. семантическое и принуждаемое сопоставления [5]. п. ЧТО") не имеет глубоких связей с процедурами.е. знание о том.е. В параметрическом сопоставлении вводится параметр. с которыми они могут сопоставляться. ЧТО" и "ЗНАТЬ. Модели представления знаний обычно делят на логические (формальные) и 57 . определяющий степень сопоставления. В случае семантического сопоставления соотносятся не образцы объектов. ПП основано на предпосылке. обрабатывающих факты любого типа. Различие между ДП и ПП можно выразить как различие между "ЗНАТЬ. связываемые с объектами. как можно использовать те или иные сущности. Указанное свойство обеспечивает гибкость и экономичность ДП. В случае синтаксического сопоставления соотносят формы (образцы). используемыми для обработки этих сущностей. Основное достоинство ДП по сравнению с ПП заключается в том.может быть сопоставлен с некоторыми известными образцами. Желание использовать достоинства ДП и ПП привело к разработке формализмов. 5. и На множестве специфических фактов. Для ПП проблема модификации значительно сложнее. описывающих частную область знаний. что знание неких сущностей ("ЗНАТЬ. т. использующих смешанное представление. а их функции. при сопоставлении с которым были получены лучшие результаты. Часто вопрос выбора модели представления знания сводят к обсуждению баланса между декларативным (ДП) и процедурным представлением (ПП). а не содержание объектов.

.1 Логические модели представления знаний В основе логических моделей лежит понятие формальной теории. так и по эффективности используемых правил вывода. Дальнейшим развитием предикатных систем являются системы индуктивного типа. Именно поэтому эвристические модели превосходят логические как по возможности адекватно представить проблемную среду. позволяющая узнать для любой данной формулы.2) тем. можно отнести сетевые.е . Следует отметить. К эвристическим моделям.конечное множество отношений {r1. если существует единая эффективная процедура. называемыми правилами вывода.. которые считаются истинными в рамках данной теории. множество априорно истинных формул. которые предоставляются синтаксическими правилами используемой формальной системы. Следствием (выводом)) формулы fn в теории S называется всякая последовательность f1. как правило.fn формул. R . что для каждого множества. фреймовые. Обычно существует эффективная процедура (множество синтаксических правил). Примерами формальных теорий могут служить исчисление предикатов и любая конкретная система продукций. с формулой f. дополненное рядом эвристических стратегий. В основе логических моделей представления знаний лежит понятие формальной системы (теории)..е. существует целое положительное число j. то f называется непосредственным следствием данных j формул по правилу ri. что продукционные модели. используемым в экспертных системах. передающих специфические особенности той или иной проблемной области. Формальная система S называется непротиворечивой.счетное множество базовых символов (алфавит) теории S. Правила вывода позволяют расширять множество формул.выделенное множество формул. [7]). 5. отличаются от формальных продукционных систем (см. в них используется модель получения вывода из заданной системы посылок с помощью фиксированной системы правил вывода. Формальная теория называется разрешимой. А . В отличие от формальных моделей эвристические модели имеют разнообразный набор средств.. в которых правила вывода порождаются системой на основе обработки конечного числа обучающих примеров (для обзора работ данного направления см. если не существует формулы А..эвристические (формализованные) [5]. В логических моделях. существующие между отдельными единицами знаний. используемой для представления знаний. находятся ли данные j формул в отношении ri. называемых формулами теории (под выражениями понимаются конечные последовательности базовых символов теории S). т. используемые для представления знаний в экспертных системах. и для каждой формулы f эффективно решается вопрос о том.2. В логических моделях представления знаний отношения. состоящего из j формул. позволяющая строить из В синтаксически правильные выражения . Если отношение ri выполняется. называемых аксиомами теории S. Эти методы являются системами дедуктивного типа. задаваемой четверкой [5]: где В . Наиболее распространенной формальной системой. а также содержат эвристическую информацию о специфике проблемной среды. т. что А и выводимы в S. что для любого i формула fi есть либо аксиома теории S. например.. такое. выражаемую часто в виде семантических структур. существует ли ее вывод в S.формулы. п.. 1. либо непосредственное следствие каких-либо предыдущих формул по одному из правил вывода. F . Алфавит исчисления предикатов состоит из следующего набора символов: 58 . выражаются только с помощью тех небогатых средств.подмножество выражений теории S. rn} между формулами.. Для каждого ri. что они используют более сложные конструкции правил. является исчисление предикатов первого порядка. такой. продукционные и объектно-ориентированные модели. используется исчисление предикатов первого порядка. такая.

..некоторый элемент из D. т..е.. элементарные формулы (атомы) и правильно построенные формулы (или просто формулы). Выражение является правильно построенной формулой. и х . является выяснение истинности или ложности заданной формулы на некоторой области интерпретации. то существует процедура для проверки ее общезначимости.. исчисление предикатов первого порядка является неразрешимым.Q.переменная в А. когда формула общезначима... а А ... n-местных предикатных букв (символов): В дальнейшем для упрощения вместо xk будем употреблять u. Формула А является логическим следствием B1.}.правильно построенные формулы.. . k= 1. то конструкции . что равносильно доказательству общезначимости формулы или невыполнимости формулы Известно.S. в противном случае ... ложным при любой интерпретации. n-местных функциональных букв: называют константными буквами). удовлетворяет также и А.п. каждой функциональной букве fkn некоторую n . ее интерпретируют как утверждение. то значением элементарной формулы будет истина. z.термы. При заданной интерпретации переменные мыслятся "пробегающими" все значения из области D этой интерпретации.ложь.е. касающееся рассматриваемой предметной области.. вместо . то . Очевидно. вместо . Из символов алфавита можно строить различные выражения. отображающую .. что формула А логически следует из формул B1 .. а всякой элементарной формуле приписывается значение "истинно" (И) или "ложно" (Л). а вместо P.2.R. пропозициональных связок знаков-кванторов . Под интерпретацией понимают всякую систему. Основной задачей. Если А . определяемому данной интерпретацией..tn . называемого областью интерпретации.знаков пунктуации {. x.е формулам. символов переменных xk. . v. исходя из значений составляющих ее формул. Однако если некоторая формула исчисления предикатов общезначима..Bn называют посылками. При этом особая роль отводится общезначимым формулам.. удовлетворяющим отношению.ф..п. то элементарная формула (атом). т.. то и является термом. т. Для того чтобы придать формуле содержание.. Если . Наиболее известными методами доказательства 59 . что значения формул могут быть истинными или ложными в зависимости от выбранной интерпретации.T. исчисление предикатов можно назвать полуразрешимым. Если . что для исчисления предикатов первого порядка не существует общего метода установления общезначимости любых формул....местную функцию. Если А и В . т. состоящую из непустого множества D.предикатная буква.местное отношение в D. y.е..W.заключением логического следования и обозначают Задачей доказательства теоремы называют выяснение вопроса логического следования некоторой формулы А из заданного множества формул B1 . Значение неэлементарной формулы вычисляется рекуррентно. решаемой в рамках исчисления предикатов. т.правильно построенные формулы. Приписывание значения элементарной формуле осуществляется по следующему правилу: если термы предикатной буквы соответствуют элементам из D.)..(.. .. Напомним.. истинным при любой интерпретации. Справедлива следующая основополагающая теорема дедукции [4]: "Пусть даны формулы B1 .. относящего каждой предикатной букве некоторое n . и невыполнимым формулам...V.. ..Bn и формула А. и какого-либо соответствия. Атом является правильно построенной формулой..е формулам.Bn тогда и только тогда.. есть правильно построенные формулы. a ti.. Формулы B1 . удовлетворяющая . когда всякая интерпретация I. и каждой константной букве . только если оно получено с соблюдением приведенных выше правил.Вn .Bn тогда и только тогда. Выделяют термы.термы. Всякий символ переменной или константной буквы есть терм.

К другим недостаткам формальных систем следует отнести их монотонность (см. характеризующими специфику проблемной среды. 5. Событие В1 является элементом множества всех событий ВЛАДЕТЬ.1 изображен фрагмент простой семантической сети. t2 ] принадлежат ЖИГУЛИ N 25-15".правила изменения первых четырех компонентов под влиянием накапливаемого в базе знаний интеллектуальной системы опыта о строении и функционировании сущностей в данной проблемной среде. В настоящее время в большинстве приложений. можно получить сети различного вида. что и в определении формальной системы (см. выражающий примерно следующую информацию: "Михаилу в течение интервала времени [ t1. а дуги .сложность использования при доказательстве эвристик. Основным достоинством использования исчисления предикатов в качестве модели представления знаний является наличие единообразной формальной процедуры доказательства теорем. Михаил является элементом (э) множества ЧЕЛОВЕК. отражающих специфику конкретной проблемной среды. то соответствующие сети называют простыми сетями. отсутствие средств для структурирования используемых элементов и недопустимость противоречий [6].2.3. процессы. события. они являются иерархическими. 5. 5. Михаил есть агент (собственник) в событии В1. Указанный недостаток особенно важен при построении экспертных систем. Стремление устранить недостатки формальных систем при их использовании в качестве моделей представления привело к появлению семиотических систем [6].отношения между сущностями. Если вершины не имеют собственной внутренней структуры.2 Семантические модели В основе этих моделей лежит понятие сети.1 дуги "э" (элемент) и "п" (подмножество) служат для 60 . а остальные компоненты . Наложив ограничения на описание вершин и дуг. Если вершины обладают некоторой структурой. то такие сети называют иерархическими сетями. которое является подмножеством (п) множества СИТУАЦИИ и т. выше) . п.д. вычислительная мощность которых в основном определяется знаниями. Однако высокая степень единообразия влечет за собой и основной недостаток данного подхода . 6. образованной помеченными вершинами и дугами. Вершины сети представляют некоторые сущности (объекты. ЖИГУЛИ N 25-15 являются элементом множества МАШИНЫ. На рис. Приведем пример записи некоторого факта в виде формулы исчисления предикатов: Здесь описаны два способа записи одного факта: "Михаил дал книгу Владимиру". использующих семантические сети. Теория таких систем находится на начальной стадии развития.3. Использованные на рис.теорем являются метод резолюции [14] и обратный метод [3]. явления). и [5]). Семиотическая система формально задается восьмеркой : Здесь первые четыре компонента те же. которые они связывают.

2. что понятие пространства аналогично понятию скобок в математической нотации. 5. а остальные пространства невидимы. сопоставляемыми всему множеству. например. 5. для их представления удобно ввести дугу специального вида . люди) в вершину z (например. работающей с сетью. Одно из основных отличий иерархических семантических сетей от простых семантических сетей состоит в возможности разделить сеть на подсети (пространства) и устанавливать отношения не только между вершинами. присущие всем элементам данного множества. При графическом изображении иерархических сетей 61 . представляемым вершиной r (например. и что х (люди) не пересекается ни с каким другим подмножеством.1.отношения видимости. видимых некоторой процедурой. предприятия) и имеющим дугу "пр" из r (предприятия) в z (официальные лица). есть подмножество множества. Все вершины и дуги являются элементами по крайней мере одного пространства. По аналогии можно ввести и отношение "эр". из пространства Р6 (пространство-потомок) видимы все вершины и дуги. лежащие в пространствах-предках P4. официальные лица). в соответствии с которым. непересекающимися. Эти свойства связываются в сети не с конкретными элементами. Важность таксономии заключается в том. а с вершинами. 5. существующие в сети. P2. но и между пространствами [5]. что множество. идущая из вершины х (например. Пример разбиения сети на пространства Р0. дуга "п" указывает отношение быть "подмножеством". указывает. Обычно в перспективу включают не любые. а иерархически сгруппированные пространства.Рис. Отметим. Фрагмент семантической сети выражения таксономии понятий.е. Дуга "пр". что большинство подмножеств являются различными. Различные пространства. а дугам . т. представленного вершиной z (официальные лица)."пр" (подмножество различное). что множества обычно имеют свойства. представленных вершинами. представленное вершиной х (люди). На рис.2 приведен пример дерева пространств. вершинам которого соответствуют пространства. В связи с тем. Перспектива обычно используется для ограничения сетевых сущностей. Рис.перспективы. Так. могут быть упорядочены в виде дерева пространств. Отношение видимости позволяет сгруппировать пространства в упорядоченные множества .

е. Рис. считается потомком (внутренним уровнем). соединяющее в себе достоинства различных моделей. изображаемое внутри пространства PJ. Свойство невидимости позволяет повысить эффективность операции поиска в сети. из Pi видимо PJ. т. привело к возникновению так называемого фрейм-представления [13]. что 62 .2. 5. предназначенная для представления некоторой стандартной ситуации. Кроме представления логических связок и кванторов сеть может быть использована также для кодирования других структур высших порядков. как пользоваться данным фреймом. которая лежит в PJ. Согласно [13] фрейм . С каждым фреймом ассоциируется разнообразная информация (в том числе и процедуры). так как она заключена в пространствах. 5. при поиске конкретных фактов информация из кванторных утверждений и правил невидима. что пространство Pi может рассматриваться как супервершина. 2) дуга принадлежит тому пространству.е.3 и 5.структура данных (т.4 приведено представление выражений. каковы ожидаемые результаты выполнения фрейма.3.4. декларативное представление). в котором находится имя дуги. ограничивающих эти утверждения и правила. ограничиваются на рисунках многоугольником (обычно прямоугольником).обычно используют следующие соглашения: 1) вершины и дуги.3 Фреймы Стремление разработать представление. 5. Например. Рис. Сетевое представление импликации При решении многих конкретных задач представление знаний только в виде семантических сетей оказывается неудобным или неэффективным. Отметим. содержащих соответственно импликацию и квантор всеобщности (выраженный через импликацию). лежащие в одном пространстве. По этой причине в семантических сетях вводят механизм процедурных присоединений. например информация о том. На рис. 3) пространство Pi (точнее ограничивающий его многоугольник). При необходимости в иерархических сетях можно представить любые логические связки и кванторы. Изображение в сети квантора всеобщности с использованием импликации 5.

Фрейм можно представить в виде сети. Использование концепции "умолчания" часто позволяет исключить необходимость в кванторных утверждениях. а по соответствию текущей ситуации той ситуации. а некой концепцией. Этот подход является развитием фреймового представления.имя слота. Феноменологическая сила фрейм-представления во многом основывается на включении в него предположений и ожиданий. если они найдены в обрабатываемой ситуации. в свою очередь. входящие в некоторую систему. как декларативное и процедурное представление) является не конкретным языком для представления знаний. т.значение слота В качестве значений слотов могут выступать имена других фреймов. чтобы могло произойти означивание слота. связывающие это пространство с остальной сетью. a vi. Нижние уровни заканчиваются слотами. которым должно удовлетворять значение слота.2. С каждым слотом фрейма связаны описания условий. когда предложенный фрейм не удается привести в соответствие с данной ситуацией. которые заполняются конкретной информацией при вызове фрейма. фрейм. которую описывает данный фрейм. выбираемыми для нескольких слотов. фрейм-пример может быть представлен в виде следующей конструкции. В его основе лежат понятия объект и класс [1]. когда слотам не могут быть присвоены значения. а перечислив только изменившиеся (или новые) параметры.делать. Система содержит описание зависимостей (причинных. Кроме того. в качестве объектов могут 63 .е. KNET и т. Приложение 1. не вычисляя заново значений всех параметров. временных и т. если ожидания не оправдались. как KRL. слоты и механизм их означивания описывают ситуацию в семантических (а не синтаксических) терминах и в метатерминах. а дуги. реализуемой по-разному в таких конкретных языках. обычно организуют в информационно-поисковую сеть. В простейших случаях эти условия могут сводиться к указанию семантических категорий.е. связанным с этими слотами. где некоторое пространство в сети рассматривается как фрейм. Итак.4 Объектно-ориентированный подход Наиболее развитым способом представления знаний в ЭС является объектноориентированная парадигма. всегда истинные в ситуации. рассматриваются как слоты [5].имя фрейма. Эта сеть используется в случаях. Представление зависимостей в явном виде позволяет предсказать переход от одного состояния А (выражаемого фреймом А') к другому зависимому от него состоянию В (выражаемому фреймом В') и осуществить этот переход эффективно. что обеспечивает связь между фреймами. а точнее в интересующей разработчика предметной области. ri . 5. присвоенные по умолчанию. где f .) между входящими в нее фреймами. В подобных ситуациях сеть используется для того. не жестко связаны со своими слотами и могут быть заменены более подходящими значениями. Стандартные значения. чтобы предложить какой-либо другой фрейм. т. имеют общее множество слотов. описываемой данным фреймом. Верхние уровни фрейма фиксированы и представляют сущности. Слотам фрейма могут быть заранее приписаны по умолчанию некоторые стандартные значения.п. в которых отсутствует упоминание о ряде деталей. удовлетворяющие условиям. Системы фреймов. Отличие фреймов от описаний процедур состоит в том. состоящей из вершин и отношений (дуг) . а означенный фрейм (фрейм-пример) соответствует вызову процедуры. которые должны быть соблюдены. Это позволяет анализировать с помощью фреймов ситуации.п. В более сложных случаях условия могут касаться отношений между значениями. Родственные фреймы связываются в систему фреймов. FRL. характеризующих состояние В. как это сделано в K-NET. Можно провести аналогию между фреймами и описанием процедур в языках программирования. фреймы могут быть представлены с помощью иерархических семантических сетей. и т. Фрейм соответствует описанию процедуры. что фреймы могут вызываться не по имени. Для выражения указанных зависимостей фреймы. В реальном мире.п. В частности. что фрейм-представление (так же. Необходимо отметить.

5. Каждый объект может реагировать по-своему на одно и то же сообщение. Указанный префикс с точки зрения декларативного представления знаний семантически подобен квантору всеобщности в исчислении предикатов. При этом иерархический характер сложной системы отражается в виде иерархии классов. доступ возможен только через его методы. Подобный способ 64 . Итак. Наследование позволяет новым классам при сохранении всех свойств классов-родителей (называемых в дальнейшем суперклассами) добавлять свои черты. конкретный покупатель.возможность создавать из классов новые классы по принципу "от общего к частному". объектами могут быть: покупатель. если i-я команда не является командой ветвления. Наследование позволяет создавать иерархии классов и является эффективным средством внесения изменений и дополнений в программные системы. Полиморфизм . производящая определенные товары. может оказаться в состоянии. штат сотрудников. Например. Например. ему извне необходимо послать сообщение. как название и адрес. после выполнения i-й команды выполняется (i+1)-я команда. Все места ветвления в традиционном программировании указываются явно. объекты можно считать самостоятельными сущностями. Класс определяет общие свойства для всех его объектов. объектно-ориентированный подход заключается в представлении системы в виде совокупности классов и объектов предметной среды. Инкапсуляция . Инкапсуляция позволяет изменять реализацию любого класса объектов без опасения. Полиморфизм позволяет упростить исходные тексты программ. размер текущего счета.рассматриваться конкретные предметы. Наследование . которое инициирует выполнение нужного метода. К таким свойствам относятся состав и структура данных. Сообщения. При объектно-ориентированном программировании имеется возможность запретить любой доступ к атрибутам объектов. с которыми ассоциируются. Внутренняя структура объекта в этом случае скрыта от пользователя. Тем самым упрощается процесс исправления ошибок и модификации программ. По умолчанию. принимаемых в сообщении.скрытие информации [2]. обеспечивает их развитие за счет введения новых методов обработки. отражающие их индивидуальность. фирма. определяющие состояние объектов. делая заказ. определяющих взаимодействие объектов этого класса с внешней средой. Объекты и классы обладают характерными свойствами. а его поведение в этом случае заключается в обращении в банк за кредитом.конкретного магазина. а ее функционирование рассматривается как взаимодействие объектов. Каждый объект является представителем некоторого класса однотипных объектов. С точки зрения программиста новый класс должен содержать только коды и данные для новых или изменяющихся методов . что это вызовет нежелательные побочные эффекты в программной системе.5 Продукционные модели и модули. передаются суперклассу. в качестве префикса которых обычно используется ссылка на класс. а также абстрактные или реальные сущности.способность объектов выбирать метод на основе типов данных. а также методы: формирование заказов на поставку товаров. и совокупность методов . управляемые образцами В традиционном программировании команды устанавливаются в жесткой фиксированной последовательности. продукционные правила. имеет атрибуты. описывающих атрибуты класса и соответствующих объектов.2. значения которых определяют его состояние Так. заказ на поставку. отделенными от внешнего мира. описание класса "магазины" может включать такие атрибуты. которые активно используются при объектно-ориентированном подходе и во многом определяют его преимущества. когда денег на его счете не хватает для оплаты. Для того чтобы объект произвел некоторое действие. обработка которых не обеспечивается собственными методами класса. банк.процедур. передача товара со склада в торговую секцию и т. которые индивидуальны для каждого объекта этого класса . К этим свойствам относятся перечисленные ниже. Ассоциирование продукционных правил ЭС с иерархией классов осуществляется за счет использования общих правил. например.д. к которому данное правило применимо. Объект обладает индивидуальностью и поведением.

5). • отделение схемы управления от модулей. Таким образом. независимость модулей упрощает объединение программ. Кроме того. что позволяет применять различные схемы управления. Системы. Функции управления в этих системах осуществляет интерпретатор. в которых сопоставление и планирование (управление) являются явными функциями системы. Если системы. основанными на правилах. когда ветвление является исключением. использующий управляемые образцами модули. т. накладываемыми на модули (рис. управляемые образцами. Большинство систем. которые сопоставляются с его образцом. и действие. и временных знаний. имеющие такое деление.е. а системы. локализованных на вершинах сети.программирования удобен в тех случаях. хранимых в базе знаний. основанными на сетях. Каждый УОМ на очередном шаге работы анализирует данные рабочей памяти. написанных разными авторами. На каждом шаге работы такая программа анализирует текущую ситуацию и определяет по анализу образцов. Модули. Классификация систем. управляемых образцами. облегчающая модификацию и совершенствование системы. управляемых образцами из модулей. что чрезвычайно важно для экспертных систем. управляемых образцами. можно охарактеризовать следующими особенностями: • разделение постоянных знаний. вызываемой по образцу.5. называют системами вывода. основанные на правилах. управляемые образцами. Каждый управляемый образцом модуль (УОМ) состоит из механизмов исследования и модификации одной или нескольких структур данных. разделяются по видам правил на продукционные и трансформационные. Диапазон УОМ может колебаться в широких пределах от простого продукционного правила до процедуры произвольной степени сложности. какой модуль подходит для обработки этой ситуации. состоят Рис. С точки зрения представления знаний подход. называют правилами. исследующее данные. когда последовательность обработки мало зависит от обрабатываемых данных. а не нормой. Системы. использующие такие правила.5. имеют различное исполнение и классифицируются в соответствии с ограничениями. • структурная независимость модулей. Системы. несущих знания о проблемной области. то такие системы называют системами. удовлетворяют следующему ограничению: все исследования данных рабочей памяти в каждом модуле объединены и предшествуют всем действиям по модификации данных. 5. построенные на основе управляемых образцами модулей. 65 . модифицирующее данные. управляемыми образцами. постоянно модифицирующих свои знания. модуль разделяется на две части: предусловие. тогда. Продукционные системы образованы из правил. называют системами. проверяя наличие структур. В противном случае программу лучше рассматривать как совокупность независимых модулей. хранимых в рабочей памяти.

Трансформационные системы в отличие от продукционных могут не иметь явных функций по сопоставлению и управлению правилами. В общем можно считать. и процедурного представления. что позволяет применять различные управляющие стратегии. представление знаний в виде управляемых образцами модулей и продукционных правил обладает следующими достоинствами: • модульностью организации знаний. 5. Здесь вывод осуществляется в обратном направлении от утверждений. что. В связи с разным назначением правил и модели обычно для их задания используются различные представления. как они будут использованы. Именно это и отличает процедурное представление от декларативного. Одни относят их к декларативному представлению.к процедурному или декларативно-процедурному. Примерами трансформационных систем являются формальные системы и системы формальных грамматик.е. Сложность действий колеблется в значительных пределах от простой операции присваивания до функции произвольной степени сложности. предусловия и действия являются утверждениями о данных. правиле. насколько широко трактуется понятие "продукционное правило". В более сложных продукционных правилах степень "процедурности" еще выше. управляемые данными (предусловиями правил). • независимостью правил. даже в самом простом продукционном правиле (т. Продукционные системы могут быть разделены на продукционные системы. Однако в продукционных правилах и даже в модулях. В продукционных системах. так как способ использования правил и модулей в самих правилах и модулях не указывается. используемое в некоторой системе. управляемых образцами. использующие вывод. есть и элемент декларативности. Применение продукционных правил При этом подходе данные в рабочей памяти представляются в виде изолированных 66 . Итак. 5. не содержащем присоединенных процедур) есть элемент процедурности. правил и моделей проблемной области. а действием (консеквентом) является некоторая операция по модификации памяти. характеризующая проблемную среду в целом.зафиксированными в интерпретаторе. Обычно предусловие (антецедент) задается в виде логической комбинации утверждений о данных рабочей памяти. управляемых целями.1. что правило будет использовано для выполнения некоторого действия. необходимо определить представление данных в рабочей памяти и представление знаний в базе знаний. • легкостью и естественностью модификации знаний.3. • отделением управляющих знаний от предметных знаний. что образцы могут быть заданы как декларативно. Необходимо подчеркнуть. направляемый данными. которые должны быть доказаны. Различные авторы по-разному классифицируют продукционные системы. Традиционно под продукционными системами понимают только системы. управляемые целями (действиями правил). продукционные правила объединяют в себе свойства и декларативного. Основным недостатком данного подхода является его более низкая эффективность по сравнению с методами традиционного программирования. • возможностью создания для ряда приложений управляющих механизмов для автоматического решения задач. так как предполагается. так и процедурно. так же как и представления в виде фреймов и иерархических сетей. Вероятно. расхождения объясняются тем. и на продукционные системы. другие . Ниже будут рассмотрены наиболее типичные подходы.3 Практика использования моделей представления знаний в экспертных системах Для того чтобы охарактеризовать представление знаний. но и некоторая связная модель. используемые в экспертных системах при представлении данных. поскольку декларативные знания не несут никакой информации о том. В большинстве систем из соображений эффективности в базе знаний хранятся не только изолированные правила (как предписывает теория). По нашему мнению. выражающих самостоятельные фрагменты знаний.

Коэффициент Определенности логического утверждения вычисляется по правилам логики размытых множеств [16J.атрибут .2 Использование семантических сетей При этом подходе (см. Это дерево может рассматриваться как фрейм.значение". Один из возможных способов представления правил в семантической сети: Правила связывают условие и действие. а вторая . стоящее за указателем ТО. чем список значений: объекты. С каждой тройкой связан коэффициент определенности. а предложение есть либо дизъюнкция одного или более предложений. В дереве контекстов каждому объекту приписаны соответствующие ему атрибуты. если условие определено как истинное. и на основе процедуры Байеса подсчитывается коэффициент определенности действия (описательного утверждения) соответствующего правила. помеченные звездочкой.атрибут . примененный к тройке: "объект . Для учета неопределенности во многих ЭС вводится коэффициент определенности утверждений.3. либо (для выведенных утверждений) вычисляется по правилу Байеса [9]. стоящее за указателем ИНАЧЕ. правила. 5. ЭС RLL [12]) в виде фреймов обычно представляются все виды данных и знаний. Утверждения могут быть истинными и ложными. которые в общем случае представляют собой фрагмент семантической сети. При изменении коэффициента определенности некоторого условия применяется правило.значение". Логическое утверждение является булевской комбинацией других утверждений. который обеспечивает механизм наследования. слоты фреймов. используемые для модификации коэффициента определенности утверждения. Действие и терминальная компонента логического утверждения всегда являются описательными утверждениями. механизмы выводов и т. более сложных.атрибут .п. Впервые этот подход был использован в ЭС MYCIN [5]. выведенного этим правилом. Условие оценивается как истинное. либо предикат. например..троек: "объект . Коэффициент определенности описательных утверждений либо указывается пользователем (для исходных данных) . Отметим. условие есть конъюнкция одного или более предложений. В случае неопределенности каждое правило содержит две меры.3 Использование фреймов При этом подходе (см. допускающее представление любого n-арного отношения над произвольным числом объектов. Ниже приведен пример представления правила в виде фрейма: 67 .. а при ложности .значение".3.действие. что семантическая сеть может рассматриваться как обобщение представления в виде троек. 5. Фреймы организуются в сеть. Ниже приведен способ представления продукционных правил в типичной ЭС. Например. Иерархия объектов задается с помощью дерева контекстов.+1].если условие ложно. ЭС PROSPECTOR [10]) данные в рабочей памяти и базе знаний представлены не в виде изолированных троек: "объект . Здесь при истинности условия выполняется действие. Первая из мер используется в том случае. являющиеся утверждениями о проблемной области. если его коэффициент определенности лежит в диапазоне (0. могут появиться в правиле один или более раз. а в виде семантической сети. Сущности. Утверждения делятся на логические и описательные. например.

Модули в HEARSAY-III называются источниками знаний (ИЗ). обеспечивающей взаимодействие модулей не непосредственно. 5. использовалось 4 раза Представление правила в виде фрейма имеет следующие отличия: 1) наличие не одного. в системе HEARSAY-II выделены следующие уровни: предложение. Третий интерпретатор. более традиционный интерпретатор оценивает все слоты "ЕСЛИ" всех правил и затем. состоящий из выдвижения гипотез и проверки их правдоподобности. Гипотезы различных уровней объединены в направленный граф (сеть).1 с выполнения: Частота использования Рассматривалось 985 раз. будет разрешать конфликт. Второй.д. может устранить из рассмотрения все правила.Тип Описание Правило Сообщить пользователю об опасности для его здоровья. словосочетание. называемую "классная доска". Если же преобразования. каждый модуль представлялся в виде продукционного правила.3. производящей результаты. а для оставшихся правил оценить все слоты "ЕСЛИ" и выбрать единственное правило. Необходимо обратить внимание на то. Текущее состояние решения представляется в виде гипотез на классной доске. Каждый источник знания состоит из программыусловия. если имеется химическая токсичность (Химическая активность высока?) ЕСЛИ потенциально релевантен ЕСЛИ истинно (Близость химически активного места и пользователя?) релевантен ТО сказать пользователю "Не дышать. проанализировать далее слоты "Если потенциально релевантен" и. фонема и т. Например. слово. Сложность правил была весьма ограничена. и программы-действия. что позволяло выразить их в виде. на каждом из которых обрабатываются данные определенного вида. выполняемые модулем. применим ли ИЗ к текущему состоянию классной доски. которые могут быть использованы метаправилами для управления. а нескольких условий и действий для разных уровней анализа правила. если правил все еще много. Действительно. Так. то для их представления приходится прибегать к процедурной форме. 2) наличие большого количества описательных (невыполняемых) слотов. а только через рабочую память. Стремление сохранить независимость модулей друг от друга привело к созданию в HEARSAY-III схемы. которые определяют новые фреймы. Классная доска разделена на несколько уровней. оценив сначала. Это позволяет использовать различные интерпретаторы правил в зависимости от целей разработчика. сколько времени имеется на решение задачи. Гипотеза представляет собой интерпретацию некоторой части устного высказывания на определенном уровне. выбирая единственное правило. химически активные вещества!" ТО добавить к агенде (< соответствующие системные указания > Приоритет Высокий Среднее время 0. понятном эксперту. имеющие высокое значение слота "Среднее время выполнения". если число подходящих правил больше одного. Поиск решения рассматривается системой как итеративный процесс.4 Использование управляемых образцами модулей Механизм использования управляемых образцами модулей проиллюстрируем на примере инструментальной системы HEARSAY-III [11]. предназначенной для проектирования ЭС и являющейся модификацией системы понимания речи HEARSAY-II. которая определяет. один дешевый интерпретатор. слог. очень сложны. что позволяет описывать гипотезы одного уровня через гипотезы 68 . предназначенный для быстрой обработки. устранить те из них. может на основе анализа слота "ЕСЛИ потенциально релевантен" определять число подходящих правил и уже затем принимать решение в зависимости от полученного результата. Все рассмотренные ранее способы представления знаний использовали частный случай управляемых образцами модулей. что информация о правиле хранится в нескольких слотах.

-320с. а знания о проблемной среде . а именно возможность естественной декомпозиции задачи на совокупность подзадач.5 Смешанные представления (объекты и правила) Как правило. объединенный с правилами (см. . 1971. Введение в математическую логику. фреймов. Попов Э. практически все инструментальные средства для создания динамических ЭС поддерживают объектноориентированный подход к проектированию систем. Т. что подобные издержки неприемлемы для инструментальных средств инженерии знаний. Очевидно. 5. -№1. 1987. в экспертных системах используется не одно.: Конкорд. в HEARSAY-III рабочая память представляется в виде сети. Однако.3. Исполняемые утверждения представляются либо в виде продукционных правил. облегчающих повторное использование кода. 3. Буч Г.В. где одним из определяющих требований является необходимость создания "быстрого прототипа". 5. Итак. Обратный метод установления выводимости в классическом исчислении предикатов//Доклады Академии наук СССР. но достаточно легко модифицируемых объектов. Дункан Р. но уменьшает возможности по объяснению и приобретению новых знаний. экспериментальная попытка представить часть HEARSAY-II в виде продукционных правил привела к замедлению работы примерно в 1000 раз. требует разработки для каждой предметной области своего специфического решателя. основанных на знаниях. Применение правил в виде продукций. Экспертные системы решения неформализованных задач в диалоге с ЭВМ.М. На сегодняшний день это единственная практическая возможность работы в условиях экспоненциального роста сложности (количества взаимосвязей). осуществляющего планирование процесса решения и использование знаний. а несколько представлений. Использование программ. должен включать и библиотеку стандартных. Поэтому объектно-ориентированный инструментарий для создания систем. как отмечают многие исследователи. Это обусловлено необходимостью накопления опыта разработок и формирования устойчивой и достаточно гибкой иерархии классов. Так.8 лет. . гл. Маслов С.PC Magazine /USSR/ . ориентированные на определенный класс задач. работающими со знаниями. либо в виде модулей (процедур).Ю. 1992. . вызываемых по образцу.более низкого уровня. Пер. представляемых достаточно автономными агентами.N3. . Главное преимущество использования объектно-ориентированного программирования при разработке систем обработки данных заключается в поддержке методов. 159. 2. Общим для всех рассмотренных подходов является использование образцов при вызове модуля или правила. . сетей позволяет создавать системы. ЛИТЕРАТУРА 1. является шагом в направлении к процедурному представлению с попыткой сохранить независимость источников знания.-С 17-20. использующих знания. Применение объектно-ориентированного подхода в системах инженерии знаний выводит на первый план другую его особенность. Использование программ. вызываемых по образцу. 4. с англ. сохранив способности к объяснению и приобретению знаний. Мендельсон Э. эффект от внедрения объектно-ориентированной технологии программирования начинает проявляться лишь через 5 . Однако малая мощность подобных правил приводит к резкому снижению эффективности при решении сложных задач.: Наука. вызываемых по образцу. 9).в виде модулей. Инкапсуляция данных и наследование свойств в Си++. 69 .: Наука. Для представления модели предметной области используются объектный подход или сетевые модели (семантические сети и фреймы). вызываемых по образцу. Так.1991. -1964. Объектно-ориентированное проектирование с примерами применения.М. характерного для систем. например. Подобный подход (в отличие от использования продукций и сетей) позволяет решать значительно более сложные задачи.М.

Knowledge-based exspert systems come of age // BYTE. Gaschnig J. Erman L. Duda R.31 .O. Lenat D. 5. 8. 338 .: Мир. Перечислите основные аспекты организации знаний в рабочей памяти и базе знаний ЭС. V.76. в чем особенности интерпретируемых знаний.. 165 -169. Aikins J. Extended inference modes in reasoling by computer system // Artificial Intelligence. 1976. 11.: ВИНИТИ. Fuzzy sets//Informationand Control.V. . 7. К. .V. Сформулируйте особенности семантических моделей.1082. Prototypical knowledge for expert systems//Artificatial Intelligence. 1075 .42. Winograd Т. Индуктивные модели//Представление знаний в человеко-машинных и робототехнических системах. V.41 (Русский перевод: Кибернетический сборник. 16.А.P. .М.С. 8. New York: McGraw-Hill.V.210. The design and an example use of HEARSAY-III// The Seventh International Joint Conference ob Artificial Intelligence. Финн В. Перечислите достоинства и особенности систем.№ 6. -С. .26. .С.P. 1981. . 8. A machine-oriented logic based on resolution principle. .. 1981. . -1983. 6. National Computer Conference. .58 . Дайте определение логической модели представления знаний. 20. Robinson J. A framework for representation knowledge//Psychology computer vision. 1978).: Мир. 5 . .1980. 6. 163 . 1975 (Русский перевод: Психология машинного зрения. Укажите основные черты фреймового подхода. and others. . 70 .P.A.415. .353.S. .М.Vancouver: University of British Columbia.P. O. Искусственный интеллект. 23 . 238 . 4.P.281. and others. A representation language//The first national conference on Artificial Intelligence. .М.№9. . 13. 15.№ 1.6 Поспелов Г. 12. 10. Greiner R. Journal of the ACM. . Zaden LA. . . 1980.1965.G.Т. Duda R. Приведите базовые свойства объектно-ориентированного подхода. 14.Stanford: Stanford University Press. . управляемых образцами. Сформулируйте состав знаний в экспертных системах и от каких факторов он зависит. 12. 3. 7. .P.P.O. 1970). . 13. Minsky M. Новая информационная технология//Вестник АН СССР.V. Новая серия. 409 . . -P. Поясните. 45. Вопросы для самопроверки 1. .1983. 9. 2. Subjectiv Bayesian methods for rule-based system // Proceedings of the AFIPS. . 1984.

Можно утверждать также. указывающим. что все существующие экспертные системы подтверждают их. Информация о поведении механизма вывода запоминается в памяти состояний (см. Согласно первой гипотезе символические системы имеют необходимые и достаточные условия для осуществления интеллектуальных действий. Каждый модуль (правило) снабжается образцом.е. на которых базируются исследования по ИИ: гипотезу символических систем и гипотезу поиска. Приведенные гипотезы разделяются большинством специалистов в области ИИ. В общем случае работа механизма вывода в каждом цикле состоит в последовательном выполнении четырех этапов: выборки. т.это первичное понятие.1. и если они не удовлетворены. образующих символические структуры. при выполнении каких условий этот модуль (правило) может приступить к работе. основанных на знаниях 6. сопоставления. 6. они генерируют потенциальные решения и постепенно модифицируют их. т. пока последние не будут удовлетворять заданным условиям решения. 71 . чтобы на основании текущего состояния рабочей памяти определить. Управляющий компонент экспертных систем обычно называют интерпретатором (механизмом вывода).е. Обычно память состояний содержит протокол работы системы. 6. Общая схема функционирования управляющего компонента экспертной системы приведена на рис. т. проведенный А. и набор процессов. Они обладают двумя основными свойствами: • могут обозначать объекты. А. определяемое данной сущностью. На практике обычно учитывается история работы.1 Механизмы вывода экспертных систем Анализ исследований в области искусственного интеллекта.1 ). процессы и другие символические структуры. Согласно второй гипотезе символические системы решают задачи с помощью поиска. поведение механизма вывода в предшествующих циклах.Ньюэлл и М. то выполняется очередной цикл. разрушать и модифицировать символические структуры. С точки зрения теории работа механизма вывода зависит только от состояния рабочей памяти и от состава базы знаний.ГЛАВА 6. выполнения (рис. описанием.2). Символические структуры могут рассматриваться как типы данных в некотором языке. Символическая структура обозначает некоторую сущность (объект. если символическая система может осуществлять поведение. Задача механизма вывода состоит в том. и система может выполнить этот процесс.Саймон [6] обосновали две гипотезы. Система может интерпретировать символическую структуру.е. какой модуль и с какими данными будет работать. процесс или другую символическую структуру). или может воздействовать на эту сущность. Методы и стратегии поиска решений в системах. Ньюэллом и М. • если они обозначают процессы. разрешения конфликтов. рис. Процессы способны производить. то они могут быть интерпретированы. Символическая система есть набор символов. позволил им выделить два основных понятия: символические системы и поиск. Саймоном [6]. если структура обозначает некоторый процесс. Символ . 6. По окончании работы текущего модуля (правила) механизм вывода проверяет условия окончания задачи.

1.3). 6. 6. Схема функционирования управляющей компоненты экспертной системы Рис. осуществляет отбор знаний на основании таких сведений. Возможности стратегий зависят от того. разбиение задачи на подзадачи. например. выполняет грубый отбор знаний. 6. какие активные модули и на каких активных 72 . Для повышения эффективности функционирование системы на каждом из этапов направляется стратегиями управления.6. Семантические знания. Второй подход. представленных на рис.е. а через стратегии (см. На этапе выборки осуществляется определение подмножества элементов рабочей памяти и подмножества правил (модулей) базы знаний.е. Основанием для выборки знаний в данном случае являются формальные (синтаксические) знания. Как правило. п.2) управляют деталями поиска.Рис. 6. встроенные в систему разработчиком. как модель предметной области. На этапе сопоставления определяется. некоторыми эвристическими правилами. текущие цели и т. Цикл работы механизма вывода (интерпретатора) В общем случае каждый из этапов использует в своей работе три источника знаний: рабочую память. Рассмотрим теперь назначение и основные функции этапов. в виде метаправил. п. Встраивание определенных функций в механизм вывода повышает эффективность его работы. называемый иногда семантической выборкой. метод) (см. т. осуществляется фокусирование внимания системы на определенном ограниченном количестве данных и правил (модулей). т. которые могут быть использованы в текущем цикле. В результате работы этапа выборки происходит выделение активного набора данных и активного набора правил (модулей). При реализации этапа выборки обычно используется один из двух подходов. данных и (или) правил. в механизм вывода встраивают общую схему поиска решения (т. но ограничивает степень воздействия на процесс функционирования.2. называемый иногда синтаксической выборкой. вводятся в систему экспертом. используемые на этапе выборки. а какие встроены в него жестко. базу знаний и память состояний. Первый подход.п. какие функции механизма вывода могут изменяться.е.2. которые могут быть полезны в текущем цикле.

политическими модулями. если среди активных данных есть данные. Каждый источник знания имеет образец. выбранных на этапе разрешения конфликтов. а в остальном терминология и структура построения системы соответствуют схеме.системами. которые будут выполняться в текущем цикле. использующим управляемые образцами правила. а модули .система HEARSAY-II. Различия в реализации общей схемы являются в первую очередь следствием различной сложности используемых модулей. Оба подхода используют управление. программы. В каждый момент времени с агендой работает один из политических модулей. также заносятся в агенду и выбираются на исполнение. В ходе этого этапа осуществляется модификация рабочей памяти.2 приведено обобщенное описание управляющей компоненты ЭС. представленные в виде программ. конфликтный набор . На практике в целях повышения эффективности все означивания не вырабатываются заново на каждом очередном цикле. Такие модули называются означенными.в виде продукционных правил). готовых к выполнению.е. Набор означенных модулей часто называют конфликтным набором. В обоих подходах взаимосвязь модулей (информационная и управляющая) осуществляется через общую память. Политические модули. Рабочая память называется "классной доской". Множество политических модулей обеспечивает разнообразие способов выработки управляющих решений.е. выполняются операции ввода-вывода и изменяется память состояний интерпретатора. что к работе готовы все модули набора. Теоретически сопоставление выполняется в каждом цикле работы механизма вывода над всеми активными знаниями. а примером второго подхода . представляемые в виде правил (в частном случае . 6. основанные на данном подходе. Результатом выполнения работы является изменение содержимого "классной доски". Модуль готов к работе. На этапе разрешения конфликтов механизм вывода выбирает из конфликтного набора те означивания. Подчеркивая этот факт. данный этап иногда называют этапом планирования. Типичным примером первого подхода являются системы OPS 5. В настоящее время при реализации этой общей схемы используются две основные архитектуры. которые понятны пользователю (эксперту). Политический модуль переупорядочивает агенду и выбирает некоторую работу на исполнение. образцы всех активных модулей сопоставляются со всеми активными данными. являясь источниками знания. Модификация систем подобного типа достигается за счет независимости источников знания. подчеркивая этим тот факт. В первом подходе модуль называют правилом. Во втором подходе используется другая терминология. На этапе выполнения осуществляется исполнение правил (модулей). удовлетворяющие условиям этого модуля. не может быть понятен непрограммисту. Этот подход часто называют подходом. конечно. Результатом работы этапа сопоставления является набор означенных модулей. т.1 и 6. не знакомому с программированием. MYCIN и другие. образцы которых будут означены элементами рабочей памяти. Агенда представляет собой упорядоченный список работ. Выбор политического модуля зависит от обрабатываемой гипотезы.источниками знаний. Под работой понимается источник знания с описанием данных. но механизм вывода не знает еще.агендой. На рис. а системы. разрешающие конфликты. Если образец некоторого источника знаний сопоставляется с данными на "классной доске".1. 6.данных готовы к работе. по окончании работы одного модуля его преемником является один из тех модулей. смысл которых. указанным в его образце. Концепция управляемых образцами модулей позволяет решать более сложные задачи и строить более эффективные системы Однако этот подход затрудняет реализацию 73 . Этот подход называют подходом. какой из них предпочесть. приведенной на рис. . При втором подходе в качестве модулей используются большие сложные автономные фрагменты знаний. управляемыми правилами. которые он может обрабатывать в текущий момент. При одном подходе модулями являются относительно небольшие автономные фрагменты знаний. использующим управляемые образцами модули. т. то этот означенный источник знания заносится в агенду. На данном этапе интерпретатор оценивает означенные модули с точки зрения их полезности при достижении текущей цели. основанное на сопоставлении образцов.

Развитые ЭС базируются на технологии объектно-ориентированного подхода (см. Концепция управляемых образцами правил позволяет (за счет ограниченной сложности используемых фрагментов знания и представления их в понятном для пользователя виде) решать разнообразные задачи. минимизирует ошибки при отладке БЗ.объяснительных способностей и способностей по приобретению новых знаний. Недостатки использования частных знаний сводятся к увеличению в 10 и более раз количества правил по сравнению с использованием общих правил. возможности данного подхода к решению задач различных классов ограничены номенклатурой имеющихся модулей и способами их взаимодействия. Исполнение общих правил требует значительных вычислительных затрат. Приложение 1) и. несмотря на некоторые различия. процедур. Рассмотрим более подробно подход управляемых образцами правил. упрощает сопровождение (модификацию) приложения. так как он получил наиболее широкое распространение. • использование семантических средств. как следствие. усложнению модификации приложения. сокращающих перебор при выполнении операции выборки и разрешении конфликтов путем использования метапланирования и фокусирования на объектах или правилах [5]. различаются следующим: • используются только частные знания или допускаются и общие знания. Наиболее популярным синтаксическим методом. что приводит к необозримости базы знаний (БЗ) конечным пользователем. сокращающих на каждом цикле работы MB перебор при выполнении операции сопоставления. минимизирующим сопоставления. являются вариантами одного и того же метода управления. что значительно снижает трудоемкость накопления базы знаний. используют частные и общие знания. сопоставления и разрешения конфликтов. Механизм вывода в этих инструментальных средствах сводит решение задачи к поиску пути в дискриминационном дереве (графе). Использование общих утверждений при всех их плюсах создает одну серьезную проблему. является алгоритм Rete [1]. чтобы избежать на каждом цикле работы MB повторных сопоставлений правил и данных. Суть синтаксических подходов ускорения процесса сопоставления сводится к следующему. которые минимизируются двумя рассматриваемыми ниже подходами: • использование синтаксических средств типа алгоритма Rete [1]. которое компилируется на этапе приобретения знаний. обеспечивая развитые объяснительные способности и способности по приобретению знаний. Задача синтаксических методов состоит в том. В данном алгоритме каждое правило рассматривается как один или несколько образцов. Механизмы вывода (MB). с каждым из которых связывается список всех активных 74 . осуществляющих детальное планирование и использование знаний. Использование в данном подходе больших фрагментов знаний связано с разработкой для каждой проблемной области своих политических модулей. Подход с управляемыми образцами правилами обладает большей декларативностью используемого представления знаний и в связи с этим большей универсальностью. используемые в этом подходе. так как значительная часть означиваний (i-l)-го цикла может быть использована в i-м цикле. • каким способом (при наличии общих знаний) обеспечивается сокращение вычислительных затрат на выполнение операций выборки. Итак. оба рассмотренных подхода. В общем случае в каждом цикле работы MB для получения означиваний (конфликтного набора) требуется заново сопоставить все правила из БЗ (из ее активного подмножества) со всеми экземплярами объектов из рабочей памяти (из ее активного подмножества). Представление исполняемых утверждений (правил. Только простейшие ЭС не используют общих знаний. увеличению времени разработки и отладки БЗ. так как вместо изменения одного общего правила надо изменять десятки подобных частных правил. Кроме того. действий) в общем виде обеспечивает применение одного утверждения к множеству однотипных конкретных объектов.

сопоставляющихся с ним элементов рабочей памяти (РП). Этот список модифицируется на
каждом цикле изменения РП. Если некоторый элемент вводится в РП (или модифицируется),
то MB находит все образцы (правила), которые сопоставляются с этим элементом, и
добавляет его к спискам соответствующих образцов. При удалении некоторого элемента из
РП MB устраняет его из списков всех образцов, которые с ним сопоставлялись. Таким
образом, MB, запоминающий указанную информацию, не сопоставляет всю РП со всеми
правилами.
Описания изменений рабочей памяти, поступающие в Rete-алгоритм, называются
признаками. Признак представляет собой упорядоченную пару, состоящую из метки и
списка элементов. В простейшем исполнении для Rete-алгоритма необходимы две метки: "+"
и "-", означающие соответственно добавление в РП или устранение чего-то из рабочей
памяти. Если некоторый элемент модифицируется, то на вход алгоритма поступают два
признака: один указывает, что старая форма элемента устраняется из рабочей памяти, а
другой - что новая форма добавляется.
Задача алгоритма состоит в том, чтобы определить, какие правила будут удовлетворены
поступившими на вход признаками (т.е. изменениями элементов рабочей памяти).
Простейшее решение этой задачи состоит в сопоставлении признаков со всеми правилами.
При таком подходе на каждом цикле будет множество повторных ("лишних") просмотров.
Для того чтобы избежать лишних сопоставлений, образцы правил преобразуются в сетевую
структуру, которая выполняет функции индексирования правил. Сеть образцов представляет
собой разновидность дискриминационной сети. В вершинах дискриминационной сети
проверяются характеристики элементов. В зависимости от результатов проверок признак,
поступивший на вход сети, пройдет через сеть по тому или иному пути (путям) и в
результате сообщит, какие правила удовлетворяют этому признаку. Сеть составляется
специальной программой (компилятором) на основе анализа условий правил, хранимых в
рабочей памяти.
Семантические подходы, как правило, применяются на этапе выборки и разрешения
конфликтов. Как отмечалось, на этапе выборки механизм вывода фокусируется на
определенном подмножестве элементов рабочей памяти и подмножестве правил базы
знаний, которые могут быть использованы в текущем цикле.
Обычно выделяют два типа выборки: простую выборку и иерархическую выборку.
Простая выборка характеризуется тем, что выбираемые сущности рассматриваются как
сущности одного уровня. Поясним суть простой выборки на примере выборки правил. В
данном случае при появлении нового элемента в рабочей памяти те правила, которые
содержат этот элемент в условии правила (при поиске от данных), помечаются как активные.
При удалении элемента из памяти метки у соответствующих правил снимаются. Выборка в
данном случае сводится к выбору из всего множества правил тех, которые помечены.
При иерархической выборке объекты (правила, данные) разбиваются на иерархические
подмножества (классы). Выборка в данном случае состоит в использовании метаправила для
выбора одного из классов. При этом классы могут быть как непересекающимися, так и
пересекающимися. Следует отметить, что введение иерархии правил неизбежно влечет за
собой и иерархию данных, что, к сожалению, не всегда явно признается разработчиками
систем. Действительно, метаправила в отличие от правил применяются не к объектам
предметной области, а к метаданным, т.е. уместно говорить о появлении в рабочей памяти
данных и метаданных.
Объекты, подлежащие выборке на текущем цикле, задаются либо по имени, либо по
описанию свойств. При задании по имени указывается либо перечень объектов (данных,
правил), либо перечень имен классов, описывающих объекты. При задании объектов через
описания свойств указывают не имена объектов (классов объектов), а перечень свойств,
которыми эти объекты должны обладать.
Рассмотрим, какие семантические подходы к сокращению перебора существуют в
одной из наиболее популярных на сегодняшний день экспертной системе G2 (см. гл. 9). В G2
используются следующие варианты фокусирования:
• фокусирование на классе объектов или на специфическом (конкретном) объекте,
75

например focus on terminal-1, т.е. фокусировать на терминале-1;
• фокусирование на некотором правиле через заданный временной интервал (длина
интервала указывается в атрибуте правила scaninterval (интервал сканирования)); если
правило является общим, то G2 возбуждает каждый пример этого правила (каждое
означивание) через заданный интервал;
• фокусирование на классе (группе) правил, например invoke safety rules (возбудить
правила безопасности), где safety (6eзoпасность) -название категории правил, на которой
разработчик хочет сфокусировать внимание MB;
• фокусирование на классе правил для конкретного объекта, например invoke safety
rules for tank-4 ("возбудить правила безопасности для емкости-4).
Для обеспечения перечисленных выше вариантов фокусирования правила в G2 имеют
следующие атрибуты: focal-classes (в качестве значения этого атрибута указываются классы
объектов из БЗ, с которыми ассоциируется данное правило); focal-objects (в качестве
значения этого атрибута указываются специфические объекты из БЗ, с которыми
ассоциируется данное правило); categories (в качестве значений этого атрибута указывается
имя класса правил, к которым относится данное правило).
Заметим, что механизм фокусирования внимания на классе объектов и (или) правил
может рассматриваться как механизм планирования. Действительно, план можно
представить либо декларативно, либо процедурно. При декларативном представлении план
задается
последовательностью
состояний:
начальное
(начальные)
состояние,
промежуточные состояния от 1 до k, конечное состояние. В G2 промежуточные состояния
могут быть заданы декларативно последовательностью focus, фокусирующейся на
соответствующих классах объектов. При процедурном представлении план задается
последовательностью исполняемых утверждений (процедур, правил, действий),
переводящих начальное состояние в конечное. В G2 последовательность исполняемых
утверждений может быть задана последовательностью действий invoke и scan над
соответствующими классами правил. Очевидно, что в G2 план можно представить в виде
смешанной последовательности действий focus, invoke и scan.
В G2 введены средства, позволяющие, используя семантику приложения, ограничить
сферу действия общих правил, т.е. предотвратить применение, общих правил к
бесперспективным сущностям. Основа этих средств базируется на использовании в общих
правилах связей (connection) и отношений (relation), существующих между сущностями
приложения.

6.2 Стратегии как механизмы управления
Необходимость использовать в экспертных системах нетрадиционные методы
управления вызвана в первую очередь неформализованностью решаемых ими задач [1].
Особенности неформализованных задач с точки зрения организации управления приводят к
тому, что процесс решения таких задач не удается представить в виде детерминированной
последовательности правил (программных модулей). Здесь в некоторый текущий момент к
исполнению пригодно несколько правил (или одно правило, но над разными данными),
причем не существует надежной информации, позволяющей предпочесть одно правило
другому. Задача управляющей компоненты состоит в том, чтобы обеспечить
функционирование системы в подобных условиях. Так, например, в относительно простой
ЭС MYCIN в любой момент в среднем пригодны к использованию 50 правил из 400 [1].
В традиционном программировании модули (программы) вызываются по имени.
Поэтому программист в ходе составления и отладки программы должен выявить множество
всех мыслимых ситуаций, которые возникнут в ходе работы общей программы при
различных входных данных; в каждой точке, где завершается работа одного модуля, в явном
виде (указав имя модуля и перечень используемых им данных) необходимо
запрограммировать однозначный переход к очередному модулю. Такая организация
управления не позволяет решать неформализованные задачи. Основные отличия
управляющей компоненты экспертных систем от традиционных механизмов управления
состоят в следующем:
76

• отдельные модули (правила) вызывают не по имени, а по описанию ситуации;
• способ взаимосвязи модулей (правил) формируется в процессе решения задачи, так
как выбор очередного модуля (правила) зависит от текущей ситуации и не может быть
сформирован заранее.
Основным механизмом, обеспечивающим разнообразное управление в рамках общей
схемы работы интерпретатора, являются стратегии. Стратегии можно рассматривать по
крайней мере с трех точек зрения: как средство разрешения конфликтов; как способ
представления метазнаний и как средство повышения эффективности метода, встроенного в
механизм вывода (интерпретатор). Первая точка зрения важна в тех случаях, когда размер
конфликтного множества достаточно велик. При этом во избежание слепого
исчерпывающего поиска необходимо использовать знания, направляющие процесс выбора
текущего модуля. Ясно, что качество сделанного выбора будет сильно влиять на
"интеллектуальность" системы. Во многих системах знания, на основании которых
осуществляется указанный выбор, не являются явными и не выражены в достаточно общей
форме. В первом приближении стратегией можно называть знания о том, какой модуль
(правило) следует выбрать при наличии нескольких модулей, пригодных к работе.
В более общих терминах стратегии можно рассматривать как метазнания о том, как и
когда использовать различные источники знаний объектного уровня (т.е. знания о
предметной области). Метазнания могут выражать знания о разбиении задачи на подзадачи,
знания о кооперации источников знания, знания о наличии различных стратегий поиска.
Необходимо подчеркнуть важность явного задания подобных знаний, т.е. задания знаний в
такой форме, которую система может анализировать. Явное задание знаний обеспечивает
гибкое поведение системы.
Кроме того, стратегии традиционно рассматривают как средство повышения
эффективности некоторого общего метода. Таковы, например, стратегии, ограничивающие
принцип резолюции в логических системах. В более общих терминах стратегии можно
рассматривать как любые знания о том, как, когда и какие модули (правила) использовать,
т.е. стратегии можно рассматривать не только как средство оптимизации некоторого метода,
но и как средство для выбора (и даже для определения) метода.
Приведем классификацию стратегий, используемых в экспертных системах, по
следующим параметрам [1]: общность; явное или неявное задание; содержание.
По принципам общности стратегии можно классифицировать следующим образом:
стратегии, не зависящие от способа представления знаний; стратегии, не зависящие от
предметной области; стратегии, учитывающие специфику предметной области, и стратегии,
учитывающие специфику цели. Примерами общих стратегий, не зависящих от способа
представления, являются стратегии поиска от целей или от данных (см. п. 6.3.1). Примером
стратегий, не зависящих от предметной области, является стратегия множества поддержки,
используемая при доказательстве теорем в исчислении предикатов [2]. Отметим, что данная
стратегия зависит от выбранного способа представления, так как она применима только в
контексте доказательства теорем и исчисления предикатов. Однако эта стратегия применима
к любой области, где можно использовать технику доказательства теорем.
Стратегии, учитывающие специфику области, имеют более ограниченное применение,
чем стратегии первых двух типов, однако именно они позволяют использовать знания о
конкретной области для получения качественных и эффективных решений. Стратегии,
учитывающие специфику цели, позволяют управлять процессом решения в зависимости от
текущих задач системы.
Стратегии можно разделить на заданные явно и неявно. Стратегия задана явно, если
она может быть идентифицирована как отдельная сущность системы, т.е. смена стратегии
проходит для системы безболезненно. Неявные стратегии иногда подразделяют на
концептуально неявные и неявные по выполнению. Концептуально неявными являются
стратегии, механизм которых рассредоточен по системе. Например, их результат проявляется
как побочный эффект выполнения какой-либо другой части системы. Стратегии, не явные по
выполнению, - это те стратегии, основные идеи которых выражены явно, но при этом из-за
специфики выполнения имеется некоторая вложенность стратегий в другие конструкции
77

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

6.3 Методы поиска решений в экспертных системах
Методы решения задач, основанные на сведении их к поиску, зависят от особенностей
предметной области, в которой решается задача, и от требований, предъявляемых
пользователем к решению. Особенности предметной области с точки зрения методов
решения можно характеризовать следующими параметрами:
• размер, определяющий объем пространства, в котором предстоит искать решение;
• изменяемость области, характеризует степень изменяемости области во времени и
пространстве (здесь будем выделять статические и динамические области);
• полнота модели, описывающей область, характеризует адекватность модели,
используемой для описания данной области. Обычно если модель не полна, то для описания
области используют несколько моделей, дополняющих друг друга за счет отражения
различных свойств предметной области;
• определенность данных о решаемой задаче, характеризует степень точности
(ошибочности) и полноты (неполноты) данных. Точность (ошибочность) является
показателем того, что предметная область с точки зрения решаемых задач описана точными
или неточными данными; под полнотой (неполнотой) данных понимается достаточность
(недостаточность) входных данных для однозначного решения задачи.
Требования пользователя к результату задачи, решаемой с помощью поиска, можно
характеризовать количеством решений и свойствами результата и (или) способом его
получения. Параметр "количество решений" может принимать следующие основные
значения: одно решение, несколько решений, все решения. Параметр "свойства" задает
ограничения, которым должен удовлетворять полученный результат или способ его
получения. Так, например, для системы, выдающей рекомендации по лечению больных,
пользователь может указать требование не использовать некоторое лекарство (в связи с его
отсутствием или в связи с тем, что оно противопоказано данному пациенту). Параметр
"свойства" может определять и такие особенности, как время решения ("не более чем",
"диапазон времени" и т.п.), объем памяти, используемой для получения результата, указание
об обязательности (невозможности) использования каких-либо знаний (данных) и т.п.
Итак, сложность задачи, определяемая вышеприведенным набором параметров,
варьируется от простых задач малой размерности с неизменяемыми определенными
данными и отсутствием ограничений на результат и способ его получения до сложных задач
большой размерности с изменяемыми, ошибочными и неполными данными и
произвольными ограничениями на результат и способ его получения. Из общих
соображений ясно, что каким-либо одним методом нельзя решить все задачи. Обычно одни
методы превосходят другие только по некоторым из перечисленных параметров.
78

чтобы позволить решать задачи. xj) . т. можно классифицировать следующим образом: • методы поиска в одном пространстве . соответствующему вершине xi. ST множество конечных (целевых) состояний (решений задачи).неориентированным. соответствует множеству операторов. использующие несколько моделей. a Y множество. • методы поиска в иерархических пространствах . предназначенные для работы в областях большой размерности. xj). Процесс решения можно представить в виде графа G = (X. где X = {х0. сложность которых возрастает одновременно по нескольким параметрам. ST).множество операторов задачи.2]. эвристический поиск и поиск методом "генерация-проверка" [1].е.. Пусть задана тройка (S0. xj) задан порядок (направление). так и неявно. С точки зрения поиска в пространстве состояний для некоторой вершины xi уместно выделить множество всех направленных пар (xi. соответствующее множеству конечных (целевых) состояний (ST). которая преобразует начальные состояния в конечные.е. F . т. которые. через свойства. полнота модели. Если каждая пара (xi. предназначенные для использования в следующих условиях: области небольшой размерности.множество начальных состояний (условия задачи). xj) называют концевыми точками ребра (дуги).3.1 Поиск решений в одном пространстве Методы поиска решений в одном пространстве обычно делятся на поиск в пространстве состояний. что перечисленные методы при необходимости должны объединяться для того.} . отображающих одни состояния в другие. что граф G может быть задан явно и неявно. моделирования внешнего окружения и оперирования временными категориями в правилах (см. и подмножество вершин . то пару (xi. гл. xj) свидетельствует о существовании некотррого оператора . 6. исходящих из вершины xi (родительской вершины). В множестве вершин X выделяют подмножество вершин соответствующее множеству начальных состояний (S0). в которые эти дуги приводят. и множество вершин (называемых дочерними вершинами). xj) . а также обеспечивать возможность хранения истории значений переменных. преобразующего состояние. которыми должны обладать целевые состояния. Поиск в пространстве состояний естественно представить в виде ориентированного графа. (xi. Вершины пары (xi.Рассмотренные ниже методы могут работать в статических и динамических проблемных средах. • методы поиска при неточных и неполных данных . которые могут быть применены к состоянию. будучи применимы к некоторой вершине 79 . поиск методом редукции.методы. исходящих из вершины xi. Множество дуг. xj) называют дугой (ориентированным ребром). x1. содержащее пары вершин (xi. то ее называют ребром. соответствующее вершине xi. Неявное задание графа G состоит в определении множества (соответствующего множеству начальных состояний) и множества операторов. F. каждая из которых отождествляется с одним из состояний. предназначенные для работы с областями. Существующие методы решения задач. точные и полные данные. источник данных для переменных. а граф . множество дуг. Для того чтобы они работали в условиях динамики. необходимо учитывать время жизни значений переменных.множество (в общем случае бесконечное) вершин графа. В этой постановке решить задачу . Y). для адекватного описания которых одной модели недостаточно. Поиск в пространстве состояний Задача поиска в пространстве состояний обычно формулируется в теоретико-графовой интерпретации [1. • методы поиска.методы. Отметим.9). Наличие пары (xi. Если для каждой пары (xi. Множество ХT может быть задано как явно.. а граф называют ориентированным (направленным). xj) неупорядочена. используемые в экспертных системах.. где S0 .значит определить такую последовательность операторов. в состояние xj. Предполагается.

Итак. б). Берется некая вершина . однако метод поиска в ширину будет требовать существенно больше памяти. то поиск можно осуществлять не только в направлении от начального состояния к целевому. При использовании каждого из способов могут быть найдены все решения. к ней применяются все возможные операторы. вершинами. или прямым поиском. При поиске в ширину вершины раскрываются в том же порядке.е. как при поиске в глубину). в котором они раскрываются (а не порождаются). Построение пространства осуществляется с помощью следующего процесса. целевые вершины помечены черными квадратами. При практической реализации поиск в глубину в некотором направлении завершается в следующих случаях: при достижении целевой вершины. на практике процесс порождения пространства ограничивают либо временем. т. а поиск второго типа . Обычно выделяют два основных способа поиска: поиск в глубину и поиск в ширину При поиске в глубину сначала раскрывается та вершина. переводящие состояние Si в предшествующее состояние Si-1. Если получена целевая вершина. когда все нераскрытые вершины являются целевыми. так как он запоминает все пути поиска (а не один. В практических приложениях часто требуется обеспечить полноту поиска. граф G задает пространство состояний. Вершины пронумерованы в том порядке.поиском от цели. а терминальные белыми квадратами. Процесс построения пространства состояний заканчивается.е. 6. Поиск первого типа называют поиском от данных. что пространство состояний может содержать бесконечное количество вершин.3 приведен пример решения задачи поиском в глубину (рис. Если в пространство состояний ввести операторы. 6. глубина неначальной вершины равна единице плюс глубина наиболее близкой родительской вершины. пространство.е. 80 . или терминальными (т. или обратным поиском. порождающие все дочерние вершины. 6. Надежным способом обеспечения полноты является полный перебор всех вершин. а) и в ширину (рис. При переборе всего пространства оба метода будут анализировать одинаковое количество вершин. Этот процесс называют процессом раскрытия вершин. т. при построении в ходе поиска вершины. Для задания процесса перебора необходимо определить порядок. в котором они порождаются. если они существуют.графа. Глубина вершины в графе определяется так: глубина начальной вершины равна нулю. В связи с тем. в котором осуществляется поиск решения. которая была построена самой последней. к которым нельзя применить никаких операторов). дают все ее дочерние вершины. то она не раскрывается. но и в обратном направлении. чтобы все целевые вершины были найдены. глубина которой превышает некоторую граничную глубину. либо объемом памяти. организовать поиск так.3.3. при достижении терминальной вершины. Можно организовать поиск в двух направлениях одновременно. Такой поиск называют двунаправленным (или бинаправленным). На рис. в котором будут перебираться вершины графа.

Графически для различения дизъюнктивной и конъюнктивной вершин дуги.Рис. Каждой вершине этого графа ставится в соответствие описание некоторой задачи (подзадачи). Решение задач S2. 7] определяют вершины И и ИЛИ иначе.4 в виде И/ИЛИ-графа. соединяются дужкой при вершине. решение задач S4 и S6 неизвестно. заведомо разрешимых задач. либо подзадачи S5. если ее решение общеизвестно или получено ранее. не будет иметь очевидное решение. Во множестве вершин И/ИЛИ-графа выделяют подмножество начальных вершин. вместе со своими дочерними вершинами интерпретируются так: решение задачи сводится к решению любой из ее подзадач.6. что метод сведения задач к подзадачам является в некотором роде обобщением подхода с использованием пространства состояний. Решение задачи при поиске методом редукции (при поиске в И/ИЛИграфе) сводится к нахождению в И/ИЛИ-графе решающего графа.е. и подмножество конечных (целевых) вершин. называемого И/ИЛИграфом. Процесс решения задачи разбиением ее на подзадачи можно представить в виде специального направленного графа G. На рис. Этот процесс повторяется для каждой подзадачи до тех пор. В графе выделяют два типа вершин: конъюнктивные вершины и дизъюнктивные вершины. Пример графического представления разбиения задачи на подзадачи приведен на рис. 6. надо ввести дополнительную вершину (вершина R1 на рис. S5. которые следует решить. что некоторые авторы [4. Отметим. Конъюнктивные вершины.е. либо путем решения задач S1 и S2. т. Действительно. или вершины типа "ИЛИ". либо ИЛИ). Дизъюнктивные вершины. для решения которой требуется решить подзадачу S3 или подзадачи S1 и S2. пока каждая из полученного набора подзадач. соответствующих дочерним вершинам конъюнктивной вершины. Решение задачи S1 сводится к решению либо подзадачи S4.3.5 двойными линиями выделен 81 . 6. исходящие из конъюнктивной вершины. образующих решение исходной задачи. Подзадача считается очевидной. S7 предполагается известным. Здесь S0 .исходная задача. построенное поиском в глубину (а) и поиском в ширину (б) Поиск методом редукции При поиске методом редукции решение задачи сводится к решению совокупности образующих ее подзадач [1]. задач. определение которого будет дано ниже. Пространство состояний. В приведенном примере задача S0 может быть решена либо путем решения задачи S3. Заметим. или вершины типа "И". В связи с тем. т. Решение подзадачи S3 сводится к решению подзадач Sб и S7. то для записи графа. что в И/ИЛИ-графе каждая вершина относится только к одному типу (либо И.4. соответствующих дочерним вершинам дизъюнктивной вершины. перебор в пространстве состояний можно рассматривать как тривиальный случай сведения задачи всегда к одной подзадаче. вместе со своими дочерними вершинами интерпретируются так: решение задачи сводится к решению всех ее подзадач.5). 6. 6. изображенного на рис.

Цель процесса поиска в И/ИЛИ-графе . б).4. когда разрешима по крайней мере одна из ее дочерних вершин.5 разрешимые вершины зачернены. Вершина И разрешима тогда и только тогда. а неразрешимые оставлены белыми. Пример И/ИЛИ-графа Для графа И/ИЛИ.Рис. конечные вершины обозначены квадратами.5. для этой вершины существует решающий граф. что начальная вершина разрешима. На рисунке вершины пронумерованы в том порядке. Вершина ИЛИ разрешима тогда и только тогда. 6. т. 3. 6.6. так же как для поиска в пространстве состояний. который показывает. так как их решение известно по исходному предположению. решающий граф определяется как подграф из разрешимых вершин. что начальная вершина разрешима (в соответствии с приведенным выше определением). дуги решающего графа выделены двойными линиями. Итак. 6. а) и поиска в глубину (рис. разрешимые вершины зачернены. 6.показать. когда разрешима каждая из ее дочерних вершин. Рис. можно определить поиск в глубину и поиск в ширину как в прямом.6 приведен пример поиска в ширину (рис. так и в обратном направлении. 6. Графическое представление процесса разбиения задачи на подзадачи решающий граф задачи S0. Определение разрешимой вершины в И/ИЛИ-графе можно сформулировать рекурсивно следующим образом: 1. 82 . 6. На рис. а конечные вершины обозначены зачерненными квадратами. На рис.е.6. Конечные (целевые) вершины разрешимы. в котором они раскрывались. 2.

как правило. что она. который не строит так много вершин. а таких путей в нем.е. существенно сокращая перебор. если он обеспечивает генерацию всех возможных решений. Например. влекут за собой потерю свойства полноты. Обеспечение свойства неизбыточности является важным. но трудновыполнимым. что генератор является полным. использующих некоторую информацию о предметной области для рассмотрения не всего пространства поиска. Генератор является неизбыточным. не является ли оно результирующим. Для этого необходимо ввести меру "перспективности" вершины в виде некоторой оценочной функции. Поэтому для осуществления процесса поиска необходимо генерировать очередное возможное решение (состояние или подзадачу) и проверить. При увеличении пространства поиска методы слепого поиска требуют чрезмерных затрат времени и (или) памяти. Из двух вершин при одинаковой глубине перспективней та. то весьма трудно (если 83 . Чаще же используемые эвристики. чтобы генератор удовлетворял требованиям полноты и неизбыточности. методов. не теряет свойства полноты. Говорят. если задача генератора . Действительно. поскольку в этих методах порядок раскрытия вершин предопределен и никак не зависит от расположения цели. Один способ сокращения перебора состоит в выборе более "информированного" оператора.6. но и синонимичных решений. применение количественных оценок не позволяет эффективно направлять процесс поиска. пространство поиска (пространство состояний или И/ИЛИ-граф).6. от которой меньше расстояние до цели. так как в соответствии с этим требованием не допускается генерация не только тождественных. которые с наибольшей вероятностью приводят к цели. т. Поиск методом "генерация-проверка" Процесс поиска может быть сформулирован в терминах "генерация-проверка". Пример разбиения задач на подзадачи при поиске в ширину (а) и при поиске в глубину (б) Эвристический поиск Методы поиска в глубину и ширину называют слепым поиском. в частности для экспертных систем.синтезировать все фразы русского языка. не относящихся к делу. оценочные функции пытаются количественно оценить расстояние от текущей вершины до конечной. Другой способ состоит в использовании эвристической информации для определения на каждом шаге дальнейшего направления перебора.Рис. Для многих приложений. Разумно потребовать. если он генерирует каждое решение только один раз. Как правило. сокращая перебор. явно не задано. Стремление сократить время поиска привело к созданию эвристических методов поиска. В некоторых случаях удается ввести такую оценочную функцию.

в котором осуществляется поиск. Пусть требуется переехать из центра города А в центр города В. Идею М. что оно (а следовательно.Минского о иерархии пространств можно развить. Если же проверка не отвергает частичное решение. что нереально реализовать. достаточные для генерации всех возможных решений (состояний или подзадач). При большом размере пространства поиска можно попробовать разбить общее пространство на подпространства и осуществлять поиск сначала в них. содержащей все улицы во всех городах. В принципе некоторые знания можно перенести из устройства проверки в генератор.2 Поиск в иерархии пространств Методы поиска в одном пространстве не позволяют решать сложные задачи. В качестве классического примера использования абстрактных пространств можно привести задачу определения кратчайшего пути на карте. Если осуществлять поиск требуемого пути на детальной карте. Однако при этом повышаются затраты на генерацию каждого очередного состояния (подзадачи). При определении пути из города А в город В целесообразно спланировать маршрут по крупномасштабной карте (т. Примерами таких областей являются интерпретация данных. В этом случае на верхнем уровне генератор вырабатывает не полное. Важность иерархических методов при работе с большими пространствами понята давно.е. что в данном случае пространство поиска представлено иерархией пространств. чтобы он не генерировал решения. поиск в фиксированном и изменяющемся множестве пространств [1]. а устройство проверки определяет. исходящими из каждой вершины. являются ли они целевыми. Можно сказать. осуществить поиск в абстрактном пространстве). Поиск в факторизованном пространстве Во многих приложениях требуется найти все решения. в то время как введение четырех лемм или последовательных подцелей может уменьшить поиск до 5 х 10 4 попыток. Поэтому имеет смысл приложить даже огромные усилия. что введение "островков планирования" уменьшает время поиска по экспоненте: "В графе с 10 ребрами. Применение эвристических методов в данном случае. в случае постановки диагноза нас интересуют все. пространства которые имеют описание только наиболее важных сущностей. При слепом и эвристическом поиске генератор имеет минимальные знания об области. Каждое частичное решение описывает не все состояние. допустив в иерархии не только конкретные. использующие общую идею иерархии пространств. т. а устройство проверки определяет. но и абстрактные пространства. называемую "иерархическая генерация-проверка".е.Минский писал. постановка диагноза и др. а только его некоторую часть. Идея состоит в том. как 84 . и все полные решения. Однако пространство поиска в практических приложениях бывает столь велико. определяя таким образом класс возможных состояний. В данном разделе будут рассмотрены методы. то на следующем уровне генератор продолжает вырабатывать из данного частичного решения все полные решения. но отличающиеся природой пространств. а затем по детальной карте спланировать выезд из города А и въезд в город В. которые заведомо не могут привести к успеху. Действительно. 20-шаговый поиск может потребовать 1020 попыток. Увеличение знаний генератора об области приводит к сокращению пространства. что устройство проверки может уже по виду частичного решения определить. а частично определенное решение (будем для краткости называть такие решения частичными).3. которые могут быть получены из него) не ведет к успеху. 6.вообще возможно) сделать такой генератор неизбыточным. При генерации текущего возможного решения (состояния или подзадачи) возникает проблема распределения знаний между генератором и устройством проверки. М. что не позволяет применить слепые методы поиска. Методы поиска решения в иерархических пространствах обычно делятся на поиск в факторизованном пространстве. встретившихся по дороге. а не некоторые болезни пациента. не является ли очередное решение целевым. Еще в 1963 г. то задача может стать практически неразрешимой. которые машина может выполнить. Можно выделить важную форму метода "генерация-проверка". так как с увеличением размера пространства время поиска экспоненциально растет. чтобы выявить такие "островки" при решении сложных задач" [3].

т е. что этот фрагмент не может являться частью полного решения. позволить разбить задачу на более простые подзадачи и определить последовательность подзадач (план решения).д. может ли это решение привести к успеху. зависит от заказанной конфигурации. Действительно. в экспертной системе R1 [1]. Действия. Для решения подобных задач может быть использован метод нисходящего уточнения (top-down refinement). Указанный прием можно повторять многократно. то из рассмотрения без генерации и проверки устраняются все полные решения этого класса. с помощью которых можно решить любую исходную задачу. также исключено. например. При этом полный процесс решения задачи можно представить как нисходящее движение в иерархии пространств от наиболее абстрактного к конкретному. Причем на каждом уровне вырабатывается окончательное решение и только затем осуществляется переход на следующий. что для ряда областей не удается по частичному решению сделать заключение о его непригодности. преобразование этого решения в решение более низкого уровня и т. Генератор вырабатывает текущее частичное решение. в котором вызываются эти задачи. Если текущее частичное решение не отвергается. Для того чтобы упростить процесс решения некоторой задачи в сложном пространстве. Абстракция должна подчеркнуть важные особенности рассматриваемой задачи. План решения задачи в данном случае должен иметь переменную структуру и не может быть сведен к фиксированному набору подзадач. в котором получается окончательное решение. Поиск в изменяющемся множестве иерархических пространств В ряде приложений не удается все решаемые задачи свести к фиксированному набору подзадач. так как они не обеспечивают получение всех возможных решений. без использования процедуры бэктрекинга [7] Этот механизм восстанавливает состояние. Пространство называется факторизованным. Примерами таких приложений являются задачи планирования перемещений в пространстве. затем проверяется. Система R1 разбивает общую задачу на шесть подзадач Порядок. по фрагменту плана или конструкции нельзя сказать. В простейшем случае пространство поиска разбивается на фиксированную последовательность подзадач (подпространств). то поиск даже в очень большом пространстве можно организовать эффективно. В этих случаях могут быть применены методы поиска. Существенной характеристикой такого процесса являются поиск решения задачи в абстрактном пространстве. Причем по виду частичного решения можно определить. не приведут к целевым решениям. Если текущее частичное решение отвергается. т е. каждая подзадача решается в своем подпространстве.правило. изображающие пространственные взаимосвязи компонентов VAX. приводящую к решению основной задачи. являются ли эти решения целевыми. Если пространство поиска удается факторизовать. а устройство проверки определяет. 85 . выполняемые каждой подзадачей. Поиск в фиксированном множестве пространств Применение метода факторизации пространства ограничено тем.е. Подобный метод поиска использован. более конкретный уровень. Методы различаются предположениями о природе этого пространства. если оно разбивается на непересекающиеся подпространства (классы) частичными (неполными) решениями. что оно не приведет к успеху. На основании заказа покупателя на требуемую ему кон-фигурацию системы VAX система R1 определяет. что все полные решения. то генератор вырабатывает на его основе все полные решения. т. зависят от комбинации заказанных компонентов и способа их взаимосвязи. и затем выбирает очередную альтернативу. образованные из него. Внутри каждого уровня подзадачи рассматриваются как независимые. В системе каждой подзадаче соответствует свой набор правил. Поиск в факторизованном пространстве осуществляется на основе метода "иерархическая генерация-проверка" (см. использующие идею абстрактного пространства. выше). выявляет недостающие компоненты и строит диаграммы. Примерами таких областей являются задачи планирования и конструирования. непосредственно предшествующее текущему. не содержит ли заказ несовместимых компонентов. Поиск в R1 осуществляется с помощью безвозвратной стратегии поиска. целесообразно получить обобщенное пространство (пространство меньшей размерности) и попробовать получить решение в этом пространстве. как правило.

Система ABSTRIPS [1] является одним из первых примеров использования метода нисходящего уточнения. ящиков) является с точки зрения построения плана более важным фактом. с одной стороны. которые могут передвигаться роботом. Ограничения могут быть заданы как в числовой. Абстрактные пространства образуются путем упрощения условий применимости операторов.п. Получив задачу. Существование предметов и их свойств (т. местонахождение объектов. тем меньше литер (слов) содержит условие применимости каждого оператора. Робот умеет выполнять ряд действий: перемещаться по комнате. должны для упрощения решения задачи обеспечивать значительное упрощение исходного пространства. задающая семантические категории. Например. связанного с каждой литерой в условии применимости оператора. Ограничения могут быть использованы для представления целей в методах поиска в иерархических пространствах. т. толкать объекты и т. Примером задания ограничения в числовой форме является любая формула. После построения приблизительного плана его детали уточняются в более конкретных пространствах. Для того чтобы упростить процесс решения задачи. переходить из одной комнаты в другую. которые он совершает. которая накладывает ограничения на соотношение входящих в формулу переменных. Часто ранжирование осуществляется на основе учета степени неизменности фактов (наиболее абстрактны те описания. которая решает эту задачу. а просто не учитывать их при решении. местонахождение робота. приемлемое для всех решаемых задач. Возможным действиям робота соответствуют определенные операторы. должны быть подобны друг другу и конкретному пространству. Уровень детальности указывается с помощью веса. чем выше уровень абстракции. содержащем описание комнат. которые не могут изменяться). ABSTRIPS является программой. Необходимо отметить. чем положение предметов. Использование ограничений при поиске решения Ограничения можно рассматривать как способ частичного описания некоторых сущностей. что абстрактные пространства здесь создаются индивидуально в соответствии с решаемой задачей. условиями применимости оператора и преобразованиями. при конструировании топологии электрической схемы инвертор на верхнем уровне абстракции может быть описан как дискретное 86 . Робот действует в мире. состояние дверей (открыты. Пространство поиска (конкретное пространство). Основанием для назначения веса служат следующие эвристические соображения. получаемых преобразованием исходного состояния путем применения к нему всех возможных операторов. При этом абстрактные пространства.конкретного пространства). принимаемые на верхних уровнях. Такой подход позволяет при формировании абстрактного пространства не вычеркивать несущественные детали из описания мира и операторов. а с другой стороны. расположение дверей в комнатах. так и в символьной форме. составляющей план перемещения роботом объектов (ящиков) между комнатами. • решения. нет необходимости отменять на более нижних. изменяя пространство. состоит из возможных состояний мира. Формирование более абстрактного пространства осуществляется путем игнорирования части описаний менее абстрактного пространства (на первом шаге . отметим. Поэтому только эти наиболее важные факты должны учитываться в абстрактном пространстве. в котором ищется решение. закрыты). дверей. Игнорирование описаний осуществляется на основе ранжирования описаний по степени важности.что создает частичное упорядочение абстрактных состоянии.е. Примером задания ограничения в символьной форме является модель управления любого глагола. Завершая описание метода нисходящего уточнения. что метод базируется на следующих предположениях: • возможно осуществить частичное упорядочение понятий области. открывать дверь.е. ABSTRIPS формирует из конкретного пространства иерархию абстрактных пространств. наличие комнат. Каждый оператор представлен наименованием со списком параметров. и тем более чем положение робота. система составляет последовательность действий робота. чтобы процесс нисходящего переноса решения из более абстрактных пространств в менее абстрактные не требовал больших вычислительных затрат.

вытекающие из самой подзадачи. Откладывание решения может быть вызвано рядом причин: нет достаточной информации для того. когда накопилось достаточно информации для принятия решения. Вторая из указанных причин иллюстрирует важный феномен процесса решения задач взаимодействие подзадач. В соответствии с данным принципом решение не строится сразу до конца на верхних уровнях абстракции. подтверждающей возможность решения и вынуждающей принять решение. по мере появления информации. чем рассматриваемый инвертор. предназначенной для планирования экспериментов по молекулярной генетике. Использование ограничений вместо получения конкретного решения дает возможность отложить принятие решения. 87 . а только локальные ограничения.переключательное устройство с одним входом и несколькими выходами. Метод предполагает.е. т. какая часть инвертора должна быть связана с питанием. основанное на использовании принципа наименьших свершений. ниже). Использование ограничений позволяет применять принцип наименьших свершений (см. требуется пересмотр абстрактного плана (решения). а какая . когда ограничения определяют достаточно узкий набор альтернатив. то часто при объединении подзадач возникают несоответствия. При использовании принципа наименьших свершений выбор осуществляется только тогда. При решении ряда задач детализация решения. учитывающих не все. возобновляя выполнение приостановленной подзадачи при появлении недостающей информации. требует. Введение ограничений позволяет избежать преждевременного получения решений. определяющие. Если ограничения не могут быть учтены. Эти ограничения могут быть учтены при конструировании других частей схемы. что он не имеет обратной связи. другие соображения при конструировании схемы могут оказаться более важными. т. На этом уровне описания игнорируется такая информация. • приостанавливать работу над некоторой подзадачей. На этом же уровне могут быть указаны два ограничения. • объединять информацию. когда для решения нет достаточной информации. В противном случае процесс решения задачи приостанавливается (задача переходит в состояние "ожидание ограничений"). Если получать решение таких подзадач как независимых. Принцип наименьших свершений впервые был использован экспертной системой MOLGEN [I]. В подобных ситуациях целесообразно применение принципа наименьших свершений. что подзадачи почти независимы. полученного на абстрактном уровне. На более низком уровне абстракции инвертор может быть описан с учетом его геометрии. а не из других подзадач. чтобы система была в состоянии совершить следующие действия: • определить. и осуществляется переход к другой подзадаче.с землей. если при получении решения учитываются только локальные ограничения. Если для решения подзадач требуется их незначительная координация. ограничения. Этот принцип позволяет переключать внимание с одной подзадачи на другую и избегать преждевременных решений. соединяющий части инвертора с питанием и землей. то говорят. что одни и те же решения должны приниматься в одинаковых ситуациях при решении любой задачи. полученную различными подзадачами. Рассуждение. то построенная схема инвертора должна быть пересмотрена. Обычно такие подзадачи имеют более одного решения. • переходить с одной подзадачи на другую. источник питания и земля. оказывается невозможной. так как при построении абстрактного плана были опущены детали. чтобы определить местонахождение питания и земли. как именно выглядит маршрут. Использование ограничений позволяет отложить решение вопроса о том. как геометрия инвертора. препятствующие его уточнению. от которых данная подзадача почти независима. Принцип наименьших свершений Основной недостаток метода нисходящего уточнения состоит в том.е. MOLGEN представляет взаимодействие между подзадачами в виде ограничений. Частичное решение детализируется постепенно. Система чередует использование принципа наименьших свершений и использование эвристических стратегий. Для рассуждений об ограничениях используются операторы метауровня (в противовес операторам предметной области).

как решающая программа это сделает. Подобный подход требует явного разграничения знаний о процессе решения и знаний о проблемной области. Итак. условий применимости операторов. являются истинными. Получить решение в метапространстве . описывающие состояние. В других случаях угадывание приводит к конфликтам. 6. что метаплан в отличие от абстрактного плана выражается не в терминах операторов проблемной области. Заметим. не обсуждался. Метапространства в иерархии пространств При решении любой задачи многократно возникает вопрос: "Что делать на следующем шаге?". Конфликт может возникнуть и при работе по принципу наименьших свершений. Не существует причин ограничивать метазнания одним уровнем. какой из операторов. применить к текущему состоянию проблемной области. Для этого необходимы знания на метауровне. известных решателю. При поиске в абстрактных и конкретных пространствах на каждом шаге решался вопрос о том. в процессе использования принципа наименьших свершений может возникнуть следующая ситуация. известного решателю. описание доступных методов (стратегий) поиска и способов их взаимодействия.3. что любой решатель имеет неполные знания о проблеме. требующим новых попыток по угадыванию. Необходимо делать выбор. Разбиение на метазадачи является полезным методом организации знаний в экспертных системах. но нет надежных оснований для выбора решения. и все они могут использоваться в одной системе. потому что все подзадачи перешли в состояние "ожидание ограничений". Чередование в MOLGEN подхода наименьших свершений и эвристических стратегий иллюстрирует ограниченность принципа наименьших свершений. В связи с тем. принцип наименьших свершений координирует процесс поиска решения с наличием необходимой информации и в соответствии с доступной информацией перемещает фокус активности по решению задачи от одной подзадачи к другой. когда цели принципиально недостижимы.Распространение ограничений . что знания о предметной области и данные о решаемой задаче являются точными и полными и для них справедливо следующее: • все утверждения. Когда MOLGEN распознает эту ситуацию. Завершая описания методов поиска в иерархии пространств.е. Решатель в метапространстве содержит явное описание процесса организации поиска. ниже). Во многих случаях угадывание позволяет продолжить процесс поиска решения и довести его до конечного результата. Эта ситуация приводит к остановке процесса и называется тупиком. В простейшем случае решение предопределено методом поиска решения. программы). а именно в том случае.это значит определить. Данный подход непригоден. однако в настоящее время еще далеко до общего теоретического осмысления данного вопроса. т. подчеркнем. какой метод (программа) будет применен на следующем шаге.е. могут существенно сузить набор альтернатив другой подзадачи. Вопрос о том. она переключается на эвристическую стратегию и делает предположение (угадывание). что в рассмотренных подходах используются пространства трех видов: конкретные. но нет оснований предпочесть одну альтернативу другим. операторов. "что делается на следующем шаге в проблемной области" путем выбора того или иного метода. когда существует много возможностей. описание состояний. По аналогии с факторизацией абстрактного пространства можно говорить о разбиении метапространства на метазадачи (методы. существующих в проблемной области. • применение оператора к некоторому состоянию формирует некоторое новое 88 . абстрактные и метапространства. Поиск в альтернативных пространствах Рассмотренные выше методы поиска исходят из молчаливой предпосылки. MOLGEN строит планы в ответ на распространение ограничений. т. а косвенное влияние на определение того. а в терминах методов (программ). выставленные одной подзадачей. составить метаплан решения задачи. Можно оказывать не явное. В этих случаях необходимо использовать некоторые формы правдоподобных рассуждений или переходить на использование другой модели (см. Ограничения.3.механизм для передачи информации между подзадачами.

д. что. если А. и нет возможности предвидеть все последствия сделанного выбора. противоречивым и (или) взаимодополняющим предположениям и мнениям. полученных на основе этих предположений. Другое обоснование предположений базируется на рассмотрении рассуждения как процесса с ограниченными ресурсами. т. полученные на основе этих правдоподобных предположений. то предположение может быть высказано. Мнение системы о том. можно образовать пространство поиска. она должна быть способна делать предположения. какие факты имеют место. основанных на здравом смысле. Мнение В можно представлять в виде отношения. р. можно считать. что сейчас 14 ч (посмотрев на часы). указывающая на нарушение этих условий. Любая формальная система является монотонной. возможно. В противоположность этому в правдоподобных рассуждениях. которые он не может доказать. то В будет выводиться и из . свойственных некоторому индивиду (системе). чего он хочет. приводит к представлению области в виде альтернативных пространств. должны устраняться.е. В ходе 89 . можно говорить о ревизии мнений. такие. имеющих рассматриваемое мнение). отличающиеся от формальных математических рассуждений. Немонотонные рассуждения особенно важны при решении задач планирования и конструирования. Все утверждения. например. в условиях дефицита времени. В и С есть некоторые высказывания. даже если рассматривать проблемную область как статическую. так и от умозаключений. что хотел конструктор. используя ограниченные ресурсы. если. Будем говорить. если В выводится из A. Система немонотонна. Основываясь на некоторой системе мнений. Если информация. В математических рассуждениях каждое заключение должно строго следовать из предыдущей информации. В противном случае необходимо устранить все последствия и сделать альтернативное предположение и т. состоящего из субъекта мнения a (индивида или системы. так как r). Так. В этих задачах пространство поиска иногда очень велико. предназначенное для решения каких-либо задач. В этом случае эксперт делает правдоподобные предположения. что часы идут и идут правильно. Таким образом. в свою очередь. показывающая ошибочность этого предположения. нельзя доказать истинность противоположного утверждения. как правило. что предположение (X) имеет место. но не знает. Эксперту приходится работать в условиях неполноты и неточности знаний (данных) и. высказав предположение. заключения основываются на частичной информации. Предположение и выводы. r) (a думает. чтобы рассматривать их как возможные значения. что некоторые предположения верны только при определенных условиях. Например. Один из способов обоснования предположений заключается в том. Когда эксперт решает задачу. тем самым вопрос об их истинности остается открытым. если появилась информация. неполнота (и неточность) знаний и данных влечет за собой рассмотрение этой области при различных (и даже противоположных) предположениях. объекта мнения p (то. также не могут быть доказаны. Поэтому при конструировании предположения выступают в виде пробных решений. при работе с неполными (неточными) данными и знаниями. по которым субъект имеет данное мнение). составляет его систему мнений. то процесс конструирования продолжается дальше. что множество мнений. Так. т. а при получении новой информации. Однако при решении любых практических задач и особенно при решении неформализованных задач распространена обратная ситуация. возможно. с выдвижением новых предположений.е.состояние. как это сделать. конструктор знает. Этот аспект в построении умозаключений с использованием предположений называется немонотонностью. Обычно человек знает. но выводится из [8]. основанные на здравом смысле. сделанные на его основе. он использует методы. что если В выводится из А. задаваемые по умолчанию. мы молчаливо предполагаем. отказываться как от сделанных предположений. Если последствия не противоречат тому. соответствующих различным.B (а. показывающей ошибочность предположений. описание которого состоит только из истинных фактов. о чем субъект имеет мнение) и обоснования мнения r (причины. изменяется в ходе рассуждения. последствия которых затем анализируются с точки зрения их пригодности (непригодности). что p. или в формальном виде . для того чтобы система могла делать умозаключения. отсутствует. Итак.

Правило вывода: Правило 3. Остановимся на особенностях механизма поиска в альтернативных пространствах. предположений A2. сделанных на их основе. 6. Простейшим видом обоснования (justification) может являться информация о том. Обоснованием для этого мнения может быть следующая запись: Обоснование 1: Поддержка для: Мнение 4. Например. предположений A2. то он занят. Зависимости в системе мнений должны содержать сведения о мнениях. B1. предположениями А1 и выводами. Если достигалось целевое состояние. а все вместе они образуют альтернативные пространства. Каждой из систем мнений соответствует свое пространство поиска.7. Обоснование может использоваться для поддержки или изменения текущей системы мнений (ревизии мнений). Рис. то либо работа завершалась (при поиске одного решения). пространство R образовано из C1. или выведенной. B1. Совокупность мнений. которой система придерживается в текущий момент. правилах вывода и обоснованиях (поддержках) мнений. либо продолжался поиск следующего решения. полученной извне. образуя различные системы мнений. При достижении терминального состояния необходимо вернуться в некоторое предыдущее состояние пространства и продолжить поиск в новом направлении. существующих в активной системе мнений. D1 и выводов. система должна быть способна рассуждать о зависимостях. Пространство Р образовано исходными посылками C1. будем называть активной системой мнений. сделанных на их основе. Q и R. Из этой информации можно сделать вывод: Мнение 4: R занят в среду в 13 ч. на каких мнениях основываются данные. сделанными на их основе. Пример альтернативных пространств Для того чтобы изменить мнение. D2 и выводов. Мнение 2). Правило 3: Modus ponens .7 изображены три альтернативных пространства Р. Бэктрекинг работает по 90 . Новые мнения могут быть следствием новой информации. что система имеет следующие утверждения: Мнение 1: R участвует в совещании в среду в 13 ч. В рассмотренных ранее методах поиск в некотором направлении прерывался при достижении целевого или терминального состояния. предположим. B1. Мнение 2: Если R присутствует на совещании. На рис. Обычно при реализации поиска использовался механизм бэктрекинга (backtracking).6. Посылки: (Мнение 1.рассуждений человек (система) может менять свои мнения. пространство Q образовано из C1.

если при получении утверждения 8 (см. SYN может рассматривать делитель напряжения как состоящий из двух последовательно соединенных сопротивлений (R1. сначала устраняется последнее рассматриваемое состояние. Во-вторых. т. и заменять A1 на некоторое новое предположение А2. проходящего через делитель (I = U/R). Поэтому при обнаружении неудачи необходимо возвращаться в состояние. для реализации которого может быть применен механизм стека. возникающие при распространении ограничений. SYN может рассматривать схему с различных точек зрения. что он горячий. Рассмотрим метод использования нескольких моделей. а к тому состоянию. При решении сложных задач в условиях ограниченных ресурсов использование нескольких моделей может значительно повысить мощность системы. например. т. которое является причиной возникновения неудачи. на котором было сделано предположение A1. использовали при представлении проблемной области какую-то одну модель. Таким образом.е. например.4 Поиск с использованием нескольких моделей Все методы поиска. форму схемы и некоторые особенности ее работы.е. механизм традиционного бэктрекинга отбрасывает слишком много информации. Затем для вычисления напряжения в средней точке делителя (U1 =I х R2. 6. так как все неудачи.е. first-out" ("последним вошел. впервые примененный в экспертной системе SYN [1]. Новизна SYN состоит в использовании нескольких моделей. Так. SYN представляет собой программу для синтеза электрических схем. использование нескольких моделей позволяет в ряде случаев уменьшить вероятность потери хорошего решения (следствие неполного поиска.е. Например. будет делать бэктрекинг). если мы взяли стакан правой рукой и из-за того. первым вышел"). 6. образно говоря. отпустили его.принципу "last-in. наличие нескольких моделей позволяет системе справляться с неточностью (ошибочностью) данных. что использование нескольких моделей требует дополнительных знаний о том. где это предположение было сделано. и испытывать другое предположение. недоказуемые утверждения. рассматривали область с какой-то одной точки зрения. а к шагу 5. Следует отметить. то возврат нужно делать не к предыдущему шагу (к утверждению 7). Таким образом осуществляется переход из пространства P в новое пространство (R или Q). Идея поочередного использования эквивалентных представлений электрических схем позволяет преодолеть тупики. R2).7) система установила наличие неудачи (противоречия). а может рассматривать эти сопротивления как одно (R = R1 + R2). В используемых нами терминах причиной неудач являются предположения. возникшие при поиске в одном направлении. переход с одной модели на другую позволяет обходить тупики. Так. т. как создавать и объединять различные точки зрения. Во-первых. Система определяет значения компонент схемы. что соответствует идее эквивалентных электрических схем. непосредственно предшествующему данному. то нецелесообразно тут же пытаться брать стакан левой рукой (что.3. По этой причине данный метод поиска называют поиском. Для выполнения описанкого способа поиска можно использовать информацию о зависимости. U2 = I х R2) SYN возвращается к первой точке зрения. т. представленную в том или ином виде. Так. Применение механизма бэктрекинга при поиске в альтернативных мирах будет приводить к излишней неэффективности. В-третьих. Осуществлять возврат целесообразно не к состоянию. возникающие при поиске в процессе распространения ограничений. при анализе делителя напряжения SYN использует вторую точку зрения для вычисления тока. что этот подход обеспечивает 91 . рассмотренные до сих пор. рис. направляемым зависимостью. не запоминаются при переходе к поиску в другом направлении. Объединение в одной системе нескольких моделей дает возможность преодолеть следующие трудности. вызванного ограниченностью ресурсов) за счет конструирования полного решения из ограниченного числа частичных кандидатов путем их расширения и комбинации. Та же самая причина неудачи может заново обнаруживаться и на новом направлении. Мощность использования нескольких (в описанном случае двух) моделей состоит в том.

для решения некоторой подзадачи может требоваться информация. которая определяется особенностями проблемной области и требованиями.5 Выбор метода решения задач Выбор метода решения задачи зависит прежде всего от сложности задачи. Метод нисходящего уточнения применим в том случае. размытые и точные методы. то используется фиксированное абстрактное пространство. вызванную ограниченностью вычислительных ресурсов. 92 . основанные на введении иерархий пространств (конкретных. Для преодоления неадекватности модели проблемной области используются методы. что использование данного подхода требует более разнообразных знаний о решении задачи. применяются более сложные методы. когда отсутствующая информация станет доступной. что позволяет производить раннее отсечение. размытые) используют разнообразные априорные оценки. В случае. описывающих проблемную область с различных точек зрения. когда решение задачи не может быть получено без механизма бэктрекинга. Метод обеспечивает получение всех решений. Все эти методы основываются на идее увеличения надежности путем комбинирования фактов и использования метазнаний о возможностях комбинирования фактов. статичностью области. вызванных большим пространством поиска. использующими метазнания. Кроме того. чем в предыдущих случаях. получаемая Другой подзадачей. предъявляемыми пользователем к решению задачи. целесообразно применять принцип наименьших свершений. Используя идею эквивалентных электрических схем. если подзадачи взаимозависимы. точные подходы используют предположения и ревизию мнений при немонотонных рассуждениях. абстрактных и метапространств). Принцип наименьших свершений может приводить к образованию тупиков в процессе решения задачи. Простые задачи характеризуются небольшой размерностью пространства поиска. удовлетворяющих перечисленным требованиям.дополнительные пути по распространению поиска (расчета). При использовании разнообразных знаний о процессе решения становится целесообразным объединять принцип наименьших свершений с методами. точностью и полнотой данных. но при этом не требуется получать все решения или выбирать лучшее. используют вероятностные. Следует отметить. На практике встречается мало приложений. что значение хотя бы одного из перечисленных параметров оказывается в них более сложным. Для преодоления трудностей. 6. ориентированные на использование нескольких моделей. однако существует фиксированная упорядоченность понятий области и фиксированный частичный порядок между подзадачами. для которой недостает информации. переходить к решению другой подзадачи и возвращаться к исходной задаче. когда все задачи не могут быть сведены к фиксированному набору подзадач. В тех случаях. т. что любая задача может быть сведена к известной заранее последовательности подзадач. Простейший из этих методов основывается на факторизуемости пространства решений.е. условные вероятности и размытые множества. использование нескольких моделей позволяет уменьшить вероятность потери хорошего решения. Если пространство поиска не удается факторизовать. Эти методы позволяют объединить возможности различных моделей. Сложные задачи характеризуются тем. возможностью адекватного описания области с помощью одной модели. Если пространство поиска таково. система SYN способна исследовать сложные схемы без трудоемких алгебраических вычислений. использующие иерархию однородных абстрактных пространств. псевдовероятностные. несмотря на неполноту поиска. что препятствует использованию этого принципа в чистом виде. Эффективность этого метода определяется возможностью использовать безвозвратную стратегию. вызванных неполнотой и (или) неточностью данных (знаний). Неточные подходы (вероятностные. используются методы. и подзадачи не могут быть упорядочены. Для преодоления тупиков используют предположения или применяют метод нескольких моделей. то могут быть применены методы. Для преодоления трудностей.3. Этот подход позволяет приостанавливать решение подзадачи.

V. 5. Алгоритмические основы интеллектуальных роботов и искусственного интеллекта.P. . Nilsson N. Охарактеризуйте метод поиска решений в альтернативных пространствах при неполных и неточных данных. . . . 5 .J. Computer science as empirical enquiry: Symbols and search//Communications of the ACM.М. и подходом. 1991. Охарактеризуйте метод поиска решений в одном пространстве.ЛИТЕРАТУРА 1.455 с. Фридман Г. 1967. 93 . Минский М. California.: Мир. На пути к созданию искусственного разума//Вычислительные машины и мышление.Palo Alto.A. Moore R. .В. . . . 4.. Охарактеризуйте метод поиска решений с использованием нескольких моделей.М. 6. Экспертные системы. . Nevell A. использующим управляемые образцами модули. Expert Systems in Real-Time Applications: Experience and Developments //Proceedings of the Seventeenth Annual Advance Control Conferenc.: Мир. 2. Дайте определение стратегии управления в экспертных системах и приведите классификацию стратегий.1980. Назовите основные различия между подходом. Приведите обоснование выбора метода решений задач в экспертных системах. 1973.V. Tioga Press. Решение неформализованных задач в диалоге с ЭВМ.552 с.М. 13. October. 7. . 1987. . 133 . Winograd T. Охарактеризуйте метод поиска решений в иерархии пространств. Вопросы для самопроверки 1. Р. 7.№ 3. 5. Simon M. Попов Э.26. 9.1976.P.146. Укажите назначение и главные функции четырех этапов работы интерпретатора. Сформулируйте основные задачи механизма вывода экспертной системы. Попов Э. Методы поиска решений. 8. 3. 1980. использующим управляемые образцами правила. . Нильсон Н. Искусственный интеллект. 1976.: Наука. 3. Principles of Artificial intelligence. 2.. Extended inference modes in reasoning by computer systems//Artificial Intelligence. .В. 6. .М: Наука. 8. 4. 10.

Rapid Application Development). что разработчики не пытаются сразу построить конечный продукт. Бизнес-модель . Суть этой концепции состоит в том. Основными рабочими продуктами RAD в порядке их формирования являются бизнесмодель. Технология JAD была разработана фирмой IBM в начале 70-х годов для быстрой разработки спецификаций и требований к программным системам. При разработке ЭС используется концепция прототипирования. включающая шесть следующих этапов [1]: идентификация. формализация. При неудаче может потребоваться разработка нового прототипа. 1. осуществляемые при усовершенствовании. выполняются не в линейном порядке. модель данных и функциональная модель. используемых в системе. как увеличивается знание разработчиков о проблемной области. внешние по отношению к системе. включая элементы. Основы методологии разработки экспертных систем Как отмечалось в главе 1 настоящего пособия. т. что неформализованность задач. либо чрезмерно затягивает процесс создания ЭС. Преобразование прототипа ЭС в конечный продукт связано с достижением такого состояния. процесс разработки экспертных систем имеет существенные отличия от разработки обычного программного продукта. переконструирование представления и усовершенствование прототипа. рис. Соответствие между методологией разработки ЭС и методологией RAD Методология быстрой разработки приложений RAD . решаемых экспертной системой.это графическое и текстуальное описание информационных потоков между элементами автоматизируемой системы.е. отсутствие завершенной теории ЭС и методологии их разработки приводят к необходимости модифицировать принципы и способы построения ЭС в ходе процесса разработки по мере того. Если в процессе усовершенствования желаемое поведение не достигается. Возврат от этапа тестирования на этап формализации приводит к пересмотру выбранного ранее способа представления знаний. Если возникшие проблемы еще более серьезны. В ходе работ по созданию экспертных систем сложилась определенная технология их разработки. концептуализация. Модель данных графическое и текстуальное описание структуры и семантики информации. Концепция прототипирования. как правило. они создают в общем случае несколько прототипов ЭС. Дело в том. Первый прототип должен продемонстрировать пригодность методов инженерии знаний для данного приложения. используется в настоящее время и для разработки сложных программных систем как методология быстрой разработки приложений (RAD . решаемых ЭС. В этом случае речь будет идти о переформулировании понятий. то после неудачи на этапе тестирования может потребоваться возврат на этапы концептуализации и идентификации. т. отладка и тестирование. когда прототип успешно и эффективно решает все задачи данного приложения.е. зародившись в технологии разработки ЭС. Можно выделить следующие виды модификации системы: переформулирование понятий и требований. что использование при их разработке методологии. о проектировании всей системы заново. отведенного на разработку.ГЛАВА 7.это промышленная технология разработки программных систем на основе использования CASE-средств и методов быстрого прототипирования и верификации прототипов пользователем при жестком ограничении времени. Циклы повторяются до тех пор. Изменения. либо приводит к отрицательному результату. Данный цикл называют переконструированием. опытная эксплуатация и внедрение (см. В случае успеха эксперт с помощью инженера по знаниям расширяет знания прототипа о проблемной области.4). Усовершенствование прототипа осуществляется в процессе циклического прохождения через этапы выполнения и тестирования с целью отладки правил и процедур вывода. Эти этапы. см. На уровне организации проектных работ RAD можно охарактеризовать как "автоматизированную групповую разработку приложений (Joint Application Development -JAD) в условиях ограниченных сроков. принятой в традиционном программировании. пока система не будет вести себя ожидаемым образом. выполнение. постоянно осуществляется модификация разрабатываемой ЭС. используемой в 94 . то необходимо осуществить более значительные модификации архитектуры системы и БЗ. ниже. зависят от выбранного способа представления и от класса задач. Опыт создания ЭС показал.

Соответствие между этапами проекта RAD и жизненного цикла ЭС Этапы RAD Этапы жизненного цикла ЭС Старт проекта. ресурсы и цели. Например. В этом описании указываются общие характеристики задачи. По нашему мнению. представительности тестов. инструкций. знания. инженер по знаниям может привлекать других экспертов для того. гл.ученика. входные (выходные) данные. Как отмечают многие специалисты. "Как эти задачи могут быть 95 . которые ему рекомендовал эксперт. что дает возможность проводить непосредственно на их основе генерацию результирующего кода прикладной программы. Цель этапа идентификации задачи состоит в том. а также формы их взаимоотношений. современные инструментальные средства для разработки ЭС. ключевые понятия (объекты). предположительный вид решения. формирование группы разработчиков Идентификация Обучение участников группы разработчиков Построение бизнес-модели Концептуализация Построение модели данных Построение функциональной модели Формализация Генерация кода Выполнение Тестирование Отладка и тестирование Внедрение Опытная эксплуатация и внедрение 7. демонстрирующих особенности рассматриваемой задачи. обладают всеми необходимыми функциональными возможностями развитых CASE-систем: документированием процесса разработки. чтобы характеризовать задачу и структуру поддерживающих ее знаний и приступить к работе по созданию базы знаний.1 Идентификация На этапе идентификации определяются задачи. участники процесса разработки и их роли.п. привлекаемый для модификации и согласования инструментальных средств).9). Функциональная модель -графическое и текстуальное описание функций системы. Несмотря на то. Определение участников и их ролей сводится к определению количества экспертов и инженеров по знаниям. в рамках которой предстоит работать создаваемой ЭС. то этап идентификации может потребовать нескольких итераций. Вне зависимости от выбранной формы взаимоотношений инженер по знаниям должен быть готов и способен изучать специфические особенности той проблемной области. чтобы убедиться в правильности своего понимания основного эксперта. характеристики и отношения. Все описания формируются в терминах CASEсистемы. для достижения успеха инженер по знаниям должен использовать дополнительные источники знаний в виде книг. один или два инженера по знаниям и один программист. Формы взаимоотношений экспертов и инженеров следующие: эксперт исполняет роль информирующего или эксперт выполняет роль учителя. выделяемые внутри данной задачи. и взаимосвязей между функциями в терминах входов и выходов.системе. что основу знаний ЭС будут составлять знания эксперта. Ниже приведено соотношение между методологией RAD и методологией ЭС. решаемых в ходе выполнения этих функций. Идентификация задачи заключается в составлении неформального (вербального) описания решаемой задачи.ученик" больше соответствует методологии ЭС. примеры (тесты) решения задачи. Если исходная задача оказывается слишком сложной с учетом имеющихся ресурсов. подзадачи. К процессу разработки ЭС могут привлекаться и другие участники. визуальным конструированием диаграмм потоков данных. релевантные решаемой задаче. Обычно в основном цикле разработки ЭС участвуют не менее трех-четырех человек (один эксперт. задач. совпадении взглядов различных экспертов на качество предлагаемых решений. В ходе идентификации задачи необходимо ответить на следующие вопросы: "Какие задачи предлагается решать экспертной системе ?". а инженер . форма "учитель . например оболочка G2 фирмы Gensym (см. операций. репозиторием проектных решений и т.

уточняющих описание. При определении (назначении) временных ресурсов необходимо иметь в виду. Обычно число связанных понятий. книги. чтобы задача относилась к достаточно узкой.охарактеризованы и определены ?". Задача идентификации целей заключается в формулировании в явном виде целей построения экспертной системы. как решать эту задачу и какие рассуждения лежат в основе решения. Задача определения ресурсов является весьма важной. затраты на обучение (прежде всего время) будут высоки. Следует подчеркнуть. тиражирование знаний эксперта. Кроме того. при недостаточном финансировании предпочтение может быть отдано не разработке оригинальной новой системы. назначение экспертной системы в том. Задача не должна быть ни слишком легкой. от задач. Примерами возможных целей являются: формализация неформальных знаний экспертов. Эксперт уточняет описание задачи. качество ЭС зависит в конечном счете от уровня сложности решаемой задачи и ясности ее формулировки. а адаптации существующей. 7. эксперт и инженер по знаниям получают окончательное неформальное описание задачи. специальной области знаний и не требовала для своего решения использования того. Пользователи обладают неформальным пониманием прикладных задач. При разработке экспертной системы типичными ресурсами являются: источники знаний. Начальное содержательное описание задачи экспертом влечет за собой вопросы инженера по знаниям с целью уточнения терминов и ключевых понятий. При этом важно отличать цели. Для достижения успеха эксперт и инженер должны использовать при построении ЭС все доступные им источники знаний. что принято называть здравым смыслом. а их компетентность все равно останется более низкой. поскольку методы искусственного интеллекта не дают возможности формализовать это понятие. вычислительные средства (возможности ЭВМ и программного инструментария) и объем финансирования. ради которых строится система. Эти преимущества усиливаются по мере усложнения решаемой задачи. например. Так. На первом этапе инженер по знаниям должен ответить на основной вопрос: "Подходят ли методы инженерии знаний для решения предложенной задачи?" Для положительного ответа на данный вопрос необходимо.2 Концептуализация На этапе концептуализации эксперт и инженер по знаниям выделяют ключевые 96 . заключающийся в участии конечных пользователей системы в процессе разработки. ни слишком трудной. какие данные они используют ?". конкретные примеры задач и использованных решений. методы решения и представления знаний. чтобы быть экспертом в этой области. объясняет. чем у опытных пользователей. автоматизация рутинных аспектов работы эксперта (пользователя). Хотя системные аналитики и программисты могут изучить этот класс прикладных задач. Для инженера по знаниям источниками знаний могут быть опыт в решении аналогичных задач. поскольку ограниченность какого-либо ресурса существенно влияет на процесс проектирования. "На какие подзадачи разбивается каждая задача. которые должна решать разрабатываемая программная система. улучшение качества решений. что в настоящее время при разработке ЭС (особенно динамических ЭС) применяется принцип кооперативного проектирования. "Какие ситуации препятствуют решению ?". После нескольких циклов. что сроки разработки и внедрения экспертной системы составляют (за редким исключением) не менее шести месяцев (при трудоемкости от двух до пяти человеко-лет). чтобы решать некоторую задачу из данной области. релевантных проблеме. "Как эти препятствия будут влиять на экспертную систему ?" В процессе идентификации задачи инженер и эксперт работают в тесном контакте. Говоря другими словами. должно составлять несколько сотен. Для эксперта источниками знаний могут быть его предшествующий опыт по решению задачи. программный инструментарий. Поэтому включение конечных пользователей в группу разработчиков обычно более эффективно и позволяет более качественно анализировать автоматизируемые операции. а не в том. принимаемых экспертом. время разработки. которые она должна решать.

типы ограничений. простыми. необходимо ответить на вопрос "Как?" Первый вопрос заключается в том. Такой протокол обеспечивает инженера по знаниям словарем терминов (объектов) и некоторым приблизительным представлением о тех стратегиях. протокол помогает ответить на многие другие вопросы. диаграммы должны быть небольшими по размеру. Объекты принято обозначать квадратами. а связи между ними стрелками. и системные процессы. отношения и характеристики. причем дает только частичный ответ. на которых представлены сама система (в виде системного процесса). используемые стратегии и гипотезы. Диаграммы используются как средства проектирования.связь" также отвечают на вопрос "Что?" После того как определено. накладываемых на процессы. Контекстная диаграмма в сочетании с перечнем системных требований стремится ответить на вопрос "Что делает система?".3]: • контекстные диаграммы (структурно-функциональные схемы). но говорить о выборе конкретных способов и методов здесь еще рано. На ней представлены внешние объекты. Для того чтобы показать. как система взаимодействует с внешним окружением. Все элементы схемы имеют идентификатор и снабжены комментариями.прямоугольниками. Ответ на этот вопрос дает диаграмма потоков данных (ДПД). Эти диаграммы. а системные и внешние объекты . Стрелки показывают потоки данных. В прямоугольниках и ромбах записаны имена объектов и связей.). сопровождения и документирования. ее части и их взаимодействие. выходящие и проходящие внутри системы. необходимые для описания процесса решения задачи. хранилища данных в системе. входящие. используемые в ходе решения. определяет. • диаграммы потоков данных. Для систем со сложными связями между объектами важно более детально представлять взаимоотношения между объектами. Для определения перечисленных характеристик задачи целесообразно составить детальный протокол действий и рассуждений эксперта в процессе решения хотя бы одной конкретной задачи.узкими 97 . хранилища данных .понятия. В этих диаграммах объекты представляются прямоугольниками. состав знаний. объекты внешнего окружения и основные потоки между ними. возникающие в ходе разработки. т. на которых расположены ромбы. потоки данных. Основная функция системы (системный процесс) представляется кругом. Диаграммы "сущность . процессы. используемые в ходе решения задачи. часть/целое и т. исходные и выводимые данные. надо показать всю систему. Это делается с помощью контекстных диаграмм (часто называемых структурно-функциональными схемами). На этом этапе инженер по знаниям рассматривает вопросы. Для этого они должны опираться на формальные правила и использовать небольшое количество абстрактных символов. Кроме того. ее основные части (подсистемы). подзадачи общей задачи. Это делается с помощью диаграмм "сущность -связь". Тип связи задает отношение множественности между объектами. Адекватным средством для выделения ключевых понятий. включая операторы и основные блоки оборудования (измерения и управления). обрабатывающие эти потоки. описывают разрабатываемую систему на высоком уровне. типы используемых отношений (иерархия. скольким экземплярам второго объекта соответствует один экземпляр первого объекта. К числу базовых типов диаграмм относятся [2. • диаграммы "состояния-переходы". которые используют практически все современные ИС.п. • диаграммы "сущность-связь". На этом этапе определяются следующие особенности задачи: типы доступных данных. Являясь языком для описания требований и проектирования системы. ЧТО система должна делать. виды взаимосвязей между объектами проблемной области. которые использует эксперт. используемых для решения задачи и для объяснения решения. причина/следствие. отношений и характеристик являются диаграммы.е. Тип связи и ее направление определяются с помощью стрелок в начале и в конце линии связи. относящиеся к представлению знаний и методам решения. понятными и полными. что должна делать система. а также для организации взаимодействия между различными участниками процесса создания системы.

1 Структуризация исходной задачи Модульная организация базы знаний составляет важную часть разработки прикладной системы. какие события происходят в системе. как система на них реагирует и в какие состояния она попадает. а именно структуризации общей задачи на связанные подзадачи.прямоугольниками с закругленными углами. 3. структуризации предметной области на основе иерархии классов и структуризации приложения на основе иерархии "часть/целое". или смешанный подход). в модулях более высокого уровня эти описания будут использоваться для создания экземпляров соответствующих классов.1.3. модули нижнего уровня могут содержать описания иерархии классов приложения. процессы . будут содержаться в модулях верхнего уровня.прямоугольниками без правой стороны. частность/ общность выполняемых утверждений) . выявленные на этапе концептуализации. подходят ли имеющиеся инструментальные средства (ИС) для решения рассматриваемой проблемы или необходим выбор других ИС. использование языков традиционного программирования и рабочих станций. хранящие части целой БЗ. п. Типы диаграмм. считается. п. что разбиение приложения на модули существенно ускоряет разработку ( так как независимые группы разработчиков 98 . на структурировании процесса решения. к этим требованиям относятся (см. как система отвечает требованиям и как реализуется проект. 1. 3. Например. Поведение системы представляется в виде множества дискретных. использующие эти экземпляры и оперирующие с их атрибутами. • тип проблемной среды. что изменения происходят мгновенно.линиями со стрелками. открытость и переносимость.1. основанный на поверхностных или глубинных знаниях. между этими файлами могут существовать определенные зависимости. адекватного разрабатываемому приложению. выражаются на некотором формальном языке. используются диаграммы "состояний-переходов" (ДСП).см.1. В большинстве современных средств разработки сложных ЭС и в особенности динамических ЭС предусматривается поддержка разбиения БЗ на модули файлы. централизованность/децентрализованность) .3.1): интегрированность. Правила. структуризации знаний на декларативные и процедурные. упомянутые выше. отражали статическое поведение системы. 7. необходимо проанализировать: • степень выполнения общих требований в выбираемом ИС. так и характеристики решаемых задач ( анализ/синтез. которую допускает выбираемое ИС (подход. которые моделируют поведение машины с конечным числом состояний [3]. проблемно/ предметная ориентация ИС. Как и в традиционных системах программирования. Для выбора ИС. События могут происходить синхронно и асинхронно. процедуры и экранные формы. Основными задачами в процессе формализации являются проблемы структуризации исходной задачи и знаний в выбранном (разработанном) формализме. -см. 7. • тип приложения (изолированность/интегрированность. Важность модульной организации ЭС определяется тем. закрытость/открытость. вводятся или нет объекты и их классы). структурированная/неструктурированная БЗ. хотя трудно предложить единственно правильный способ членения системы на модули. • технологию разработки ЭС. В совокупности они показывают.см.3 Формализация На этапе формализации все ключевые понятия и отношения. а потоки данных . или требуются оригинальные разработки. Для того чтобы показать динамическое поведение системы. использование архитектуры клиент-сервер. Процесс эволюции прикладной системы может потребовать пересмотра и ее модульной структуры. ДПД позволяют проводить декомпозицию по уровням раскрытия системных процессов и потоков. п. предложенном (выбранном) инженером по знаниям Здесь он определяет. п. включающей как характеристики предметной области (статические/динамические. задающие порядок сборки из них целостной системы. исключительных и конечных состояний Происходящие события приводят к изменению состояния системы.

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

Необходимость ускорения темпов разработки и модификации ЭС всегда являлась
актуальной задачей прикладной инженерии знаний. Использование среды разработки,
обеспечивающей наиболее быстрое создание прототипов ЭС по сравнению с другими
инструментальными средствами, оставляет открытыми ряд проблем, которые в общем
случае связаны с уровнем программирования на обычных языках представления знаний.
Объединение в этих языках общих правил с объектами позволяет естественным образом
создавать повторно используемые фрагменты БЗ, что имеет первостепенное значение и для
развития ЭС в ходе их эксплуатации, и для создания проблемно-ориентированных оболочек.
Однако остается проблема быстрого создания модели будущей системы для оценки проекта
в целом: пользователь может проверить качество и возможности разрабатываемой ЭС только
после создания реальной БЗ или представительного фрагмента БЗ, что представляет собой
достаточно трудоемкий процесс.
Как отмечалось выше (см. п. 5.3), применение объектно-ориентированного подхода в
современных ЭС естественным образом реализует возможность декомпозиции задачи на
совокупность подзадач, представляемых достаточно автономными агентами, работающими
со знаниями. Знания при этом подходе организованы в классы. Каждый класс определяется
специфическим набором атрибутов. Классы организуются в иерархию классов. Каждый
класс в иерархии наследует атрибуты и ограничения своего родительского класса. Обычно
производный класс определяет дополнительные специфические атрибуты и (или)
ограничения.
В большинстве существующих ЭС пользователю разрешено производить новый класс
только от одного родительского. Такой подход хотя и проще в реализации, требует
дополнительных усилий во время формирования предметно-ориентированной иерархии
классов, так как в этом случае иерархия наследования должна представляться в виде дерева.
Добавление в иерархию наследования нового класса может потребовать существенных
концептуальных изменений на различных уровнях. Избежать подобных непроизводительных
затрат позволяет концепция множественного наследования, в рамках которой новый класс
может наследовать свойства у двух и более классов родителей. Однако следует отметить, что
к использованию механизмов множественного наследования следует подходить аккуратно,
так как получающаяся в этом случае сетевая схема иерархии наследования затрудняет
понимание структуры БЗ.
Предметно-ориентированная иерархия классов в ЭС представляет собой мир объектов,
в рамках которого будет проходить исполнение выполняемых утверждений прикладной
системы. Очевидно, что в зависимости от поставленной цели могут быть предложены
различные способы членения действительности и соответственно отображения ее в
иерархию классов. Поэтому первым шагом идентификации объектов является определение
основных элементов на уровне прикладной задачи и составляющих ее подзадач.
Продолжением этого процесса является выделение относительно самостоятельных объектов
материального мира и абстрактных понятий, привлекаемых при описании данной
предметной области в ходе решения данной задачи. Основным вопросом, решаемым при
99

этом разработчиком, является анализ используемой информации для объединения
разрозненных атрибутов в более крупные элементы. Каждый такой элемент является
потенциальным кандидатом на представление его в качестве класса объектов.
Множество выделенных сущностей обычно представлено списком однородных
элементов, не структурированных по принципу "общее/частное", поскольку разработчик
выделяет абстракции на основе наблюдаемых в реальном мире экземпляров объектов. Для
эффективной работы прикладной системы такого списка явно недостаточно. Однородные
классы должны быть структурированы в строгую иерархию. Основными механизмами
структурирования проблемно-ориентированной иерархии классов являются два
противоположно направленных, но взаимосвязанных процесса: обобщение и специализация
(конкретизация).
Процесс обобщения заключается в создании родительских классов для обобщения
свойств, присущих более чем одному классу объектов в приложении. Например, так как
автомобили, самолеты и лодки характеризуются скоростью передвижения, в приложении,
работающем с этими объектами, целесообразно ввести новый класс транспортных средств,
обладающий этим свойством. Самолеты, автомобили и лодки будут производными классами
от транспортного средства и унаследуют от него атрибут "скорость передвижения". Следует
избегать описания одинаковых по семантическому содержанию атрибутов и свойств в
нескольких различных местах, так как это ведет к неоправданной избыточности описаний и
потенциальной возможности ошибок рассогласования при их изменении. Кроме атрибутов,
характеризующих наблюдаемые свойства объектов, целесообразно провести обобщение и их
поведенческих аспектов. Так, в нашем примере общую формулу для вычисления скорости
передвижения следует отнести к классу транспортных средств.
Процесс специализации заключается во введении новых классов для описания
объектов, отличающихся значениями характеристик, их набором и поведением от уже
описанных. Рассмотрим далее приведенный выше пример. Если разработчику потребуется
описать новый тип лодок (например, моторные лодки), он должен определить его как
подкласс существующего класса "лодки". Новый класс наследует все свойства, взаимосвязи
и поведение своего родителя. Для его описания необходимо указать только его особенности.
Следует подробнее остановиться на введении новых классов, ничем не отличающихся
от своих родителей. Для различения моторных и весельных лодок не обязательно вводить
новые подклассы лодок. Достаточно описать в классе "лодки" атрибуты, указывающие на
наличие у экземпляра мотора или весел соответственно. Однако это приводит к тому, что во
время использования экземпляра разработчик в каждом случае обязан предусмотреть
проверку на наличие весел или мотора у лодки. Кроме того, ячейки оперативной памяти,
необходимые для хранения значений соответствующих атрибутов, должны отводиться для
каждого из используемых экземпляров, что ведет к увеличению необходимого объема
памяти. Введение двух классов моторных и весельных лодок позволяет переместить
информацию о наличии весел и мотора в иерархию наследования, что позволяет сократить
накладные расходы на проверку применимости правил и процедур к конкретному
экземпляру (специфические правила могут теперь явно ссылаться на класс, к которому они
применимы) и требования к оперативной памяти. Таким образом, правильная специализация
классов позволяет повысить эффективность работы прикладной системы.
Обобщение и специализация служат целям максимально возможного расширения
области применения общих правил, обобщение - за счет объединения общих свойств и
поведенческих аспектов сходных классов, а специализация - за счет сокрытия конкретных
деталей и особенностей в производных классах.
7.3.3 Структуризация выполняемых утверждений базы знаний приложений

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

подход является более предпочтительным. Однако во многих системах реального времени в
ответ на текущий анализируемый набор данных может возбуждаться большое количество
управляющих
последовательностей,
что
делает
целесообразным
применение
продукционных правил.
В объектно-ориентированных расширениях процедурных языков достаточно развита
концепция функций-методов для ассоциации поведенческих аспектов объектов с иерархией
классов. Методы позволяют инкапсулировать специфику исполнения общих операций над
классом в его описании, что является следующим шагом в локализации внесения изменений
при необходимости перепрограммирования или расширения системы по сравнению с
модульной схемой организации системы. Современные средства для создания ЭС в полной
мере обладают указанными возможностями и распространяют этот подход на
продукционные правила экспертной системы.
Ассоциирование продукционных правил с иерархией классов осуществляется за счет
использования общих правил, в качестве префикса которых используется ссылка на класс, к
которому данное правило применимо. Указанный префикс с точки зрения декларативного
представления знаний семантически близок к квантору всеобщности в исчислении
предикатов. В процедурной интерпретации наличие префикса, связывающего продукцию с
классом, вызывает необходимость перебора всех экземпляров указанного в префиксе класса
и его подклассов и проверки истинности антецедента для атрибутов каждого из экземпляров.
Очевидно, что применение общих правил на стадии исполнения увеличивает накладные
расходы и поэтому следует как
можно более точно описывать область действия общих утверждений за счет
дополнительных ограничивающих условий.
7.3.4 Структуризация приложения на основе иерархии "ЧАСТЬ/ЦЕЛОЕ"

Прикладная ЭС не может быть сформирована как однородная система. Модули и
рабочие пространства предоставляют разработчику различные возможности членения
приложения на подсистемы, легче поддающиеся сопровождению и модификации. Разбиение
приложения на модули упрощает процесс тестирования за счет использования групповой
работы над тестируемой системой. С другой стороны, модульность обеспечивает базовые
возможности для повторного использования фрагментов системы.
Концепция рабочих пространств вводит контейнерный класс для хранения объектов,
связей, правил и других сущностей приложения. Если приложение разбито на модули,
каждый модуль может содержать любое количество рабочих пространств. Если приложение
однородно, рабочие пространства включаются непосредственно в базу знаний.
Рабочие пространства могут отображаться на экране независимо друг от друга. Таким
образом, целесообразно использовать их для объединения в группы сходных элементов базы
знаний. Например, целесообразно объединять описания объектов в общем рабочем
пространстве. Другие рабочие пространства могут содержать технологические и
мнемонические схемы связей между экземплярами объектов. Когда схема становится
слишком сложной для восприятия, ее можно разделить между несколькими рабочими
пространствами, объединив их с помощью точек связи. Основные различия между рабочими
пространствами и модулями заключаются в следующем:
1) модули обеспечивают средства и методы для сохранения базы знаний в раздельно
хранимых файлах и использования этих файлов несколькими приложениями. Эти функции
обеспечивают поддержку процесса разработки, но не влияют на логику работы прикладной
системы;
2) рабочие пространства являются элементами базы знаний, и членение на рабочие
пространства учитывается машиной вывода в процессе работы. В качестве элементов базы
знаний рабочие пространства могут быть поименованы, и на их имена можно ссылаться в
правилах и процедурах. Назначение рабочих пространств заключается в хранении правил,
объектов, связей и других элементов и отображении их на экране;
3) рабочие пространства могут селективно активироваться и деактивироваться. Это
обеспечивает возможность подключения и игнорирования частей приложения во время
101

работы;
4) рабочие пространства могут использоваться для конфигурирования методов доступа
к находящейся в них информации.
Класс "рабочее пространство БЗ" является контейнерным классом для элементов
приложения. Экземпляр рабочего пространства обеспечивает пространство, в котором
пользователь может определять классы и объекты приложения, создавать связи между
объектами и записывать правила, определяющие их поведение. Этот класс дает
пользователю возможность делить приложение на меньшие части, которые легче понимать и
разрабатывать. Например, пользователь может разделить Процесс на подсистемы и
назначить рабочее пространство для каждой из них (пользователь может связывать
подсистемы между собой с помощью точек связи).
Рабочие пространства могут селективно активироваться и деактивироваться. Таким
образом, они обеспечивают возможность "включать" (делать видимым для механизма
вывода) и "выключать" (делать невидимым для механизма вывода) целые куски приложения.
Это дает пользователю возможность включить в приложение режимы функционирования.
Например, пользователь может разместить альтернативные правила обработки для дневного
и ночного времени в отдельных рабочих пространствах и активировать (деактивировать) их
в зависимости от выбранного режима. Точно так же пользователь может сравнить
альтернативные конфигурации обрабатывающих частей большого приложения для выбора
наилучшей. Деактивация частей приложения, не соответствующих конкретному режиму
работы, кроме того, позволяет повысить производительность, так как машина вывода ЭС не
включает в рассмотрение правила неактивных рабочих пространств.
Рабочие пространства, как и другие классы, могут быть организованы в иерархию.
Рабочее пространство может быть рабочим пространством верхнего уровня или
подчиненным рабочим пространством, ассоциированным с отдельным объектом. При этом
подпространство объекта является составной частью пространства, в котором находится
данный объект. Подпространства могут и сами содержать объекты с подпространствами.
Уровень вложенности подпространств практически может быть не ограничен. Рабочие
пространства, таким образом, образуют иерархию, в которую подпространства включены на
основе отношений "часть/целое" ("is-a-part-of"). Положение рабочего пространства в
иерархии влияет на его активацию (деактивацию). Подпространства автоматически
становятся неактивными при деактивации рабочего пространства, к которому они
принадлежат (рис 7.1).

Рис.7.1. Пример членения базы знаний на рабочие пространства
База знаний на рис. 7.1 состоит из пяти рабочих пространств -трех верхнего уровня и
двух подпространств. Каждое подпространство ассоциировано с объектом (изображенным в
виде круга) в его "родительском" рабочем пространстве. Вследствие их взаимосвязанности
деактивация рабочего пространства Б приводит к деактивации подпространств Г и Д.

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

или не может их вербализовать (содержательно выразить). В этом случае новое понятие необходимо ввести в явном виде. При представлении правил в виде. Третья ситуация имеет место тогда.примеров. поэтому необходимо начинать приобретение знаний. структурировать их и представить в виде. особое внимание следует уделять трем ситуациям: некоторое правило слишком громоздко. При разработке первого прототипа обычно оставляют в стороне вопросы. а не общие правила. Такой подход позволяет как можно раньше начать выполнение отдельных подзадач и обнаружить. генерируемых системой (что обеспечивает прозрачность и понимаемость системы разработчиком). Во многих случаях эти понятия могут явно не упоминаться (а возможно. не заботясь пока об эффективности. Создание первого прототипа должно подтвердить. первый прототип экспертной системы (ЭС-1) должен появиться через 1 . позволяющим скрыть специфику объектов в иерархии классов и ссылаться в правилах на классы. Громоздкость правила может объясняться тем. и не осознаваться) экспертом. Выполнение экспериментов с версией ЭС-2 и анализ результатов их прогонов 103 . требующие значительных трудозатрат: построение сложных моделей. явно не указанное экспертом. позволяющие работать с простейшим представлением знаний и простейшими управляющими структурами. Вторая ситуация имеет место тогда. решаемых системой. что в первом прототипе реализуется (используется) простейшая процедура вывода. решаемым задачам. понимание намерений пользователей (экспертов). причинных и модальных отношений. чтобы прототип обеспечил проверку адекватности идей. но не это является наиболее важной целью создания прототипа. Некоторые фрагменты прототипа могут войти в окончательную версию ЭС. При его разработке основная цель состоит в том. выбранных при построении данной ЭС. понятном ЭС. а не на конкретные объекты. понятном экспертной системе. что в ряде случаев для их решения необходимы дополнительные знания. то правило надо разбить на несколько более мелких. используются частные. обнаружив сходные действия эксперта при обработке различных ситуаций. сформулировать одно правило взамен группы подобных. что выбранные методы решений и способы представления пригодны для успешного решения по крайней мере ряда задач из области экспертизы. решенных системой. для того. какими знаниями он пользуется. присвоить ему специальное имя и. Процесс извлечения знаний сложен и длителен. методов и способов представления. Для достижения эффективного функционирования экспертной системы необходимо осуществить структурирование знаний. имеется много похожих правил. как только составлены (или выбраны) ИС. • средств для сбора замечаний пользователей. чтобы собрать пожелания и замечания. описывающих понятия промежуточного уровня. Наиболее важным средством для структурирования знаний является иерархия классов. Разработка прототипа является чрезвычайно важным шагом в создании ЭС. В ходе приобретения знаний инженер по знаниям должен получить знания от эксперта. учет сложных временных. которые будут учтены в очередной версии системы (ЭС-2). • средств хранения библиотеки задач. Тем самым эта наиболее трудоемкая часть работы отодвигается на поздние этапы. решаются ли все старые задачи и в новой версии. После разработки первого прототипа необходимо расширить круг задач. так как эксперт часто или не осознает. используя это понятие. Если это так.3 месяца после начала работы. чтобы получить решение задачи. Главное. Библиотека необходима для того. когда эксперт (разработчик) не использует возможности. Иными словами. Для этого осуществляется развитие ЭС-1 путем добавления: • средств для исследования базы знаний и последовательностей выводов. можно сделать вывод. когда в проблемной области существует понятие. и не имеющее имени. а возможно. предоставляемые объектно-ориентированным программированием. чтобы при каждой модификации системы можно было проверить. Задача инженера по знаниям .выделить такие понятия. содержащих неточные понятия. Итак. моделирование рассуждений. Процесс накопления знаний позволяет уточнить используемые понятия и отношения. что в нем отражено несколько фактов из данной проблемной области.

циклические и конфликтные правила. Эти две задачи должны выполняться параллельно с процессом разработки ЭС. то на адаптацию системы и коррекцию дальнейшего плана работ требуются относительно небольшие затраты.validation). потребуется разработка ЭС-3 и т. Специалисты [4] выделяют три аспекта тестирования экспертных систем: тестирование исходных данных. целесообразно проводить процесс верификации вручную. используемых при тестировании. небольшие (от 3 до 10 правил). Формальный характер этих ошибок позволяет автоматизировать процесс логического тестирования. используемых в процессе вывода. при попытке сразу разработать целостную систему обнаружение новых требований к системе в процессе разработки может поставить под сомнение возможность ее реализации. Логическое тестирование базы знаний заключается в обнаружении логических ошибок в системе продукций. когда цепочки правил.д. к которым прежде всего относятся экспертные системы. Если принят итеративный подход к разработке. характеризующееся возможностью изменения целей проектирования в процессе разработки и соответственно спецификаций прикладной системы. что наборы данных. а концептуальное тестирование . Хотя обычно тестирование рассматривают в качестве заключительной фазы процесса разработки.позволяют выявить недостатки системы и разработать средства для их устранения. Существует большое количество ИС для верификации (инспекции) наборов правил и базы знаний в целом.как этап бета-тестирования. распознаваемых ЭС. от гибкости выбранного представления и степени соответствия управляющего механизма решаемым задачам (возможно. В целом итеративная разработка заключается в подходе к реализации системы как серии удачных приближений прототипов к конечной цели. Итеративная разработка особенно эффективна при создании систем с недостаточно четко определенными спецификациями. служащей основой для проведения экспертизы. Очевидно. предъявляет особые требования к доказательству корректности (верификации -verification) и соответствия разрабатываемой системы предъявляемым требованиям (концептуальное тестирование . Однако в ряде случаев. разработчики обычно обнаруживают новые требования к системе после начала проекта. а не как к единой. логическое тестирование базы знаний. Этот итеративный процесс может продолжаться еще несколько месяцев и зависит от сложности проблемной области. концептуальное тестирование прикладной системы. пропущенные и пересекающиеся правила. для тестирования ЭС необходимо привлекать эксперта в данной предметной области. Поскольку подобные проекты обычно недостаточно проработаны с точки зрения системного анализа.). 7. операционное прототипирование. должны покрывать область возможных ситуаций. не зависящих от предметной области. таких. 104 . На этом этапе проведение тестирования невозможно без привлечения конечных пользователей прикладной системы. В то время как достаточно строгие предварительные спецификации традиционной системы позволяют программисту осуществлять эти работы (в особенности верификацию системы) самостоятельно. С другой стороны. По аналогии с технологией тестирования традиционных программных систем можно интерпретировать процесс верификации (логического тестирования) как альфа-тестирование программной системы. Концептуальное тестирование проводится для проверки общей структуры системы и учета в ней всех аспектов решаемой задачи. Тестирование исходных данных включает проверку фактографической информации. хотя тестирование ЭС принципиально отличается от тестирования традиционных систем. монолитной. как избыточные.5 Отладка и тестирование Этап отладки и тестирования ЭС включается в каждую стадию прототипирования прикладной системы. интегрированной системе. несогласуемые и терминальные клаузы (несогласуемые условия).

используемых в ходе тестирования экспертных систем. Тестирование на Тестируемые ситуации учитывают внутреннюю структуру системы основе концепции в дополнение к входным и ожидаемым выходным наборам данных "белого ящика" Тестирование потоков Анализ системы для выявления аномальных ситуаций. на которые некорректными ссылаются правила системы значениями Предложенный подход позволяет сформировать критерий для оценки метода тестирования на основе количества обнаруживаемых мутантов и затрат на их обнаружение на различных этапах жизненного цикла ЭС. Методы тестирования экспертных систем Название метода Описание А.5. приводящих правил к требуемым результатам Поиск атрибутов без Анализ системы для нахождения атрибутов. Под мутацией или мутантом понимается единичная ошибка.7. тестирование выходов сформированных для выходных наборов данных Б. возбуждающихся в сходных ситуациях и приводящих правил к сходным результатам Поиск пересекающихся Анализ системы на наличие правил. на которые не ссылок существует ссылок ни в одном правиле Поиск атрибутов с Нахождение некорректных значений атрибутов. 105 .1 Методы тестирования экспертных систем Ниже приведено краткое описание концептуальных и методических подходов. формализация. Тестирование Тестирование правил на внутреннюю целостность целостности базы знаний Поиск пропущенных Анализ системы для нахождения пропущенных правил. но не одновременно Г. и следствий тестовые ситуации формируются путем комбинации причин В. использованием и уничтожением переменных Тестирование Тестируемые ситуации генерируются для прохождения различных динамических потоков ветвей исполнения программы Тестирование причин и Причины и следствия определяются на основе анализа решений. связанных с данных описанием.сумма по этапам жизненного цикла (i = идентификация. Наиболее перспективный подход для оценки эффективности применения различных методов тестирования на разных этапах разработки ЭС строится на базе использования концепции мутаций программного продукта [5]. являющихся подмножеством правил других правил в части антецедентов или консеквентов. Тестирование на Набор тестируемых ситуаций генерируется без учета используемых основе концепции в системе методов решения задачи "черного ящика" Случайное Тестируемые ситуации выбираются случайным образом из тестирование пространства входных наборов данных Выборочное Пространство входных наборов данных разбивается на выборки. но правил приводящих к различным результатам Поиск избыточных Поиск правил. В результате можно сформировать показатель "стоимость" пропущенных соответственным методом тестирования мутаций по всем этапам разработки прикладной системы: где . выполнение). возбуждающихся в сходных ситуациях. Тестирование Тестирование правил на внутреннюю неполноту полноты базы знаний Поиск конфликтных Поиск правил. допущенная в процессе проектирования. концептуализация. для тестирование входов которых определяются ситуации для тестирования Выборочное Тестируемые ситуации определяются на основе выборок.

применяемых при проверке логической корректности базы знаний экспертной системы. 7. • поиск атрибутов без ссылок и выборочное тестирование . различные уровни абстракции и иерархию классов. Перечисленные возможности облегчают навигацию по базе знаний и делают возможным быстрый просмотр базы знаний в любом ракурсе.5. Функции инспекции работают в фоновом режиме и позволяют выполнять одновременно с ними и другие задачи. включают использование сценариев реального функционирования на базе модельных значений параметров внешней среды и на базе архивных записей. Подходы. формул и функций. запуск и остановку обработки переменных. формул и функций. • выборочное тестирование и анализ динамических потоков .на стадии формализации. модулей и рабочих пространств. создание файлов. единственным критерием оценки является опытная эксплуатация прототипа конечным пользователем. как только они изменяются. фиксирующих состояние реально функционирующего объекта 106 . атрибутов и местоположения. С помощью функций инспекции разработчик может запустить процедуру поиска и замены текстовых фрагментов в базе знаний. выполнение каждого шага обработки переменных. правил.доля мутантов. правил. в которых пользователь может остановить или продолжить процесс выполнения приложения. которые показывают текущие значения переменных и выражений. • анализ потоков данных.2 Механизм инспекции экспертной системы Одним из основных инструментов. получаемых из различного рода системных журналов. Отладочные режимы работы в современных ИС включают: • отображение предупреждающих сообщений об ошибках и состоянии приложения. . 7. • отображение сообщений трассировки. применяемые в практике разработки динамических ЭС реального времени. Проведенные по инициативе американского фонда National Science Foundation исследования позволяют сделать выводы об эффективности методов тестирования: • случайное и выборочное тестирование наиболее эффективно на этапе идентификации. выполняемых прикладной системой.на этапе концептуализации. отображение иерархий классов. принадлежности к классу. объединяющей продукционные правила. Эти функции используются для решения следующих задач: отображение сжатого представления элементов базы знаний.относительный вес стоимости пропущенной мутации на этапе i. Для этого в современных ИС предусмотрены мощные средства инспекции базы знаний и отладки. прямой переход к конкретным элементам базы знаний. • выборочное тестирование и тестирование динамических потоков . является достаточно сложной задачей. Функции инспекции базы знаний позволяют разработчику осуществлять поиск элементов на основе их типов.3 Применение архивных данных для формирования сценариев отладки и тестирования Динамических Экспертных Систем (ДЭС) В процессе концептуального тестирования и проверки соответствия разрабатываемой системы предъявляемым требованиям.. Как показывает практика.5. поиск атрибутов с некорректными значениями и тестирование на основе концепции "черный ящик" . Отладка прикладной ЭС. как указывалось выше. являются механизмы инспекции. обнаруженных методом тестирования m на этапе i.при сквозном тестировании на всех фазах жизненного цикла экспертной системы. содержащих описание элементов базы знаний.на этапе выполнения. перекомпиляция отдельных элементов. поскольку этот этап требует глубокого понимания функций. Доступ пользователей к базе знаний в это время никак не ограничивается. функции инспекции и отладочные режимы работы в значительной степени облегчают поиск ошибок в прикладной системе и сокращают время ее тестирования. • установку контрольных точек. включая другие функции инспекции. • подсветку возбужденных правил. процедуры.

управления.
Практика показывает, что на этом этапе выявляется большое количество ошибочных
реакций системы на входные наборы данных, что вызывает необходимость пересмотра
логики работы и взаимодействия правил в базе знаний. Даже опытный эксперт не в
состоянии заранее описать все возможные комбинации диагностируемых ситуаций объекта
управления и соответствующие реакции системы. Поэтому только опытная эксплуатация
прототипа конечным пользователем может служить подтверждением полноты прикладной
ДЭС.
Наиболее целесообразным подходом при формировании сценариев тестирования
системы является использование процедурной компоненты ДЭС. Первым шагом разработки
сценариев является разработка полного набора сценарных элементов - процедур,
имитирующих все идентифицированные типы диагностируемых ситуаций. Основой для
оценки полноты набора сценарных элементов является пространство диагностируемых
неполадок. При этом необходимо учесть в сценарных элементах возможность получения
зашумленных данных от объекта управления и отказ отдельных сенсоров. Сценарные
элементы должны быть спроектированы в виде унифицированных блоков, обеспечивающих
их произвольное объединение для поддержки общих целей тестирования.
После завершения разработки сценарных элементов и автономного тестирования ДЭС
при выполнении каждого из них осуществляются переход к разработке комплексных
сценариев отладки и расширение области, охватываемой пространством диагностируемых
неполадок. В цепочку сценарных элементов, формирующих сценарий тестирования,
включается элемент случайности, позволяющий генерировать непредсказуемые схемы
взаимодействия внешних факторов. Для обеспечения повторяемости результатов
тестирования целесообразно использовать также набор процедур, позволяющих
устанавливать различные исходные наборы характеристик объекта управления. Для этого
особенно полезны средства формирования диалоговых панелей, предоставляемые в
развитых ИС ЭС.
Сценарный подход к проведению концептуального тестирования позволяет управлять
процессом тестирования с точки зрения отслеживания известных причинно-следственных
связей в ходе решения задачи. Следующим обязательным этапом тестирования является
проверка функционирования системы на реальных данных от объекта управления.
Проверка функционирования системы на реальных данных от объекта управления
является необходимой частью сертификации ДЭС, доказывающей возможность ее
использования в процессе решения задач в потенциально опасных прикладных областях.
Так, в системе G2 (см.гл.9) для этих целей предусмотрена подсистема GFI (G2 File Interface),
обеспечивающая ввод архивных записей из системного журнала объекта управления,
которые включают упорядоченные по моментам времени изменения значений
характеристик, полученных от внешних источников данных. Подобный подход позволяет
проверить реакцию ДЭС на нештатные ситуации, разбор которых производился в прошлом.

7.6 Опытная эксплуатация и внедрение
На этапе опытной эксплуатации и внедрения проверяется пригодность экспертной
системы для конечного пользователя. Здесь система занимается решением всех возможных
задач при работе с различными пользователями. Целесообразно организовать работу
системы не на стенде разработчика, а на месте работы пользователей. К этому этапу следует
переходить лишь после того, как система, по мнению эксперта, будет успешно решать все
требуемые задачи, чтобы ошибки в решениях не создавали у пользователя отрицательное
представление о системе. Пригодность системы для пользователя определяется в основном
удобством работы с ней и ее полезностью. Под полезностью системы понимается
способность системы в ходе диалога определить потребность пользователя, выявить и
устранить причины неудач в работе и удовлетворить потребности пользователя (т.е. решить
поставленные задачи). Говоря другими словами, пользователю важно "довести до сознания"
системы свою информационную потребность, несмотря на возможные ошибки,
допускаемые им в связи с недостаточным знанием системы. Конечно, для пользователя
107

важны также полнота и правильность решений, но эти характеристики должны быть
проверены экспертом на предыдущем этапе.
Под удобством работы с системой понимаются, естественность взаимодействия с
системой (т.е. общение в привычном, не утомляющем пользователя виде), гибкость системы
(т.е. способность системы настраиваться на различных пользователей, а также учитывать
изменения в квалификации одного и того, же пользователя) и устойчивость системы к
ошибкам (т.е. способность системы не выходить из строя при ошибочных действиях
неопытного пользователя).
По результатам эксплуатации может потребоваться не только модификация правил и
данных (совершенствование или изменение языка общения, диалоговых средств, средств
обнаружения и исправления ошибок, настройка на пользователя и т.д.), но и изменение
устройств ввода-вывода в связи с их неприемлемостью для пользователя. По результатам
этого же этапа принимается решение о тиражировании системы. После успешного
завершения этапа опытной эксплуатации и использования ЭС различными пользователями
она может классифицироваться как промышленная ЭС.
В целом в процессе опытной эксплуатации прототипа происходит уточнение
требований к системе: разработчики и пользователи имеют возможность непосредственно
изучить и устранить последствия принятых проектных решений. Принцип построения
интерфейса WYSIWYG (What You See Is What You Get - что вы видите, то и получаете )
позволяет пользователю непосредственно оценить результаты введенных в прототип
изменений.
Особенности опытной эксплуатации и внедрения динамических экспертных
систем
Принятый в описываемой методологии подход операционного прототипирования ЭС
позволяет внедрять прикладную динамическую систему поэтапно по мере реализации
функций управления объектом. При этом, пройдя соответствующие уровни тестирования:
логическое тестирование, тестирование сценарных элементов, тестирование комплексных
сценариев и тестирование на архивных данных, прикладная система готова к завершающей
фазе разработки - подключению к реальному объекту управления и сертификации.
Сертификация прикладной ДЭС призвана доказать возможность использования
разработанной системы в условиях реального управления объектом. Выделяются следующие
фазы
сертификационного
тестирования:
тренажерное
тестирование;
пилотное
сопровождение; опытная эксплуатация.
Тренажерное тестирование может проводиться с использованием разработанных на
предыдущем этапе комплексных сценариев, но в условиях, более жестких, чем ожидаемая
практическая эксплуатация ДЭС (более частые поломки оборудования, зашумленные
данные, совместные отказы различных подсистем). Обязательным требованием к
тренажерному тестированию является функционирование ДЭС в программном окружении,
характерном для практической работы, что позволяет оценить достаточность наличных
вычислительных ресурсов.
Пилотное сопровождение заключается во включении разработанной системы в
контур управления объектом по получению данных, но без прямого выхода на эффекторы
управляемого объекта. В этом случае система получает информацию синхронно с
существующими средствами управления, но не оказывает влияние на развитие процесса.
Пилотное сопровождение в наибольшей мере позволяет оценить пригодность ДЭС для
решения практических задач.
Окончательным этапом сертификации является опытная эксплуатация системы.
Опытную эксплуатацию проводят обычно на локальном (опытном) участке, и ее результаты
служат основой для выработки рекомендаций по внедрению ДЭС в полном объеме.
Все три стадии сертификационного тестирования предполагают замену моделируемых
значений реальными данными и позволяют проводить отладку интерфейсов сопряжения
ДЭС с объектом управления в условиях реального качества каналов связи. Однако
разработанные на предыдущих этапах модели объекта управления не теряют своей
актуальности в условиях реального функционирования. Сравнение моделируемых значений
108

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

ЛИТЕРАТУРА
1. Попов Э.В. Экспертные системы. Решение неформализованных задач в диалоге
с ЭВМ. - М.: Наука, 1987.
2 Гейн К., Сарсонт Т. Структурный системный анализ: средства и методы. В 2-х ч.
Ч1/Пер. с англ. под ред. А.В. Козлинского. - М.: Эйтекс, 1993. - 188 с.
3. Modern Software Engineering. - Edited by Peter A.Ng., Raymond T.Ych-VAN
NOSTRAND - NY.: 1990.
4. Shekhar H. Kirani, Imran A. Zualkernan, Wei-Tek Tsai. Evaluation of Expert System
Testing Methods//Communications of the ACM. - 1994. - November. -V. 37. - №11.
5. Sherry A. Land, Jane T. Malm. Making Intelligent Systems Team Players. A Guide to
Developing Intelligent Monitoring Systems// NASA Technical Memorandum 104807. - 1995,
July.

Вопросы для самопроверки
1. Сформулируйте особенности каждого этапа жизненного цикла экспертных систем.
2. Перечислите базовые типы диаграмм, используемые в методологии разработки
экспертных систем.
3. Назовите главные направления структуризации при проектировании экспертных
систем.
4. Определите различия между рабочими пространствами и модулями прикладной
системы.
5 Назовите методы, применяемые для тестирования современных экспертных систем.
6. Объясните назначение механизма инспекции в современных экспертных системах.
7. Поясните, в чем заключается сертификация прикладной динамической экспертной
системы.

109

ГЛАВА 8. Инструментальный комплекс для создания
Статических Экспертных Систем (на примере
интегрированного комплекса ЭКО)
Рассмотрим особенности инструментальных средств для создания статических ЭС на
примере комплекса ЭКО [1], разработанного в Российском научно-исследовательском
институте информационных технологий и систем автоматизированного проектирования
(РосНИИ ИТ и АП). Наиболее успешно комплекс применяется для создания ЭС, решающих
задачи диагностики (технической и медицинской), эвристического оценивания (риска,
надежности и т.д.), качественного прогнозирования, а также обучения.
Комплекс ЭКО используется: для создания коммерческих и промышленных
экспертных систем на персональных ЭВМ, а также для быстрого создания прототипов
экспертных систем с целью определения применимости методов инженерии знаний в
некоторой конкретной проблемной области.
На основе комплекса ЭКО было разработано более 100 прикладных экспертных
систем. Среди них отметим следующие:
• поиск одиночных неисправностей в персональном компьютере;
• оценка состояния гидротехнического сооружения (Чарвакская ГЭС),
• подготовка деловых писем при ведении переписки с зарубежными партнерами;
• проведение Скрининговой оценки иммунологического статуса;
• оценка показаний микробиологического обследования пациента, страдающего
неспецифическими хроническими заболеваниями легких;
• психодиагностика в психосоматике, а также другие системы

8.1 Средства представления знаний и стратегии управления
8.1.1 Структура комплекса ЭКО

Комплекс ЭКО включает три компонента.
Ядром комплекса является интегрированная оболочка экспертных систем ЭКО, которая
обеспечивает быстрое создание эффективных приложений для решения задач анализа в
статических проблемных средах типа 1 и 2 (см. гл.З).
При разработке средств представления знаний оболочки преследовались две основные
цели: эффективное решение достаточно широкого и практически значимого класса задач
средствами
персональных
компьютеров;
гибкие
возможности
по
описанию
пользовательского интерфейса и проведению консультации в конкретных приложениях. При
представлении знаний в оболочке используются специализированные (частные)
утверждения типа "атрибут - значение" и Частные правила, что позволяет исключить
ресурсоемкую операцию сопоставления по образцу и добиться эффективности
разрабатываемых приложений. Выразительные возможности оболочки удалось существенно
расширить за счет интегрированности, обеспечиваемой путем вызова внешних программ
через сценарий консультации и стыковки с базами данных (ПИРС и dBase IV) и внешними
программами. В оболочке ЭКО обеспечивается слабая структуризация БЗ за счет ее
разделения на отдельные компоненты для решения отдельных подзадач в проблемной среде модели (понятию "модель" ЭКО соответствует понятие "модуль" базы знаний системы G2,
см.гл.9).
С точки зрения технологии разработки ЭС оболочка поддерживает подходы,
основанные на поверхностных знаниях и структурировании процесса решения.
Оболочка функционирует в двух режимах: в режиме приобретения знаний и в режиме
консультации (решения задач). В первом режиме разработчик ЭС средствами диалогового
редактора вводит в БЗ описание конкретного приложения в терминах языка представления
знаний оболочки. Это описание компилируется в сеть вывода с прямыми адресными
ссылками на конкретные утверждения и правила. Во втором режиме оболочка решает
конкретные задачи пользователя в диалоговом или пакетном режиме. При этом решения
выводятся от целей к данным (обратное рассуждение).
110

Оболочка работает со статическими проблемными средами (значения атрибутов не изменяются в ходе решения задачи). необходимую для ведения диало- Рис. "диагноз" и т. гл. и знания о закономерностях в проблемной среде. кроме того. В результате удается получить полное (адекватное) представление реальной проблемной среды.З).1.8.система ИЛИС. например атрибуты "возраст". Описание атрибута включает список возможных значений.д. в рамках более сложных средств представления знаний. в которых предметная 111 . возникает необходимость в использовании правил. а также некоторую лингвистическую информацию. как правило.1. З). при этом используется жесткая схема диалога с пользователем. возмещается обширным экспериментальным материалом. Система ИЛИС обеспечивает автоматическое формирование простейших конкретных правил и автономное решение задач на их основе. позволяющая создавать ЭС в статических проблемных средах за счет индуктивного обобщения данных (примеров) и предназначенная для использования в тех приложениях. Структура базы знаний оболочки изображена на рис. 8. Поскольку при создании реальных приложений эксперты представляют. и экспериментальный материал (для решения частных подзадач). К-ЭКО используется на этапе приобретения знаний вместо диалогового редактора оболочки для преобразования общих описаний в конкретные сети вывода. каждая из которых описывает отдельное конкретное приложение или его компонент. Комплекс ЭКО обеспечивает автоматический перевод таких правил в формат оболочки ЭКО.Для расширения возможностей оболочки по работе с глубинными знаниями комплекс ЭКО может быть дополнен компонентом К-ЭКО (конкретизатором знаний). который позволяет описывать закономерности в проблемных средах в терминах общих (абстрактных) объектов и правил. 8. сформированных системой ИЛИС. Таким образом.1. использование конкретизатора обеспечивает возможность работы с проблемными средами типа 2 (см. где отсутствие правил. гл. Атрибуты используются для описания состояния предметной области (см. отражающих закономерности в проблемной среде. Отдельная модель включает описание проблемной среды и знания о порядке решения задач (сценарий консультации). Описание проблемной среды состоит из описаний атрибутов и правил вывода. допускающие эффективный вывод решений средствами оболочки ЭКО. задать гибкое описание организации взаимодействия ЭС с конечным пользователем. Третий компонент комплекса .2 Средства представления знаний в оболочке ЭКО База знаний (БЗ) представляет собой совокупность нескольких моделей. Структура базы знаний оболочки ЭКО га с конечным пользователем.

5.область может быть описана с помощью априорно заданного набора атрибутов.от 1.00. нет = -5" связывает со словом "да" все значения коэффициента от 3.атрибут. то 0. Решение задачи сводится к получению значений некоторых целевых атрибутов (например. причем D(H) тем больше. называются утверждениями о состоянии предметной области. если Н скорее истинно. что Н истинно. что Н ложно.нечеткие логические выражения. вычисляемые в момент обращения к правилу. чем истинно. Коэффициенту определенности D(H) утверждения Н можно дать следующую содержательную интерпретацию: если точно известно.это действительные числа. Значение символьного атрибута задается распределением коэффициента определенности по всем возможным его значениям.25 до 3. одним из возможных значений которого является "острый бронхит".00 до 5. который характеризует степень уверенности в его истинности. Например.00. если в ней определен атрибут "диагноз". где А . правила могут описывать ввод исходных данных . Кроме того. "возможно" .одно из его возможных значений. маловероятно = -2. средний = 40. если точно известно. чем больше уверенность в ложности Н. то D(H) = 5. то D(H) = -5. • арифметическое правило. приписываемых символьным атрибутам или утверждениям.00 < D(H) < 0. Шкалы можно вводить и для числовых атрибутов. представляющие собой множество утверждений. Значения символьных атрибутов задаются разработчиком ЭС при создании системы. "диагноз" или "оценка риска") и (или) определению истинности некоторых целевых утверждений. пожилой = 60". то -5. да или нет = 0. при этом система формирует соответствующее множество утверждений.5. Правило вывода указывает. чем больше уверенность в истинности Н. Определены следующие типы простых правил: • простой вопрос. называются сложными целями. Не допускается динамическое создание атрибутов во время решения задачи. Коэффициенты определенности утверждений . указываемых разработчиком ЭС.00. называемых подцелями правила. Оболочка позволяет работать с неточно и нечетко определенными знаниями о качественных характеристиках предметной области. представляющий качественную характеристику. 112 .00. если выполнено условие его применимости (вычисленный коэффициент определенности условия больше нуля). возможно = 2.00 < D(H) < 5. Вывод в условиях неопределенности может быть описан с помощью правил б типов. Правила могут иметь условия применимости .д. Значения целей определяются с помощью правил вывода. Правило применяется только в том случае. высказывание "диагноз . Средства комплекса позволяют представлять качественные (символьные) и количественные (числовые) характеристики предметной области. подросток = 14. а В . молодой = 18. а символьные атрибуты. если Н скорее ложно. каким образом можно получить значение цели по значениям других атрибутов и утверждений. Вывод решений заключается в нахождении коэффициентов определенности некоторых целевых утверждений. Например.00. Высказывания типа "А есть В".острый бронхит" является утверждением в предметной области.75 до 5.00. которые рассматриваются ниже. Для построения вывода в условиях неопределенности используются нечеткая логика и байесовский подход. причем D(H) тем меньше. например для возраста: "ребенок = 10. допускается применение произвольных эвристических подходов. Шкалы применяются при формировании текстов вопросов и сообщений конечному пользователю. кроме того. если Н может быть с одинаковой уверенностью истинно или ложно. Числовые значения коэффициентов определенности могут связываться со словесными описаниями с помощью лингвистических шкал. Утверждения и числовые атрибуты модели называются целями. то D(H) = 0. чем ложно. В зависимости от типа цели (простая или сложная) правила делятся на простые и сложные. С каждым утверждением о состоянии предметной области связывается коэффициент определенности. принимающие значения от -5.75 и т. шкала "да = 5.обращение с вопросами к конечному пользователю или к внешним программам. предлагаемых экспертами.

Правила-вопросы позволяют запрашивать данные о конкретной ситуации в предметной области . • закончить консультацию с сообщением (СТОП). когда известно. Сложные правила преобразуются в результате компиляции в совокупности простых.исходные данные консультации. Для определения значения одной цели разработчик экспертной системы может задавать несколько правил. утверждений и правил строится сеть вывода. Логические правила предназначены для вычисления коэффициентов определенности утверждений по формулам нечеткой логики. когда символьный атрибут может иметь одновременно несколько значений или ни одного. имеющих разную значимость. • принять информацию от внешней программы. а также для получения коэффициентов определенности утверждений по эвристическим формулам. К сложным правилам относятся: • альтернативный вопрос: • дистрибутивный вопрос. образующих в модели упорядоченный список правил вывода данной цели. Порядок правил в списке отражает порядок их рассмотрения во время решения задачи. В процессе построения сети из числовых атрибутов. числовым атрибутам и утверждениям). Возможны два способа ввода этих данных: вопрос к пользователю или обмен информацией с внешними программами. 113 . • выдать сообщение внешней программе.• логическое правило. то в сети имеется дуга. Дуги представляют связи между простыми целями и простыми правилами: если простая цель G выводится с помощью правила R. • перейти к выполнению другого предложения. Рассмотрим построение сети вывода на основе содержащихся в модели описаний правил и атрибутов. которая соединяет вершины. соответствующие G и R. Арифметические правила предназначены для вычисления значений числовых атрибутов. • создать контрольную точку консультации. каждое из которых может иметь условие применимости. при этом значение логического выражения в условии правила присваивается коэффициенту определенности целевого утверждения правила. Простой вопрос позволяет получать либо значение числового атрибута. что символьный атрибут имеет точно одно значение из множества возможных значений. • байесовское правило. Дистрибутивный вопрос используется в тех случаях. об истинности которых можно судить по выполнению ряда факторов (симптомов). Сеть вывода образует граф с вершинами двух типов: вершины первого типа соответствуют простым целям (т. • загрузить контрольную точку. • обратиться к подмодели. Альтернативный вопрос используется в тех случаях. передать ей параметры и получить выведенные в подмодели результаты. • передать информацию о результатах решения внешней программе. Байесовские правила применяются для вычисления коэффициентов определенности тех утверждений. Сложный вопрос позволяет получить распределение коэффициентов определенности по всем возможным значениям символьного атрибута. обусловленные правилами вывода. • выдать сообщение пользователю.е. В рамках каждого предложения возможно выполнение одного из следующих действий: • вывести значение цели. а вершины второго типа . • сбросить выведенные результаты (СБРОС). предложенным экспертами. решающей некоторую частную подзадачу. либо коэффициент определенности отдельного утверждения. в явном виде включающая все связи между атрибутами и утверждениями. и направлена от G к R.простым правилам. Сценарий консультации описывает порядок проведения консультации и представляет собой последовательность предложений.

1. В противном случае (риск не является высоким или травматичность вмешательства низкая) нет показаний к проведению общего обезболивания в условиях стационара. соответствующих сложным правилам. анализ условия приостанавливается. В оболочке ЭКО используется стратегия обратного рассуждения от целей к данным в глубину: при рассмотрении некоторой цели делается попытка найти в сети вывода путь от вершин. соответствующей выбранной цели. Сеть вывода строится следующим образом.2. При вводе сложного правила из него создается несколько простых правил. При вводе новой простой цели (нового числового атрибута или нового значения символьного атрибута) в сеть вывода вводится вершина. правила вывода значения простой цели. то рекомендуется проведение общего обезболивания в стационаре. в сеть добавляются вершина. Пример сети вывода ционар для проведения хирургического вмешательства под общим обезболиванием. и требуемое значение выводится из сети вывода.д. Особенность таких простых правил состоит в том. если пациент страдает тяжелой формой бронхиальной астмы или ранее перенес анафилактический шок. 114 . соответствующих дугам этого пути.выводящих значения всех утверждений о целевых символьных атрибутах. представляющих исходные данные консультации. высокий.. к вершине. Путь считается найденным. Пример сети вывода и соответствующих ей правил из области анестезиологии приведен на рис. предназначенных для вывода значений утверждений о сложной цели вводимого правила.е. Риск считается высоким. соответствующая этому правилу. При вводе простого правила. и дуги. что применение одного из них влечет за собой применение остальных. обусловленный общим состоянием пациента. 8. После обработки первого предложения сценария осуществляется переход к следующему предложению и т.8. проверяется условие его применимости и.3 Стратегии управления в оболочке ЭКО В начале решения задачи выбирается первое предложение сценария.2. если выполнены условия применимости всех правил. Если травматичность предполагаемого вмешательства высокая и риск. В правилах представлены рекомендации относительно целесообразности направления пациента в ста- П1: ЕСЛИ [Травматичность_высокая] & [Риск_высокий] ТО ОС П2: ЕСЛИ [Травматичность_высокая] V~ [Риск_высокий] ТО~ОС ПЗ: ЕСЛИ ТБ V АШ ТО [Риск_высокий] Рис. соответствующая этой цели. 8. Простые правила добавляются описанным ранее образом в сеть вывода. между правилом и его подцелями. представляющие связи между простой целью и правилом. Если в ходе проверки условия возникает потребность в значении некоторой цели. выполняется указанное в нем действие. пока не будет обнаружено действие СТОП или пока не будет исчерпан сценарий. т. если условие выполнено.

а также задаются вопросы. • создание и загрузка контрольных точек. отмена всех значений. В том случае. в том числе объяснений. при этом предоставляются следующие возможности: • решение конкретной задачи на основе выбранной модели с формированием объяснений. • получение трассы решения задачи. и изменение значений любых целей. Имеется возможность пакетного ввода описания модели из текстового файла. • генерацию текстовых и гипертекстовых отчетов по БЗ модели . как по команде пользователя или с помощью предложения сценария СБРОС. Помимо БЗ разработчик ЭС может сформировать контекстно-зависимую помощь к приложению в виде иллюстрированного гипертекста (электронного справочника по проблемной области и приложению). • сброс значений всех целей либо значений всех выведенных целей (т. • запись протокола консультации в файл. описанные в применяемых правилах-вопросах. ЗАЧЕМ в ходе консультации задается тот или иной вопрос (для вывода каких целей требуются запрашиваемые данные). • просмотр информации о правилах в моделях. предоставляющего: • навигацию по базе знаний. Если условие выполнилось. Исходные цели консультации задаются в сценарии: это все цели.2 Приобретение знаний и решение задач средствами оболочки ЭКО Ввод знаний в БЗ оболочки осуществляется средствами диалогового редактора. который описывает выбранное понятие. которые упоминаются в его предложениях. правило применяется. Решение задачи осуществляется в ходе диалога экспертной системы с пользователем.е. • синтаксический и семантический контроль вводимой информации. Решение задач осуществляется в режиме консультации. когда их значения понадобятся для применения каких-либо правил. 8. то он имеет возможность просмотреть информацию в соответствующем атрибуту разделе по команде ДАТЬ_КОНТЕКСТНО_ЗАВИСИМУЮ_ПОМОЩЬ. как это делается для предложений сценария). каждый из которых содержит текстовую или графическую помощь к некоторому понятию проблемной области. На экран выдаются сообщения в соответствии со сценарием консультации. • просмотр информации об описанных в модели целях. пользователь может выбирать тот или иной выделенный фрагмент. Если ни одно из правил не удалось применить. когда оказалось сразу несколько применимых правил. то в качестве значения этого атрибута принимается значение по умолчанию (в том случае. Остальные цели выводятся тогда. • тестирование и компиляцию моделей. при этом соответствующие фрагменты текста выделяются другим цветом. КАК получены значения этих целей (исходя из каких данных и с помощью каких правил). При задании вопроса пользователю 115 . Внутри каждого раздела реализованы прямые ссылки на упоминаемые в нем понятия. Если в ходе консультации пользователю будет задан вопрос о значении какого-либо атрибута. используется первое применимое правило. Просматривая раздел. • шаблоны ввода всех конструкций языка представления знаний ЭКО. и на экран будет выведен тот раздел. иначе цель помечается как невыводимая.Вывод значения простой цели проводится следующим образом. а цель . Из этого раздела пользователь может перейти к новому интересующему его разделу или вернуться к исходному. Создаваемый гипертекст представляет собой совокупность разделов. не являющихся исходными данными). если оно указано разработчиком в описании атрибута). описываемому атрибутом. Значения целей вычисляются один раз и не могут быть изменены иначе. Из списка правил вывода данной цели выбирается первое правило и делается попытка его применить (при этом проверяется условие его применимости.числовой атрибут. а также к приложению в целом.

Тогда будут применяться другие правила вывода искомого значения. 8. В дальнейшем пользователь может загрузить контрольную точку из данного файла и продолжить консультацию. При этом на экране появляется дополнительное окно для трассы. либо завершить ее. просматривать правила. включать (выключать) трассировку и т. В этом случае консультация будет прервана и пользователю будет сообщено. показывающая порядок действий пользователя при вводе знаний и в ходе решения задач. В момент создания точки информация о состоянии всех моделей.текстовой или графической. При выдаче на экран информации о целях система сообщает текущее значение каждой цели и источник этого значения (т. С помощью команды ПРОСМОТР пользователь может просмотреть все цели.выдается краткое поясняющее сообщение о виде ожидаемого ответа. многократный ввод команды ЗАЧЕМ позволяет просматривать цели и правила на пути в сети вывода от исходной цели к текущей. По окончании этой работы он имеет возможность либо вернуться к прерванной консультации. имя которого запрашивается у пользователя. вывести не удалось) и каждого правила (не применялось.3 Ввод общих знаний средствами системы К-ЭКО Существенным расширением возможностей оболочки ЭКО являются средства 116 . Для обучения работе с оболочкой ЭКО используется графическая программадемонстратор. активно применялось. выведенных значений. Если пользователь снова введет команду ЗАЧЕМ. правила и предложения сценария. Выбрав любую вершину сети. если такие правила есть в модели. определенные в модели. то он получит информацию о том.д. запоминается во внешнем файле.е. предложения сценария). Вопросы и сообщения могут выдаваться на экран как в текстовой.утверждения. атрибуты. он может ответить НЕ ЗНАЮ. выводится в настоящий момент. Вместо ответа на вопрос пользователь может ввести команду ЗАЧЕМ. Если пользователь хочет повторить консультацию с другими исходными данными. в виде текста с прямыми адресными ссылками на все упоминаемые элементы БЗ . Во втором случае система обеспечивает работу со средствами визуализации БЗ: на экране появляется изображение сети вывода (или соответствующего фрагмента). анализируемых целях и рассматриваемых правилах. о которой задается вопрос. КАК был получен результат). позволяющей ему ответить на вопрос. В ходе консультации пользователю предоставляется гипертекстовая помощь к системе ЭКО. так и в графической форме. в которое помещаются сообщения о выполняемых действиях сценария. загруженных к моменту выдачи команды СОЗДАТЬ_ТОЧКУ. выведена. Таким образом. если": для этого ему достаточно откорректировать введенные ранее ответы на некоторые вопросы системы (указать. которые не были получены в ответ на вопрос к пользователю. чем гипотетическая ситуация отличается от только что рассмотренной) и повторить консультацию. не удалось применить).д. Для отладки моделей пользователь может создавать контрольные точки. правила. пользователь выходит в описание соответствующего элемента БЗ в гипертекстовом представлении (т. к • той. т. Решение задач может (по желанию пользователя) проводиться с трассировкой консультации . В первом случае система комментирует шаги. для вывода какой цели задается вопрос. а также к конкретному приложению (если таковая была создана разработчиком приложения). подцелью какого правила является эта цель. на котором с помощью цветов указано состояние каждой цели (не рассматривалась. выполняемые в ходе консультации.е. т.). Пользователь имеет возможность вместо ответа на вопрос прерывать консультацию и переходить к работе с моделью с помощью команд (просматривать и изменять значения целей. В последнем случае пользователь может использовать систему для проверки гипотезы "Что. и т. Более подробное сообщение можно получить по команде ПОМОЩЬ. Программа обеспечивает сброс либо всех значений. Если пользователь не имеет информации. он может сбросить все значения по команде СБРОС. либо только тех.е.е.

• множеством имен множеств с описанием их типа и значения.е. в общем описании которого есть вложенные объекты. организованных в виде дерева решений. Допускается присваивание значения атрибута внутри описания класса. что и в оболочке ЭКО. 8. Примеры вводятся в таблицу. При описании типа значения атрибута возможны следующие варианты: • множество символов (утверждений). в котором они описаны.это утверждения в терминах оболочки ЭКО. Подобная таблица называется базой опыта. и наличие этих переменных в условии применения. • множеством имен атрибутов (слотов) с описанием их типа и значения. • число целого или вещественного типа. если для этого имеются соответствующие факты. сходных с таблицами СУБД реляционного типа (атрибут. каждому из которых соответствует один из общих объектов. Каждый класс описывается следующим набором: • множеством вложенных конкретных объектов. Особенностью общего правила являются список описаний переменных атрибутов (имена и типы). Конкретные знания представляются с помощью экземпляров объектов (в дальнейшем . столбцам которой соответствуют атрибуты проблемной области. БЗ содержит описание предметной области в терминах классов. Модель в системе К-ЭКО включает базу знаний и базу фактов. Входное множество примеров отражает опыт эксперта и соответствует множеству разумных решений некоторой задачи в проблемной области (например. вложенные объекты размножаются. Вложенные объекты "видны" только лишь внутри того объекта. В базе знаний представлены общие знания. • множеством общих правил. Система обеспечивает диалоговый ввод и тестирование общих и конкретных знаний с последующей их компиляцией в формат БЗ оболочки ЭКО (без сценариев). В ходе компиляции общих знаний система К-ЭКО осуществляет частичный вывод решения.конкретные. Один из столбцов описывается как целевой (например. кортеж. Знания о значениях атрибутов объектов . При создании конкретного объекта. значение) В ходе индуктивного вывода они анализируются и обобщаются для построения правил проблемной области. являющийся прототипом для его создания. объединяющую атрибуты (характеристики) некоторой сущности. что и конкретные объекты в базе фактов. используемых в правиле. основанный на CLS-подходе [2. Общие знания о сущностях реального мира представляются с помощью структур данных. называемых в системе классами объектов (аналоги фреймов). "диагноз"). База фактов содержит список конкретных объектов.3]. Примеры представляются в виде обычных таблиц показателей. диагностики по симптомам).4 Формирование баз знаний на основе обучающей выборки средствами системы ИЛИС Система ИЛИС ориентирована на решение задач эвристической классификации в проблемных средах типа 1 на основе индуктивного вывода по примерам обучающей выборки. множество (объединение сущностей) и методы их определения (т. • множество дистрибутивных утверждений. Вложенные конкретные объекты имеют тот же синтаксис. при этом используется метод машинного обучения.просто объектов) и называются фактами. при этом система проверяет примеры на корректность и непротиворечивость. К-ЭКО позволяет использовать оболочку ЭКО для решения задач в проблемных средах типа 2. Общие правила имеют те же типы. Представление знаний основано на фреймовой модели. После ввода имеющихся примеров (или расширения существующей базы опытов) 117 . • множество альтернативных утверждений или ссылок. предоставляемые системой К-ЭКО. правила вывода). Ввод осуществляется в диалоговом режиме.конкретизации знаний. Класс представляет собой структуру. а в базе фактов .

Case-based reasoning//Software Strategies Journal. При этом в обоих режимах гарантируется. которое представляет собой сеть вывода для консультации. корректность которых вызывает сомнения. Охарактеризуйте стратегии управления. включив в базу опыта примеры. -1991. В ходе тестирования в режиме просмотра БЗ эксперт должен проанализировать правильность созданных системой правил БЗ и составить контрпримеры для правил. Вопросы для самопроверки 1.е.С.№ 1. Попов Э. ЛИТЕРАТУРА 1. . 5. Подобный перевод необходим в тех случаях.В. Модели системы ИЛИС могут быть автоматически переведены в формат оболочки ЭКО. 3. 118 . а затем повторить процесс обучения системы. Кроме того. причем разным примерам. БЗ может строиться как в автоматическом.. Знания формируются в виде дерева решений.значениями целевого атрибута. Дерево решений в системе ИЛИС . выбор атрибута классификации по критерию энтропии или в соответствии с предпочтениями эксперта и т.строится (модифицируется) БЗ. Для проверки адекватности модели необходимо провести ее тестирование в режиме консультации средствами системы ИЛИС или в режиме просмотра базы знаний. листьевые вершины . т. Объясните механизм формирования баз знаний на основе обучающей выборки в системе ИЛИС. пока не достигается приемлемая достоверность консультации (базы знаний). принадлежащим к различным классам. внутренние вершины которого помечаются именами нецелевых атрибутов. которые предоставляет оболочка ЭКО. 2. С помощью разнообразных опций система ИЛИС обеспечивает различные стратегии обучения. Т. Затем необходимо ввести эти контрпримеры в базу опыта и заново обучиться. В ходе построения дерева система может давать диагностику о неполноте генерируемой модели. предложенных экспертом. Процесс тестирования повторяется циклично до тех пор. он должен продолжить процесс накопления опыта. которым соответствует путь от корня дерева к листу.№ 3. дуги -именами значений этих атрибутов. .C. Кирсанов B. Инструментальный комплекс для построения на ПЭВМ эффективных экспертных систем в широком классе приложений//Материалы Второй всесоюзной конференции по искусственному интеллекту. 1990. 12 -14. происходит процесс обучения. что получаемые знания не будут противоречить обучающей выборке. 3. это позволяет воспользоваться широкими и гибкими возможностями по описанию пользовательского интерфейса. -1992. Любому примеру из обучающей выборки соответствует правило. когда получаемые модели являются составными частями более сложных прикладных ЭС. Назовите состав структуры базы знаний оболочки ЭКО. 4. 6. . . не может соответствовать одно правило. Объясните механизм решения задач в ЭКО. В ходе тестирования в режиме консультации экспертная система должна правильно решить достаточное количество контрольных задач. Множество значений атрибутов. Приведите пример сети вывода в оболочке ЭКО. 2. Если эксперт не удовлетворен удельным весом правильных решений в контрольном наборе задач.это помеченный связанный граф без циклов. 3. Опишите средства ввода общих знаний в комплексе ЭКО. например наращивание дерева решений в глубину или в ширину. так и в ручном режиме.Минск. создаваемых на базе комплекса ЭКО. назовем правилом. которые были решены неправильно. применяемые в оболочке ЭКО. Case-based reasoning//Software Strategies Journal.д.

что сегодня ей принадлежат 50% мирового рынка экспертных систем. используемых в системах управления [11]. В главе 4 был приведен достаточно полный перечень этих фирм и объявленных ими продуктов. остается G2 (Gensym. выпустила систему Picon для символьных ЭВМ Symbolics. разрозненные средства 119 .0. следующие места со значительным отставанием (реализовано менее 50% возможностей G2) занимают RTWorks . • высокая производительность. С точки зрения независимых экспертов NASA [10]. Инструментальные средства фирмы Gensym являются эволюционным шагом в развитии традиционных экспертных систем от статических предметных областей к динамическим [3].помочь предприятиям сохранять и использовать знания и опыт их наиболее талантливых и квалифицированных сотрудников в интеллектуальных системах реального времени. надежность и безопасность производства и снижающих производственные издержки. • системы проектирования. вышла на рынок с ИС под названием G2. • системы управления верхнего уровня. G2 для российских пользователей является возможность применять ее как интегрирующий компонент. проводивших комплексное исследование характеристик и возможностей некоторых из перечисленных систем.2 и готовится к выпуску версия 5. • совместимость снизу-вверх с предыдущими версиями. когда фирма Lisp Machine Inc. образовала частную фирму Gensym. которых она придерживается в своих новых разработках: • проблемно/предметная ориентация. безусловно. В настоящее время функционирует версия 4. как фирме Gensym удается справиться с этой задачей. США) Как отмечалось в главе 4. Основным достоинством оболочки экспертных систем. ILOG Rules (ILOG . в 1988 г. Основное предназначение программных продуктов фирмы Gensym (США) [4] . • планирование.ГЛАВА 9.Франция). которая. О том.3 года другие фирмы начали создавать свои ИС для ЭС РВ. в настоящее время наиболее продвинутым ИС. история развития ИС для создания ЭС реального времени началась в 1985 г.Канада). • следование стандартам. COGSYS (SC . С отставанием от Gensym на 2 . значительно развив идеи. Успех этого ИС привел к тому. • системы обнаружения неисправностей.. для которых предназначена G2 и подобные ей системы: • мониторинг в реальном масштабе времени.советчики оператора. • комфортная среда разработки. . повышающих качество продукции.США). Немалую долю успеха фирме Gensym обеспечивают основные принципы. • обеспечение технологической основы для прикладных систем. • независимость от вычислительной платформы. • системы . заложенные в Picon. не зависимые от решаемой задачи. Классы задач. версия 1. • поиск новых путей развития технологии. США). Инструментальный комплекс для создания экспертных систем реального времени (на примере интегрированной среды G2-GENSYM CORP. что группа ведущих разработчиков Picon в 1986 г.. • универсальные возможности. • оптимизация.фирма Talarian (США). говорит хотя бы то. • распределенная архитектура клиент-сервер. • диагностика. • составление расписаний. позволяющий за счет открытости интерфейсов и поддержки широкого спектра вычислительных платформ легко объединить уже существующие.0. COMDALE/C (Comdaie Techn.

на начало 1996 г. на которых функционирует G2 Фирма-производитель Вычислительная система Операционная среда Digital Equipment VAX Зххх. Приложение 2). Перенос приложения не требует его перекомпиляции и заключается в простом переписывании файлов. BatchDesign_Kit. На базе G2 написано более 500 действующих приложений (некоторые из них были приведены в п.от формирования портфеля заказов до управления технологическим процессом и отгрузки готовой продукции. Windows NT SUN Microsystems SUN-4 SunOS SPARC 1. Solaris 2. Кроме системы G2. Windows-95 Motorola Motorola 88000 UNIX NEC EWS 4800 EWS-UX/V ASCII-файле. что первая версия системы G2 появилась не так давно . 8xx HP-UX IBM RISC 6000 AIX Data General AViiON DG/UX Silicon Graphics IRIS. G2 функционирует на большинстве существующих платформ (табл. INDIGO IRIX ПЭВМ Intel 486/Pentium Windows NT. 7xx. подсистема моделирования и планировщик. в мире было установлено более 5000 ее копий. как базового средства разработки.9. BatchDesign_Kit. охватывающую все аспекты производственной деятельности . Фирма Gensym обслуживает более 30 отраслей . 10. включающих параметризуемые операторные блоки для представления элементов технологического процесса и типовых задач обработки информации. Statistical Process Control (SPC). • управление операциями и корпоративными сетями . под влиянием резких колебаний в экономике. 8xxx. 7xxx. машина вывода. 6ххх. фирма Gensym предлагает комплекс проблемно/предметно-ориентированных расширений для быстрой реализации сложных динамических систем на основе специализированных графических языков. Ниже будут рассмотрены основные компоненты G2: база знаний. Несмотря на то.G2 [8].1 Платформы. Список пользователей G2 выглядит как справочник WhoIs-Who в мировой промышленности.G2. Classic SunOS/Solaris 1. Набор инструментальных сред фирмы Gensym.от аэрокосмических исследований до производства пищевых продуктов.2). 120 .это объектно-ориентированная интегрированная среда для разработки и сопровождения приложений реального времени. G2 Scheduling Toolkit (GST). охватывает все стадии производственного процесса и выглядит следующим образом: • интеллектуальное управление производством .G2. 9xxx VMS DECstation Зххх. Чем же объясняется успех инструментального комплекса G2? Прежде всего G2 динамическая система в полном смысле этого слова.. Fault Expert.2.в 1988 г. NeurOn-Line (NOL) [9]. G2 Diagnostic Assistant (GDA) [7]. ReThink (см. который однозначно интерпретируется на любой из поддерживаемых платформ. использующих базы знаний.G2. парк технических и программных средств которых формировался по большей части бессистемно. LX. 4. OSF/1. ее даже в богатой Америке никто не назовет дешевой. 4ххх. сгруппированный по проблемной ориентации. Функциональные возможности и внешний вид приложения не претерпевают при этом никаких изменений. 5ххх ULTRIX DEC Alpha APX Open VMS. 25 самых крупных индустриальных мировых корпораций используют G2. База знаний G2 сохраняется в обычном Таблица 9.1). G2 . • разработка и моделирование производственных процессов . Dynamic Scheduling Packadge (DSP). Это особенно важно для отечественных предприятий. • оперативное планирование . G2 можно назвать бестселлером на рынке программных продуктов .автоматизации в единую комплексную систему управления.x Hewlett Packard HP9000/4xx.

ниже). числовые.п. новый класс саморегулирующихся насосов от классов контроллеров и насосов.1. 3) является естественным для человека способом описания сущностей. специфичных для класса (part-of-иерархия). a файлы БиЗ . 2) позволяет использовать общие правила. 9. В системе достаточно изящно решена проблема конфликтов между именами атрибутов. именуемого item-or-value (сущность или значение). имеющих определенные атрибуты. В ООТ структуры данных представляются в виде классов объектов ( определений объектов). что хранится в БЗ и чем оперирует система. Сущность (item) является корнем разветвленной иерархии классов.1 База знаний Все знания в G2 хранятся в двух типах файлов: базы знаний (БЗ) и библиотеки знаний (БиЗ). Все синтаксические конструкции G2 тоже являются классами. Каждый класс (исключая корневой) может иметь конкретные экземпляры класса. так как определяется не весь класс. Класс item-or-value сам по себе не может иметь экземпляров. объекты. 9. формулы. начиная с наиболее "видимых". Оно структурируется с помощью модулей и рабочих пространств на легко управляемые куски. Класс в G2 является основой представления знаний. В файлах БиЗ хранятся общие знания. 9.kl (knowledge libraries). В четвертой версии G2 введен механизм множественного наследования.9. Описание класса (тоже экземпляр специального класса) включает ссылку на суперкласс (is-a-иерархия) и перечень атрибутов. например. Знания в G2 структурируются следующими способами: иерархия классов.value (хотя концептуально ветвь value представляется классом.символьные.2 Иерархия модулей и рабочих пространств G2-приложение не представляет собой единый блок. а только его отличия от суперкласса. Концептуально иерархия классов G2 берет свое начало от корневого класса. Они перечислены ниже (см. правила. использование ООТ является на текущем уровне развития ИИ и вообще программирования главной тенденцией.1. иерархия модулей. является экземпляром того или иного класса. Как уже указывалось ранее (см.1 Сущности и иерархия классов Класс является основой представления знаний в G2. Теперь в системе достаточно легко произвести. гл. Все. п. иерархия рабочих пространств. что уменьшает их количество. Файлы БЗ имеют расширение kb (knowledge base). Каждая из указанных иерархий может быть показана на дисплее. Классы наследуют атрибуты от суперклассов и передают свои атрибуты подклассам. позволяющее объединять ранее созданные kb и kl-файлы с текущим приложением. Item-or-value имеет два производных класса . Понятие "класс в G2" базируется на объектно-ориентированной технологии (ООТ). которые могут быть использованы более чем в одном приложении. в порядке их "видимости" для пользователя. что функции 121 . булевские и истинностные значения нечеткой логики представлены соответствующими классами. Использование ООТ обеспечивает следующие преимущества: 1) уменьшает избыточность и упрощает определение классов.1. Наиболее важные ветви этой иерархии могут быть сгруппированы в небольшое число категорий. процедуры и т. в действительности это типы данных G2) и item. используя возможность "Inspect" (см. В целях обеспечения повторной используемости приложений в G2 реализовано средство. Однако так как он является корнем всей иерархии классов. Файлы БЗ могут путем замены расширения преобразоваться в БиЗ и обратно. Каждый из этих классов имеет свои производные классы. При этом G2 автоматически выявляет и выводит на дисплей конфликты в объединяемых знаниях.3).5). Несмотря на то. процедуры. он определяет основное поведение всех классов G2. В файлах БЗ хранятся знания о приложениях: определения всех объектов. например определение стандартных объектов. Для сохранения общности даже базовые типы данных .

которое затем при необходимости разделяется на отдельные модули. 1. Разрабатывается одномодульное приложение. формулы. переменные. Структурирование приложения на модули обеспечивает следующие преимущества: • позволяет разрабатывать приложение одновременно нескольким группам разработчиков. массивы. Каждый модуль (база знаний) может содержать любое количество рабочих пространств. Примерами вторых .модулей и рабочих пространств похожи.п. сущности. и т. С каждым модулем (базой знаний) ассоциируется одно или несколько рабочих пространств верхнего (нулевого) уровня. что приложение модуляризировано (структурировано на модули). рабочие пространства и т. становятся невидимыми для механизма вывода). с каждым объектом (определением объекта или связи). Кроме того. которые легче понять и обрабатывать. В свою очередь. Некоторые из этих модулей разрабатываются впервые. 9. • позволяет изменять модули независимо друг от друга. Механизм активации (деактивации) рабочих пространств используется. а другие могут выбираться из библиотеки знаний. функции и т.п. отмеченные ниже. например объекты. отношения (relation). находящиеся в этом пространстве и в его подпространствах. Примерами первых являются объекты и их классы. может быть ассоциировано рабочее пространство первого уровня. В последнем случае говорят. в котором размещаются другие классы и их экземпляры. параметры. процедуры и т. Существуют 2 способа создать G2-приложения. Модули приложения организованы в древовидную иерархию с одним модулем верхнего уровня. отладку и тестирование. Приложение изначально создается как состоящее из нескольких модулей. Эти модули называют "непосредственно требуемые модули".д. правила. рабочие пространства используются для задания пользовательских ограничений. совместно используемые в различных приложениях. Динамические модули (аналог библиотек динамического связывания) могут подгружаться и вытесняться из оперативной памяти во время исполнения программно и одновременно использоваться несколькими приложениями. Модули разделяют приложение на отдельные базы знаний.д. Рабочие пространства выполняют свою роль при исполнении приложения. при наличии альтернативных групп правил. Рабочие пространства являются контейнерным классом. называемых модулями. связи (connection). без которых не может работать модуль предыдущего уровня.1. Различие между модулями и рабочими пространствами состоит в следующем.3 Структуры данных БЗ Глобально сущности в БЗ G2 с точки зрения их использования могут быть разделены на структуры данных и исполняемые утверждения. например. расположенным в нулевом уровне. списки. определяющих поведение приложения для различных категорий пользователей. 122 . связанное с ним отношением "является частью". Рабочие пространства образуют одну или несколько древовидных иерархий с отношением is-a-part-of (является частью). когда активной должна быть только одна из альтернативных групп. весь процесс разбивается на подпроцессы. Модули следующего уровня состоят из тех модулей. Например.правила. • упрощает повторное использование знаний. связи.е. Они содержат в себе (и в своих подпространствах) различные сущности и обеспечивают разбиение приложения на небольшие части. Приложение в G2 может быть организовано в виде одной БЗ или в виде нескольких БЗ. каждое из этих рабочих пространств является корнем соответствующей древовидной иерархии. Рабочие пространства могут устанавливаться (вручную или действием в правилепроцедуре) в активное или неактивное состояние (т. и с каждым подпроцессом ассоциируется свое подпространство. между ними есть существенные различия. 2. • упрощает разработку. процедуры.

Эти классы порождены от класса описание (definition). Эта возможность является частью общих возможностей G2. определить их положение на схемах и отростки связей (stubs) для присоединения их к другим объектам. Можно создать связи между рабочими пространствами с помощью точек связи (connection posts). что G2 будет их различать и никогда не позволит воде течь по электропроводам. Однако описание класса должно быть постоянной (permanent) сущностью в момент создания 123 . которые позволяют создать пиктограммы для объектов. дополняющих описания классов и позволяющих создавать новые сущности. Каждый экземпляр объекта может обладать своим рабочим пространством. Объекты представляют объекты реального мира в приложении. круговые шкалы и многое другое. таких. По умолчанию динамически созданные сущности являются временными (transient). Определяют такие элементы пользовательского интерфейса. Определив различные классы для этих связей. Нельзя создать. Класс объектов определяет атрибуты. действия и процедуры. шкалы. Введение концепции рабочих пространств обеспечивает две важные функции системы G2: возможность осуществлять рассуждения на разных уровнях абстракции и возможность продолжительной (теоретически . описание связи (connection-definition) и описание сообщения (message-definition) в соответствии с классами. Классы языка G2 (G2 language): эти классы используются для определения различных элементов языка G2. G2 обеспечивает операции create by cloning (создание клонированием) и change the text of (изменить текст). объекты могут быть соединены водопроводными трубами и (или) проводами. По сути класс рабочих пространств является развитием концепции рабочей памяти в традиционных системах. например.бесконечной) работы системы без необходимости "сборки мусора" в пределах отведенного объема оперативной памяти. как меню. Рабочее пространство является контейнерным классом для экземпляров других классов. Класс. Рабочее пространство БЗ (Kb-workspace). но и динамически. С помощью G2 новые классы могут создаваться не только в процессе разработки. Иерархия рабочих пространств тесно связана с графическим представлением объектов. Можно сказать. модифицирован или уничтожен экземпляр любого класса или целый класс. который может быть активирован или деактивирован. которые могут существовать между объектами на схеме. Из всех классов пользовательского интерфейса только для сообщений есть возможность создавать производные классы. для создания сообщений со специальным способом отображения. селективные кнопки (radio button).Опишем наиболее важные ветви иерархии "item". чем даже C++. Можно создать подкласс связей для указания различных типов потоков. в которых можно помещать объекты и объединять их в схемы. они существуют только на протяжении данного сеанса работы и не сохраняются в базе знаний. Классы описаний классов (class definition) определяют классы. т. которые используются для клонирования похожего описания класса и последующего редактирования его в соответствии с требованиями новых особенностей. как правила. собственные производные классы от этих классов. что рабочая память системы G2 строится на основе иерархии рабочих пространств. Во время исполнения приложения может быть создан. представляющим его внутреннюю структуру. во время работы приложения. передающими логические сигналы. так правил и процедур. е. Объект (object) и его подклассы. Связь (connection). Например. что очень важно для систем управления непрерывными процессами. Класс для изображения путей между объектами. ограниченные рабочие области. включая рабочие пространства. определяющий независимый сегмент базы знаний. Это касается как объектов. сообщения (message). правила. экземпляры которых содержат созданные пользователем описания классов и служат шаблонами для создания экземпляров других классов. которые может определять пользователь. связи и процедуры. Классы пользовательского интерфейса (user-interface). Рабочие пространства отображаются как отдельные. Можно определять подклассы класса сообщений.описание объекта (object-definition). можно быть уверенным. Описание имеет три подкласса . отношения. В этом смысле G2 более объектноориентированная система.

что снимает необходимость их повторного определения. в течение которого это значение актуально.получают значения в результате работы машины вывода или выполнения какой-либо процедуры. применимых к различным классам объектов приложения. позволяющие осуществлять рассуждения на основе графических схем. что им может быть составлен ряд общих правил. Объекты могут иметь графические образы. Среди встроенных подклассов наибольший интерес представляет подкласс объектов. являющемся общим родительским классом для них. Иерархическая упорядоченность классов значительно упрощает задачу определения новых классов в приложении. Такие атрибуты будут автоматически наследоваться объектами. а результирующая БЗ будет иметь меньший объем по сравнению с БЗ. целесообразно предоставлять возможность объединения множества объектов со схожими свойствами в классы. или определить температуру объекта. Постоянные объекты заносятся в БЗ разработчиком ЭС РВ в процессе диалога с системой. ближайшего к указанному. предоставляемой лицу. работающему с ЭС РВ. С каждым объектом ассоциируется таблица атрибутов. Классы объектов составляют иерархию. Объекты Объекты в базе знаний представляют собой отображения элементов реального мира. атрибуты. Особая роль в G2 отводится переменным. соединенных с данной емкостью. Можно использовать операцию make permanent (сделать постоянным) для преобразования временной сущности -описания класса в постоянную. Используя эти графические образы вместе с классом связей. принадлежащими к подклассам. Элемент данной таблицы представляет собой пару "атрибут -значение". в которой определяется отношение "родительский класс . Другим важным достоинством введения классов объектов является возможность составления правил. Например. в которую заносятся существенные для решаемой задачи свойства объекта. называемые пиктограммами. Временные объекты могут существовать в БЗ только в процессе работы ЭС РВ. принадлежащим к некоторому классу (общих правил). которые будут применяться при решении поставленной перед ЭС РВ задачи. по истечении этого промежутка переменная считается не имеющей значения. Переменные представляют измеряемые характеристики объектов реального мира и поэтому имеют специфические черты: время жизни значения и источник данных. можно проверить состояние всех вентилей. создаются подклассы пользовательских и встроенных классов. Цвет таких участков может изменяться в результате выполнения специальных команд в правилах или процедурах. отображаемые на экране дисплея. Параметры . В отличие от переменных параметры всегда имеют 124 . Время жизни значения переменной определяет промежуток времени. включающий подклассы переменных и параметров. Выделяют объекты (классы). Все классы G2 обладают по крайней мере одним общим свойством . можно строить схемы систем для любого уровня сложности. Объекты подклассов могут наследовать атрибуты и пиктограммы родительских классов. На пиктограммах разработчиком могут быть выделены отдельные участки. параметры и простые атрибуты. Кроме визуализации взаимодействия объектов G2 предоставляет синтаксические конструкции. Выделяют постоянные и временные объекты. характеризующие объекты различных классов. Например. могут быть однократно определены в одном классе. в которой не могут применяться общие правила.экземпляра или производного класса. в то время как временные объекты создаются после выполнения специальных команд в правилах и процедурах. встроенные в систему и вводимые пользователем. Таким способом обеспечивается высокая наглядность информации. В отличие от статических систем переменные в G2 делятся на три вида: собственно переменные.подкласс". и подкласс связей (connection) и отношений (relation). При разработке приложения. как правило.их экземпляры имеют графическую форму представления. Задача разработчика значительно упрощается за счет того. относящихся ко всем объектам. Поскольку реальные приложения могут содержать большое количество объектов. Рассмотрим подробнее наиболее важные классы сущностей. отражающие специфику данного приложения.

В G2 разработчик может задавать классы связей.п. unconditionally. Способы применения каждого правила определяются его синтаксисом: 125 . описываемом в G2. В реальном физическом окружении. так как их значения либо заданы в качестве начальных значений. в результате применения которых система также может получать значения переменных. как и связи. функции. представляют взаимосвязи между объектами. как электрическое соединение или трубопровод.значение. Исполняемые утверждения БЗ Основу исполняемых утверждений БЗ составляют правила и процедуры. поэтому в целях повышения эффективности функционирования системы в этих случаях используют простые атрибуты. Для параметров указанный механизм получения значений из источника данных не используется. • отношения в отличие от связей нецелесообразно сохранять в качестве постоянной части БЗ. Связи и отношения В G2 предусмотрены два вида взаимосвязей между объектами: связи и отношения. Основные отличия связей и отношений сводятся к следующему: • связи задаются разработчиком в процессе создания ЭС. • связи имеют графическое представление. так и для параметров допустимо использование следующих выражений. С переменными могут быть ассоциированы формулы имитационного моделирования. есть формулы. в то время как отношения устанавливаются динамически после выполнения специальных операторов в правилах или процедурах. Правила в G2 имеют традиционный вид: условие (антецедент) и заключение (консеквент). • скорость изменения значений в течение интервала времени. • количество собранных значений за интервал времени. такая. они получают новые значения после выполнения специальных операторов в заключениях правил или процедур. • максимальное (минимальное) значение за интервал времени. задаваемая разработчиком приложения и имеющая графическое представление. Отношения. для каждой из них должен быть определен источник данных (сервер данных). Очевидно. Под отношением понимается поименованная взаимосвязь между двумя сущностями. что далеко не для всех используемых в приложении значений нужно применять такой мощный инструментарий. действия и т. Поскольку системе может потребоваться текущее значение переменной. а также делать заключения на основании наличия или отсутствия связей. • стандартное отклонение в течение интервала времени. При ссылке в правиле или процедуре как для переменных. либо перевычислены механизмом вывода G2. • интерполяция значения в заданный момент времени. Кроме того. Кроме if-правила: условие ("if <логическое выражение>") и заключение ("then <действия>") используются еще 4 типа правил: initially. Под связями понимается взаимосвязь между двумя сущностями. отражающих динамику их значений: • текущее значение. в которых они участвуют. G2 предоставляет возможность разработчику задавать различные типы отношений. • значение в заданный момент времени. when и whenever. На основании наличия или отсутствия отношения между объектами могут производиться выводы. связи может соответствовать физическая связь между сущностями. в то время как отношения не отображаются на экране дисплея. • среднее значение за интервал времени. подсистема имитационного моделирования или внешний по отношению к G2 источник данных. ссылаться на объекты посредством указания связей. • интеграл по интервалу времени. Источником данных для переменной могут служить: машина вывода.

Кроме стандартных управляющих конструкций язык расширен элементами. используемый в G2 для представления процедурных знаний. Несмотря на то. • упрощается наполнение БЗ и ее сопровождение.Каждый из типов правил может быть как общим. п. поступающих от подсистемы имитационного моделирования.2. Если оно истинно.2 Машина вывода. относящимся ко всему классу. запуск или остановку комплекса оборудования). более предпочтительным является процедурный подход. когда необходимо выполнить жесткую последовательность действий (например. Если переменная не имеет значения. находящиеся в консеквенте. • минимизируются ошибки при отладке БЗ. что продукционные правила обеспечивают достаточную гибкость для описания реакций системы на изменения окружающего мира. задающие последовательное или параллельное выполнение операторов. разрешение другим задачам прерывать выполнение данной процедуры. обеспечивает следующие преимущества: • минимизируется избыточность БЗ. в некоторых случаях. содержащихся в базе знаний. При проверке условия правила машине вывода необходимо найти значения всех переменных и параметров.е. директивы. является достаточно близким родственником Паскаля. Параметры в любой момент времени имеют определенное значение.). Возможность представлять знания в виде общих.итераторы. При этом проверяется истинность условия. а не только конкретных правил. система может получить ее значение из следующих источников: 126 . Язык программирования. • способствует повторной используемости знаний (так как общие правила запоминаются в библиотеке G2 и могут использоваться в подобных приложениях). 9. так и специализированным. Перечисленные свойства языка позволяют системе одновременно выполнять множество различных процедур или множество копий одной и той же процедуры для множества различных объектов. в то время как значение переменных может отсутствовать. поскольку для них определено время жизни. то машина вывода выполняет действия. относящимся к конкретным экземплярам класса. Еще одна интересная особенность языка . Правила возбуждаются машиной вывода. т. позволяющие организовать цикл над множеством экземпляров класса. • данных. учитывающими работу процедуры в реальном времени: ожидание наступления событий. содержащихся в них. выполняющая рассуждения на основании: • знаний. находящегося в антецеденте правила. поступающих от внешних источников (контрольно-измерительной аппаратуры. • данных.1 Машина вывода Одним из основных компонентов G2 является машина вывода. СУБД и т. планировщик и подсистема моделирования 9.

Методы 4 . начинающихся с ключевого слова whenever (как только).• сервер данных. получающий данные от внешних источников (контрольноизмерительная аппаратура. СУБД. Как было отмечено в главе 4. • остановка системы и т. что G2-приложение управляет множеством одновременно возникающих задач. • управление способом отображения рабочих пространств (положение на экране. они являются метаправилами и реагируют на события (перемещение объекта. Представьте себе. получение/неполучение значения). 127 .). система выполняет действия. • запуск процедуры. Следующая образная интерпретация позволяет понять недостаток традиционных методов построения цепочек логического вывода и необходимость выхода на метауровень (focus и invoke) в динамических системах. пока не наткнетесь на нужный факт.п. • посылка управляющей информации внешнему объекту. находящиеся в консеквенте данного правила. Главным недостатком традиционно используемого в статических ЭС прямого и обратного вывода является непредсказуемость затрат времени на их выполнение. следуя тому же алгоритму. машина вывода должна иметь средства для сокращения перебора. реакции на непредвиденные события и т. запускает процессы и осуществляет коммуникацию с другими процессами в сети (рис. что G2 ориентирована на динамические приложения. истинно ли условие рассматриваемого правила. • подсистема моделирования внешнего окружения. Планировщик определяет порядок обработки задач. Для реализации этих методов в G2 введен специальный тип правил. В набор действий. даже уже прочитанные! Особенностью машины вывода G2 является богатый набор способов возбуждения правил. что вы пришли в библиотеку и хотите установить некоторый факт. Планировщик управляет всеми процессами в G2. • правило. масштаб и т.). Для динамических систем прямой и обратный вывод с полным перебором возможных к применению правил . Когда факт установлен и ваше знание о действительности изменилось. значение которой требуется системе. взаимодействует с источниками данных и пользователями. Правила whenever возбуждаются в первую очередь и обладают наибольшим приоритетом. ни в обратном выводе. необходим Планировщик.1). д. что гарантирует своевременную реакцию системы на изменения в окружающем мире.непозволительная роскошь. вы должны начать читать все книги подряд в алфавитном порядке. Хотя пользователь никогда не взаимодействует с ним. • формула. Следуя алгоритму прямого вывода.2. • порождение и удаление задач (подзадач). В связи с тем. правило в G2 может возбуждаться одним из 9 случаев. • вывод сообщений для оператора системы. другая ЭС и т. так и активность фоновых задач.2 Планировщик В связи с тем. установление/устранение отношения. • удаление экземпляра объекта. Если условия правила истинны. • изменение положения или цвета пиктограмм на экране дисплея. определяющее искомые значения переменных.д. приписанная к переменной (или классу переменных).9 возбуждают правило при возникновении некоторого события. Правила этого типа не используются (по умолчанию) ни в прямом. вы должны сначала перечитать все книги. видимую пользователем. входят следующие: • присвоение значения простому атрибуту. • оператор. работающие в реальном времени. планировщик контролирует как всю активность. ассоциированных с заданным объектом. 9. • активизация всех правил. • создание экземпляра объекта. 9. п. которые используются в консеквентах правил. После того как все требуемые значения получены. параметру или переменной. система определяет.

Обслуживание сетевых пакетов: Планировщик посылает и получает сообщения через сеть. откладывается для выполнения в конце данного цикла или в следующем цикле. Обслуживание пользователей: Планировщик принимает и передает данные для всех пользователей. На это выделяется до 0. Любая из задач. не закончившаяся в течение 0. В подсистеме моделирования предусмотрены следующие основные возможности: • средства для вычисления алгебраических. не наступило ли время нового цикла. 7.1. д. Планировщик переходит на следующий цикл. Данная подсистема используется для моделирования реальных объектов и устройств. Это включает и пользователей Telewindows. Обслуживание источников данных: Планировщик обменивается с каждым источником данных.2 с. работающих в данном сеансе G2. Проверка наступления начала цикла: если начало цикла наступило. 5. он переходит к шагу 3 для завершения всех отложенных действий. Этот список называется очередью текущих задач. с которыми работает ЭС. Каждому из источников данных отводится не более 0.).2. Выполнение задач: Планировщик берет очередь текущих задач и пытается выполнить как можно большее их число.3 Подсистема моделирования Одним из возможных источников данных для G2 является подсистема моделирования внешнего окружения. разностных уравнений и 128 . Если да. Планирование ожидающих задач: Планировщик формирует список задач.9. он возвращается к шагу 1 и проверяет.Планировщик G2 циклически выполняет следующую последовательность шагов. которые будут выполняться на данном цикле. Блок-схема работы Планировщика G2 4. 9. 2. 6. Для источников. 1. Если да (получение данных. Если нет. Рис. планировщик начинает цикл и переходит к следующему шагу. осталась ли какая-либо активность в рамках данного цикла. Планировщик "засыпает" на 40 млс и после этого переходит к шагу 1. не закончивших обмен за выделенное время. Если отложенных задач не осталось и время нового цикла не наступило. завершение отложенных задач и т.1 с на выполнение этой операции. 3. Подготовка к следующему циклу: Планировщик проверяет.2 с. планируются задачи для попытки закончить передачу данных.

• подстановку модельных значений переменных при невозможности получения реальных (выход из строя датчика или длительное время получение ответа на запрос). В G2 для этих целей используют 129 .отток на выходе бак_1) с начальным значением 5000. разностных и дифференциальных уравнений. что проводить отладку на реальных объектах может оказаться слишком дорого. Соответствующее конечно-разностное уравнение для объема бак_1 может иметь вид: следующее значение объем бак_1 = объем бак_1 + 3 с начальным значением 5000. Каждый параметр. Если идентификатором данного объекта является бак_1. обеспечивает возможность задания формул моделирования не только для отдельных переменных и параметров.дифференциальных уравнений первого порядка. значения зависимых переменных являются функциями только текущих значений других вычисляемых переменных. Эта категория переменных явно не объявляется. подсистема моделирования повышает жизнеспособность и надежность приложений на базе G2.символ операции умножения. их значения получаются из уравнений моделирования для соответствующей переменной. • возможность режима разделения времени.атрибуты объекта бак_1. Во время разработки подсистема моделирования используется вместо объектов реального мира для имитации показаний датчиков. которые могут использоваться подсистемой моделирования G2 для вычисления объема некоторого объекта. Целесообразно выделять три типа переменных. * . вследствие чего для них должны быть заданы некоторые начальные значения. Значения двух первых типов переменных являются функциями их предыдущих значений. • возможность задания формул как для отдельных переменных. Играя роль самостоятельного агента знаний. имеет атрибут алгоритм интегрирования. дискретные и зависимые. Очевидно. но и для их классов. определяющий метод численного приближенного решения обыкновенных дифференциальных уравнений. при котором подсистема моделирования работала бы параллельно с остальными подсистемами G2. где уровень и площадь . что обеспечивает следующие возможности: • верификацию показаний датчиков во время исполнения приложения. то алгебраической формулой является выражение: объем бак_1 = уровень бак_1 * площадь бак_1 . На различных этапах жизненного цикла прикладной системы она служит достижению различных целей. значения которого задаются подсистемой моделирования. Подсистема моделирования G2 является достаточно автономной. как правило. С другой стороны. а иногда (например. За счет этого осуществляется вычисление моделируемых значений в процессе работы механизма вывода G2. Она позволяет иметь также различные приращения времени при вычислении разных переменных. так и для классов переменных или параметров. но важной частью системы. Подсистема моделирования. которые могут получать свои значения от подсистемы моделирования: непрерывные. Дифференциальное уравнение для этой же переменной (объем бак_1) выглядит так: d/dt (объем бак_1) = (приток на входе бак_1 . разностные и дифференциальные (первого порядка). На этапе эксплуатации прикладной системы процедуры моделирования выполняются параллельно функциям мониторинга и управления процессом. В G2 для описания внешнего мира подсистема моделирования использует уравнения трех видов: алгебраические. применяемое для всех экземпляров класса. при разработке системы управления атомной станцией) и небезопасно. В качестве примера ниже приведена общая формула моделирования для объема любого водяного бака : d/dt (объем любой водяной_бак) = (приток на входе любой водяной_бак -отток на выходе любой водяной_бак) с начальным значением 5000. За счет этого становится возможным однократное описание поведения. Приведем примеры алгебраических.

какой является. так как и метод Эйлера. механизм вывода может устанавливать значения во внешней системе имитационного моделирования так же. для приложений. Например. Рассмотрим дифференциальное уравнение 1-го порядка с начальным условием х0=х( t0). как правило.. такие.. При работе с внешней подсистемой G2 обычно вызывает внешнюю систему имитационного моделирования для работы в качестве части подсистемы имитационного моделирования G2. так что другие компоненты G2. максимальное время приращения. xi). Другими словами. например. на основании которого следует выбирать тот или иной метод. как в методе РунгеКутта.. система RTworks фирмы Talarian Corporation? Средства разработчика являются средой. как.методы Эйлера и Рунге-Кутта. Такой подход реализован. чем метод Эйлера. так как они автоматизируют взаимодействие с приложением на всех стадиях его существований: разработка. например. Выбрав достаточно малый шаг приращения h. при взаимодействии системы G2 фирмы Gensym с системой моделирования. рассматривают его как единственный сервер данных. но требует в четыре раза больших затрат времени. вне пределов которого вычисления становятся неустойчивыми. в частности. Чтобы достигнуть той же точности. . в которых существенна скорость. В этом случае G2 может получать вычисляемые величины и устанавливать значения величин во внешних системах моделирования.. Устойчивость (сходимость) метода не является фактором. построим систему равноотстоящих точек ti =t0 + ih.). а также выполнять часть процесса моделирования в самой G2 при выполнении другой части вне данной программы. 2. С другой стороны. эффективно использовать метод Рунге-Кутта. для приложений. Таким образом. Что же делает систему G2 именно средой.1. целесообразнее применять метод Эйлера. специализирующейся в области разработки динамических моделей для нефтехимических предприятий. Тогда в соответствии с методом Эйлера приближенные численные значения x(ti) xi вычисляются по формулам: xi+1 =xi + hf(ti. одно и то же для обоих методов. 1. А по методу Рунге-Кутта вычисление приближенного значения xi+1 в следующей точке ti+1 = ti + h производится по формулам: Кроме внутренней подсистемы моделирования G2 имеет средства для подключения внешних. (i = 0. механизм вывода и интерфейс конечного пользователя. как он устанавливает значения в собственной подсистеме имитационного моделирования. Метод Рунге-Кутта дает более точные результаты. 9. Кратко поясним суть методов Эйлера и Рунге-Кутта [2]. 2.). 130 . а не просто оболочкой для выполнения приложений реального времени.. и метод Рунге-Кутта имеют один и тот же предел устойчивости относительно размера шага приращения. (i = 0. реализованной в рамках комплекса Graphical Model Builder фирмы ABB Simeon.3 Среда разработчика в системе G2 Ранее мы охарактеризовали G2 как среду разработки и сопровождения приложений. а не точность. более мощных систем имитационного моделирования. при использовании метода Эйлера необходимо значительно уменьшить время приращения. которые требуют хорошей точности и не предъявляют высоких требований к скорости. Выбор среди этих двух методов зависит от приложения.

9.. что гарантирует введение только синтаксически правильных конструкций языка. С помощью префикса "for" (для) и слова "any" (любой). выбирается любой участок текста. ближайший на графической модели к некоторому объекту: the pump nearest to the tank (насос. Например. Как на объект. 9. You are flying too low. связанная с насосом). указывающая. 4. такие: for any tank if the tank is empty then inform the operator that "The tank . а на группу сущностей: for any pump (для любого насоса). д. 131 . Примером использования естественного языка в G2 для формирования базы знаний может служить следующее типичное правило: "If the altitude of any aircraft < the safe-flying-altitude of the aircraft then inform the operator that "Pull up. функций.. Это обеспечивает возможность записывать общие утверждения. 1. правил. связанных с другим объектом: the tank connected to the pump (цистерна. включая текст. как только инициируется создание нового утверждения или редактирование существующего. ближайший к цистерне).. • интерфейс с пользователем. добавляется или редактируется любой другой текст. которое появляется.2). какие языковые конструкции можно вводить. например. управляемый процедурой грамматического разбора.использование и сопровождение.. за которыми следует имя класса. 3.3.1 Естественно-языковый текстовый редактор Разработчик G2 представляет информацию о разрабатываемом приложении на ограниченном английском языке. процедур и т. Процесс редактирования все время направляется процедурой грамматического разбора. Он работает в специальном окне редактирования. и ему предоставлена возможность ссылаться на любую сущность в БЗ многими способами. разработчик может использовать конструкции ЕЯ для того. По имени: pump-12 (насос-12). Интерактивный текстовый редактор G2 позволяет редактировать тексты утверждений. Среда разработчика включает в себя прежде всего: • естественно-языковый текстовый редактор. реализованного в текстовом редакторе (рис. • средства инспекции и отладки. Таким способом обеспечивается ссылка не на одну сущность. • систему регистрации версий. Your altitude is [the altitude of the aircraft]" Упрощение взаимодействия разработчика с системой достигается и за счет оригинального подхода. 2. что "цистерна . Несмотря на сложность и богатство синтаксических конструкций G2 для описания знаний. если эта цистерна пуста то информировать оператора. Как на одну из сущностей класса объектов.is empty" (для любой цистерны. В окне редактирования появляется динамически изменяемая подсказка. пуста"). представляющий значение атрибута экземпляра класса.. их применение упрощается за счет естественно-языкового подхода. чтобы сослаться на сущность следующими способами..

заключенный в кавычки). Рис. Ниже приводится краткий перечень основных возможностей: • использование растровой графики наряду с векторной для пиктограмм объектов и фоновых изображений. Окно текстового редактора G2 начиная с текущей позиции курсора.3. 132 .MS Windows или Motif (XWindows). Редактор пиктограмм (рис. Редактор пиктограмм G2 Возможности графического интерфейса с пользователем настолько богаты.9. что даже беглому их описанию можно посвятить отдельную главу. 9.Рис. они дополнены и поддержаны дизайнером диалогов (graphic user interface dialog editor .2.2 ИНТЕРФЕЙС С ПОЛЬЗОВАТЕЛЕМ Так же. Например. для упрощения редактирования можно использовать клавиатурные команды или контекстно-зависимое меню операций редактирования. приведенное выше (исключая текст. Кроме того.GUIDE). правило. и изменять ее.3) позволяет создавать пиктограммы графическими средствами и автоматически преобразовывать их в текстовые описания. 9. не нужно изучать и язык графических примитивов для построения пиктограмм объектов. 9. позволяющим разработчику выбирать стиль создаваемого интерфейса . Есть возможность набирать вводимый текст на клавиатуре или выбирать подходящие шаблоны из подсказки. Кроме того. как нет необходимости заучивать наизусть грамматические конструкции языка для написания правил и процедур G2. как будет выглядеть пиктограмма. В результате можно видеть.3. может быть введено с помощью 16 нажатий клавиши мышки и введения с клавиатуры трех букв А и одной буквы S.

в диаграммах. Изображения Изображения используются для того. в процессе работы механизма вывода) с помощью действия create (создать). Изображает арифметическое значение в виде точки на круговой шкале. п. • разнообразные функции обработки клавиатуры и манипулятора "мышь". • создания опций меню (user menu choices). переменной (параметра). Существуют следующие варианты. При движении по часовой стрелке значение увеличивается. Существуют следующие виды управляющих воздействий: 133 . • управления доступом (access control). • планируемая на основе задаваемых пользователем приоритетов перерисовка отдельных участков экрана. • Chart (диаграмма). • изменять цвета "икон" и связей. • поддержка формата Enhanced PostScript при сохранении изображения в файле для последующей печати. чтобы предоставить пользователю возможность увидеть значение переменных и выражений. • перевода опций меню. Значение каждой ячейки в таблице может вычисляться G2. Отображает на графике (с двумя ортогональными осями) соотнесение одной последовательности данных с некоторой другой последовательностью. • разнообразные способы работы с меню. а справа . Конечный пользователь может взаимодействовать с G2 различными способами.е. Управляющие воздействия Управляющие воздействия (end-user controls) . реализующие возможность изобразить (display): • Readout-table (отсчет).это средства. Изображает в двух измерениях изменение одного или более выражений (в частном случае параметра или переменной) во времени. • Meter (измеритель). Так. д. Изображает в виде вертикальной шкалы с указателем значение арифметического выражения. в G2 разработчик создает разнообразные меню.д. • разнообразные векторные шрифты. Показывает (в горизонтальном прямоугольнике) слева имя переменной (параметра) или вид выражения. • выдавать сообщения и т. • Dial (циферблат). позволяющие использовать специализированные интерфейсные решения при организации рабочего места оператора. гарантирующая первоочередное обновление наиболее важной информации на графиках. которые дают конечному пользователю следующие возможности: • показать (скрыть) рабочее пространство. атрибутов и т. • сообщения. В добавление к этим средствам взаимодействия G2 предоставляет конечному пользователю следующие средства: • изображения (displays).. текстовыми и графическими редакторами. • поддержка стандарта ISO 8859-5 в части представления символов кириллицы независимо от операционной среды. • Graph (график). Изображает таблицу из рядов и строк (подобна электронной таблице). с помощью которых конечный пользователь может взаимодействовать с приложением. таблицах и т. • произвольное масштабирование графических элементов.• различные типы графиков и удобный интерфейс для их конфигурирования. • возможность выбора между "слоеной" (перекрывающейся) или "полупрозрачной" (XOR) отрисовкой элементов интерфейса. G2 позволяет реализовать возможность display динамически (т.значение. • Freeform-table (таблица). • управляющего воздействия на G2 (end-user controls). Эта особенность открывает российским разработчикам возможность использования русских имен в названиях классов. • двигать или вращать сущность.

delete (устранить). в результате исполнения утверждения inform (информировать) G2 создает некоторое сообщение и размещает его на доске сообщений (message-board). что конечный пользователь видит и может делать с БЗ. Вид доски сообщений управляется с помощью атрибута message-board-parameters в системной таблице (system tables). Например. в объектах и т. то в квадрате нет ничего. transfer (перенести) и т. устанавливать связи и т. hide (скрыть). называемый user-warning-message (предупреждающие пользовательские сообщения). пользователь может использовать группу radio buttons. или сообщения как реакция на ошибку и т. Сообщения являются средством. т. чисел. Изображается в виде горизонтальной шкалы с указателем значения для начала. конца и указателя. Сообщения стандартно выдаются на одно из двух рабочих пространств: на доску сообщений (message board) или журнал оператора (logbook). conclude (заключить). помеченную red (красный). • Slider (указатель). Например. системных условиях и предупреждения выдаются в журнал оператора. которые видит пользователь в каждом меню. количественным.. • Type-in box (ввод). white (белый).. например. move (двигать). Сообщения об ошибках.. Нажатие разработчиком на кнопку действия приводит к выполнению связанных с ней действий. • Check boxes (кнопка проверки). то в квадрате Check boxes появляется крест. Если какой-либо другой источник (не Type-in box) изменит значение переменной (параметра). Значение (числовое или текстовое) переменной или параметра. • Radio button. Изображается в виде группы маленьких круговых "иконок". то в квадрате "?" (знак вопроса). текстовым). размещенным на фоне заданного цвета. позволяющим G2 информировать пользователя о какихлибо событиях. 134 . Изображается в виде прямоугольника с горизонтальной длинной стороной. black (черный). Разработчик может создать подкласс класса message.• Action button (кнопка действия). при обнаружении некоторой ошибки G2 выдает сообщение в журнал оператора (the operator logbook). Обычно на доску сообщений выдаются сообщения для пользователя. для назначения цвета некоторой символической переменной. Сообщения. Если значение активно (on). Управление доступом С помощью средств управления доступом (access control) разработчик может влиять на то. вызываемые действием inform. • определить перечень атрибутов. Изображается в виде прямоугольника с закругленными углами. которые может видеть пользователь в таблицах атрибутов. соответствующих взаимоисключающему множеству символов. • ограничить пользователей в возможности передвигать сущности.е. пользователь может вводить числовое значение переменной или параметра. если значение не известно. Перемещая указатель вдоль горизонтальной шкалы. разработчик может управлять доступом следующим образом: • ограничить (restrict) строки меню. может быть введено в прямоугольник пользователем с клавиатуры. является ли указанное значение активным. Например. логическим. в рабочих пространствах.п. При нажатии на одну из "иконок" соответствующее ей значение присваивается переменной или параметру.д. create (создать). логических или текстовых значений.п. какое-то другое значение). как: change (изменить). Check boxes проверяет. rotate (вращать). Например. Вид журнала управляется через атрибут logbook-parameters в system tables. может использовать текст с очень крупным шрифтом. который будет иметь уникальные характеристики и атрибуты. которые содержат в себе текст. класс сообщений.п. inform (информировать). Сообщения Сообщения (messages) есть класс сущностей. являются примерами встроенного класса сущностей. которые G2 создает в результате исполнения действия inform. halt (остановить). то Type-in box отобразит это изменение. связанное с Typein box. если значение неактивно (off. называемого message (сообщение). Изображается в виде маленького квадрата вместе со связанным с ним значением переменной или параметра (символическим. таких.

В частности. что БЗ содержит класс объектов. Например. администратор и т. объединяющей продукционные правила.3. на что способна G2. Это обозначает. • отображение иерархий классов. • на сущности определенного рабочего пространства. с помощью функций инспекции можно запустить процедуру поиска и замены текстовых фрагментов в базе знаний. Когда пользователь выбирает опцию меню (user menu choise umc) для того. но не редактировать их и т. рекомендуемые методологией (п. чтобы внести новую строку в меню. Создание опций меню Разработчик может определить новые опции (строки) меню сверх тех. содержащих описание элементов базы знаний. Тип пользователя "администратор" встроен в G2. указанных в umc. которые используются стандартно. которые назначает разработчик. Разработчик управляет доступом с помощью указания типа пользователя (mode). Перечисленные возможности облегчают навигацию по базе знаний и делают возможным быстрый просмотр базы знаний под любым ракурсом. атрибутов и местоположения. разработчик. Функции инспекции базы знаний позволяют осуществлять поиск элементов на основе их типов. Функции инспекции работают в фоновом режиме и позволяют выполнять одновременно с ними и другие задачи. соответствующую частному классу сущностей. 9. • обеспечить автоматическое выполнение некоторого действия. включая другие функции инспекции. • на определенные классы сущностей. • прямой переход к конкретным элементам базы знаний. различные уровни абстракции и иерархию классов. in Russian: table = таблица move = переместить edit = редактировать. когда пользователь указывает на сущность..• разрешить пользователю видеть атрибуты сущностей. Например.п. и этот класс имеет атрибут "состояние" со значением "включено" (on) или "выключено" (off). называемый "переключатель". Доступ 135 . G2 выполняет определенные действия. Кроме того. В этой ситуации на помощь разработчику приходят мощные средства инспекции базы знаний и отладки. Разработчик может расширить список типов пользователей по своему усмотрению. принадлежности к классу. предположим. • создание файлов. Ограничения (restrictions).7. может превратиться в далеко не тривиальную задачу. он может видеть и делать все. что разработчик G2 может заменить некоторые опции с одного языка на другой. • перекомпиляция отдельных элементов.2) и предоставляемые G2. Эти функции используются для решения следующих задач: • отображение сжатого представления элементов базы знаний. процедуры.п. • на частные сущности. этот тип пользователя свободен от всех ограничений. упоминаемая выше схема иерархии встроенных классов G2 может быть получена с помощью функции инспекции базы знаний. Перевод опций меню G2 позволяет перевести имена любых опций меню с английского на другой язык. могут действовать: • на все сущности в БЗ. что отладка прикладной системы. Дополнительная строка в меню появляется для примеров соответствующих сущностей во время выполнения БЗ и при соблюдении условий. модулей и рабочих пространств. Разработчик может с помощью umc добавить строку к меню "переключатель". которая в состоянии переключателя on будет содержать в меню строку off и наоборот.3 Средства инспекции и отладки Ясно. который работает с приложением: оператор.5. например показать рабочее пространство объекта.

Как показывает практика.9. При этом обмен данными осуществляется на уровне переменных через протокол ICP Рис.остальных пользователей к базе знаний в это время никак не ограничивается. подобно другим объектам в G2. которые показывают: текущие значения переменных и выражений. что и G2. связанных в сеть. • подсветку возбужденных правил. а интерфейс G2 G2 действует как сервер данных для этих объектов (подобно механизму вывода или G2-подсистеме моделирования). Как результат. которые получают информацию от другого G2.процесс исполняется на ПЭВМ пользователя (Intelligent Communication Protocol). получающих значение от другого G2-процесса.под MS Windows.процесс исполняется на той же ПЭВМ. Эти объекты создаются.4 Интерфейс с внешним окружением В G2 реализована распределенная обработка приложения на принципах архитектуры клиент-сервер. исполняемых на одной и той же или на разных ЭВМ. v.5) работает параллельно с прикладной системой как независимый обработчик событий и обеспечивает ее двустороннее взаимодействие с 136 . выполнение каждого шага обработки переменных. а пользователь получает к ней доступ через X-терминал. что и G2. просто указать номер сетевого порта источника. Связь с внешними источниками данных строится на основе библиотеки стандартных интерфейсов и сервера GSI (G2 Standart Interface). что G2-приложение может как получать. в которых пользователь может остановить или продолжить процесс выполнения приложения.1). 9. Отладочные режимы работы G2 включают: • отображение предупреждающих сообщений об ошибках и состоянии приложения. • отображение сообщений трассировки. Базовые конфигурации использования Telewindows: а . б .9. формул и функций. Telewindows исполняется на рабочей станции или ПК пользователя (Intel 386/486 . G2 разработана как открытая система. правил.4. правил. формул и функций. Для организации обмена необходимо в описании переменных объекта. Интерфейс G2 G2 позволяет разработчику создать в одном G2-приложении объекты. запуск и остановку обработки переменных. Кроме того. так и посылать информацию в одно и то же время по одному интерфейсу. 9. функции инспекции и отладочные режимы работы G2 в значительной степени облегчают поиск ошибок в прикладной системе и сокращают время ее тестирования до минимума. Взаимодействие между G2 и Telewindows может быть организовано одним из следующих способов (рис. Подсистема GSI (рис. • установку контрольных точек. приложение можно построить как содружество автономных интеллектуальных агентов на базе интерфейса G2 G2. Клиентная система Telewindows обеспечивает множественный доступ к централизованной базе знаний и групповую работу с приложением. Подчеркнем.3.4): процесс Telewindows исполняется на той же машине. как только они изменяются. переменные объекта получат значения от второго G2.

буферизация данных. восстановление после сбоев в сети или узле. реализуемость. DEC Rdb). надежность. обработка переполнения буфера. планирование обработки запросов. Yokogawa. AEG Modicon). насколько это возможно. сопровождаемость. Организация взаимодействия системы G2 с внешним миром 137 . Sybase.широким спектром программируемых контроллеров ведущих фирм (Alien Bradley. протоколы взаимодействия. Siemens. но реализацию этих функций GSI делает настолько простой. GEFanuc. работа с множеством источников данных. преобразование форматов данных. гибкость. Для удовлетворения этих требований он должен реализовать множество функциональных блоков. С точки зрения современной концепции разработки открытых систем в системе G2 предлагается более гибкая и надежная трехзвенная схема организации взаимодействия клиентской и серверной частей приложения. таких. распределение ресурсов. конфигурируемость. Foxboro. обмен сообщениями об ошибках. пришедших без запроса. переносимость. Исключение составляют функции доступа к данным и конфигурирование интерфейса. доступ к внешним данным и конфигурирование интерфейса. отработка запуска и остановки системы. обмен данными о состоянии взаимодействующих систем. используя GSI в качестве монитора транзакций [1]. Alien Bradley Pyrammid Integrator. кроме двух. работа с данными переменной длины. как: синхронизация обрабатываемых запросов. минимизация загрузки системы. концентраторов данных (DEC BASEstar. Fisher. Все это применимо к любому интерфейсу данных независимо от назначения прикладной системы. диагностика сбоев. когда перед разработчиком встает проблема создания интерфейса данных. отработка пауз и перезапуска. ORSI). д. систем сбора данных (ABB. При отсутствии в библиотеке GSI интерфейса к некоторому уникальному контроллеру не составляет особого труда запрограммировать его по представляемому шаблону на языке С и подключить к системе. отработка прерываний. Библиотека GSI и так называемые G2 Bridge products позволяют легко интегрировать G2-приложение в существующие системы управления. возможность мультиплексирования сигналов и т. Обычно. сетевые интерфейсы. Рис. Все перечисленные требования. SETPOINT SETCIM) и развитых СУБД (Oracle. обработка данных. удовлетворяются в подсистеме GSI автоматически независимо от платформы и типа сетевого обеспечения. группировка данных.9.5. он вынужден принимать во внимание целый ряд разнородных требований: эффективность.

Для того чтобы использовать в G2 внешнюю функцию. и так называемый переходный код (application bridge code). Средства для создания этих объектов встроены в G2. Разработчик G2-приложения может вызвать внешние (foreign) для G2 функции. • GSI-расширение. Кроме интерфейсов GSI и G2 G2 доступны еще два интерфейса с внешними процессами и источниками данных: файловый интерфейс (G2 File Interface .Подсистема GSI состоит из трех основных частей: • ядро GSI. разработчик описывает ее (подобно функциям G2. позволяющее G2 писать и читать информацию из внешних файлов.0 в части поддержки распределенных приложений на основе архитектуры клиент/сервер расширены за счет добавления ряда новых функций.6.9. с G2-приложением и внешней прикладной программой отражено на рис. в полном объеме использующей возможности GSI. чтобы делать следующее: • архивировать и запоминать данные. отражающих специфику прикладной программы. остановку и завершение внешней программы. Рис. который используется GSI-расширением для интерактивного взаимодействия с внешней прикладной программой. Этот интерфейс включен в G2. Файловый интерфейс GFI представляет собой гибкое средство. как функции. необходимую GSI для связи с внешней прикладной программой. Компоненты системы GSI Спецификация конфигурирования включает объекты базы знаний.GFI) и интерфейс с внешними функциями (Foreign Function Interface). обеспечивающих передачу данных. соответствующие переменным внешней прикладной программы. Эти объекты содержат информацию. Кроме этого создают переменные GSI variable для обмена текстовыми сообщениями с внешней прикладной программой. которая настроит базу знаний для связи с внешней программой. написанные на Си и Фортране. • собирать данные для внешнего анализа. в дополнение к базе знаний G2: спецификацию конфигурирования. • считывать данные из внешних файлов во время исполнения БЗ. текстовых сообщений. Для формирования спецификации конфигурирования создают объекты.6. Передача 138 . Разработчик может использовать GFI для того. Интерфейс с внешними функциями. Взаимодействие этих трех частей между собой. Он состоит из набора функций на языке С. Далее создают переменные класса GSI variable. нужно создать два фрагмента. • создавать снимки (snapshots) данных. GFI является отдельным от G2 продуктом. Переходный код объединяет GSI-расширение с внешней прикладной программой. • коммуникационный канал связи между ядром GSI и GSI-расширением. конфигурирующие ее для использования GSI. G2 передает и принимает данные через эти переменные. Хотя подсистема GSI отрабатывает все взаимодействия между G2 и каждым из внешних процессов. принадлежащие к классу GSI interface object. • инициализировать тесты проверки БЗ. 9. запуск. определенные пользователем. определенным пользователем) и затем использует таким же способом. необходимо сконфигурировать ее для конкретного приложения. Для разработки системы. Возможности G2 4.

Unix. Являясь членом OMG (Object Management Group).объектов и массивов в качестве аргументов упрощает совместное использование данных независимыми приложениями на базе G2 и внешними по отношению к G2 программными системами. фирма Gensym сотрудничает в этой области со многими независимыми организациями и комитетами по стандартам. Развитый графический интерфейс. Подсекундные интервалы цикла работы Планировщика системы позволяют теперь контролировать процессы со скоростью протекания на уровне миллисекунд. Telewindiws и GSI. ISO 9000 стандартизации держка широкого спектра платформ DEC. DDE. в которых могут "жить" G2. Sun. В четвертой версии G2 в значительной мере сокращены накладные расходы на выполнение операций. 9. IBM. Использование принципов статической и условной компиляции расширяет возможность маневра и позволяет повышать производительность критических участков приложения при сохранении гибкости системы в целом.клиентной подсистемой Telewindows. Безопасность и конфиденциальность распределенной обработки достигаются за счет новых уровней автоматической проверки прав доступа при установлении сетевого взаимодействия процессов через GSI. WINSOCK Архитектура клиент/ сервер Уровень данных: GSI.TCP/IP и DECnet.это подТаблица 9. Расширен также и спектр сетевых сред. G2↔Telewindows Внешние интерфейсы Распространенные программные и технические средства и СУБД Участие в комитетах по Object Management Group (OMG). что делает реальное время в приложениях на базе G2 еще более реальным. 9. обеспечивает базовые средства для построения проблемноориентированных языков визуального программирования. TCP/IP.CORBA. Кроме TCP/IP и DECnet теперь поддерживаются Token Ring и Winsock. POSIX. на уровне приложения .2). HP. базируется на средствах Motif и MS Windows. Стандарты G2 Открытость системы G2 и продуктов на ее основе обеспечивается ориентацией фирмы Gensym на промышленные стандарты (табл.2 Стандарты. В этом случае объекты 139 . Распределенная обработка обеспечивается интерфейсами G2↔ G2. IBM и ПЭВМ на базе процессоров Х86 и Pentium. включающий элементы анимации. поддерживаемые G2 Платформы DEC. на уровне объектов . Существует множество готовых решений "под ключ" для прямого взаимодействия G2 с распространенными программными и техническими системами контроля и развитыми СУБД. являющихся отображением технологических цепочек или абстрактных алгоритмов обработки данных. служащий своего рода интеллектуальным монитором транзакций. Сетевые протоколы . SUN.5 Проблемно/предметно-ориентированные среды и графические языки на базе G2 Возможность простого манипулирования графическим представлением объектов в G2 и составления схем. G2 ↔ Telewindows и поддержкой вызова удаленных процедур. графический интерфейс GUIDE Сетевые протоколы SNMP. интерфейсы APIУровень объектов: CORBAУровень приложений: Telewindows Распределенная обработка Взаимодействие G2↔G2. В части технических средств . DECnet. HP. Подсистема сбора профиля работы приложения дает возможность на этапе отладки и во время эксплуатации системы легко определять узкие места и целенаправленно проводить модификации для достижения требуемой производительности. Архитектура клиент/сервер на уровне обмена данными поддерживается монитором транзакций GSI и DDE. Windows Графический интерфейс Motif и/или Windows. Для реализации обмена сложными структурами данных в распределенной среде обработки коренным образом переработан и G2 Standard Interface (GSI). ПЭВМ на базе Х86 и Pentium. VMS.

Neuron-Line GDA (G2 Diagnostic Assistant) . • введены специальные терминальные блоки правил (переменных) и поддержка полной грамматики G2 (предыстории и т. GDA предназначена для решения следующих основных задач: • системная диагностика. ReThink. • предсказание и предупреждение внештатных ситуаций вместо их диагностики и борьбы с их последствиями (интеллектуальный интерфейс оператора. DSP. являющихся по сути графическими элементами языка. п. специфических наборов правил. В отличие от множества частных. корректирующие действия и управляющие команды для минимизации себестоимости продукции.приобретают свойства операторов и в совокупности с различными классами связей формируют грамматику нового языка. • введена инструментальная среда для разработки графических языков. Fault Expert и BatchDesign_Kit. Подход оказался настолько удачным.это графический язык для вычислений и мониторинга. • обеспечена передача сущностей. GST. • упорядочивание управляющих воздействий и активное тестирование. основные из них: GDA. • введены связи со схемами технологических процессов.разработан фирмой Gensym совместно с Motorola. что в той или иной мере используется теперь во всех проблемно/предметноориентированных расширениях G2. Как и другие приложения на базе G2. что сформированная диаграмма потоков информации по сути и есть исполняемая программа. • введены диалоговые панели. Объектно-ориентированный подход обеспечивает следующую технологию использования GDA: разработчик выбирает необходимые объекты из более чем сотни блоков. Впервые эта концепция была реализована фирмой Gensym в GDFL .). Си). связи обеспечивают взаимодействие объектов. программирование системы заключается в простом конфигурировании и связывании объектов. 9. что позволяет осуществлять комбинацию диаграмм информационных потоков и компактных. система. Кроме базового продукта . мониторинг и предупреждения о внештатных ситуациях (анализ и верификация сенсоров. управляющие воздействия и соединяет их. объяснения для определения исходной причины).1 G2 Diagnostic Assistant. организованным по Принципу WYSIWYG [7J. Motorola 140 . созданная с помощью GDA. фильтрация предупреждающих сигналов). разработанных на языках третьего поколения (Фортран. • управление качеством в реальном времени. GDA служит сервером знаний (по аналогии с файл-серверами). которую конечные пользователи могут использовать для создания интеллектуальных систем АСУП реального времени. обладает рядом концептуальных преимуществ: • блоки GDA могут напрямую интегрироваться с правилами G2.оболочки ЭС реального времени G2 на ее основе фирмой Gensym разработаны дополнительные проблемно-ориентированные средства разработки. операции математической и логической обработки. Statistical Process Control. работающих с непрерывными потоками: сырья и материалов. фильтры данных. Для производственных подразделений. информационными потоками и потоками управления. Дополнительный модуль к GDA для статистического контроля за процессами Statistical Process Control (SPC) . разрозненных приложений в области управления производством. представляющих входные точки. GDA обеспечивает интегрированную среду визуального программирования. вырабатывающим оперативные рекомендации.языке графического представления информационных потоков для построения систем диагностики реального времени в системе GDA (G2 Diagnostic Assistant). кроме новых блоков. Вторая версия GDA. • возможно создание новых типов блоков графически (на основе использования блоков-инкапсуляторов) и процедурно (из процедур G2). работает в реальном масштабе времени.5. Основным преимуществом такого подхода является то. основанный на визуальных средствах описания решения задачи с пользовательским интерфейсом. NeurOn-Line. промежуточные фазы генерации кода и компиляции для ее использования не требуются.

так же как и ReThink.проблемно-ориентированное расширение оболочки G2.реинжиниринг бизнес-процессов (Business Process Reengineering .использует модуль SPC в составе системы управления производством печатных плат. могут усиливать или ослаблять их. состоящую из узлов (нейронов) и связей между ними. последовательности работ и начальных условий. положенных в основу разработки. Такой подход устраняет ошибки взаимного непонимания между заказчиком и исполнителем. разработанная консультативной фирмой Coopers & Lybrand Consulting (США). Связи передают сигналы. Системы SPARKS и ReThink имеют много общего как в части концепций. поскольку SPARKS. Dynamic Scheduling Package Инструментарий для построения систем оперативного планирования .2 Rethink (подумай еще) Сравнительно недавно G2 начинает использоваться в новой области . вычислениями в каждом из узлов.см. В отличие от других инструментальных средств. Вычисления на базе нейронной сети определяются: топологией сети. Конкуренцию ReThink сегодня может составить только система SPARKS (System Performance Analysis using Real-time Knowledge-based Simulation). NeurOn-Line . подобный G2. Один из первых пользователей системы патентное ведомство США. ReThink ориентирована не на программистов . 9. GST2 является расширением GST1 и кроме перечисленных инструментов содержит Проектировщик расписаний. смоделировать каждодневную активность и собрать обобщенные и конкретные данные о производительности работы. Это и не удивительно. Приложение 3. SPARKS состоит из трех основных компонентов: схемы взаимосвязей между работами. представляет собой структуру. а не отдельных его этапов. предназначенное для решения задач многокритериального адаптивного управления на базе методологии нейронных сетей [9].Gensym Scheduling Toolkit (GST) существует в двух вариантах. 9. так и в части методологии использования. Вторым положительным качеством системы является поддержка полного цикла разработки приложения. GST1 включает средства построения графиков Ганта. использующее NeurOn-Line.системных аналитиков.BPR) . назначением которого являются: 1) обеспечение возможностей ввода: модели использования ресурсов.одно из наиболее модных и динамично развивающихся направлений. В 1995 г. разработана на базе G2. фирма Gensym создала систему моделирования для разработки приложений в области организационного управления -ReThink. человеческих. 2) генерация расписания: определение недостаточности наличных ресурсов и 141 . Эта модель обеспечивает системный подход к документированию и пониманию текущего положения дел. машинных и системных ресурсов. конфигурирования календаря и средства сортировки. BPR сегодня .5. По принципам построения NeurOn-Line сходна с GDA. поскольку в данном случае они объединены в одном лице. Приложение. также Приложение 2. идеально подходит для реализации приложений в области BPR. Прямое взаимодействие с диаграммами дает возможность пользователю динамически изменять состав фиксируемой и отображаемой информации. цель которого дать возможность пользователям увеличить эффективность функционирования их организационных структур. SPC содержит богатый набор типов диаграмм для отображения динамики статистик контролируемого процесса и добавочные палитры параметризуемых блоков. описания и объема выполняемых работ.3 Gensym Scheduling Toolkit.серийное производство. силой (весами) связей. внедренной на 10 предприятиях. Разработчику предоставляется широкий спектр наиболее распространенных типов нейронных сетей. Основное назначение SPC .5. ReThink позволяет компании создать модель текущего делопроизводства. а на обычных управленцев. Объектно-ориентированный инструментарий со встроенными возможностями моделирования. представленных на бурно развивающемся рынке BPR [5]. Узлы осуществляют нелинейные преобразования сигналов.

Функциональная схема DSP 9.5.обобщение GST1 и GST2 в самостоятельном продукте для решения задач оперативного планирования Dynamic Scheduling Package. • диагностики спутников в INTELSAT. IBM Net View и DEC Policenter обеспечивается на уровне SNMP. является обобщением ряда прикладных систем в области управления телекоммуникациями: • системы управления сетями ATM.7. обеспечиваемая базовыми средствами G2. классы связей для представления физической среды передачи данных). позволяет говорить даже не об оперативном. получение оперативных корректировок и динамическое перепланирование расписаний. и графический язык для описания процедур тестирования и сетевых протоколов прикладного уровня.7.несоответствия установленным срокам. Один из типичных примеров использования G2 в управлении телекоммуникациями фирма INTELSAT. 9. положенный в основу генератора расписаний. физических ограничений технологического процесса и временного расписания рабочих смен (календаря).9. реализованная на базе G2. Основной принцип. Fault Expert содержит репозиторий объектов. обеспечивающая спутниковую связь для коммерческих и государственных организаций во всем мире. В ближайших планах компании . представляющих наиболее распространенное телекоммуникационное оборудование (различные типы компьютеров и терминальных устройств. По оценкам Рави Растоги. Рис. заключается в отказе от полного перебора вариантов плана за счет использования эвристик. а об "реактивном" планировании. функциональная схема которого представлена на рис. маршрутизаторы.4 Fault Expert Система Fault Expert. Взаимодействие с распространенными сетевыми менеджерами HP OpenView. руководителя группы 142 . Прямая связь Планировщика с технологическим процессом. модемы. • управления системой сообщений AT&T.

В отличие от традиционных средств моделирования BDK (рис. под руководством профессора Стефанопулоса. Копченова Н.: ЦРДЗ. Марон И. 2. Сравнительный анализ инструментальных средств для разработки систем управления реального времени.разработчиков второй очереди системы диагностики и мониторинга спутников и наземных станций слежения. Функциональная схема BatchDesign_Kit Массачусетском технологическом институте. подобная разработка обычными средствами потребовала бы около 20 человеко-лет и около 2 млн.8. начали разработку в январе 1993 г.исследователями и технологами. 1995. 3. дол. являющихся спонсорами ERRC. Мы не смогли бы сделать это так быстро другими средствами".В. и получили первую версию в июне.: Наука. Методические материалы. 1995. Статические и динамические экспертные системы (классификация.: ЦРДЗ. тенденции). 4. Десять ведущих производителей фармацевтической и тонкой химической продукции...5 Batchdesign_Kit .9.Б. затратили около 3 человеко-лет на разработку.А. 9. Вычислительная математика в примерах и задачах. BDK разработана ведущими специалистами в области создания новых технологических процессов. М. Фоминых И. Кисель Е.8) нацелена на концептуальное проектирование технологического процесса во взаимодействии с фармакологами. №2.9..В. . состояние. Материалы семинара "Экспертные системы реального времени". обеспечивали опытную эксплуатацию нового инструментального средства. ЛИТЕРАТУРА 1. Кисель Е.5. за программное обеспечение на базе G2. Попов Э.Б.Б. работающими в Рнс. 143 . Попов Э. 1995. 1972. объемом вредных отходов и производительностью. капиталовложений: "Мы заплатили около 700 000 дол. Использование BDK позволяет достичь баланса между стоимостью производства.М. химиками.В.М.интеллектуальное проектирование серийного производства в фармакологии BatchDesign_Kit (BDK) предназначена для быстрого синтеза новых технологических процессов в фармацевтическом производстве. Экспертные системы реального времени //Открытые системы. .

10. 2. 7.Gensym Corporation.. Proceedings of the Seventeenth Annual Advanced Control Conference .1993. Приведите структуру данных в G2. Expert System Application in Advanced Control. October. Gensym Corp. Приведите и кратко охарактеризуйте основные проблемно/предметноориентированные оболочки. G2: Gensym's Real-Time Expert System //Intelligent Software Strategies. September 30. November. 4. Riddell D. Girard. March. . A Guided Introduction to GDA. 1993. Siegel D. 3. Introducing G2 4.. USA). Сформулируйте главные возможности интерфейса G2 с внешним окружением.Cambridge: (Mass. Опишите цикл работы Планировщика G2. Rock D. November. July. July. 11. John E. Expert Systems in Real-Time Applications Experience and Opportunities. Приведите основные характеристики машины вывода G2.October 2. Опишите основные классы исполняемых утверждений G2.0 //Marketing Bulletin. 9.5. 9. 144 . NeurOn-Line Reference Manual. Robert L. . 1990. USA).Yu D. November. иерархию модулей и иерархию рабочих пространств инструментального комплекса G2. 2. Охарактеризуйте иерархию классов. 13.0. . 9.. Smedley P. Cambridge: (Mass. USA). 12. Gensym Corp.West Lafayette (Indiana).Vol. 1994. 8. 7.. Version 4. 5. 8. Укажите основные средства среды разработчика G2. 6. 1992. . 1994.0 Beta Rev. Gensym Corp. Moore. Harmon Paul. 6. 1994. G2 Reference Manual. 1991..Cambridge: (Mass. . Who's Number One in Customer Service? //Control. September. . разработанные на базе G2..No. 1992. Вопросы для самопроверки 1. NeurOn-Line Version 1. NASA Applies Gensym to Real-Time Problems //Research Highlights. Improving Business Process Reengineering //Al Expert. . 3.. Перечислите возможности подсистемы моделирования G2.

Жизненный цикл разработки прикладной системы в этом случае складывается из этапов анализа. Новые информационные технологии. Типовая иерархия отражает взаимосвязи "общее/частное".е разбиении их на составные части. рассмотрим главные особенности сложных систем. Главный из них . Классический подход к разработке сложных систем представляет собой структурное проектирование. Иерархичность. • серьезные ограничения возможностей сборки системы из готовых компонентов. к числу которых можно отнести [7]: • трудоемкость внесения изменений. Для сложной системы целесообразно моделировать два типа иерархии . Такой метод.последовательное выполнение этапов.11] особое внимание уделяет их иерархическому характеру. что разработка проекта ведется как бы по спирали. имеет следующие отличительные особенности: • линейность выполнения этапов жизненного цикла разработки. Для устранения этого недостатка Б. Для того чтобы раскрыть сущность объектно-ориентированного подхода к разработке приложений [9]. Каскадный принцип не согласуется с итеративным характером разработки программной системы. Г.ПРИЛОЖЕНИЯ. поддерживающим жизненный цикл их разработки. При объектно-ориентированном подходе ей соответствует иерархия объектов. определяющие требования к методикам и инструментальным средствам. Это приводит к большим потерям времени. при котором осуществляется алгоритмическая декомпозиция системы по методу "сверху-вниз". когда в центре внимания разработчиков программного обеспечения оказались сложные системы. которые выполняются последовательно. каждая из которых рассматривалась отдельно от других. образуемая 145 . Традиционно проектирование сложных систем основывалось на декомпозиции систем. программирования. Но и для него характерен ряд существенных недостатков. Например. возможности которого по восприятию информации весьма ограничены. затрудняющий программирование. программирование можно начать только по завершении анализа и проектирования. В объектно-ориентированном подходе ей соответствует иерархия классов. • большой объем документации по проекту. предшествующих программированию. Этот подход дополняет каскадный метод элементами итеративности.Боэм [10] предложил спиральный подход. принятые на предыдущих этапах [1.11]. Структурная иерархия показывает связи типа "часть/целое". проектирования. интегрируемые с технологией экспертных систем ПРИЛОЖЕНИЕ 1 Объектно-ориентированная технология Особенности сложных программных систем Интерес к объектно-ориентированным технологиям значительно возрос в последние годы прошлого десятилетия. Иерархическое построение таких систем облегчает понимание их человеком. причем на каждом ее витке выполняются последовательно перечисленные выше этапы. не поддающиеся программированию "в лоб". • сложность переноса на другие платформы. Описывая характерные черты сложных систем. поскольку на последних этапах может выясниться необходимость внесения изменений в решения. • использование процедурных языков программирования. не вдаваясь в детали реализации. не позволяет быстро разрабатывать прототипы программной системы. на которых уточняется проект [7].типовую и структурную. Он заключается в том. называемый каскадным. тестирования и сопровождения. т. Недостатки каскадного метода очевидны. Буч [1. • четкое разделение данных и процессов их обработки. В иерархических структурах человек может ограничиваться рассмотрением только определенного уровня. Создание подобных систем требует выполнения ряда этапов.

Современные интегрированные программные системы обычно используют в работе стандартные СУБД в основном реляционного типа. что модификация сложных приложений может столкнуться с существенными трудностями ввиду значительного объема таких систем и большого числа взаимосвязей между их компонентами. а его поведение в этом случае заключается в обращении в банк за кредитом.скрытие информации [3]. выявленных в процессе разработки. и совокупность методов . описание класса "магазины" может включать такие атрибуты. Класс определяет общие свойства для всех его объектов. Особенности объектно-ориентированного подхода Стремление избавиться от недостатков традиционного структурного подхода привело к развитию идей. При объектно-ориентированном 146 . описывающих атрибуты класса и соответствующих объектов.атрибутами контейнерных классов. Использование стандартных СУБД.процедур. заказ на поставку. К таким свойствам относятся состав и структура данных. при разработке приложения в большинстве случаев возникает необходимость проектирования логической структуры новой БД. которые индивидуальны для каждого объекта этого класса конкретного магазина. методы: формирование заказов на поставку товаров. объектами могут быть покупатель.д. банк. фирма. т. Например. обычно подвергаются многократной модификации. определяющих взаимодействие объектов этого класса с внешней средой. определяющий состояние объектов. Каждый объект является представителем некоторого класса однотипных объектов. основанных на объектной декомпозиции. Применяемые инструментальные средства должны поддерживать групповую разработку. Инкапсуляция . Иерархический характер сложных систем хорошо согласуется с принципом групповой разработки. Сборочное проектирование. делая заказ. Сложные системы. основанная на идее повторно используемых компонент [6]. в которой каждый выполняет свои определенные функции. В реальном мире. 4. В них должны быть предусмотрены возможности интеграции результатов работы отдельных участников проекта и защиты их от несанкционированного доступа. которые активно используются при объектно-ориентированном подходе и во многом определяют его преимущества. Объекты и классы обладают характерными свойствами. В этом случае деятельность каждого участника проекта ограничивается соответствующим иерархическим уровнем. Сборка прикладной системы из готовых компонент позволяет значительно сократить время разработки. штат сотрудников. Главной из них является преемственность. 11]. вызванных изменениями внешних условий и требований к системе. когда денег на его счете не хватает для оплаты. Объект обладает индивидуальностью и поведением. конкретный покупатель. значения которых определяют его состояние. накопленных ранее в БД. имеет атрибуты. Интеграция прикладной системы с базой данных (БД) ставит перед разработчиками ряд дополнительных задач. возможность использования в разрабатываемом приложении данных. так и с необходимостью внесения изменений и дополнений. Для интегрированных систем с архитектурой клиент-сервер используются специальные инструментальные средства. производящая определенные товары. а также абстрактные или реальные сущности. В основе его лежат понятия "объект" и "класс" [1. При разработке больших программных систем широко используется концепция сборочного проектирования. Такой подход к разработке программных систем получил название объектно-ориентированного.е. Это связано как с устранением ошибок. передача товара со склада в торговую секцию и т. Разработка сложной программной системы не может быть прерогативой одного человека. отладки или эксплуатации. Очевидно. как название и адрес. Для этой цели формируется группа. Для этого современные программные средства реализуются на комплексах с архитектурой клиент-сервер. Например. Модифицируемость проекта. Так. в качестве объектов могут рассматриваться конкретные предметы. размер текущего счета. Групповая разработка. может оказаться в состоянии. имеющие достаточно долгое время жизни. Кроме того. а точнее в интересующей разработчика проблемной среде. причем реализация таких систем обычно осуществляется в клиент-серверной среде.

Внутренняя структура объекта в этом случае скрыта от пользователя. если это требуется для решения поставленных проблем. отражающие их индивидуальность [3]. После обследования начинается объектно-ориентированное проектирование. Для того чтобы объект произвел некоторое действие. кроме как через его методы. Наследование . достаточные для их программирования. полученных на этапе анализа. Тем самым упрощается процесс исправления ошибок и модификации программ. При этом иерархический характер сложной системы отражается в виде иерархии классов. в ходе которого детализируется представление классов и объектов. Полиморфизм позволяет упростить исходные тексты программ. спецификации объектов. Процесс принципиально носит итеративный характер. обеспечивает их развитие за счет введения новых методов обработки.программировании имеется возможность запретить любой доступ к атрибутам объектов. передаются суперклассу. Здесь определяются требования к системе и осуществляется анализ проблемной среды. отделенными от внешнего мира. Объектно-ориентированная декомпозиция заключается в представлении системы в виде совокупности классов и объектов предметной области. Такой подход позволяет описать сложную систему наиболее естественным образом. объекты можно считать самостоятельными сущностями. П1. Инкапсуляция позволяет изменять реализацию любого класса объектов без опасения. Жизненный цикл разработки приложения при использовании объектноориентированного подхода Жизненный цикл объектно-ориентированной разработки программных систем содержит несколько этапов. методы. Результат обследования должен представлять достаточно полную модель системы.1. При проектировании системы могут вводиться новые классы и объекты. в ходе которого определяются основные классы и объекты. Цикл разработки программного обеспечения с использованием объектноориентированного подхода 147 . ему извне необходимо послать сообщение. но в отличие от структурного подхода в нем нет строгой последовательности их выполнения.способность объектов выбирать метод на основе типов данных. Наследование позволяет создавать иерархии классов. принимаемых в сообщении [2]. отношения между классами. Результатом проектирования должны быть детальная модель системы.1). Полиморфизм . разрабатываются сценарии взаимодействия объектов. Сообщения.возможность создавать из классов новые классы по принципу "от общего к частному".П1. что это вызовет нежелательные побочные эффекты в программной системе. Определяются структуры данных. которые составляют словарь проблемной среды. Разработка начинается с этапа обследования . Наследование позволяет новым классам при сохранении всех свойств классов-родителей (называемых в дальнейшем суперклассами) добавлять свои характеристики. классов и отношений.объектно-ориентированного анализа. а ее функционирование рассматривается как взаимодействие объектов. что полностью отвечает потребностям разработчиков (рис. обработка которых не обеспечивается собственными методами класса. которое инициирует выполнение нужного метода. Каждый объект может реагировать по-своему на одно и то же сообщение. Рис. являясь эффективным средством внесения изменений и дополнений в программные системы.

поэтому эффективность принятых методик анализа и проектирования имеет определяющее значение для судьбы проекта. когда изменение носит характер уточнения.одно из наиболее привлекательных свойств объектно-ориентированного 148 . вернувшись к этапу проектирования или даже к анализу. На этом этапе также возможно введение новых классов.Буч [11] рассматривает как единый этап. В более сложных случаях. а фиксированный интерфейс каждого класса. в результате которой приложение представляется в виде совокупности классов и объектов. Наследование (одно из основных свойств классов ) позволяет в этих случаях не только не пересматривать ранее созданные объекты и классы. Повторное использование программных компонентов. Достоинствами объектно-ориентированного подхода являются следующие. программирование и тестирование отдельных компонентов системы возможно до завершения проектирования. названный Г. применяемые при разработке программных систем. называемый эволюцией системы. но даже обойтись без их повторной трансляции.Бучем возвратным. Такой метод. обеспечивающим их развитие. В тех случаях. Главная особенность жизненного цикла при объектно-ориентированном подходе заключается в том. Для сложных систем возможность внесения изменений является естественным свойством. Упрощение внесения изменений. постепенное развитие которых приводит к конечному результату. добавление новых методов. но и тогда они будут локализованы. использующие эти методы.Программирование. При проектировании может выясниться необходимость дополнительного обследования. Изменения конфигурации оборудования не потребуют внесения изменений в проект. В гетерогенных сетях возможна реализация классов на компьютерах разных типов. Преимущества и недостатки объектно-ориентированного подхода Особенность процесса разработки современных сложных программных систем состоит в том. можно внести изменения и дополнений. В отличие от структурного подхода в объектноориентированном внесение изменений в проект имеет более локальный характер. В частности. наследующие поведение ранее созданных. Объектно-ориентированная декомпозиция. когда меняются методы. При объектно-ориентированном подходе модификация не требует полного пересмотра проекта. так и на серверах. В этом случае. Как отмечалось выше. Разрабатываемые в рамках проекта классы обычно отражают типовые проектные решения. При объектно-ориентированном подходе имеется возможность быстрого создания прототипов проектируемой системы. отражает итеративный характер процесса проектирования. что центр тяжести смещается от программирования к более ранним этапам . Современные объектноориентированные инструментальные средства. не подвергая проект полной переработке. что экономит время разработки. Следует отметить. затрагивая лишь необходимые для этого классы и объекты. обеспечивает гибкость архитектуры системы. поэтому их использование возможно и в других проектах. программирование и последующее тестирование могут потребовать возврата к проектированию. Модификация системы может рассматриваться как отдельный этап. При программировании может возникнуть необходимость внесения изменений в существующие классы или потребоваться введение новых объектов или классов. выполняемых на этом этапе. Возможность повторного использования программных компонентов . Переносимость и гибкость архитектуры. обеспечит правильность функционирования системы. вводятся новые классы. изменения в проекте будут более значительными. В клиент-серверной системе объекты могут размещаться как на клиентских местах. что нет строгой последовательности выполнения отдельных этапов. изменение структур данных. затрагивая лишь классы. тестирование и сборку системы Г. определяющие интерфейс классов. что программирование и тестирование отдельных компонентов системы возможно до завершения проектирования. определяемый набором его методов. обычно обладают достаточными возможностями по автоматизации действий.анализу и проектированию. что экономит время разработки. Распараллеливание работ. существует возможность автоматической генерации кодов программ.

Например. связей. Он вытекает из того. Следует отметить. связанная с уменьшением числа вызовов.от методов более высоких уровней иерархии к методам более низких уровней. • заниматься поиском подходящих для повторного использования программ. уменьшая тем самым число вызовов. Это связано с тем. • стремиться непременно найти такие программы. позволяют значительно снизить объем программирования при разработке новых проектов. тем большего эффекта можно достичь [12].75 -2. Например. Выходом может служить оптимизация начального варианта системы. отражающие программистский опыт в определенной области. замедляет работу приложения. Другие разработчики или эксперты имеют возможность опускаться до более мелких. Это позволяет снизить непроизводительные потери времени. При этом чем более высокого уровня объекты можно повторно использовать. что обращение к методу занимает в 1.11]. так как фирма может выполнять много заказов. если они лишь частично совпадают с тем. легко выделить объекты и статические связи между ними. чем в обычной подпрограмме [1. Библиотеки классов.всегда) используются отдельные методы Вызов метода высокого уровня абстракции приводит к тому. разработчики программных систем должны [8]: • осознавать выгоды такого подхода. Объектно-ориентированный подход позволяет описывать как статические. Объекты соответствуют существительным. свойства наследования и инкапсуляции позволяют каждому участнику проекта рассматривать модель на удобном для него уровне детализации. предполагающее поиск метода в классе. приходится прибегать к специальным программистским приемам. При наличии развитых библиотек классов проектирование и программирование новых приложений будет в основном сводиться к сборке системы из готовых компонентов.Буч. выполненному на естественном языке. где такие потери критичны. как указывает Г. наследование и полиморфизм . защищенные переменные можно сделать общедоступными и обращаться к ним напрямую. а заказ может быть выполнен разными фирмами. какие части задачи могут быть решены с применением уже существующих программных средств. Недостатки объектно-ориентированного подхода лежат в области программирования. Естественность описания. По описанию предметной области. что основные свойства классов и объектов -инкапсуляция. которому принадлежит получающий сообщение объект. где отражаются только основные классы. методов. Иерархический характер сложных программных систем позволяет значительно повысить эффективность повторного использования компонентов. • знать. Однако. • использовать их даже в том случае. фраза "фирмы выполняют заказы" позволяет выделить классы объектов "фирма" и "заказ" и отношение "выполнять" между ними типа M:N (многие к многим). Динамическое связывание. такая ситуация может оказаться неприемлемой. динамическое связывание при использовании строго типизированных языков применяется примерно в 20% случаев от общего числа вызовов методов. Руководители проекта могут работать с верхним уровнем модели. что для доступа ко многим атрибутам объектов (а к защищенным .полностью отвечают задаче повторного использования. что программист написал бы сам. Для того чтобы повторное использование компонентов приносило свои плоды.5 раза больше времени. конечно. так и динамические отношения между объектами модели. а связи глаголам и отглагольным формам. объекты и связи. что сказывается на их производительности. приводит к тому. Решение этой проблемы заключается в перераспределении классов по модулям. В приложениях. При этом логическое описание 149 . Это. что классы обычно объявляются в разных файлах и соответственно реализуются в разных сегментах. терминальных объектов. что в системе происходит каскад вызовов . На компьютерах с сегментированной организацией памяти объектно-ориентированные системы при работе могут осуществлять интенсивный межсегментный обмен. Другой недостаток связан с излишней многочисленностью методов и их вызовов. Кроме того. Если время является ограничивающим фактором.подхода. их свойств.

Отсутствие немедленной отдачи Существует достаточно распространенное мнение. то при объектно-ориентированном подходе к этому прибавляется опыт использования типовых проектных решений. Кроме того. Традиционная и объектно-ориентированная технологии с точки зрения получаемых результатов по-разному ведут себя по отношению к затратам на их освоение. Объектноориентированные технологии не дают немедленной отдачи. П 1. следует признать. которые надо предпринять. Таким образом. отражающих типовые проектные решения в данной области. При объектноориентированном подходе с приобретением опыта разработок кривая эффективности резко растет вверх Рис. Преодоление перечисленных затруднений связано с дополнительной работой программистов.11].модели не изменяется. достаточно очевидны. Для задач реального времени. 150 . нежелательным является динамическое создание и удаление объектов.2 показана диаграмма роста эффективности разработок в зависимости от затрат для структурного и объектно-ориентированного подходов. когда даже значительные дополнительные затраты не приводят к существенному повышению эффективности. Следует также заметить. что объектно-ориентированные языки включают средства. В большинстве случаев действия. П1. связанные с переходом к объектно-ориентированным технологиям. Проблемы. Диаграмма на рис. что недостатки объектно-ориентированного подхода с лихвой компенсируются его достоинствами. в процессе создания программы. но в то же время не требует очень больших усилий. подобные проблемы возникают весьма редко. При использовании традиционных технологий некоторые результаты можно получить и при сравнительно небольших затратах.2. поэтому переход на объектноориентированные технологии связан с большими затратами. однако на определенной стадии наступает насыщение. которые не окупаются. Эффект от их применения начинает сказываться после разработки двух-трех проектов и накопления повторно используемых компонентов. Рост эффективности разработок по отношению к затратам при традиционном и объектно-ориентированном программировании за счет рассмотренных выше преимуществ. в особенности из-за возможности сборки систем из готовых программных компонентов. состоят в следующем. что также активно используется в объектно-ориентированных языках. выполняющихся в высоком темпе. что объектно-ориентированный подход труден для понимания. В действительности дело обстоит по-другому. На рис. П1. В [1] предлагается выполнять размещение таких объектов априорно. позволяющие достичь более высокого быстродействия программ по сравнению с традиционными языками [1.3 демонстрирует сокращение сроков разработок проектов В обоих случаях есть стремление к определенным пороговым уровням Но если для традиционного подхода снижение времени разработки связано в основном с ростом квалификации участников проектов. а не во время работы критичных по времени алгоритмов.

С. . . . Внедрение объектно-ориентированных технологий может натолкнуться на сопротивление некоторых участников проектов. Объектно-ориентированный подход к разработке прикладных программных систем //PC magazine. 43. 3.1995. 2. May. . Object-Oriented Analysis and Design with Applications // Bengamin/Cummings. 31.В..1995.Bernstein В.. Mood J./Tibbetts J.104. изучать новые языки программирования. . 21. Инкапсуляция данных и наследование свойств в Си++ //PC Magazine /USSR/. 6. The OOP Survial Guide. .№ 25(5).l991. Переход на объектно-ориентированные технологии связан с преодолением психологических трудностей. . . 5. ЛИТЕРАТУРА 1. 7. . Буч Г. . В связи с этим необходимо уделять значительное внимание мерам.97.новое мышление в программировании //PC Magazine /USSR/. 12. П1. 151 .P.1988. .1991. Снижение сроков разработки при традиционном и объектноориентированном подходах. Психологические трудности. Redword City.Рис. Метод "по спирали" быстро ведет к цели //Деловой мир. .С.Липаева. Дункан Р. 4.Datamation.24. .№ 12. Штрик А.С. В. Дункан Р. Замещение операторов и функций в Си и Си++ //PC Magazine /USSR/. . /Под ред.№ 23 . 89 . 1992.№15. 30. 99 .В. 44. Технология сборочного программирования.//Computerworld-Moscow. Новоженов Ю.272 с.А. Пер с англ.№3. . 1994.М.72. 1991.В.С.М.З. 11. ./Agila C. Программы многократного использования становятся реальностью.. . Разработчикам и программистам приходится отвыкать от традиционных способов мышления.1995.№3. . USA. 93 . 9.: Радио и связь. .1995. предпринимаемым для достижения этой цели [5]. Липаев В.№3.92.№ 18.А. Позин Б. 61 . Object Methods Tame Reengeneering Madness. Making reuse a reality. 10. . Объектно-ориентированное проектирование с примерами применения. Booch G. A spiral model of software development and enhancement //IEEE Computer. . . Си++ . 8. .: Конкорд. . 48. . CA.A. Boehm В.519 с.1995. Дункан Р. P. 1992 .//Компьютеруик.С. Как внедрить объектно-ориентированный подход.

В настоящее время БПР взят на вооружение почти всеми ведущими компаниями мира. М. таком. в которых уже потребитель диктует свои условия производителям. в США проводятся ежегодные конференции по БПР. Хаммер. по данным Ernst & Young. качество. на реинжиниринг своих подразделений. услуги и темпы" [5]. так и к постоянно меняющимся запросам своих клиентов: изменение бизнес-процессов превращается в практику повседневной жизни „компании. послужившие базой для успешного развития бизнеса в течение последних двухсот лет (эффективная организация железных дорог в Северной Америке в 1820-х годах. Подчеркнем. При этом клиентам отводится самый нижний уровень иерархии. Решением проблемы являются смена базовых принципов организации компаний и переход к ориентации не на функции. и др. В частности. а не наоборот."Business process reengineering"). БПР подверг ревизии принципы организации бизнес-процессов на основе разделения труда. конвейер Генри Форда. Соревнование между производителями привело к дроблению массового рынка на относительно небольшие ниши.). При этом реинжиниринг рассматривается как необходимое условие выживания современных компаний в условиях жесткой конкурентной борьбы на мировом рынке. что они неадекватны современным условиям. начиная с 1990 г. около 2. С 1994 г.к изменению роли потребителя. В этих условиях инерционность пирамидальной структуры оказалась тормозом на пути к выживанию компаний. Однако развитие современных технологий привело к исчезновению стабильности. 100 крупнейших банков Северной Америки затратят в 1997 г.ПРИЛОЖЕНИЕ 2 Бизнес-Процесс "РЕИНЖИНИРИНГ" и интеллектуальное моделирование компаний Бизнес-процесс "реинжиниринг". Потребитель в настоящее время имеет существенно больший выбор не только товаров и услуг. Хаммер и Дж. автор термина "реинжиниринг". а на процессы. 152 . рынках сбыта и потребностях клиентов стали обычным явлением. или БПР (в оригинале . БПР рассматривается как наиболее эффективная концепция: М. что принципы разделения труда. Необходимость реинжиниринга связывается с высокой динамичностью современного делового мира. где они представлены безликим "массовым потребителем". а также постоянно растущем спросе на товары и услуги. считает появление БПР революцией в бизнесе. он может приобрести настольный издательский комплекс).Смитом. внедренные в Дженерал Моторс. и показал. принципы управления большими компаниями Альфреда Слоуна. За последние полтора года правительство США начало более 200 проектов по реинжинирингу. исходят из предположения об относительной стабильности существующих технологий. В подобных условиях наиболее эффективными оказались компании с иерархической пирамидальной структурой. стремясь выжить и сохранить конкурентоспособность. а о кардинальном повышении их эффективности в десятки раз. и превращает конструирование бизнеса в инженерную деятельность. что речь идет не о небольшом усовершенствовании бизнес-процессов компаний. а рост конкуренции . но даже технологий (например. В результате производитель вынужден непрерывно приспосабливаться как к новым технологиям. Из всех концепций менеджмента.. вызывает активный интерес специалистов в области менеджмента и информационных технологий (ИТ). как на 10 -100%.9 млрд. организованные по функциональному признаку. вынуждены непрерывно перестраивать свою стратегию и тактику. при котором потребитель не имеет широкого выбора и довольствуется уже самим наличием продукции. предложенные А. которая знаменует отход от базовых принципов построения компаний. Непрерывные и довольно существенные изменения в технологиях. Дело в том. Управление строится исходя из административно-командных принципов. Чампи определяют реинжиниринг как "фундаментальное переосмысление и радикальное перепроектирование бизнес-процессов компаний для достижения коренных улучшений в основных актуальных показателях их деятельности: стоимость. основанных на процессах. дол. например.Смитом в "Богатстве наций". предложенных 200 лет назад А. и компании.

в оригинале business process automation. Но автоматизация приводит лишь к ускорению существующих процессов. Автоматическое Объекты сами информируют о необходимо знать. где они находятся Лучший контакт с Интерактивный Лучший контакт с потенциальным покупателем видеодиск потенциальным покупателем личный контакт эффективный контакт Чтобы найти некоторый объект. П2. по мере необходимости 153 . Каким же может быть вклад информационных технологий в организацию деятельности компании? Очевидный ответ . где он индексирование и своем местонахождении находится отслеживание Планы работ пересматриваются Высокопроизводительны Планы пересматриваются и и корректируются периодически е компьютеры корректируются оперативно. Можно выделить два вида влияния информационных технологий на перестройку деятельности компаний и соответственно две группы технологий. в частности технологии динамических экспертных систем.1). имеющих пересечение (рис. БПА дает улучшение на десятки процентов. Технологии второй группы обеспечивают появление новых процессов. хранения. П2. Беспроводная связь и Сотрудники могут посылать и поиска и передачи информации переносимые получать информацию из того требуется офис компьютеры места.1 Влияние информационных технологий на переход к новым правилам работы компаний Прежнее правило Технология Новое правило Информация может появляться в Распределенные базы Информация может появляться одно время в одном месте данных одновременно в разных местах тогда.Возможность такой революции обусловлена в первую очередь новейшими достижениями в области информационных технологий. которое предусматривает подлинный реинжиниринг (как правило. сотрудника (иерархическое средства моделирования принятие решений) Для получения. частью работы каждого доступ к базам данных.1). в то время как БПР позволяет достичь выигрыша в сотни процентов). когда она необходима Сложную работу могут Экспертные системы Работу эксперта может выполнять только эксперты выполнять специалист по общим вопросам Необходимо выбирать между Телекоммуникационные Бизнес может пользоваться централизацией и сети преимуществами централизации децентрализацией бизнеса и децентрализации одновременно Все решения принимают Средства поддержки Принятие решений становится менеджеры принятия решений. На самом деле информационные технологии позволяют изменить базовые правила организации работы (табл. Технологии первой группы обеспечивают проведение БПР за счет автоматизации работ по реинжинирингу. которое не может в большинстве случаев привести к тому многократному улучшению эффективности. Таблица П2.это автоматизация бизнес-процессов (БПА). позволяющих перейти к новым правилам работы в организациях.

Реинжиниринг отбрасывает это предположение. выполнявшиеся различными сотрудниками. чем при традиционной организации работ. Кроме того. исходили из предположения. выполненные компаниями. что переход от традиционной организации работ к выполнению процесса одним сотрудником уменьшает количество людей и ускоряет выполнение процесса примерно в 10 раз. В ходе реинжиниринга компании осуществляют не только горизонтальное. Наличие в команде нескольких человек неизбежно приводит к некоторым задержкам и ошибкам.П2. где при традиционной организации работ исполнитель должен был обращаться к управленческой иерархии для принятия решений. он принимает решения самостоятельно. Однако потери здесь значительно меньше. но и вертикальное сжатие процессов. при традиционной организации работ трудно (а иногда и невозможно) определить ответственного за быстрое и качественное выполнение работы.горизонтальное сжатие процесса. которая несет ответственность за данный процесс. При традиционной организации работ. В этом случае создается команда. Информационные технологии в БПР Чтобы пояснить. что в тех точках процесса. ни глубоких и всесторонних знаний. ни склонности. или рабочие процедуры. К другим достоинствам горизонтального сжатия процессов относятся следующие: • уменьшается количество ошибок и отпадает необходимость в специальной группе сотрудников для устранения этих ошибок. каким образом проведение БПР повышает эффективность работы компании. Наделение сотрудников большими полномочиями и увеличение роли каждого из них в работе компании 154 . Вертикальное сжатие происходит за счет того. Несколько рабочих процедур объединяются в одну. когда исполнители процесса подчиняются различным подразделениям компании (возможно. • улучшается управляемость за счет уменьшения количества людей и четко распределенной ответственности между ними.Рис. в рамках которой на каждом рабочем месте выполняются простые задания. Исполнители принимают самостоятельные решения. что представляется естественным при отказе от массового производства и при современном уровне образования. рассмотрим. интегрируются в одну . Наиболее характерным свойством перепроектированных процессов является отсутствие технологии "сборочного конвейера". ориентированной на выпуск массовой продукции.1. как реинжиниринг изменяет перепроектируемые бизнес-процессы. Сравнительные оценки. показывают. На практике далеко не всегда удается сжать все шаги процесса к одной работе. что исполнители не имеют ни времени. выполняемой одним сотрудником. необходимых для принятия решений. возникающим при передачи работы между членами команды. располагающимся на различных территориях). Вместо этого процедуры. которые провели реинжиниринг.

имеющие различные версии исполнения. Традиционный процесс ориентирован на производство массовой продукции для массового рынка. перед выполнением заказа соответствующий отдел компании проверяет право клиента сделать данный заказ. не производящих непосредственных ценностей для заказчика. Шаги процесса выполняются в естественном порядке. Традиционные процессы насыщены подобными шагами. свойственного традиционному подходу.приводят к значительному повышению их отдачи. что заметно сокращает время и стоимость проверок. Механизм "уполномоченного" менеджера применяется в тех случаях. Проверки и управляющие воздействия непосредственно не производят материальных ценностей. реинжиниринг распределяет работу между границами подразделений. Работа выполняется в том месте. осматривает товар. когда шаги процесса либо сложны. транспортный отдел и т. поэтому задача реинжиниринга . размещает заказ. После проведения реинжиниринга отделы перешли к самостоятельному заказу дешевых товаров. при всех возможных входах процесса). . Отдел заказов находит производителя. стирание граней между функциональными подразделениями. состояния рынка и т. которые бы имели место при отсутствии проверок. Вместо проверки каждого из выполняемых заданий перепроектированный процесс часто объединяет эти задания и осуществляет проверки и управляющие воздействия в отложенном режиме. Описанный процесс является достаточно расточительным и медленным.сократить их до экономически целесообразного уровня.е. позволяя распараллеливать процессы там. было установлено. При общей целесообразности проверок многие компании не задумываются над тем. Уменьшается количество проверок и управляющих воздействий. что процесс должен иметь различные версии исполнения в зависимости от конкретной ситуации.. На практике довольно часто оказывается. в простом случае выполняется автоматизированная процедура. что стоимость проверок и управляющих воздействий превосходит стоимость потерь. Еще один вид работ. какая версия процесса наиболее подходит в данном конкретном случае (например. Кроме того. то он обращается с заявкой в отдел заказов. а также подлинность подписи клиента и финансовую состоятельность его подразделения или организации. что приводит к повышению эффективности процесса в целом. например. В традиционных компаниях работа организуется по функциональным подразделениям: отдел заказов. Реинжиниринг предлагает более сбалансированный подход. в нетривиальном случае привлекается специалист и в сложном случае специалист приглашает экспертов). Задача реинжиниринга состоит в минимизации согласований путем сокращения внешних точек контакта и. что их интеграция силами небольшой команды 155 . Проведенный в одной из компаний США анализ показал [3]. что 35% всех заказов составляют заказы стоимостью менее 500 дол. договаривается о цене. определяющего. так как каждый вариант ориентирован только на одну соответствующую ему ситуацию. Итак. Новые процессы в отличие от традиционных являются более ясными и простыми. Так.д. либо распределены таким образом. оплачивает его и передает конструкторам. как следствие.это согласования. устраняя излишнюю интеграцию.п. "Уполномоченный" менеджер обеспечивает единую точку контакта. и если конструкторскому отделу требуется новый карандаш. Высокая динамичность рынка приводит к тому. Традиционные процессы обычно оказываются довольно сложными. единственное назначение которых контроль за соблюдением исполнителями предписанных правил. где это возможно. Процессы имеют различные варианты исполнения. составили 100 дол. поэтому он должен исполняться единообразно независимо от исходных условий (т. Минимизируется количество согласований. Реинжиниринг процессов освобождает от линейного упорядочивания рабочих процедур. где это целесообразно. сколько стоит проведение этих проверок. что при традиционном распределении работ внутренние затраты компании на приобретение батарейки стоимостью 3 дол. начинаются с некоторого проверочного шага. Новые (перепроектированные) процессы. так как они учитывают различные исключения и частные случаи.

т. менеджер должен быть способен отвечать на вопросы заказчика и решать его проблемы. системы убеждения и ценностей. Поэтому менеджер должен иметь доступ ко всем информационным системам. которым работа делается. необходимы продуманные системы управления и оценок. выполняемые командами процессов. клиент получил кредит. т. Вследствие децентрализованности этого банка каждое из его подразделений выдало этому клиенту по 20 млн. Современные технологии дают возможность компаниям действовать полностью автономно на уровне подразделений. системы управления и оценок. В традиционной компании процессы разбиты на простые работы. Чтобы выполнить эту роль. как люди организованы для выполнения работ. Компания может быть представлена в виде ромба с вершинами (см. были заинтересованы в удовлетворении потребностей клиентов в товарах или услугах. способу. определяют. как оценивается эффективность работы и как работа оплачивается. Итак. так как каждое подразделение отслеживает только ту часть рынка. В определении реинжиниринга подчеркивается решающая роль радикального перепроектирования бизнес-процессов. не будет эффективным. Преобладает смешанный централизованно-децентрализованный подход. Вершина 1 определяет вершину 2. спроектированный так.2): бизнеспроцессы. используемым в процессе. Дело в том. В новой компании процесс разбивается на сложные (многоплановые) работы. для успешного функционирования компании все четыре аспекта бизнес-системы должны быть согласованы.. чем планировал банк. процесс исполнения заказов клиента. в которой банк установил для одного из своих клиентов максимальный кредит в размере 20 млн дол. что наиболее важны скорость и точность. Таким образом система убеждений и ценностей оказывает влияние на процессы компании (вершина 1). П2. Подобный децентрализованный подход может приводить к хаосу. Однако необходимо помнить. Важность объединения достоинств централизации и децентрализации можно проиллюстрировать на примере работы банков. В [5] описана реальная ситуация. что он быстро и точно исполняется. Рис. и ко всем исполнителям. сохраняя при этом возможность пользоваться централизованными данными.е. но не заканчивается на этом.П2. если исполнители убеждены.2. что выяснилось только после банкротства клиента. "Уполномоченный" менеджер играет роль буфера между сложным процессом и заказчиком. дол. По сути реинжиниринг объединяет в единое целое процессы. Например. как если бы он был ответственным за весь процесс. которая соответствует его профилю. Менеджер ведет себя с заказчиком так. которая характеризует природу выполняемых работ и то. что фундаментальное изменение бизнес-процессов оказывает воздействие почти на все аспекты компании. рис.невозможна. выполняющие работу. Ценности и убеждения сотрудников должны способствовать эффективному выполнению процессов. что реинжиниринг начинается с перепроектирования бизнес-процессов. а также механизмы формирования системы ценностей и убеждений сотрудников. При работе с крупными корпорациями многие банки осуществляют с одним и тем же клиентом независимые финансовые отношения через свои различные подразделения. Вершина 1 ромба соответствует бизнес-процессам компании. Рассмотрим теперь более подробно последствия реинжиниринга в контексте описанных выше четырех аспектов. выполняемые функциональными подразделениями. в несколько раз больший. работы и структуры. Системы управления и оценок. которые по предложению Адама Смита 156 .е. Переход от функциональных подразделений к командам процессов. Компоненты бизнес-системы Для того чтобы люди.

процесс. В традиционной компании схема оплаты довольно прямолинейна: людям платят за отработанное время.много лет назад были разбиты на отдельные простые части. Член команды в отличие от сотрудника традиционного подразделения. Понятно. Таким образом. Действительно. Члены команды фокусируют свои усилия на потребностях пользователей. При завершении проекта команды этого типа расформировываются. но и о непрерывном образовании своих сотрудников. В связи с тем. вызванные преодолением границ между подразделениями традиционной организации. принимаемым на работу. распределяя свое время между несколькими проектами. Один тип команды объединяет некоторое число совместно работающих людей различных специальностей. которые уже знают все. то они не являются членами команды. в частности проблему несогласованности и даже противоречивости целей различных групп людей. Работа члена команды становится более содержательной. Один человек может быть одновременно членом нескольких виртуальных команд. состоящий не в разделении людей по подразделениям. В связи с многоплановостью и изменяемостью работ. как правило. что в данном случае команда выполняет повторяющуюся работу. а в объединении людей в команды процессов. требует. повторяющуюся работу. в которых они выполняют предписанные им функции (части процессов). чтобы ее сотрудники не следовали предписанным правилам. Рассмотрим наиболее часто встречающиеся типы команд. Такой тип команды используется компанией Bell Atlantic [5]. завершившая реинжиниринг. Традиционные компании готовят своих сотрудников на обучающих курсах. Третий тип команды подобен первому описанному нами типу. что от них может потребоваться. выполняющих совместно законченную часть работы . Реинжиниринг предлагает альтернативный подход. а их члены переходят в другие проекты и команды. но и понимать весь процесс в целом и уметь при необходимости выполнять не одно. что это далеко не самый 157 . Компания. работающие в команде. передача полномочий исполнителям является обязательным условием проведения реинжиниринга. члены команды объединяются на длительное время. при непрерывно изменяющемся окружении невозможно нанять людей. Изменяются требования к подготовке сотрудников: от курсов обучения к образованию. отмечают.. чтобы ее работники следовали предписанным правилам. но состоит из одного человека. отделам. группам и т. цель которых обучить. Команды процессов заменяют старые функциональные подразделения. Традиционная компания требует. компании должны заботиться не только о проведении обучающих курсов. так как из нее в ходе реинжиниринга устраняются лишние проверки. члены команды уполномочены принимать самостоятельные решения. Изменяются оценка эффективности работы и оплата труда: от оценки деятельности к оценке результата. т. лабораториям. В этом случае команда создается на время решения задачи. сложной задачи. ориентированных на процессы. Эта фракционность создает множество проблем. В зависимости от сути выполняемых работ используются различные типы команд процессов. Работа исполнителя изменяется от простой к многоплановой. Другой тип команды объединяет людей для решения некоторой эпизодической и. которую они исполняли в функциональном подразделении. отвечающего за отдельные задания (части процесса). В традиционно организованной компании люди распределяются по отделениям.п. как выполнять некоторую конкретную работу или как управлять той или другой специфической ситуацией. Люди. что их работа значительно отличается от работы. ожидания. Проведение реинжиниринга влечет за собой изменение требований к сотрудникам. а несколько заданий. т. в группы людей.е. согласования. Требования к работникам изменяются: от контролируемого исполнения предписанных заданий к принятию самостоятельных решений. а не на потребностях начальства. Если исполнители должны ждать указаний по их работе.е. несет совместно с другими членами команды ответственность за весь процесс. Команды подобного типа называют виртуальными командами. а предлагали свои правила. выполняющих рутинную. что требует умения не только выполнять свое задание.

Таким образом.е. возникающие у них в ходе выполнения процесса. Традиционная практика недооценивает как работу исполнителя. Реинжиниринг приводит к тому. чем деятельность по производству товаров и услуг. что команда процесса полностью отвечает за выполнение своего процесса. устраняются управляющие воздействия на исполнителей со стороны менеджеров. Несмотря на очевидность этого принципа. Усложнение работ. Изменяется цель работ: от удовлетворения потребностей начальника к удовлетворению потребностей клиентов. В результате реинжиниринга бизнес-процессы становятся проще. 158 . Реинжиниринг требует от исполнителей убежденности. а не для своих начальников. После проведения реинжиниринга команда отвечает за результаты процесса. т. Продвижение по службе есть функция от способностей сотрудника. Наградой за эффективность работы должна быть премия. что для него вершина успеха состоит в переходе из исполнителей в менеджеры. что они работают для клиентов. сколько эффективностью его работы. оцениваемой по конечному результату. становятся сложнее. Недооценка роли исполнителя выражается в том. Критерий продвижения в должности изменяется: от эффективности выполнения работы к способности (умению) выполнять работу. приводит к тому. Ошибочность этого утверждения очевидна любому спортивному болельщику. продвигаем за способности". и компания получает плохого руководителя за цену хорошего программиста. он часто нарушается. количеством подчиненных и занимаемой должностью. и в этом случае компания может измерить эффективность работы команды и оплатить ее в соответствии с полученным результатом. их задача теперь состоит не в выдаче управляющих и контролирующих воздействий. Так. Подобный вывод часто оказывается ошибочным. а не от эффективности его работы. важностью выполняемой работы. однако при разбиении работы на простые задания компания не имеет возможности оценить эффективность узкого задания. выполняемых исполнителями. Одним из последствий реинжиниринга является проведение четкого различия между продвижением сотрудника и эффективностью его работы. в связи с тем. что зарплату им платят клиенты. знающему. По этой причине базовая зарплата сотрудника меняется мало. руководство фирмы Xerox Corporation не только говорит своим сотрудникам. Функции менеджеров изменяются от контролирующих к тренерским. даже выдающийся спортсмен. например.е. Кроме того. но и реализует это высказывание следующим образом: основная часть премии менеджеров зависит от степени удовлетворения ими клиентов. • жалованье сотрудника определяется не столько временем. трудовым стажем. Кроме того. Недооценка роли менеджера состоит в утверждении. в которой практика работы компании подтверждает это. фактически традиционные компании оценивают управленческую деятельность выше. то он подходит на должность руководителя лаборатории программистов. а в помощи членам команды решать проблемы. что уменьшается работа менеджеров по контролю за ходом выполнения процесса. что не любой. Исполнители будут верить этому в той степени. Реинжиниринг вызывает существенный сдвиг в культуре компании. а отдельные задания (шаги) процесса. который непосредственно не участвует в работе команды.эффективный способ оплаты. но помогает команде выполнить ее работу с минимальными непроизводительными затратами. что любой хороший исполнитель может стать хорошим менеджером. проведенным на работе. увеличение эффективности узкоопределенного задания не всегда приводит к увеличению эффективности всего процесса. Именно этот вид деятельности требует от менеджера подлинного профессионализма. может стать хорошим тренером. что компании пересматривают базовые предположения об оплате труда. так и работу менеджера. награду за высокую эффективность он получает в виде премий. а не продвижение по службе. свойственные традиционному подходу: • эффективность работы сотрудника в текущем году не является гарантией его эффективной работы в следующем году. Функции менеджеров изменяются. принцип компаний должен быть таков: "платим за эффективность. Типичным является такое рассуждение: если N хороший программист. т. менеджер выполняет функции тренера. выполняемые исполнителем.

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