Экспертные системы

Автор работы: Пользователь скрыл имя, 04 Октября 2012 в 13:11, контрольная работа

Описание работы

Экспе́ртная систе́ма (ЭС, англ. expert system) — компьютерная программа, способная частично заменить специалиста-эксперта в разрешении проблемной ситуации. Современные ЭС начали разрабатываться исследователями искусственного интеллекта в 1970-х годах, а в 1980-х получили коммерческое подкрепление.

Содержание работы

Экспертные системы
Назначение Экспертных Систем
Структура Экспертных Систем
Этапы разработки экспертных систем
Интерфейс с конечным пользователем
Представление Знаний В ЭС
Уровни Представления И Уровни Детальности
Организация Знаний В Рабочей Системе
Организация Знаний В Базе Данных
Методы Поиска Решений В Экспертных Системах

Файлы: 1 файл

Экспе́ртная систе́ма.docx

— 138.08 Кб (Скачать файл)

Причины, приведшие СИИ  к коммерческому успеху, следующие.

Интегрированность. Разработаны инструментальные средства искусственного интеллекта (ИС ИИ), легко интегрирующиеся с другими информационными технологиями и средствами (с CASE, СУБД, контроллерами, концентраторами данных и т.п.).

Открытость  и переносимость. ИС ИИ разрабатываются с соблюдением стандартов, обеспечивающих открытость и переносимость [14].

Использование языков традиционного программирования и рабочих станций. Переход от ИС ИИ, реализованных на языках ИИ (Lisp, Prolog и т.п.), к ИС ИИ, реализованным на языках традиционного программирования (С, C++ и т.п.), упростил обеспечение интегриро-ванности, снизил требования приложений ИИ к быстродействию ЭВМ и объемам оперативной памяти. Использование рабочих станций (вместо ПК) резко увеличило круг приложений, которые могут быть выполнены на ЭВМ с использованием ИС ИИ.

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

Проблемно/предметно-ориентированные  ИС ИИ. Переход от разработок ИС ИИ общего назначения (хотя они не утратили свое значение как средство для создания ориентированных ИС) к проблемно/предметно-ориентированным ИС ИИ [9] обеспечивает: сокращение сроков разработки приложений; увеличение эффективности использования ИС; упрощение и ускорение работы эксперта; повторную используемость информационного и программного обеспечения (объекты,классы,правила,процедуры).

Структура экспертных систем

Типичная статическая ЭС состоит из следующих основных компонентов (рис. 1.):

  • решателя (интерпретатора);
  • рабочей памяти (РП), называемой также базой данных (БД);
  • базы знаний (БЗ);
  • компонентов приобретения знаний;
  • объяснительного компонента;
  • диалогового компонента.

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

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

Решатель, используя исходные данные из рабочей памяти и знания из БЗ, формирует такую последовательность правил, которые, будучи примененными к исходным данным, приводят к решению задачи.

Компонент приобретения знаний автоматизирует процесс наполнения ЭС знаниями, осуществляемый пользователем-экспертом.

Объяснительный  компонент объясняет, как система получила решение задачи (или почему она не получила решение) и какие знания она при этом использовала, что облегчает эксперту тестирование системы и повышает доверие пользователя к полученному результату.

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

В разработке ЭС участвуют  представители следующих специальностей:

эксперт в проблемной области, задачи которой будет решать ЭС;

инженер по знаниям - специалист по разработке ЭС (используемые им технологию, методы называют технологией (методами) инженерии знаний);

программист по разработке инструментальных средств (ИС), предназначенных  для ускорения разработки ЭС.

Необходимо отметить, что  отсутствие среди участников разработки инженеров по знаниям (т. е. их замена программистами) либо приводит к неудаче  процесс создания ЭС, либо значительно  удлиняет его.

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

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

Программист разрабатывает ИС (если ИС разрабатывается заново), содержащее в пределе все основные компоненты ЭС, и осуществляет его сопряжение с той средой, в которой оно будет использовано.

Экспертная система работает в двух режимах: режиме приобретения знаний и в режиме решения задачи (называемом также режимом консультации или режимом использования ЭС).

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

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

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

"Почему система задает  тот или иной вопрос?", "как  ответ, собираемый системой, получен?".

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

На рис. 1.2 показано, что  в архитектуру динамической ЭС по сравнению со статической ЭС вводятся два компонента: подсистема моделирования  внешнего мира и подсистема связи  с внешним окружением. Последняя осуществляет связи с внешним миром через систему датчиков и контроллеров. Кроме того, традиционные компоненты статической ЭС (база знаний и машина вывода) претерпевают существенные изменения, чтобы отразить временную логику происходящих в реальном мире событий.

Подчеркнем, что структура  ЭС, представленная на рис. 1.1 и 1.2, отражает только компоненты (функции), и многое остается "за кадром". На рис. 1.3 приведена обобщенная структура современного ИС для создания динамических ЭС, содержащая кроме основных компонентов те возможности, которые позволяют создавать интегрированные приложение в соответствии с современной технологией программирования.

Этапы разработки экспертных систем

Разработка ЭС имеет существенные отличия от разработки обычного программного продукта. Опыт создания ЭС показал, что  использование при их разработке методологии, принятой в традиционном программировании, либо чрезмерно затягивает процесс создания ЭС, либо вообще приводит к отрицательному результату.

Использовать ЭС следует  только тогда, когда разработка ЭС возможна, оправдана и методы инженерии знаний соответствуют решаемой задаче. Чтобы разработка ЭС была возможной для данного приложения, необходимо одновременное выполнение по крайней мере следующих требований:

1) существуют эксперты  в данной области, которые решают  задачу значительно лучше, чем  начинающие специалисты;

2) эксперты сходятся в  оценке предлагаемого решения,  иначе нельзя будет оценить  качество разработанной ЭС;

3) эксперты способны вербализовать (выразить на естественном языке) и объяснить используемые ими методы, в противном случае трудно рассчитывать на то, что знания экспертов будут "извлечены" и вложены в ЭС;

4) решение задачи требует  только рассуждений, а не действий;

5) задача не должна  быть слишком трудной (т.е. ее  решение должно занимать у  эксперта несколько часов или  дней, а не недель);

6) задача хотя и не  должна быть выражена в формальном  виде, но все же должна относиться  к достаточно "понятной" и структурированной  области, т.е. должны быть выделены  основные понятия, отношения и  известные (хотя бы эксперту) способы  получения решения задачи;

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

Использование ЭС в данном приложении может быть возможно, но не оправдано. Применение ЭС может быть оправдано одним из следующих факторов:

 решение задачи принесет  значительный эффект, например экономический;

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

 использование ЭС целесообразно  в тех случаях, когда при  передаче информации эксперту  происходит недопустимая потеря  времени или информации;

 использование ЭС целесообразно  при необходимости решать задачу  в окружении, враждебном для  человека.

Приложение соответствует методам ЭС, если решаемая задача обладает совокупностью следующих характеристик:

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

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

3) задача должна быть  достаточно сложна, чтобы оправдать  затраты на разработку ЭС. Однако  она не должна быть чрезмерно  сложной (решение занимает у  эксперта часы, а не недели), чтобы  ЭС могла ее решать;

4) задача должна быть  достаточно узкой, чтобы решаться  методами ЭС, и практически значимой.

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

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

В ходе работ по созданию ЭС сложилась определенная технология их разработки, включающая шесть следующих  этапов (рис. 1.4):

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

Информация о работе Экспертные системы