Автор работы: Пользователь скрыл имя, 06 Апреля 2012 в 09:52, курсовая работа
Экспертные системы возникли как значительный практический результат в применении и развитии методов искусственного интеллекта - совокупности научных дисциплин, изучающих методы решения задач интеллектуального (творческого) характера с использованием ЭВМ.
Область искусственного интеллекта имеет более чем сорокалетнюю историю развития.
Интерпретация.
Интерпретирующие системы обладают способностью получать определенные заключения на основе результатов наблюдения. Система PROSPECTOR, одна из наиболее известных систем интерпретирующего типа, объединяет знания девяти экспертов. Используя сочетания девяти методов экспертизы, системе удалось обнаружить залежи руды стоимостью в миллион долларов, причём наличие этих залежей не предполагал ни один из девяти экспертов. Другая интерпретирующая система - HASP/SIAP. Она определяет местоположение и типы судов в тихом океане по данным акустических систем слежения.
Контроль и управление.
Системы, основанные на знаниях, могут применяться в качестве интеллектуальных систем контроля и принимать решения, анализируя данные, поступающие от нескольких источников. Такие системы уже работают на атомных электростанциях, управляют воздушным движением и осуществляют медицинский контроль. Они могут быть также полезны при регулировании финансовой деятельности предприятия и оказывать помощь при выработке решений в критических ситуациях.
Диагностика неисправностей в механических и электрических устройствах.
В этой сфере системы, основанные на знаниях, незаменимы как при ремонте механических и электрических машин (автомобилей, дизельных локомотивов и т.д.), так и при устранении неисправностей и ошибок в аппаратном и программном обеспечении компьютеров.
Обучение.
Экспертные системы, выполняющие обучение, подвергают диагностике, «отладке» и исправлению (коррекции) поведение обучаемого. Примером является обучение студентов отысканию неисправностей в электрических цепях, обучение военных моряков обращению с двигателем на корабле и обучение студентов-медиков выбору антимикробной терапии. Обучающие системы создают модель того, что обучающийся знает и как он эти знания применяет к решению проблемы. Системы диагностируют и указывают обучающемуся его ошибки, анализируя модель и строя планы исправлений указанных ошибок. Они исправляют поведение обучающихся, выполняя эти планы с помощью непосредственных указаний обучающимся.
Большинство экспертных систем включают знания, по содержанию которых их можно отнести одновременно к нескольким типам. Например, обучающая система может также обладать знаниями, позволяющими выполнять диагностику и планирование. Она определяет способности обучаемого по основным направлениям курса, а затем с учетом полученных данных составляет учебный план. Управляющая система может применяться для целей контроля, диагностики, прогнозирования и планирования.
2. Структура, этапы разработки экспертных систем
2.1.Основные компоненты экспертных систем
Типичная экспертная система состоит из следующих основных компонентов: решателя (интерпретатора), рабочей памяти (РП), называемой также базой данных (БД), базы знаний (БЗ), компонентов приобретения знаний, объяснительного и диалогового компонентов (рисунок 1).
Инженер + Эксперт по знаниям Пользователь
Рис. 1. Структура экспертной системы.
База данных предназначена для хранения исходных и промежуточных данных решаемой в текущий момент задачи. Этот термин совпадает по названию, но не по смыслу с термином, используемым в информационно-поисковых системах (ИПС) и системах управления базами данных (СУБД) для обозначения всех данных (и в первую очередь не текущих, а долгосрочных), хранимых в системе.
База знаний в экспертной системе предназначена для хранения долгосрочных данных, описывающих рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные преобразования данных этой области.
Решатель, используя исходные данные из РП и знания из БЗ, формирует такую последовательность правил, которые, будучи применёнными к исходным данным, приводят к решению задачи.
Объяснительный компонент объясняет, как система получила решение задачи (или почему она не получила решения) и какие знания она при этом использовала, что облегчает эксперту тестирование системы и повышает доверие пользователя к полученному результату.
Диалоговый компонент ориентирован на организацию дружелюбного общения со всеми категориями пользователей как в ходе решения задач, так и приобретения знаний, объяснения результатов работы.
В разработке экспертной системы участвуют представители следующих специальностей:
эксперт в той проблемной области, задачи которой будет решать экспертная система;
инженер по знаниям - специалист по разработке экспертных систем;
программист - специалист по разработке инструментальных средств (ИС).
Необходимо отметить, что отсутствие среди участников разработки инженера по знаниям (то есть его замена программистом) либо приводит к неудаче процесс создания экспертной системы, либо значительно удлиняет его. Эксперт определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введения в экспертную систему знаний.
Инженер по знаниям помогает эксперту выявить и структурировать знания, необходимые для работы экспертной системы, осуществляет выбор того ИС, которое наиболее подходит для данной проблемной области, и определяет способ того представления знаний в этом ИС, выделяет и программирует (традиционными средствами) стандартные функции (типичные для данной проблемной области), которые будут использоваться в правилах, вводимых экспертом.
Программист разрабатывает ИС, содержащее в пределе все основные компоненты экспертной системы, осуществляет сопряжение ИС с той средой, в которой оно будет использовано.
Экспертная система работает в двух режимах: приобретения знаний и решения задач (называемом также режимом консультации или режимом использования экспертной системы).
В режиме приобретения знаний общение с экспертной системой осуществляется через посредничество инженера по знаниям. Эксперт описывает проблемную область в виде совокупности данных и правил. Данные определяют объекты, их характеристики и значения, существующие в области экспертизы. Правила определяют способы манипулирования данными, характерные для рассматриваемой проблемной области. Эксперт, используя компонент приобретения знаний, наполняет систему знаниями, которые позволяют экспертной системе в режиме решения самостоятельно (без эксперта) решать задачи из проблемной области.
Важную роль в режиме приобретения знаний играет объяснительный компонент. Именно благодаря ему эксперт на этапе тестирования локализует причины неудачной работы экспертной системы, что позволяет эксперту целенаправленно модифицировать старые или вводить новые знания. Обычно объяснительный компонент сообщает следующее: как правильно используют информацию пользователя; почему искались или не использовались данные или правила; какие были сделаны выводы и так далее. Все объяснения делаются, как правило, на ограниченном естественном языке или языке графики.
Режиму приобретения знаний при традиционном подходе к разработке программ соответствуют этапы алгоритмизации, программирования и отладки, выполняемые программистом. В отличие от традиционного подхода разработку программ осуществляет эксперт (с помощью экспертной системы), не владеющий программированием, а не программист.
В режиме консультации общение с экспертной системой осуществляет конечный пользователь, которого интересует результат и (или) способ получения решения. Пользователь в зависимости от назначения экспертной системы может не быть специалистом в данной проблемной области, в этом случае он обращается к экспертной системе за советом, не умея получить ответ сам, или быть специалистом, в этом случае он обращается к экспертной системе, чтобы либо ускорить процесс получения результата, либо возложить на экспертную систему рутинную работу. Термин «пользователь» означает, что им является и эксперт, и инженер по знаниям, и программист. Поэтому, когда хотят подчеркнуть, что речь идёт о том, для кого делалась экспертная система, используют термин «конечный пользователь».
В режиме консультации данные о задаче пользователя обрабатываются диалоговым компонентом, который выполняет следующие действия:
распределяет роли участников (пользователя и экспертной системы) и организует их взаимодействие в процессе кооперативного решения задачи;
преобразует данные пользователя о задаче, представленные на привычном для пользователя языке, на внутренний язык системы;
преобразует сообщения системы, представленные на внутреннем языке, в сообщения на языке, привычном для пользователя (обычно это ограниченный естественный язык или язык графики).
После обработки данные поступают в РП. На основе входных данных в РП, общих данных о проблемной области и правил из БЗ решатель (интерпретатор) формирует решение задачи.
В отличие от традиционных программ экспертная система в режиме решения задачи не только исполняет предписанную последовательность, но и предварительно формирует её. Если ответ экспертной системы не понятен пользователю, то он может потребовать объяснения, как ответ получен.
язык программирования.
2.3. Организация знаний в экспертных системах
Для специалистов в области искусственного интеллекта термин знания означает информацию, которая необходима программе, чтобы она вела себя «интеллектуально». Эта информация принимает форму фактов или правил.
Факты и правила в экспертной системе не всегда либо истинны, либо ложны; иногда существует некоторая степень неуверенности в достоверности факта или точности правила. Если это сомнение выражено явно, то оно называется «коэффициентом уверенности».
Многие правила экспертной системы являются эвристиками, то есть эмпирическими правилами или упрощениями, которые эффективно ограничивают поиск решения. Экспертная система использует эвристики, потому что задачи, которые она решает, будь то поиск новых месторождений или согласование исков, как правило, трудны и не до конца понятны. Эти задачи не поддаются строгому математическому анализу или алгоритмическому решению. Алгоритмический метод гарантирует корректное или оптимальное решение задачи, тогда как эвристический метод даёт приемлемое решение в большинстве случаев.
На рисунке 2 показано различие между алгоритмическим и эвристическим методами. Здесь сравнивается алгоритм предотвращения захвата самолётов на коммерческих авиалиниях с эвристическим методом, предназначенным для той же цели.
Рис. 2. Алгоритмические и эвристические модели данных.
Алгоритм обеспечивает полную гарантию предотвращения захвата самолёта, потому что в принципе полностью исключает возможность проникновения оружия на борт самолёта. К сожалению, он требует слишком много времени, слишком дорог и, что ещё важнее; слишком непопулярен, чтобы иметь какую-либо практическую ценность. Приведенный эвристический метод также может предотвратить большинство попыток захвата самолётов, но не гарантирует, что они вообще не возникнут. Использование эвристических правил делает поиск решения намного более лёгким и более практичным.
Знания в экспертной системе организованы таким образом, чтобы знания о предметной области отделить от других типов знаний системы, таких, как общие знания о том, как решать задачи, или знания о том, как взаимодействовать с пользователем, например как печатать текст на терминале пользователя или как изменить текст в соответствии с командами пользователя. Выделенные знания о предметной области называются базой знаний, тогда как общие знания о нахождении решений задач называются механизмом вывода.
Программа, которая работает со знаниями, организованными подобным образом, называется системой, основанной на знаниях.
Рис. 3. Экспертные системы как системы, основанные на знаниях.
Как показано на рисунке 3 , в сущности все экспертные системы являются системами, основанными на знаниях, но не наоборот. Программу искусственного интеллекта для игры в «крестики и нолики» нельзя будет считать экспертной системой, даже если в ней знания о предметной области отделить от остальной программы.
База знаний экспертной системы содержит факты (данные) и правила (или другие представления знаний), использующие эти факты как основу для принятия решений. Механизм вывода содержит интерпретатор, определяющий, каким образом применять правила для вывода новых знаний, и диспетчер, устанавливающий порядок применения этих правил. Такая структура экспертной системы показана на рисунке 4.
Литература
1. Гаскаров, Д. Б. Интеллектуальные информационные системы. – М.: Высшая школа, 2003.
2. Долин, Г. Что такое ЭС. – М.: Компьютер Пресс, 1992.