Автор работы: Пользователь скрыл имя, 01 Декабря 2013 в 18:59, курсовая работа
Интеллектуальная информационная система (ИИС) - комплекс программных, лингвистических и логико-математических средств для реализации основной задачи – осуществления поддержки деятельности человека и поиска информации в режиме продвинутого диалога на естественном языке.[1] ИИС являются разновидностью интеллектуальной системы, а также одним из видов информационных систем.
Введение 5
1 Структура экспертных систем 8
2 Описание предметной области 26
3 Описание экспертной системы 28
4 Алгоритм работы экспертной системы 31
5 Реализация пользовательского интерфейса 33
Заключение 34
Список используемых источников 35
Пользовательский интерфейс обеспечивает связь на ограниченном естественном языке, речевой ввод, а также визуальные представления (графику, техническое зрение). В качестве пользователя может выступать либо человек-оператор, либо сам производственный процесс в случае закрытых циклических операций. Для некоторых производственных процессов бывают необходимы средства для автоматического получения данных и их обработки, а также обратной связи по управлению. С инженером знаний интеллектуальная система обычно связывается с помощью структурных редакторов, которые позволяют ему получать и модифицировать компоненты базы знаний.
Взаимодействие
интеллектуальной системы с прикладным
программным обеспечением осуществляется
при выполнении специальных вычислений,
так как часто возникает
Связь с распределенной БД интегрированной системы управления производством и Интернет используется интеллектуальными системами для получения данных и знаний, рассредоточенных на различных уровнях иерархии управления. Кроме того, организуется взаимодействие с внешними базами данных и Интернет.
В задачах
управления производством экспертом
обычно используются три уровня знания:
'умения', соответствующие поверхностному
знанию рефлекторных реакций; правила
для случаев стандартных
При проектировании
интеллектуальных систем и выборе их
архитектуры следует
Важное значение при создании интеллектуальных систем имеют способы представления знаний о предметной области и моделирования мыслительной деятельности человека, методов рассуждения и поиска при принятии решений. Разработчик интеллектуальной системы (инженер знаний) длительное время работает совместно со специалистом-экспертом в данной области, который является источником информации для создания базы знаний. В результате нескольких итераций избираются схема представления знаний в системе и стратегия логического вывода.
Помимо проблемы структуризации знаний в базе знаний и организации механизмов вывода, рассуждений и поиска важное значение имеют функции объяснения решений и выводов. Как правило, интеллектуальные системы объясняют и подтверждают свои заключения и рекомендации, тем самым увеличивая к ним доверие со стороны пользователей.
Чтобы реализовать
и представить объяснение, интеллектуальная
система обычно преобразует экспертные
эвристические правила в
Оценка
ситуаций, складывающихся во внешней
среде, а также необходимость
оценки развития событий в результате
принятия решения ИС, т. е. определение
и прогнозирование наиболее важных
свойств процесса или объекта
на основе интерпретации имеющихся
данных, является важнейшей операцией
во многих задачах управления производством.
На основании этих оценок и прогнозов
принимаются управляющие
Структура интеллектуальных систем безусловно не универсальна. Ни одна из существующих интеллектуальных систем не содержит все описанные компоненты. Вместе с тем наличие этих элементов отражает важность реализации различных функций системы, претендующей на интеллектуальность не в абстрактном, а в прикладном аспекте. Включение тех или иных компонентов и связей в интеллектуальную систему в значительной степени определяется ее назначением, функциями, предметной областью, формой взаимодействия с производственным процессом. Например, нецелесообразна реализация функций объяснения в системах управления технологическими процессами на базе интеллектуальных систем регулирования. В то же время ясно, что такие компоненты интерфейса ПСИИ, как системы технического зрения и речевого ввода информации, преимущественно используются в производственных робототехнических комплексах. Некоторые компоненты могут встречаться в составе практически каждой интеллектуальной системы.
Структура интеллектуальной СПР в значительной мере определяется предметной экономической областью и характером решаемых задач при наличии определенных модулей, реализующих функции, определяющих систему как интеллектуальную.[8]
Для создания экспертной системы используется система выбора смартфона по ответам на предварительные вопросы. В зависимости от ответов пользователя, система сможет предложить наилучший смартфон, который будет максимально подходить для данного пользователя.
Вопросы предполагают только один ответ (да/нет). В последствии ответы на вопросы суммируются и система ищет наиболее подходящее решение:
Диалог пользователя с системой происходит в окне браузера. Для примера были взяты 3 модели смартфонов, от таких фирм производителей как HTC, SAMSUNG, APPLE. Выборка производится при помощи наилучших характеристик, которые отображены в специально заданных вопросах.
Реализация экспертной системы в виде программного кода.
Создадим класс questions, описывающий атрибуты предполагаемых альтернатив, определяемых по составленным вопросам:
(defclass questions
(is-a USER)
(role concrete)
(pattern-match reactive)
(slot time (type FLOAT) (create-accessor read-write)) // Описываем параметры такие как time, multimedia, Inet и т.д.
(slot multimedia(type FLOAT) (create-accessor read-write))
(slot Inet(type FLOAT) (create-accessor read-write))
(slot mobinet(type FLOAT) (create-accessor read-write))
(slot tv(type FLOAT) (create-accessor read-write))
(slot gps(type FLOAT) (create-accessor read-write))
(slot diag(type FLOAT) (create-accessor read-write))
(slot dokstation(type FLOAT) (create-accessor read-write))
(slot resolution(type FLOAT) (create-accessor read-write))
(slot mechbuttons(type FLOAT) (create-accessor read-write))
(slot useful(type INTEGER) (create-accessor read-write)))
Defclass - конструктор, создающий пользовательский класс в CLIPS.
Определяются свойста (слоты) и поведение класса объектов (обработчики сообщений). Create-accessor в CLIPS используется для автоматического создания явных обработчиков сообщений для read/write функций слота. (create-accessor read-write)
Так же используем конструктор definstances, который позволит определить объекты, которые создаются при выполнение команды reset.
(definstances questionss
(maxim of questions (time 0.0)(multimedia 0.0) (Inet 0.0)(mobinet 0.0)(tv
0.0)(gps 0.0)(diag 0.0)(dokstation 0.0)(resolution 0.0)(mechbuttons 0.0)(useful 0)) // системный класс для добавления максимальных значений параметров
(HTC of questions(time 12.0)(multimedia 4.0)(Inet 10.0)(mobinet 10.0)(tv 10.0)(gps 10.0)(diag 10.1)(dokstation 1.0)(resolution 10.0)(mechbuttons 1.0)(useful 0))
(GALAXY of questions(time 7.0)(multimedia 2.0)(Inet 9.0)(mobinet 9.0)(tv 9.0)(gps 9.0)(diag 9.0)(dokstation 0.0)(resolution 9.0)(mechbuttons 0.0)(useful 0))
(IPHONE of questions(time 10.0)(multimedia 8.0)(Inet 8.0)(mobinet 8.0)(tv 8.0)(gps 8.0)(diag 8.0)(dokstation 0.0)(resolution 9.0)(mechbuttons 0.0)(useful 0)))
Создадим правило, которое запускает обработчики, производит read/write данных в файлах.
defrule rulePDA
(object(name [maxim])(time 0.0))
=>
(printout t "work" crlf)
(open "C:/clips.txt" readFile)
(if (eq 1 (read readFile)) then (send [maxim] max_time))
(if (eq 1 (read readFile)) then (send [maxim] max_multimedia))
(if (eq 1 (read readFile)) then (send [maxim] max_Inet))
(if (eq 1 (read readFile)) then (send [maxim] max_mobinet))
(if (eq 1 (read readFile)) then (send [maxim] max_tv))
(if (eq 1 (read readFile)) then (send [maxim] max_gps))
(if (eq 1 (read readFile)) then (send [maxim] max_diag))
(if (eq 1 (read readFile)) then (send [maxim] max_dokstation))
(if (eq 1 (read readFile)) then (send [maxim] max_resolution))
(if (eq 1 (read readFile)) then (send [maxim] max_mechbuttons))
(open "C:/output.txt" inFile "r+")
(printout inFile (send [HTC] get-useful) crlf)
(printout inFile (send [GALAXY] get-useful) crlf)
(printout inFile (send [IPHONE] get-useful) crlf)
(close inFile)
(close readFile))
Правила конструкции if-then служат для представления эмпирических правил, которые определяют набор действий, выполняемых при возникновение случайной ситуации. Набор правил определяется разработчиком ЭС. Правила состоят из предпосылок и следствия, предпосылки это if-часть, а then-часть следствие. Так же их часто называют левой и правой частью правила.
(defmessage-handler questions up_useful()
(bind ?i (dynamic-get useful))
(dynamic-put useful (+ ?i 1)))
Конструктор defmessage-handler предназначен для создания обработчика сообщений, который фактически задает поведение объекта данного класса в ответ на получение определенного сообщения. Реализация сообщения представляет собой некоторую заданную последовательность действий, называемую обработчиком сообщений.
Dynamic-put, функция предназначеная для динамического изменения содержимого слотов в активном объекте. Данная функция доступна из обработчиков сообщений.
PHP реализация ЭС отображена в приложении.
Работа с ЭС осуществлется в режиме вопрос-ответ (рисунок 4) в окне браузера.
рисунок 4 Окно интерфейса
Пользователь отвечает на вопросы, после чего CLIPS производит анализ полученных результатов и записывает их в промежуточный текстовый файл. PHP берет на себя функцию выделения лучшего смартфона и выводит на экран коэффициент полезности (useful) (рисунок 5).
Рисунок 5 – Окно вывода результата
Для реализации пользовательского интерфейса были использованы следующие технологии:
1) PHP5
2) HTML
Разработка производилась под операционной системой Windows 7 64bit с установленой на ней связкой Apache 1.3.33 и PHP 5.0.5.
Для связывания экспертной системы на языке CLIPS использовалось расширение для PHP phlips версии 0.5.0.
Непосредственно интерфейс реализован на языке HTML.
Часть, отвечающая за работу с CLIPS так же написана на PHP5.
Для создания экспертной системы использована система выбора смартфона по ответам на предварительные вопросы, в зависимости от ответов, пользователю предлагался подходящий смартфон.
Итогом курсового проекта стало написание экспертной системы.
Для реализации экспертной системы были использованы технологии PHP5 и HTML, а также программная среда CLIPS и PHLIPS, для связи PHP5 и CLIPS .
-
Режим доступа: http://ru.
Информация о работе Разработка экспертной системы "Выбор смартфона"