Разработка экспертной системы на основе сетей Байеса для поддержки принятия решений при выборе автомобиля

Автор работы: Пользователь скрыл имя, 26 Мая 2013 в 13:11, курсовая работа

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

На пути вероятностного моделирования встречаются определенные слож-ности, которые (если отвлечься от чисто теоретических проблем) можно условно разделить на две группы:
• технические (вычислительная сложность, «комбинаторные взрывы» и т.п.);
• идейные (наличие неопределенности, сложности при постановке за¬дачи в терминах вероятностей, недостаточность статистического ма¬териала).

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

Введение 3
1.Аналитическая часть. 6
1.1. Экспертные системы в выборе автомобиля. Критерии выбора………..6
1.2. Определение экспертных систем, достоинство и назначение 9
1.3. Области применения экспертных систем 12
2. Проектная часть. 15
2.1. Использование Байесовых сетей 15
2.2. Пример построения простейшей байесовской сети 17
2.3. Реализация 21
2.4. Представление сети Байеса в программе Netica 23
3. Экспериментальная часть 26
Заключение 27
Список литературы 28

Файлы: 1 файл

КУРСОВАЯ.docx

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

-    Прогнозирование.

Прогнозирующие системы предсказывают  возможные результаты или события  на основе данных о текущем состоянии  объекта. Программная система «Завоевание  Уолл-стрита» может проанализировать конъюнктуру рынка и с помощью  статистических методов алгоритмов разработать план капиталовложений на перспективу. Она не относится  к числу систем, основанных на знаниях, поскольку использует процедуры  и алгоритмы традиционного программирования. Хотя пока ещё отсутствуют экспертные системы, которые способны за счёт своей  информации о конъюнктуре рынка  помочь увеличить капитал, прогнозирующие системы уже сегодня могут  предсказывать погоду, урожайность  и поток пассажиров. Даже на персональном компьютере, установив простую систему, основанную на знаниях, можно получить местный прогноз погоды.

-     Планирование.

Планирующие системы предназначены  для достижения конкретных целей  при решении задач с большим  числом переменных. Дамасская фирма Informat впервые в торговой практике предоставляет в распоряжение покупателей 13 рабочих станций, установленных в холле своего офиса, на которых проводятся бесплатные 15-минутные консультации с целью помочь покупателям выбрать компьютер, в наибольшей степени отвечающий их потребностям и бюджету. Кроме того, компания Boeing применяет экспертные системы для проектирования космических станций, а также для выявления причин отказов самолётных двигателей и ремонта вертолётов. Экспертная система XCON, созданная фирмой DEC, служит для определения или изменения конфигурации компьютерных систем типа VAX и в соответствии с требованиями покупателя. Фирма DEC разрабатывает более мощную систему XSEL, включающую базу знаний системы XCON, с целью оказания помощи покупателям при выборе вычислительных систем с нужной конфигурацией. В отличие от XCON система XSEL является интерактивной.

-     Интерпретация.

Интерпретирующие системы обладают способностью получать определенные заключения на основе результатов наблюдения. Система PROSPECTOR, одна из наиболее известных  систем интерпретирующего типа, объединяет знания девяти экспертов. Используя  сочетания девяти методов экспертизы, системе удалось обнаружить залежи руды стоимостью в миллион долларов, причём наличие этих залежей не предполагал  ни один из девяти экспертов. Другая интерпретирующая система - HASP/SIAP. Она определяет местоположение и типы судов в тихом океане по данным акустических систем слежения.

-     Контроль и управление.

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

-    Диагностика неисправностей в механических и электрических устройствах.

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

-   Обучение.

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

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

 

  1. Проектная часть

2.1.Использование Байесовых сетей

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

Приведем  пример точных вычислений в простой  байесовой сети, моделирующей задачу Шерлока Холмса. Обозначения и смысл переменных в сети : R —был ли дождь, S — включена ли поливальная установка, C — влажная ли трава у дома Холмса, и W — влажная ли трава у дома Ватсона.

Все четыре переменные принимают булевы значения 0 — ложь, (f) или 1 — истина (t). Совместная вероятность P(R, S, C, W), таким образом, дается совокупной таблицей из 16 чисел. Таблица вероятностей нормирована, так что

Зная  совместное распределение, легко найти  любые интересующие нас условные и частичные распределения. Например, вероятность того, что ночью не было дождя при условии, что трава  у дома Ватсона — влажная, дается простым вычислением:

Из теоремы  об умножении вероятностей полная вероятность  представляется цепочкой условных вероятностей:

P(R, S, C, W) = P(R) * P(S | R) * P(C |R,S)*P(W | R, S, C).

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

P(R, S, C, W) = P(R) *P(S) * P(C |R,S)*P(W | R).

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.2.Пример построения простейшей  байесовской сети

Рассматриваем небольшую яблочную плантацию «яблочного Джека». Однажды Джек обнаружил, что  его прекрасное яблочное дерево лишилось листвы. Теперь он хочет выяснить, почему это случилось. Он знает, что листва часто опадает, если: дерево засыхает в результате недостатка влаги; или дерево болеет. Данная ситуация может быть смоделирована байесовской сетью доверия, содержащей 3 вершины: «Болеет», «Засохло» и «Облетело».

 

 

Рис.1 Пример байесовской сети доверия с тремя  событиями.

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

Вершина (событие) БСД 

Состояние 1

Состояние 2

“Болеет”

«болеет»

«нет»

“Засохло”

«засохло»

«нет»

“Облетело”

«да»

«нет»


 

Вершина “Болеет” говорит о том, что дерево заболело, будучи в состоянии «болеет», в противном случае она находится  в состоянии «нет». Аналогично для  других двух вершин. Рассматриваемая  байесовская сеть доверия, моделирует тот факт, что имеется причинно-следственная зависимость от события “Болеет” к событию “Облетело” и от события  “Засохло” к событию “Облетело”. Это отображено стрелками на байесовской  сети доверия. Когда есть причинно-следственная зависимость от вершины А к другой вершине B, то мы ожидаем, что когда A находится в некотором определённом состоянии, это оказывает влияние на состояние B. Следует быть внимательным, когда моделируется зависимость в байесовских сетях доверия. Иногда совсем не очевидно, какое направление должна иметь стрелка. Например, в рассматриваемом примере, мы говорим, что имеется зависимость от “Болеет” к “Облетело”, так как когда дерево болеет, это может вызывать опадание его листвы. Опадание листвы является следствием болезни, а не болезнь – следствием опадания листвы.

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

Априорная вероятность p(“Болеет”)

 

Априорная вероятность p(“Засохло”)

Болеет = «болеет»

Болеет = «нет»

 

Засохло = «засохло»

Засохло = «нет»

0,1

0,9

 

0,1

0,9


 

Таблица условных вероятностей p(“Облетело” | ”Болеет”, ”Засохло”)

 

Засохло = «засохло»

Засохло = «нет»

 

Болеет = «болеет»

Болеет = «нет»

Болеет = «болеет»

Болеет = «нет»

Облетело = «да»

0,95

0,85

0,90

0,02

Облетело = «нет»

0,05

0,15

0,10

0,98


 

Приведенные таблицы иллюстрируют ТУВ для  трёх вершин байесовской сети доверия. Заметим, что все три таблицы  показывают вероятность пребывания некоторой вершины в определённом состоянии, обусловленным состоянием её родительских вершин. Но так как вершины Болеет и Засохло не имеют родительских вершин, то их вероятности являются маргинальными, т.е. не зависят (не обусловлены) ни от чего.

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

В нашем  примере пусть известно, что дерево сбросило листву. Это свидетельство  вводится выбором состояния «да» в вершине “Облетело”. После  этого можно узнать вероятности  того, что дерево засохло. Для приведенных  выше исходных данных, результаты вывода путем распространения вероятностей по БСД будут:

p( “Болеет” = «болеет» | “Облетело” = «да») = 0,47;  p( “Засохло” = «засохло» |  “Облетело” = «да») = 0,49.

Расчет  в байесовской сети.

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

Введение  в байесовские сети новых данных приводит к возникновению переходного  процесса распространения по байесовской  сети доверия вновь поступившего свидетельства. После завершения переходного процесса каждому высказыванию, ассоциированному с вершинами графа, приписывается апостериорная вероятность, которая определяет степень доверия к этому высказыванию ( believe – доверять(англ.) ):

,

где D  –  объединения всех поступивших в систему данных;

Vji – композиционные высказывания, составленные из элементарных, то есть множество значений Xi  составляют Vji ;

Xi – пропозиционные переменные (то есть переменные, значениями которых являются высказывания), определяющие состояние вершин БСД.

При этом процесс распространения вероятностей в БСД основывается на  механизме  пересчёта,  в основе функционирования которого лежит следующая последовательность действий:

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

Этот  процессор осуществляет пересчёт апостериорных  вероятностей Bel(Vji) для всех возможных значений Vji данной переменной Xi и посылает соседим вершинам ответные сообщения.

Деятельность  процессора инициируется нарушением условий  согласованности с состояниями  соседних процессоров и продолжается до восстановления этих условий.

В некоторых системах, реализующих байесовские сети доверия используется метод noisyorgate, позволяющий существенно упростить вычислительный процесс. Суть его заключается в том, что в ряде примеров вершина «y» может быть условно независима от целого ряда вершин «xr» , где r = 1,2,..., n. Для того, чтобы сократить оценку 2n вероятностей, которые необходимы при использовании таблиц условных вероятностей, и используется данный метод. Согласно ему вероятность «y» в зависимости от n вершин «xr» оценивается как

, что позволяет оценить только p(y | x 1), p(y | x 2) ... p(y | x n), и на их основании  определить оценку p( y | x1 x2 ... xn).

 

2.3.Реализация

Основу  базы образуют следующие понятия: вид деятельности, соответствующая категория, выбор грузового автомобиля, выбор легкового автомобиля, а также факторы, влияющие на выбор определенного автомобиля. В сети Байеса каждое такое понятие представляется в виде вершины. Имеющиеся между вершинами причинно-следственные связи соответствуют следующему набору специальных навыков:

Информация о работе Разработка экспертной системы на основе сетей Байеса для поддержки принятия решений при выборе автомобиля