Автор работы: Пользователь скрыл имя, 17 Октября 2011 в 00:12, курсовая работа
Система является интеллектуальной, если она обладает знаниями и умеет использовать их для достижения сформулированной цели. Знания – это то, без чего нет интеллектуальной системы. Экспертные системы (в дальнейшем ЭС) явились первыми действительно интеллектуальными системами и, в конечном счете, интеллектуальность определила их коммерческий успех.
Введение 3
Архитектура экспертной системы 7
Классификация экспертных систем 10
Классификация моделей представления знаний 13
Тема курсового проекта 15
Блок-схема программы 16
Код программы 18
Использованная литература 27
Эта схема даёт
Общепринятая
классификация экспертных систем отсутствует,
однако наиболее часто экспертные системы
различают по назначению, предметной
области, методам представления
знаний, динамичности и сложности:
По назначению классификацию экспертных систем можно провести следующим образом:
По предметной области наибольшее количество экспертных систем используется в военном деле, геологии, инженерном деле, информатике, космической технике, математике, медицине, метеорологии, промышленности, сельском хозяйстве, управлении процессами, физике, филологии, химии, электронике, юриспруденции.
Классификация экспертных систем по методам представления знаний делит их на традиционные и гибридные. Традиционные экспертные системы используют, в основном, эмпирические модели представления знаний и исчисление предикатов первого порядка. Гибридные экспертные системы используют все доступные методы, в том числе оптимизационные алгоритмы и концепции баз данных.
По степени сложности экспертные системы делят на поверхностные и глубинные. Поверхностные экспертные системы представляют знания в виде правил «ЕСЛИ-ТО». Условием выводимости решения является безобрывность цепочки правил. Глубинные экспертные системы обладают способностью при обрыве цепочки правил определять (на основе метазнаний) какие действия следует предпринять для продолжения решения задачи. Кроме того, к сложным относятся предметные области в которых текст записи одного правила на естественном языке занимает более 1/3 страницы.
Классификация экспертных систем по динамичности делит экспертные системы на статические и динамические. Предметная область называется статической, если описывающие ее исходные данные не изменяются во времени. Статичность области означает неизменность описывающих ее исходных данных. При этом производные данные (выводимые из исходных) могут и появляться заново, и изменяться (не изменяя, однако, исходных данных).
Если исходные данные, описывающие предметную область, изменяются за время решения задачи, то предметную область называют динамической. В архитектуру динамической экспертной системы, по сравнению со статической, вводятся два компонента:
Последняя осуществляет связи с внешним миром через систему датчиков и контроллеров. Кроме того, традиционные компоненты статической экспертной системы (база знаний и механизм логического вывода) претерпевают существенные изменения, чтобы отразить временную логику происходящих в реальном мире событий.
В настоящее
время разработано множество
моделей представления знаний. Имея
обобщенное название, они различаются
по идеям, лежащим в их основе, с
точки зрения математической обоснованности.
Типы моделей показаны на рисунке.
Первый подход, называемый эмпирическим, основан на изучении принципов организации человеческой памяти и моделировании механизмов решения задач человеком. На основе этого подхода в настоящее время разработаны и получили наибольшую известность следующие модели:
Более подробно эти модели рассматриваются в соответствующих статьях. Условно в группу эмпирического подхода можно включить нейронные сети и генетические алгоритмы, относящиеся к бионическому (основано на предположении о том, что если в искусственной системе воспроизвести структуры и процессы человеческого мозга, то и результаты решения задач такой системой будут подобны результатам, получаемым человеком) направлению искусственного интеллекта. Особенностью моделей этого типа является широкое использование эвристик, что в каждом случае требует доказательства правильности получаемых решений.
Второй подход можно определить как теоретически обоснованный, гарантирующий правильность решений. Он в основном представлен моделями, основанными на формальной логике (исчисление высказываний, исчисление предикатов), формальных грамматиках, комбинаторными моделями, в частности моделями конечных проективных геометрий, теории графов, тензорными и алгебраическими моделями. В рамках этого подхода до настоящего времени удавалось решать только сравнительно простые задачи из узкой предметной области.
Для данного курсового проекта мною была выбрана тема «Экспертная система распознавания кактусов». Не смотря на узкую специализированность данной тематики подобная программа может быть полезной в области торговли или в процессе создания и использования электронного энциклопедического справочника. Методика распознавания различных видов кактусов сведена к описанию внешнего вида и строения растения.
Применяя данную систему в сфере торговли, например через интернет, покупатель может подобрать для себя конкретное растение, существенно сузив область поиска.
Программа
представляет собой статическую
систему с продукционной
(deffunction voprosi (?question $?allowed-values)
(printout t ?question)
(bind ?answer (read))
(if (lexemep ?answer)
then (bind ?answer (lowcase ?answer))
)
(while (not (member ?answer ?allowed-values)) do
(printout t ?question)
(bind ?answer (read))
(if (lexemep ?answer)
then (bind ?answer (lowcase ?answer))
)
)
?answer
)
(deffunction answerquest (?question)
(bind ?response (voprosi ?question yes no y n))
(if (or (eq ?response yes) (eq ?response y))
then TRUE
else FALSE
)
)
(defrule noansver""
(netotvet)
=>
(assert (repair "kypite drugoe rastenie."))
)
(defrule vopros1""
(not (repair ?))
=>
(if(answerquest "Vam nujen odinochnii kaktus s celnim steblem? (yes/no) ")
then
(assert (vopros-4))
else
(assert (vopros-2-2))
)
)
(defrule vopros-2-2""
(vopros-2-2)
(not (repair ?))
=>
(if(answerquest "Vam nujen odinochnii kaktus s steblem, sostoiashim iz pohojih drug na druga segmentov? (yes/no) ")
then
(assert (vopros-5))
else
(assert (vopros-2-3))
)
)
(defrule vopros-2-3""
(vopros-2-3)
(not (repair ?))
=>
(if(answerquest "Vam nujno rastenie imeushee vid kusta ili derevca c udlinennimi pobegami? (yes/no) ")
then
(assert (vopros-6))
else
(assert (vopros-2-4)))
)
(defrule vopros-2-4""
(vopros-2-4)
(not (repair ?))
=>
(if(answerquest "Vam nujno rastenie, obrazovannoe plotnim skopleniem pohojih drug na druga sharovidnih steblei? (yes/no) ")
then
(assert (vopros-7))
else
(assert (netotvet)))
)
(defrule vopros-4""
(vopros-4)
(not (repair ?))
=>
(bind ?response
(voprosi "Vam nujno rastenie s stolbovidnim cteblem i ego visota v 3 raza bolshe diametra, ili rastenie v vide shara? (stolb/shar) " stolb shar ))
(if (eq ?response stolb)
then
(assert (vopros-8)))
(if (eq ?response shar)
then
(assert (vopros-9)))
)
(defrule vopros-8""
(vopros-8)
(not (repair ?))
=>
(bind ?response
(voprosi "Kaktus s prodolnimi rebrami ili bez reber? (rebro/bez)
" rebro bez))
(if (eq ?response rebro)
then
(assert (otvet-12)))
(if (eq ?response bez)
then
(assert (otvet-11)))
)
(defrule vopros-9""
(vopros-9)
(not (repair ?))
=>
(if(answerquest "Na kaktuse horosho zametni vertikalnie rebra s vertikalnimi radami koluchek? (yes/no) ")
then
(assert (vopros-23))
else
(assert (vopros-9-1)))
)
(defrule vopros-9-1""
(vopros-9-1)
(not (repair ?))
=>
(if(answerquest "kaktus pokrit bugorkami raspolagaushimica spiralnimi riadami? (yes/no) ")
then
(assert (vopros-24))
else
(assert (vopros-9-2)))
)
(defrule vopros-9-2""
(vopros-9-2)
(not (repair ?))
=>
(if(answerquest "Poverhnost steblia pochti rovnaia? (yes/no) ")
then
Информация о работе Экспертная система распознавания кактусов