Экспертные системы. Учебное пособие по специальности 080801 «Прикладная информатика (в информационной сфере)»
.pdfКлассы задач |
|
Примеры экспертных систем |
|
|
|
Конфигурирование и разработка объектов, |
|
Проектирование |
|
удовлетворяющих определенным требованиям |
|
|
SYN (синтез электрических цепей) |
||
|
|
||
|
Выявление неисправностей системы через наблюдение |
||
|
1. |
CRIB (диагностика ошибок в аппаратуре и мат. |
|
|
|
обеспечении ЭВМ); |
|
|
2. |
MYCIN (обнаружение инфекционного заболевания |
|
Диагностика |
|
крови/терапия антибиотиками); |
|
3. |
DART (обнаружение и локализация неисправностей |
||
|
|||
|
|
в ЭВМ); |
|
|
4. |
INTERNIST (обнаружение заболевания внутренних |
|
|
|
органов); |
|
|
5. |
DIDIMA (ранняя диагностика рака груди) |
|
|
|
|
|
|
|
Разработка планов для достижения целей |
|
|
1. |
планирование промышленных заказов ISIS (проек- |
|
|
|
тирование производственных процессов); |
|
|
2. |
планирование эксперимента MOLGEN (экспери- |
|
Планирование |
|
менты в молекулярной генетике; на основе экспе- |
|
|
|
риментов с ферментами системой вырабатываются |
|
|
|
гипотезы о структуре ДНК); |
|
|
3. |
ЭКСПЛАН (планирование производства на Бакин- |
|
|
|
ском нефтеперерабатывающем заводе) |
|
|
|
||
|
Сравнение наблюдений с планами, сигнализирование |
||
|
|
об отклонениях и исключениях |
|
Мониторинг |
1. |
СПРИНТ (контроль за работой электростанций); |
|
|
2. |
REACTOR (помощь диспетчерам атомного реакто- |
|
|
|
ра) |
|
|
|
|
|
|
|
Диагностика ошибок при изучении дисциплины |
|
|
|
с помощью ЭВМ и подсказка правильных решений |
|
Обучение |
1. |
PROUST (обучение языку Паскаль); |
|
|
2. |
«Учитель Лиспа» (обучение языку программирова- |
|
|
|
ния Лисп) |
|
|
|
||
|
Интерпретирование, предсказывание, восстановление |
||
Управление |
|
и мониторинг поведения системы |
|
1. |
PROCON (оперативное управление химической ус- |
||
и контроль |
|||
|
тановкой); |
||
|
|
||
|
2. |
GAS (помощь в управлении газовой котельной) |
|
|
|
|
|
|
|
11 |
|
Классификация экспертных систем по связи с реальным временем
Важно исследовать и оценивать характер проблемной и предметной областей с позиций динамики решаемых задач, важности временного фактора.
То есть, если исходная информация о предметной области или окружающем мире, на основе которой решается задача, не изменяется за время решения задачи, то такую предметную область можно условно на-
звать статистической предметной областью, и ее представление в ЭС будет статическим.
ЭС, разрабатываемые в таких предметных областях, называются
статическими.
Пример – диагностика неисправностей в автомобиле.
Если информация о предметной области изменяется за время решения задачи, то такую предметную область называют динамической предметной областью.
ЭС, разрабатываемые в динамических предметных областях,
называются динамическими или систем, работающих в реальном времени.
Они функционируют в сопряжении с датчиками объектов в режиме реального времени с непрерывной интерпретацией поступающих в систему данных.
Исследования по разработке систем реального времени или динамических экспертных систем с целью их практического использования ведутся достаточно давно, с середины 80-х годов прошлого века.
В качестве примера динамической экспертной системы можно привести систему PICON (Process Intelligent Control – интеллектуальное управление процессом), разработанную в 1985 году фирмой Lisp Machine Inc. (LMI). ЭС применялась для управления нефтеперерабатывающим предприятием и обеспечивала контроль 20 тысяч точек. В систему заложена возможность динамически изменить программу контроля, уделяя особое внимание тем точкам, параметры которых выходят за рамки допустимых значений. Успех системы PICON привел к тому, что в 1986 году группа ведущих разработчиков системы образовала фирму Gensym, которая, значительно развив идеи, заложенные в PICON, в 1988 году вышла на рынок с инструментальным средством G2.
12
Значимость динамических ЭС определяется не столько их бурным коммерческим успехом, но, в первую очередь, тем, что только с помощью подобных средств создаются стратегически значимые приложения в таких областях, как управление непрерывными производственными процессами, аэрокосмические исследования, транспортировка и переработка нефти и газа, управление атомными и тепловыми электростанциями, финансовые операции и многих других.
Экспертные системы реального времени решают следующие классы задач: мониторинг в реальном масштабе времени, обнаружение неисправностей, диагностика, оперативное планирование и др.
Статические экспертные системы не способны решать подобные задачи, так как они не выполняют требования, предъявляемые к системам, работающим в реальном времени [2, с. 87]:
1.Представлять изменяющиеся во времени данные, поступающие от внешних источников; обеспечивать хранение и анализ изменяющихся данных.
2.Выполнять временные рассуждения о нескольких различных асинхронных процессах одновременно (т. е. планировать в соответствии
сприоритетами обработку поступивших в систему процессов).
3.Обеспечивать механизм рассуждения при ограниченных ресурсах (время, память). Реализация этого механизма предъявляет требования к высокой скорости работы системы, способности одновременно решать несколько задач.
4.Осуществлять постоянный мониторинг процесса и при необходимости автоматически запускать механизм логического вывода решений по устранению критических ситуаций с одновременным информированием пользователя.
5.Моделировать «окружающий мир», рассматриваемый в данном приложении, обеспечивать создание различных его состояний.
6.Протоколировать свои действия и действия персонала, обеспечивать восстановление после сбоя.
7.Обеспечивать наполнение базы знаний для приложений реальной степени сложности с минимальными затратами времени и труда (необходимо использование объектно-ориентированной технологии, общих правил, модульности и т. п.).
13
8.Обеспечивать настройку системы на решаемые задачи (предметная ориентированность).
9.Обеспечивать создание и поддержку пользовательских интерфейсов для различных категорий пользователей.
10.Обеспечивать уровень защиты информации (по категориям пользователей) и предотвращать несанкционированный доступ.
В этой классификации выделяют также квазидинамические ЭС. Квазидинамическими ЭС называют системы, которые интерпре-
тируют ситуацию, меняющуюся с некоторым фиксированным интервалом времени.
Пример – микробиологические ЭС, в которых снимаются лабораторные измерения с технологического процесса один раз в 4–5 часов (производство лизина) и анализируется динамика полученных показателей по отношении к предыдущему измерению.
Классификация экспертных систем по типу ЭВМ
1)на суперЭВМ (для уникальных стратегических важных задач – Эльбрус, CRAY, CONVEX и др.);
2)на ЭВМ средней производительности (типа ЭС ЭВМ);
3)на символьных процессорах и рабочих станциях (SUN, Silicon Graphics, APOLLO);
4)на ПЭВМ (IBM PC, MAC II и др.).
Классификация экспертных систем по степени интеграции
сдругими программами
1.Автономные ЭС работают непосредственно в режиме консультаций с пользователем для решения задач, в которых не требуется привлекать традиционные методы обработки данных (расчеты, моделирование и т. д.);
2.Гибридные ЭС – программные комплексы, соединяющие стандартные пакеты прикладных программ (ППП) (например, математическую статистику, линейное программирование или системы управления базами данных) и средства манипулирования знаниями. Это может быть интеллектуальная надстройка над ППП или
14
интегрированная среда для решения сложной задачи с элементами экспертных знаний.
Разработка гибридных ЭС представляет собой задачу на порядок более сложную, чем разработка автономных ЭС. Необходимость согласования не просто разных пакетов, а разных методологий порождает целый комплекс теоретических и практических трудностей.
1.2. Структура и этапы разработки экспертных систем
Структура экспертных систем
Функциональные возможности ЭС определяются двумя ее главными системными частями: средой развития и средой рекомендаций (рис. 2). Среда развития используется разработчиком ЭС для построения компонентов и размещения знаний в базе знаний (БЗ). Среда рекомендаций используется пользователями (неэкспертами) для получения экспертных знаний и советов.
В каждой экспертной системе присутствуют три главных компонента – это база знаний, механизм вывода и пользовательский интерфейс. В общем случае ЭС могут содержать следующие компоненты:
подсистема извлечения знаний;
база знаний;
механизм вывода;
пользовательский интерфейс;
рабочая область;
подсистема объяснения;
подсистема верификации знаний.
Обычно большинство ЭС не содержат подсистему верификации знаний.
Подсистема извлечения знаний представляет собой накопление, передачу и преобразование экспертиз решения задачи от экспертов или документированных источников знаний компьютерной программой для конструирования или расширения БЗ. Потенциальными источниками знаний могут выступать эксперты, учебники, справочники, мультимедийные документы, базы данных, исследовательские отчеты.
15
Рисунок 2 – Структура экспертной системы и ее окружение
16
Извлечение знаний из экспертов является сложной задачей, осуществляемой инженером знаний. Современные условия требуют от инженера знаний способностей взаимодействовать с одним или более людьми – экспертами при построении БЗ. Инженер знаний помогает эксперту структурировать проблемную область путем интерпретации и объединения ответов человека на вопросы, проводя аналогии и выявляя концептуальные трудности.
База знаний содержит знания, необходимые для понимания, формулирования и решения задач. Она включает два основных элемента: факты (проблемная ситуация и теоретические знания о проблемной области) и специальные эвристики или правила, необходимые при решении специфических задач в отдельной предметной области. Кроме того, механизм вывода, тесно связанный с БЗ, содержит стандартные правила решения задач и принятия решений. Эвристики выражают неформальные знания, мнения и суждения в прикладной области. Глобальные стратегии, которые могут быть как эвристиками, так и частью теории проблемной области, обычно включаются в БЗ. Знания, а не просто факты являются первоначально необработанным материалом экспертных систем. Информация и знания в БЗ представлены и включены в компьютерную программу путем реализации процесса, называемого представление знаний.
Механизм вывода также называют управляющей структурой или
интерпретатором правил. Он является, в основном, компьютерной программой, которая обеспечивает методологию для рассуждения об информации в БЗ и в рабочей области, а также для формулирования заключений. Этот компонент предназначен для указания о том, как использовать знания системы при реализации агенды (расписания запланированных действий в рабочей области, которое организует и управляет шагами, предпринимаемыми для решения задачи).
Механизм вывода имеет два главных элемента:
интерпретатор, призванный выполнять выбранные позиции агенды, используя соответствующие правила БЗ;
планировщик, поддерживающий управление агендой. Он оценивает результаты используемых правил вывода в свете их приоритетов или других критериев в агенде.
17
Пользовательский интерфейс представляет собой языковой процессор для дружественного, проблемно-ориентированного общения между пользователем и компьютером. Общение наилучшим образом выполняется на естественном языке. Иногда оно дополняется меню и графикой.
Рабочая область – это область, расположенная отдельно для описания текущей задачи. Она также используется для запоминания промежуточных результатов, гипотез и решений.
Выделяют три типа решений: план (как атаковать задачу), агенда (потенциальные действия, ожидающие выполнения) и решение (гипотезы – кандидаты в альтернативные направления действий, которые система сгенерировала до сих пор).
Способность отлеживать ответственность и соответствие заключений их источникам реализуется подсиситемой объяснения. Данный компонент является решающим и при проведении экспертизы, и при решении задачи. Подсистема объяснений призвана объяснять поведение экспертной системы.
Подсистема верификации. Эксперты обладают способностями верифицировать и совершенствовать знания, они могут анализировать свои собственные знания и их использование, обучаться от них и улучшать их для будущих консультаций. Аналогично, такая эволюция необходима в компьютеризированном обучении, так, чтобы программа могла анализировать рассуждения под углом зрения их успеха или неудачи. Это может привести к улучшениям и как результату – более точным БЗ и более эффективному рассуждению. Такая составляющая ЭС носит название подсистема верификации знаний. В настоящее время этот компонент отсутствует в коммерческих ЭС, но разрабатывается в экспериментальных ЭС.
Этапы создания экспертных систем
Разработка ЭС имеет существенные отличия от разработки обычного программного продукта. Опыт создания ЭС показал, что использование при ее разработке методологии, принятой в традиционном про-
18
граммировании, либо чрезмерно затягивает процесс создания ЭС, либо вообще приводит к отрицательному результату. Это обусловлено тем, что неформализованность задач, решаемых ЭС, отсутствие завершенной теории ЭС и методологии их разработки приводят к необходимости модифицировать принципы и способы построения ЭС по мере того, как увеличивается знание разработчиков о проблемной области.
При разработке ЭС, как правило, используется концепция «быстрого прототипа». Суть ее состоит в том, что разработчики не пытаются сразу построить конечный продукт. На начальном этапе они создают прототип (прототипы) ЭС. Прототипы должны удовлетворять двум противоречивым требованиям: с одной стороны, они должны решать типичные задачи конкретного приложения, а с другой – время и трудоемкость их разработки должны быть весьма незначительны, чтобы можно было параллельно с их созданием осуществлять процесс накопления знаний (осуществляемый экспертом) и выбора (разработки) программных средств (осуществляемый инженером по знаниям и программистом).
Преобразование прототипа ЭС в конечный продукт обычно приводит к перепрограммированию ЭС на языках низкого уровня, обеспечивающих как увеличение быстродействия ЭС, так и уменьшение требуемой памяти. Трудоемкость и время создания ЭС в значительной степени зависят от типа используемого инструментария.
В ходе работ по созданию ЭС сложилась определенная технология их разработки, включающая шесть следующих этапов (рис. 3):
1.Идентификация;
2.Концептуализация;
3.Формализация;
4.Выполнение;
5.Опытная эксплуатация;
6.Тестирование.
19
Рисунок 3 – Технология разработки экспертных систем
На этапе идентификации определяются задачи, которые подлежат решению, выявляются назначение экспертной системы, цель ее разработки, определяются эксперты и типы пользователей.
Назначение экспертной системы связано с одной из следующих областей:
обучение и консультация неопытных пользователей;
распространение и использование уникального опыта экспертов;
автоматизация работы экспертов по принятию решений;
оптимизация решения проблем, выдвижение и проверка гипотез. Ограничивающими факторами на разработку экспертной системы
выступают отводимые сроки, финансовые ресурсы и программнотехническая среда. От них зависит количественный состав групп инженеров по знаниям и экспертов, глубина прорабатываемых вопросов, адекватность и эффективность решения проблем.
20
