Разработка экспертной системы "Выбор смартфона"

Автор работы: Пользователь скрыл имя, 01 Декабря 2013 в 18:59, курсовая работа

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

Интеллектуальная информационная система (ИИС) - комплекс программных, лингвистических и логико-математических средств для реализации основной задачи – осуществления поддержки деятельности человека и поиска информации в режиме продвинутого диалога на естественном языке.[1] ИИС являются разновидностью интеллектуальной системы, а также одним из видов информационных систем.

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

Введение 5
1 Структура экспертных систем 8
2 Описание предметной области 26
3 Описание экспертной системы 28
4 Алгоритм работы экспертной системы 31
5 Реализация пользовательского интерфейса 33
Заключение 34
Список используемых источников 35

Файлы: 1 файл

kursovaya.docx

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

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

Взаимодействие  интеллектуальной системы с прикладным программным обеспечением осуществляется при выполнении специальных вычислений, так как часто возникает необходимость  использовать в качестве подзадач стандартные  операции по обработке данных. Корпоративная  информационная система.

Связь с  распределенной БД интегрированной  системы управления производством  и Интернет используется интеллектуальными  системами для получения данных и знаний, рассредоточенных на различных  уровнях иерархии управления. Кроме  того, организуется взаимодействие с  внешними базами данных и Интернет.

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

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

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

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

Чтобы реализовать  и представить объяснение, интеллектуальная система обычно преобразует экспертные эвристические правила в цепочку  рассуждений, которая показывает, как  начальное множество данных и  утверждений, а также набор эвристических  или иных правил при­водят систему  к заключению. Это свойство интеллектуальной системы реализуется пользователем  также для периодической оценки качества функционирования системы.

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

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

Структура интеллектуальной СПР в значительной мере определяется предметной экономической  областью и характером решаемых задач  при наличии определенных модулей, реализующих функции, определяющих систему как интеллектуальную.[8]

 

 

 

 

 

 

 

 

 

 

 

 

 

    1. Описание предметной области

 

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

Вопросы предполагают только один ответ (да/нет). В последствии ответы на вопросы суммируются и система ищет наиболее подходящее решение:

  • хотели бы вы, чтобы ваш смартфон работал как можно дольше? (yes/no);
  • собираетесь ли вы активно использовать мультимедийные возможности? (yes/no);
  • активно ли вы пользуетесь интернет ресурсами? (yes/no);
  • собираетесь ли вы пользоваться мобильным интернетом (3G)? (yes/no);
  • хотите ли вы использовать смартфон вместе с домашним ТВ? (yes/no);
  • собираетесь ли вы использовать смартфон в качестве GPS-навигатора? (yes/no);
  • хотели бы вы иметь наибольшую диагональ экрана на вашем смартфоне? (yes/no);
  • хотели бы иметь возможность подключения док-станции к вашему смартфону? (yes/no);
  • устраивает ли вас 1280*720 разрешение экрана смартфона? (yes/no);
  • важно ли для вас наличие на смартфоне механических кнопок? (yes/no);

Диалог  пользователя с системой происходит в окне браузера. Для примера были взяты 3 модели смартфонов, от таких фирм производителей как HTC, SAMSUNG, APPLE. Выборка производится при помощи наилучших характеристик, которые отображены в специально заданных вопросах.

    1. Описание экспертной системы

 

Реализация  экспертной системы в виде программного кода.

Создадим класс 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 реализация ЭС отображена в приложении.

    1. Алгоритм работы экспертной системы

 

Работа с ЭС осуществлется  в режиме вопрос-ответ (рисунок 4) в окне браузера.

рисунок 4 ­ Окно интерфейса

 

 

 

 

 

 

 

 

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

Рисунок 5 – Окно вывода результата

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    1. Реализация пользовательского интерфейса

 

Для реализации пользовательского интерфейса были использованы следующие технологии: 

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 .

 

СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ

  1. [Электронный ресурс]: Интеллектуальные информационная система.

- Режим доступа: http://ru.wikipedia.org/wiki/Интеллектуальная_информационная_система

  1. Интеллектуальные  информационные системы: учебное пособие/ Ю.Ю. Громов, О.Г. Иванова, и доп. – Тамбов; М.; СПб.; Баку; Вена: Изд-во «Нобелистика», 2008. – 196 с.
  2. Таусенд, К. Проектирование и программная реализация экспертных систем на персональных ЭВМ/ К. Таусенд, Д. Фохт. – М.: Финансы и статистика, 1990. – 320 с.
  3. Сафонов, В.О. Экспертные системы – интеллектуальные помощники специалистов/ В.О. Сафонов – СПб.: Знания Росси, 2007. – 373 с.
  4. Григорьев, Л.И. Системы искусственного интеллекта. Учебное пособие/ Л.И. Григорьев, О.А. Степанкина. –М.: РГУ нефти и газа им. И.М.Губкина,1998. – 59с.
  5. Уотермен, Д. Руководство по экспертным системам. Пер. с англ./                Д. Уотермен – М.: Мир, 1989. – 388с.
  6. Левин, Р. Практическое введение в технологию искусственного интеллекта и экспертных систем с иллюстрациями на Бейсике / Р. Левин, Д. Дранг, Б. Эдельсон. – М.: Финансы и статистика, 1990. – 239 с.
  7. Марселлус, Д. Программирование экспертных систем на Турбо-Прологе/ Д. Марселлус – М.: Финансы и статистика, 1994. – 128 с.
  8. Романов, В.П. Интеллектуальные информационные системы в экономике. Учебник плехановской академии, 2005. – 143 с.
  9. Балдин К.В., Уткин В.Б. Информационные системы в экономике, 5-е изд. - М.: Дашков и К, 2008. – 205 с.
  10. Дубровин А.Д., Интеллектуальные информационные системы: Учебное пособие, -М.: Дубровин и К, 2008. – 485 с.
  11. Андрейчиков А.В., Андрейчикова О.Н. Интеллектуальные информационные системы, Учебник. – М.: Финансы и статистика, 2004. – 424 с.
  12. Гаскаров Д.В., Интеллектуальные информационные системы. Учебник для вузов – М.: Финансы и статистика, 2007. – 432 с.

Информация о работе Разработка экспертной системы "Выбор смартфона"