Информатика -продвинутый курс


§ ЭКСПЕРТНЫЕ СИСТЕМЫ


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

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

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

• символьные рассуждения - знания, на которых основана экспертная система, представляют в символьном виде понятия реального мира, рассуждения также происходят в виде преобразовании символьных наборов;

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

• самосознание - экспертная система должна включать в себя механизм объяснения того, каким образом она приходит к решению задачи.

Экспертные системы создаются для решения разного рода проблем, но они имеют схожую структуру (рис. 2.27); основные типы их деятельности можно сгруппировать в категории, приведенные в табл. 2.5.

Рис. 2.27. Схема обобщенной экспертной системы

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

Таблица 2.5 Типичные категории способов применения экспертных систем



Категория

Решаемая проблема

Интерпретация

Прогноз

Диагностика

Проектирование

Планирование

Наблюдение

Отладка

Ремонт

Обучение

Управление

Описание ситуации по информации, поступающей от датчиков

Определение вероятных последствий заданных ситуаций

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

Построение конфигурации объектов при заданных ограничениях

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

Сравнение результатов наблюдений с ожидаемыми результатами

Составление рецептов исправления неправильного функционирования системы

Выполнение последовательности предписанных исправлений

Диагностика и исправление поведения обучаемого

Управление поведением системы как целого

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


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

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

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


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

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

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

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

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



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

Рассмотрим примеры наиболее известных классических экспертных систем, с которых началось создание и развитие этого типа программных средств.

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

Система MYCIN справляется с задачей путем назначения показателя определенности каждому из своих 450 правил. Поэтому можно представлять MYCIN как систему, содержащую набор правил вида «ЕСЛИ... , ТО» с определенностью Р. В случае MYCIN их предоставили люди-эксперты, которые изложили и правила, и указали свою степень доверия к каждому правилу по шкале от 1 до 10. Установив эти правила и связанные с ними показатели определенности, MYCIN идет по цепочке назад от возможного исхода, чтобы убедиться, можно ли верить такому исходу. Установив все необходимые исходные предпосылки, MYCIN формирует суждение по данному исходу, рассчитанное на основе показателей определенности, связанных со всеми правилами, которые нужно использовать.



Допустим, чтобы получить исход Z, требуется определить предпосылки Х и Y, дающие возможность вывести Z. Но правила для определения Х и Y могут иметь связанные с ними Показатели определенности Р и О . Если значения Р

и Q были равны 1,0, то исход Z не вызывает сомнения. Если Р и Q меньше 1,0 (как это обычно бывает), то исход Z не последует наверняка. Он может получиться лишь с некоторой степенью определенности.

MYCIN не ставит диагноз и не раскрывает его точный Показатель неопределенности.

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

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

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

DENDRAL - это старейшая, самая разработанная экспертная система в мире. Или, по крайней мере, старейшая система, названная экспертной.

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


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

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

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

PROSPECTOR - это экспертная система, применяемая при поиске коммерчески оправданных месторождений полезных ископаемых.

Система PROSPECTOR, по аналогии с MYCIN, содержит большое число правил, относящихся к различным объектам, а также возможных исходов, выведенных на их основе. В этой системе используется также «движение по цепочке назад» и вероятности. Методы этой системы являются одними из лучших среди всех разработанных методов для любой из существующих ныне систем.



Самый простой случай - правила, выражающие логические отношения. Это правила типа «ЕСЛИ X,

ТО Z», где событие Z непосредственно вытекает из X.

Они остаются такими же простыми, если сопоставить Х некоторую вероятность.

Если у Х

всего один аргумент, то это правило существенно упрощается. Обычно вместо Х мы представляем более сложное логическое выражение, например (X И Y) или (X ИЛИ Y).

Если элементы отношения связаны с помощью логического И и отдельным элементам этого отношения сопоставлены определенные вероятности, то система PROSPECTOR выбирает минимальное из этих значений и присваивает эту минимальную вероятность рассматриваемому возможному исходу. Поэтому когда вероятность наступления события X равна 0,1 и вероятность наступления события Y равна 0,2, то вероятность исхода Z равна 0,1. Легко видеть, почему выбран такой метод: чтобы Z было истинным, и X, и Y должны быть истинными. Это является «жестким» ограничением, поэтому следует брать минимальное значение.

Система PROSPECTOR пользуется методом, основанным на применении формулы Байеса с целью оценки априорной и апостериорной вероятностей какого-либо события. В целом правила в системе PROSPECTOR записываются в виде ЕСЛИ ..., ТО (LS, LN), причем каждое правило устанавливается с отношением правдоподобия как для положительного, так и для отрицательного ответа.

Система PROSPECTOR предлагает пользователю шкалу ответов в диапазоне от -5 до + 5. Нижний предел - это определенно «Да», верхний - определенно «Нет».

Обычно ответ пользователя находится где-то между крайними значениями, и PROSPECTOR корректирует Р(Н), учитывая LS и LN с помощью линейной интерполяции. Это легко представить себе в виде линейной шкалы, где LN - крайнее левое, а LS - крайнее правое значения.

Кроме экспертных систем MYCIN, DENDRAL и PROSPECTOR существует большое количество других экспертных систем. В табл. 2.6 приводится список некоторых систем, отличительной особенностью которых является наличие большой базы знаний. Этот перечень, конечно, весьма неполный, потому что в последнее время происходит быстрое расширение сферы применения экспертных систем, и полный их перечень был бы огромным и устарел бы почти сразу после его опубликования.



В этом списке приведены также «пустые» экспертные системы (не содержащие конкретных правил предметных областей) и экспертные системы по построению других экспертных систем. Такие системы являются инструментальными средствами .гля создания прикладных экспертных систем. Они значительно облегчают задачи создания полномасштабной прикладной экспертной системы.

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

• символьные языки программирования, ориентированные на создание ЭС и систем искусственного интеллекта (например, LISP, INTERLISP, SMALLTALK);

•языки инженерии знаний, т.е. языки высокого уровня, ориентированные на построение ЭС (например, OPS-5, LOOPS, Пролог, KES);

• системы, автоматизирующие разработку (проектирование) ЭС (например, КЕЕ, ART, TEIRESLAS, AGE, TIMM); их часто называют окружением (enviroment) для разработки систем искусственного интеллекта, ориентированных на знания;

• оболочки ЭС (или пустые ЭС) - ЭС, не содержащие знаний ни о какой проблемной области (например, ЭКСПЕРТИЗА, EMYCIN, ЭКО, ЭКСПЕРТ).

Таблица 2.6 Список некоторых экспертных систем

Наименование системы

Назначение системы

MYCIN

Медицинская диагностика

PUFF

Тоже

PIP

»

CASNET

»

INTERNIST

»

SACON

Техническая диагностика

PROSPECTOR

Геологическая диагностика

DENDRAL

Определение химической структуры вещества

SECHS

Тоже

SYNCHEM

»

EL

Анализ цепей

MOLGEN

Генетика

MECHO

Механика

PECOS

Программирование

Rl

Конфигурирование компьютеров

SU/X

Машинная акустика

VM

Медицинские измерения

SOPHIE

Обучение электронике

GUIDON

Медицинское обучение

TE1RESIAS

Построение базы знаний

EMYCIN

Тоже

EXPERT

»

KAS

»

ROSIE

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

AGE

Тоже

HEARSAY |||

»

AL/X

»

SAGE

»

Micro-Expert

»


Содержание раздела