Автор работы: Пользователь скрыл имя, 09 Мая 2012 в 14:15, реферат
В начале восьмидесятых годов в исследованиях по искусственному интеллекту сформировалось самостоятельное направление, получившее название "экспертные системы" (ЭС). Цель исследований по ЭС состоит в разработке программ, которые при решении задач, трудных для эксперта-человека, получают результаты, не уступающие по качеству и эффективности решениям, получаемым экспертом. Исследователи в области ЭС для названия своей дисциплины часто используют также термин "инженерия знаний", введенный Е.Фейгенбаумом как "привнесение принципов и инструментария исследований из области искусственного интеллекта в решение трудных прикладных проблем, требующих знаний экспертов".
"Почему система
задает тот или иной вопрос?",
"как ответ, собираемый
Структуру, приведенную на рис. 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 не обладает
собственными средствами для
отображения текущего
Интерфейс с пользователем TDC Expert ограничен возможностями системы TDC 3000, т.е. взаимодействие с конечным пользователем
ограничивается текстовым режимом работы.
Представление знаний в экспертных системах
Первый
и основной вопрос, который надо
решить при представлении знаний,
- это вопрос определения состава
знаний, т.е. определение того, "ЧТО
ПРЕДСТАВЛЯТЬ" в экспертной системе.
Второй вопрос касается того, "КАК
ПРЕДСТАВЛЯТЬ" знания. Необходимо отметить,
что эти две проблемы не являются
независимыми. Действительно, выбранный
способ представления может оказаться
непригодным в принципе либо неэффективным
для выражения некоторых
По нашему мнению, вопрос "КАК ПРЕДСТАВЛЯТЬ" можно разделить на две в значительной степени независимые задачи: как организовать (структурировать) знания и как представить знания в выбранном формализме.
Стремление выделить организацию знаний в самостоятельную задачу вызвано, в частности, тем, что эта задача возникает для любого языка представления и способы решения этой задачи являются одинаковыми (либо сходными) вне зависимости от используемого формализма.
Итак, в круг вопросов, решаемых при представлении знаний, будем включать следующие:
определение состава представляемых знаний;
организацию знаний;
представление знаний, т.е. определение модели представления. Состав знаний ЭС определяется следующими факторами:
проблемной средой;
архитектурой экспертной системы;
потребностями и целями пользователей;
языком общения.
В соответствии с общей схемой статической экспертной системы (см. рис. 1.1) для ее функционирования требуются следующие знания:
знания о процессе решения задачи (т.е. управляющие знания), используемые интерпретатором (решателем);
знания о языке общения и способах организации диалога, используемые лингвистическим процессором (диалоговым компонентом);
знания о
способах представления и
поддерживающие
структурные и управляющие
Для динамической ЭС, кроме того, необходимы следующие знания:
1) знания о
методах взаимодействия с
2) знания о модели внешнего мира.
Зависимость состава знаний от требований пользователя проявляется в следующем:
какие задачи (из общего набора задач) и с какими данными хочет решать пользователь;
каковы предпочтительные способы и методы решения;
при каких
ограничениях на количество
каковы требования к языку общения и организации диалога;
какова степень общности (конкретности) знаний о проблемной области, доступная пользователю;
каковы цели пользователей.
Состав знаний о языке общения зависит как от языка общения, так и от требуемого уровня понимания.
С учетом архитектуры
экспертной системы знания целесообразно
делить на интерпретируемые и неинтерп