Автор работы: Пользователь скрыл имя, 04 Января 2013 в 18:27, курсовая работа
Экспертная система - это набор программ, выполняющий функции эксперта при решении задач из некоторой предметной области. Экспертные системы выдают советы, проводят анализ, дают консультации, ставят диагноз. Практическое применение экспертных систем на предприятиях способствует эффективности работы и повышению квалификации специалистов.
Введение
1. Экспертные системы, их особенности
1.1. Определение экспертных систем, достоинство и назначение
1.2. Классификация экспертных систем
1.3. Отличие экспертных систем от традиционных программ
1.4. Области применения экспертных систем
2. Структура, этапы разработки экспертных систем
2.1.Основные компоненты экспертных систем
2.2. Классификация инструментальных средств экспертных систем
2.3. Организация знаний в экспертных системах
2.4. Технология разработки экспертных систем
Заключение
Литература
По типу ИС классифицируются следующим образом:
· символьные языки программирования, ориентированные на создание экспертных систем и систем искусственного интеллекта (например, LISP, INTRLISP, SMALLTALK);
· языки инженерии знаний, т.е. языки высокого уровня, ориентированные на построение экспертных систем (например, ОРS-5, LOOPS, КЕS, ПРОЛОГ);
· системы, автоматизирующие разработку (проектирование) экспертных систем, (например, КЕЕ, АRТ, ТЕIRЕSIAS, АGЕ, ТIММ), их часто называют окружение (еnvironment) для разработки систем ИИ, ориентированных на знания;
· оболочки экспертных систем (или пустые экспертные) – экспертные системы, не содержащие знаний ни о какой проблемной области (например, ЭКСПЕРТИЗА, ЕМYСIN,ЭКО, ЭКСПЕРТ).
В приведённой классификации ИС перечислены в порядке убывания трудозатрат, необходимых на создание с их помощью конкретной экспертной системы. Действительно, при использовании ИС первого типа в задачу разработчика входит программирование всех компонентов экспертной системы на языке довольно низкого уровня. Использование ИС второго типа позволяет значительно повысить уровень языка, что, как правило, приводит к некоторому снижению эффективности. Инструментальные средства третьего типа позволяют разработчику не программировать все или часть компонентов экспертной системы, а выбирать их из заранее составленного набора. При применении ИС четвертого типа разработчик ИС полностью освобождается от работ по созданию программ, так как берет готовую пустую экспертную систему.
При использовании ИС третьего и особенно четвертого типа могут возникнуть следующие проблемы: управляющие стратегии, вложенные в процедуры вывода ИС, могут не соответствовать методам решения, которые использует эксперт, взаимодействующий с данной экспертной системой, что может приводить к неэффективным, а возможно, и к неправильным решениям; язык представления знаний, принятый в ИС, может не подходить для данного приложения.
Развитие систем, автоматизирующих разработку экспертных систем, приводит к появлению ИС, которые можно назвать настраиваемыми оболочками. Эти ИС позволяют разработчику использовать оболочку не как нечто неизменное, а генерировать оболочку из множества механизмов, имеющихся в ИС. Типичными таймерами таких ИС являются КЕЕ, АRТ, ЭКСПЕРТИЗА, ГЛОБ.
Инструментальные средства можно классифицировать и по классам экспертных систем на: ИС для создания простых экспертных систем, ИС для создания сложных экспертных систем. В настоящее время, как правило, ИС первого типа разрабатываются на ПЭВМ, а второго - на символьных ЭВМ, ЭВМ общего назначения и интеллектуальных рабочих станциях.
По типу используемых методов
и знаний ИС делятся, так же как
и экспертные системы, на традиционные,
использующие только методы и способы
представления инженерии
Универсальность задаётся совокупностью двух параметров: универсальностью представления знаний и универсальностью функционирования. Универсальность представления характеризует способ; (модель) представления знаний в ИС и принимает следующие значения: единое представление - ИС использует одну модель; интегральное представление - ИС допускает интегральное использование нескольких моделей; универсальное - ИС допускает интегральное использование всех основных моделей представления. К основным моделям представления относятся: правила (продукции); фреймы или семантические сети; логические модели (исчисление предикатов). Примерами ИС, в которых используется единое представление, является ПРОЛОГ, интегральное представление - СENTAUR, а универсальное - КЕЕ, АRТ.
Универсальность функционирования
характеризует механизмы (парадигмы),
определяющие, как в ИС задается
поведение (функционирование) системы,
и принимает следующие
Процедурное программирование наиболее широко распространено среди существующих сегодня языков программирования (например, Си). Здесь явно выделяют два вида различных сущностей: процедуры, являющиеся тем, что задает поведение (функционирование) программы и выполняющие активную роль; данные, являющиеся тем, что обрабатывается способом, предписанным процедурами, и выполняющие пассивную роль. Способность составлять процедуры из команд (операторов) и вызывать их - ключ функционирования, использующего данную парадигму. Особенностью её являются боковые эффекты, возникающие в тех случаях, когда различные процедуры, использующие общие данные, независимо их изменяют.
Парадигма объектного программирования в отличие от процедурной не разделяет программу на процедуры и данные. Здесь программа организуется вокруг сущностей (объектов), которые включают локальные процедуры (методы) и локальные данные (переменные). Поведение (функционирование) в этой парадигме организуется путем пересылки сообщений между объектами. Объект, получив сообщение, осуществляет его локальную интерпретацию, основываясь на локальных процедурах и данных. Объектная парадигма удобна в тех приложениях, где взаимодействие сущностей сведено к унифицированным протоколам. Важным свойством языков, использующих данную парадигму, является сеть наследований, которая существенно упрощает определение новых объектов, почти подобных известным.
В обеих рассмотренных
парадигмах активная роль в организации
поведения отводится
В программировании, ориентированном
на данные, активную роль играют данные,
а не процедуры. Здесь со структурами
активных данных связывают некоторые
процедуры (действия), которые активизируются
тогда, когда осуществляется доступ
к этим данным. Описанный механизм
в некотором смысле обратный механизму
посылки сообщений. Действительно,
сообщение является явным способом
указать объекту, какие действия
следует выполнять (эти действия
в качестве бокового эффекта могут
изменить значения некоторых данных
(племенных), а отнесение данных к
активным является явным способом указания
на контроль за доступом к ним, при
этом в качестве бокового эффекта
может быть послано сообщение
процедуре. Программирование, ориентированное
на данные, позволяет организовать
поведение малозависимых
В программировании, ориентированном
на правила, поведение определяется
множеством правил вида условие - действие.
Условие задаёт образ данных, при
возникновении которого действие правила
может быть выполнено. Правила в
данной парадигме играют такую же
роль, как и подпрограммы в процедурной
парадигме. Однако, если в процедурной
парадигме поведение задаётся детерминированной
последовательностью процедур, не зависящей
(для широкого класса обрабатываемых
данных) от значений этих данных, то в
парадигме, ориентированной на правила,
поведение (последовательность действий)
задаётся не заранее предписанной последовательностью
правил, а формируется на основе
тех данных и их значений, которые
в текущий момент обрабатываются
программой (системой). Формирование поведения
осуществляется по следующей схеме.
Условия правил сопоставляются с
текущими данными, и те правила, условия
которых удовлетворяются
2.3. Организация знаний в экспертных системах
Для специалистов в области искусственного интеллекта термин знания означает информацию, которая необходима программе, чтобы она вела себя «интеллектуально». Эта информация принимает форму фактов или правил.
Факты и правила в экспертной
системе не всегда либо истинны, либо
ложны; иногда существует некоторая
степень неуверенности в
Многие правила экспертной
системы являются эвристиками, то есть
эмпирическими правилами или
упрощениями, которые эффективно ограничивают
поиск решения. Экспертная система
использует эвристики, потому что задачи,
которые она решает, будь то поиск
новых месторождений или
На рисунке 2 показано различие
между алгоритмическим и
Рис. 2. Алгоритмические и эвристические модели данных.
Алгоритм обеспечивает полную
гарантию предотвращения захвата самолёта,
потому что в принципе полностью
исключает возможность
Знания в экспертной системе
организованы таким образом, чтобы
знания о предметной области отделить
от других типов знаний системы, таких,
как общие знания о том, как
решать задачи, или знания о том,
как взаимодействовать с
Программа, которая работает со знаниями, организованными подобным образом, называется системой, основанной на знаниях.
Рис. 3. Экспертные системы как системы, основанные на знаниях.
Как показано на рисунке 3 , в сущности все экспертные системы являются системами, основанными на знаниях, но не наоборот. Программу искусственного интеллекта для игры в «крестики и нолики» нельзя будет считать экспертной системой, даже если в ней знания о предметной области отделить от остальной программы.
База знаний экспертной системы содержит факты (данные) и правила (или другие представления знаний), использующие эти факты как основу для принятия решений. Механизм вывода содержит интерпретатор, определяющий, каким образом применять правила для вывода новых знаний, и диспетчер, устанавливающий порядок применения этих правил. Такая структура экспертной системы показана на рисунке 4.
Экспертная система
Рис. 4. Состав экспертной системы.
Выделение знаний о предметной
области облегчает инженеру по знаниям
разработку процедур для манипулирования
ими. Каким образом система
Концепция механизма вывода
экспертной системы часто вызывает
некоторое недоумение среди начинающих
разработчиков. Обычно ясно, как знания
предметной области могут быть записаны
в виде фактов и правил, но далеко
не ясно, каким образом конструировать
и использовать так называемый «механизм
вывода». Это недоумение происходит
от отсутствия простого и общего метода
организации логического
Другим примером может служить язык программирования Пролог со встроенным в него механизмом логического вывода, который может быть непосредственно использован при создании простых экспертных систем.