Автор: Пользователь скрыл имя, 19 Декабря 2011 в 20:09, курсовая работа
В начале восьмидесятых годов в исследованиях по искусственному интеллекту сформировалось самостоятельное направление, получившее название "экспертные системы" (ЭС). Цель исследований по ЭС состоит в разработке программ, которые при решении задач, трудных для эксперта-человека, получают результаты, не уступающие по качеству и эффективности решениям, получаемым экспертом. Исследователи в области ЭС для названия своей дисциплины часто используют также термин "инженерия знаний", введенный Е.Фейгенбаумом как "привнесение принципов и инструментария исследований из области искусственного интеллекта в решение трудных прикладных проблем, требующих знаний экспертов".
В режиме консультации
общение с ЭС осуществляет конечный
пользователь, которого интересует результат
и (или) способ его получения. Необходимо
отметить, что в зависимости от назначения
ЭС пользователь может не быть специалистом
в данной проблемной области (в этом случае
он обращается к ЭС за результатом, не
умея получить его сам), или быть специалистом
(в этом случае пользователь может сам
получить результат, но он обращается
к ЭС с целью либо ускорить процесс получения
результата, либо возложить на ЭС рутинную
работу). В режиме консультации данные
о задаче пользователя после обработки
их диалоговым компонентом поступают
в рабочую память. Решатель на основе входных
данных из рабочей памяти, общих данных
о проблемной области и правил из БЗ формирует
решение задачи. ЭС при решении задачи
не только исполняет предписанную последовательность
операции, но и предварительно формирует
ее. Если реакция системы не понятна пользователю,
то он может потребовать объяснения:
"Почему система
задает тот или иной вопрос?",
"как ответ, собираемый
Структуру, приведенную
на рис. 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) для ее функционирования требуются следующие знания:
знания о процессе решения задачи (т.е. управляющие знания), используемые интерпретатором (решателем);
знания о
языке общения и способах
знания о
способах представления и
поддерживающие
структурные и управляющие
Для динамической ЭС, кроме того, необходимы следующие знания: