Назначение экспертных систем
Назначение экспертных
систем
В начале восьмидесятых
годов в исследованиях по искусственному
интеллекту сформировалось самостоятельное
направление, получившее название "экспертные
системы" (ЭС). Цель исследований по
ЭС состоит в разработке программ,
которые при решении задач, трудных
для эксперта-человека, получают результаты,
не уступающие по качеству и эффективности
решениям, получаемым экспертом. Исследователи
в области ЭС для названия своей
дисциплины часто используют также
термин "инженерия знаний", введенный
Е.Фейгенбаумом как "привнесение принципов
и инструментария исследований из области
искусственного интеллекта в решение
трудных прикладных проблем, требующих
знаний экспертов".
Программные средства
(ПС), базирующиеся на технологии экспертных
систем, или инженерии знаний (в
дальнейшем будем использовать их как
синонимы), получили значительное распространение
в мире. Важность экспертных систем
состоит в следующем:
технология
экспертных систем существенно
расширяет круг практически
технология
ЭС является важнейшим
высокая стоимость
сопровождения сложных систем, которая
часто в несколько раз
объединение
технологии ЭС с технологией традиционного
программирования добавляет новые качества
к программным продуктам за счет: обеспечения
динамичной модификации приложений пользователем,
а не программистом; большей "прозрачности"
приложения (например, знания хранятся
на ограниченном ЕЯ, что не требует комментариев
к знаниям, упрощает обучение и сопровождение);
лучшей графики; интерфейса и взаимодействия.
По мнению ведущих
специалистов , в недалекой перспективе
ЭС найдут следующее применение:
ЭС будут
играть ведущую роль во всех
фазах проектирования, разработки,
производства, распределения, продажи,
поддержки и оказания услуг;
технология
ЭС, получившая коммерческое
ЭС предназначены
для так называемых неформализованных
задач, т.е. ЭС не отвергают и не заменяют
традиционного подхода к разработке программ,
ориентированного на решение формализованных
задач.
Неформализованные
задачи обычно обладают следующими особенностями:
ошибочностью,
неоднозначностью, неполнотой и
противоречивостью исходных
ошибочностью,
неоднозначностью, неполнотой и
противоречивостью знаний о
большой размерностью
пространства решения, т.е.
динамически
изменяющимися данными и
Следует подчеркнуть,
что неформализованные задачи представляют
большой и очень важный класс
задач. Многие специалисты считают,
что эти задачи являются наиболее
массовым классом задач, решаемых ЭВМ.
Экспертные системы
и системы искусственного интеллекта
отличаются от систем обработки данных
тем, что в них в основном используются
символьный (а не числовой) способ представления,
символьный вывод и эвристический
поиск решения (а не исполнение известного
алгоритма).
Экспертные системы
применяются для решения только
трудных практических (не игрушечных)
задач. По качеству и эффективности
решения экспертные системы не уступают
решениям эксперта-человека. Решения
экспертных систем обладают "прозрачностью",
т.е. могут быть объяснены пользователю
на качественном уровне. Это качество
экспертных систем обеспечивается их
способностью рассуждать о своих
знаниях и умозаключениях. Экспертные
системы способны пополнять свои
знания в ходе взаимодействия с экспертом.
Необходимо отметить, что в настоящее
время технология экспертных систем
используется для решения различных
типов задач (интерпретация, предсказание,
диагностика, планирование, конструирование,
контроль, отладка, инструктаж, управление
) в самых разнообразных проблемных областях,
таких, как финансы, нефтяная и газовая
промышленность, энергетика, транспорт,
фармацевтическое производство, космос,
металлургия, горное дело, химия, образование,
целлюлозно-бумажная промышленность,
телекоммуникации и связь и др.
Коммерческие
успехи к фирмам-разработчикам систем
искусственного интеллекта (СИИ) пришли
не сразу. На протяжении 1960 - 1985 гг. успехи
ИИ касались в основном исследовательских
разработок, которые демонстрировали
пригодность СИИ для
Следует обратить
внимание на то, что некоторые специалисты
(как правило, специалисты в
Причины, приведшие
СИИ к коммерческому успеху, следующие.
Интегрированность.
Разработаны инструментальные средства
искусственного интеллекта (ИС ИИ), легко
интегрирующиеся с другими информационными
технологиями и средствами (с CASE, СУБД,
контроллерами, концентраторами данных
и т.п.).
Открытость и
переносимость. ИС ИИ разрабатываются
с соблюдением стандартов, обеспечивающих
открытость и переносимость [14].
Использование
языков традиционного программирования
и рабочих станций. Переход от ИС
ИИ, реализованных на языках ИИ (Lisp, Prolog
и т.п.), к ИС ИИ, реализованным на языках
традиционного программирования (С, C++
и т.п.), упростил обеспечение интегриро-ванности,
снизил требования приложений ИИ к быстродействию
ЭВМ и объемам оперативной памяти. Использование
рабочих станций (вместо ПК) резко увеличило
круг приложений, которые могут быть выполнены
на ЭВМ с использованием ИС ИИ.
Архитектура клиент-сервер.
Разработаны ИС ИИ, поддерживающие
распределенные вычисления по архитектуре
клиент-сервер, что позволило:снизить
стоимость оборудования, используемого
в приложениях, децентрализовать приложения,
повысить надежность и общую производительность
(так как сокращается количество информации,
пересылаемой между ЭВМ, и каждый модуль
приложения выполняется на адекватном
ему оборудовании).
Проблемно/предметно-
Структура экспертных
систем
Типичная статическая ЭС состоит из следующих основных компонентов (рис. 1.):
решателя (интерпретатора);
рабочей памяти (РП), называемой также базой данных (БД);
базы знаний (БЗ);
компонентов приобретения знаний;
объяснительного компонента;
диалогового компонента.
База данных
(рабочая память) предназначена для
хранения исходных и промежуточных
данных решаемой в текущий момент
задачи. Этот термин совпадает по названию,
но не по смыслу с термином, используемым
в информационно-поисковых
База знаний
(БЗ) в ЭС предназначена для хранения
долгосрочных данных, описывающих рассматриваемую
область (а не текущих данных), и
правил, описывающих целесообразные
преобразования данных этой области.
Решатель, используя
исходные данные из рабочей памяти
и знания из БЗ, формирует такую
последовательность правил, которые, будучи
примененными к исходным данным, приводят
к решению задачи.
Компонент приобретения
знаний автоматизирует процесс наполнения
ЭС знаниями, осуществляемый пользователем-экспертом.
Объяснительный
компонент объясняет, как система
получила решение задачи (или почему
она не получила решение) и какие
знания она при этом использовала,
что облегчает эксперту тестирование
системы и повышает доверие пользователя
к полученному результату.
Диалоговый компонент
ориентирован на организацию дружественного
общения с пользователем как в ходе
решения задач, так и в процессе приобретения
знаний и объяснения результатов работы.
В разработке ЭС
участвуют представители
эксперт в проблемной
области, задачи которой будет решать
ЭС;
инженер по знаниям
- специалист по разработке ЭС (используемые
им технологию, методы называют технологией
(методами) инженерии знаний);
программист по
разработке инструментальных средств
(ИС), предназначенных для ускорения
разработки ЭС.
Необходимо отметить,
что отсутствие среди участников
разработки инженеров по знаниям (т.
е. их замена программистами) либо приводит
к неудаче процесс создания ЭС,
либо значительно удлиняет его.
Эксперт определяет
знания (данные и правила), характеризующие
проблемную область, обеспечивает полноту
и правильность введенных в ЭС
знаний.
Инженер по знаниям
помогает эксперту выявить и структурировать
знания, необходимые для работы ЭС;
осуществляет выбор того ИС, которое
наиболее подходит для данной проблемной
области, и определяет способ представления
знаний в этом ИС; выделяет и программирует
(традиционными средствами) стандартные
функции (типичные для данной проблемной
области), которые будут использоваться
в правилах, вводимых экспертом.
Программист разрабатывает
ИС (если ИС разрабатывается заново),
содержащее в пределе все основные
компоненты ЭС, и осуществляет его
сопряжение с той средой, в которой
оно будет использовано.
Экспертная система
работает в двух режимах: режиме приобретения
знаний и в режиме решения задачи
(называемом также режимом консультации
или режимом использования ЭС).
В режиме приобретения
знаний общение с ЭС осуществляет
(через посредничество инженера по
знаниям) эксперт. В этом режиме эксперт,
используя компонент
Отметим, что
режиму приобретения знаний в традиционном
подходе к разработке программ соответствуют
этапы алгоритмизации, программирования
и отладки, выполняемые программистом.
Таким образом, в отличие от традиционного
подхода в случае ЭС разработку программ
осуществляет не программист, а эксперт
(с помощью ЭС), не владеющий программированием.
В режиме консультации
общение с ЭС осуществляет конечный
пользователь, которого интересует результат
и (или) способ его получения. Необходимо
отметить, что в зависимости от назначения
ЭС пользователь может не быть специалистом
в данной проблемной области (в этом случае
он обращается к ЭС за результатом, не
умея получить его сам), или быть специалистом
(в этом случае пользователь может сам
получить результат, но он обращается
к ЭС с целью либо ускорить процесс получения
результата, либо возложить на ЭС рутинную
работу). В режиме консультации данные
о задаче пользователя после обработки
их диалоговым компонентом поступают
в рабочую память. Решатель на основе входных
данных из рабочей памяти, общих данных
о проблемной области и правил из БЗ формирует
решение задачи. ЭС при решении задачи
не только исполняет предписанную последовательность
операции, но и предварительно формирует
ее. Если реакция системы не понятна пользователю,
то он может потребовать объяснения:
"Почему система
задает тот или иной вопрос?",
"как ответ, собираемый
Структуру, приведенную
на рис. 1.1, называют структурой статической
ЭС. ЭС данного типа используются в
тех приложениях, где можно не
учитывать изменения
На рис. 1.2 показано,
что в архитектуру динамической
ЭС по сравнению со статической ЭС
вводятся два компонента: подсистема
моделирования внешнего мира и подсистема
связи с внешним окружением. Последняя
осуществляет связи с внешним миром через
систему датчиков и контроллеров. Кроме
того, традиционные компоненты статической
ЭС (база знаний и машина вывода) претерпевают
существенные изменения, чтобы отразить
временную логику происходящих в реальном
мире событий.
Подчеркнем, что
структура ЭС, представленная на рис.
1.1 и 1.2, отражает только компоненты (функции),
и многое остается "за кадром".
На рис. 1.3 приведена обобщенная структура
современного ИС для создания динамических
ЭС, содержащая кроме основных компонентов
те возможности, которые позволяют создавать
интегрированные приложение в соответствии
с современной технологией программирования.
Этапы разработки
экспертных систем
Разработка ЭС
имеет существенные отличия от разработки
обычного программного продукта. Опыт
создания ЭС показал, что использование
при их разработке методологии, принятой
в традиционном программировании, либо
чрезмерно затягивает процесс создания
ЭС, либо вообще приводит к отрицательному
результату.
Использовать
ЭС следует только тогда, когда разработка
ЭС возможна, оправдана и методы
инженерии знаний соответствуют
решаемой задаче. Чтобы разработка
ЭС была возможной для данного
приложения, необходимо одновременное
выполнение по крайней мере следующих
требований:
1) существуют
эксперты в данной области,
которые решают задачу
2) эксперты сходятся
в оценке предлагаемого
3) эксперты способны
вербализовать (выразить на естественном
языке) и объяснить используемые ими методы,
в противном случае трудно рассчитывать
на то, что знания экспертов будут "извлечены"
и вложены в ЭС;
4) решение задачи
требует только рассуждений, а
не действий;
5) задача не
должна быть слишком трудной
(т.е. ее решение должно
6) задача хотя
и не должна быть выражена
в формальном виде, но все же должна
относиться к достаточно "понятной"
и структурированной области, т.е. должны
быть выделены основные понятия, отношения
и известные (хотя бы эксперту) способы
получения решения задачи;
7) решение задачи
не должно в значительной
Использование
ЭС в данном приложении может быть
возможно, но не оправдано. Применение
ЭС может быть оправдано одним из следующих
факторов:
решение задачи
принесет значительный эффект, например
экономический;
использование
человека-эксперта невозможно
использование
ЭС целесообразно в тех
использование
ЭС целесообразно при
Приложение соответствует
методам ЭС, если решаемая задача обладает
совокупностью следующих
1) задача может
быть естественным образом
2) задача должна
иметь эвристическую, а не
3) задача должна
быть достаточно сложна, чтобы
оправдать затраты на
4) задача должна
быть достаточно узкой, чтобы
решаться методами ЭС, и практически
значимой.
При разработке
ЭС, как правило, используется концепция
"быстрого прототипа". Суть этой концепции
состоит в том, что разработчики
не пытаются сразу построить конечный
продукт. На начальном этапе они
создают прототип (прототипы) ЭС. Прототипы
должны удовлетворять двум противоречивым
требованиям: с одной стороны, они должны
решать типичные задачи конкретного приложения,
а с другой - время и трудоемкость их разработки
должны быть весьма незначительны, чтобы
можно было максимально запараллелить
процесс накопления и отладки знаний (осуществляемый
экспертом) с процессом выбора (разработки)
программных средств (осуществляемым
инженером по знаниям и программистом).
Для удовлетворения указанным требованиям,
как правило, при создании прототипа используются
разнообразные средства, ускоряющие процесс
проектирования.
Прототип должен
продемонстрировать пригодность методов
инженерии знаний для данного
приложения. В случае успеха эксперт
с помощью инженера по знаниям
расширяет знания прототипа о
проблемной области. При неудаче
может потребоваться разработка
нового прототипа или разработчики
могут прийти к выводу о непригодности
методов ЭС для данного приложения.
По мере увеличения знаний прототип может
достигнуть такого состояния, когда
он успешно решает все задачи данного
приложения. Преобразование прототипа
ЭС в конечный продукт обычно приводит
к перепрограммированию ЭС на языках
низкого уровня, обеспечивающих как
увеличение быстродействия ЭС, так
и уменьшение требуемой памяти. Трудоемкость
и время создания ЭС в значительной
степени зависят от типа используемого
инструментария.
В ходе работ
по созданию ЭС сложилась определенная
технология их разработки, включающая
шесть следующих этапов (рис. 1.4):
идентификацию,
концептуализацию, формализацию, выполнение,
тестирование, опытную эксплуатацию.
На этапе идентификации
На этапе концептуализации
проводится содержательный анализ проблемной
области, выявляются используемые понятия
и их взаимосвязи, определяются методы
решения задач.
На этапе формализации
выбираются ИС и определяются способы
представления всех видов знаний,
формализуются основные понятия, определяются
способы интерпретации знаний, моделируется
работа системы, оценивается адекватность
целям системы зафиксированных
понятий, методов решений, средств представления
и манипулирования знаниями.
На этапе выполнения
осуществляется наполнение экспертом
базы знаний. В связи с тем, что
основой ЭС являются знания, данный
этап является наиболее важным и наиболее
трудоемким этапом разработки ЭС. Процесс
приобретения знаний разделяют на извлечение
знаний из эксперта, организацию знаний,
обеспечивающую эффективную работу
системы, и представление знаний
в виде, понятном ЭС. Процесс приобретения
знаний осуществляется инженером по
знаниям на основе анализа деятельности
эксперта по решению реальных задач.
Интерфейс
с конечным пользователем
Система G2 предоставляет
разработчику богатые возможности
для формирования простого, ясного
и выразительного графического интерфейса
с пользователем с элементами
мультипликации. Предлагаемый инструментарий
позволяет наглядно отображать технологические
процессы практически неограниченной
сложности на разных уровнях абстракции
и детализации. Кроме того, графическое
отображение взаимосвязей между
объектами приложения может напрямую
использоваться в декларативных
конструкциях языка описания знаний.
RTworks не обладает
собственными средствами для отображения
текущего состояния управляемого процесса.
Разработчик приложения вынужден использовать
систему Dataview фирмы VI Corporation, что в значительной
степени ограничивает его возможности.
Интерфейс с
пользователем TDC Expert ограничен возможностями
системы TDC 3000, т.е. взаимодействие с конечным
пользователем
ограничивается
текстовым режимом работы.
Представление знаний в экспертных системах
Первый и основной вопрос, который надо решить при представлении знаний, - это вопрос определения состава знаний, т.е. определение того, "ЧТО ПРЕДСТАВЛЯТЬ" в экспертной системе. Второй вопрос касается того, "КАК ПРЕДСТАВЛЯТЬ" знания. Необходимо отметить, что эти две проблемы не являются независимыми. Действительно, выбранный способ представления может оказаться непригодным в принципе либо неэффективным для выражения некоторых знаний.
По нашему мнению, вопрос "КАК ПРЕДСТАВЛЯТЬ" можно разделить на две в значительной степени независимые задачи: как организовать (структурировать) знания и как представить знания в выбранном формализме.
Стремление выделить
организацию знаний в самостоятельную
задачу вызвано, в частности, тем, что
эта задача возникает для любого
языка представления и способы
решения этой задачи являются одинаковыми
(либо сходными) вне зависимости
от используемого формализма.
Итак, в круг
вопросов, решаемых при представлении
знаний, будем включать следующие:
определение состава
представляемых знаний;
организацию знаний;
представление
знаний, т.е. определение модели представления.
Состав знаний ЭС определяется следующими
факторами:
проблемной средой;
архитектурой
экспертной системы;
потребностями
и целями пользователей;
языком общения.
В соответствии с общей схемой статической экспертной системы (см. рис. 1.1) для ее функционирования требуются следующие знания:
знания о процессе решения задачи (т.е. управляющие знания), используемые интерпретатором (решателем);
знания о
языке общения и способах
знания о
способах представления и
поддерживающие
структурные и управляющие
Для динамической ЭС, кроме того, необходимы следующие знания:

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