Проектирование экспертной системы по выбору ноутбука

Автор работы: Пользователь скрыл имя, 13 Ноября 2013 в 20:19, курсовая работа

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

Экспертная система — компьютерная система, способная частично заменить специалиста-эксперта в разрешении проблемной ситуации. Современные ЭС начали разрабатываться исследователями искусственного интеллекта в 1970-х годах, а в 1980-х получили коммерческое подкрепление. Предтечи экспертных систем были предложены в 1832 году С. Н. Корсаковым, создавшим механические устройства, так называемые «интеллектуальные машины», позволявшие находить решения по заданным условиям, например определять наиболее подходящие лекарства по наблюдаемым у пациента симптомам заболевания[1].

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

Введение. 3
Технология проектирования ЭС 5
Описание проблемной области 8
Описание среды разработки 10
Способ представления знаний 11
Проектирование экспертной системы 13
Описание пользовательского интерфейса 17
Заключение 21

Файлы: 1 файл

курсовая работа.docx

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

"proizvod" – наименование производителя

"model" – наименование модели

"price" - цена

"processor" – наименование процессора

"proc_frequency" – частота процессора в Ггц

"nucl" – количество ядер процессора

"ram" – объем оперативной памяти в Мб

"video_type" – название модели видеокарты

"video_size" – объем видеопамяти в Мб

"video_built" – выделяется ли видеопамять из оперативной

"display" – размер дисплея в дюймах

"hdd" – объем жесткого диска в Гб

"weight" – вес ноутбука в кг

"os" – установленная операционная система

"extra" – дополнительные сведения о ноутбуке

Как уже было сказано выше, экспертная система имеет 2 режима: обычный и расширенный.

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

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

if(stackedLayout->currentIndex()==stackedLayout->indexOf(SpherePage))

{

 

if(rdbGames->isChecked())

{

sphere_zapr=" AND video_built = 'false' AND nucl>= 2 "

"AND ram >= 4000 AND proc_frequency>= 2.0 AND video_size>= 1000";

 

strSphere="Сфера использования: "+rdbGames->text();

 

}

if(rdbOffice->isChecked())

{

sphere_zapr=" AND video_built = 'true' AND nucl<=2 "

"AND ram <=4100 AND proc_frequency<= 2 AND display >= 15";

 

strSphere="Сфера использования: "+rdbOffice->text();

 

}

if(rdbSurfing->isChecked())

{

sphere_zapr=" AND display < 14.0 AND weight <= 2.0";

 

strSphere="Сфера использования: "+rdbSurfing->text();

}

if(rdbHome->isChecked())

{

sphere_zapr=" AND nucl<= 2 AND ram <=4100 "

"AND display >= 14.0";

 

strSphere="Сфера использования: "+rdbHome->text();

}

После, исходя из списка подходящих моделей, определятся ценовой диапазон, в который входят данные модели, и он делится на три части. Значения диапазона передаются в виджет PricePage, содержащий вопрос и предполагаемой цене покупки. При ответе на вопрос о предполагаемой цене выполняется следующий запрос:

if(stackedLayout->currentIndex()==stackedLayout->indexOf(PricePage))

{

if(rdbPrice1->isChecked())

{

price_zapr=" AND price >= "+str_min_price+" AND price <= "+str_step_1;

 

strPrice="Цена: "+rdbPrice1->text();

 

}

 

if(rdbPrice2->isChecked())

{

price_zapr=" AND price >= "+str_step_1+" AND price <= "+str_step_2;

 

strPrice="Цена: "+rdbPrice2->text();

 

}

 

if(rdbPrice3->isChecked())

{

price_zapr=" AND price >= "+str_step_2+" AND price <= "+str_max_price;

 

strPrice="Цена: "+rdbPrice3->text();

 

}

 

}

 

И последним задается вопрос о размере жесткого диска, который содержится в виджете HddPage:

if(stackedLayout->currentIndex()==stackedLayout->indexOf(HddPage))

{

 

if(rdbHdd1->isChecked())

{

hdd_zapr=" AND hdd<= 400";

 

strHdd="Жесткий диск: "+rdbHdd1->text();

}

 

if(rdbHdd2->isChecked())

{

hdd_zapr=" AND hdd> 400 AND hdd< 600";

strHdd="Жесткий диск :"+rdbHdd2->text();

}

 

if(rdbHdd3->isChecked())

{

hdd_zapr=" AND hdd>=600";

strHdd="Жесткий диск: "+rdbHdd3->text();

}

 

}

Результат выполнения – таблица, содержащая подходящие под запрос модели.

Находясь же в расширенном  режиме, пользователь имеет следующие  возможности:

  1. Производить выборку, исходя из цены, частоты процессора, объема оперативной памяти, объема видеопамяти, размера дисплея, веса, объема жесткого диска.
  2. Добавлять записи к базе данных.
  3. Изменять записи в базе данных.
  4. Удалять записи в базе данных.
  5. Получить вывод полной информации о ноутбуке.

 

Описание  пользовательского интерфейса

При старте программы появляется следующая форма:

Рис.1 Стартовая форма

 

При выборе пользователем  обычного режима появляется соответствующее  окно:

Рис.2 Обычный режим

Пользователь выбирает ответ  на вопрос, отмечая соответствующие  радиокнопки, и после нажимает на кнопку «Дальше». Система выполняет  соответствующий запрос, обновляя при  этом таблицу вывода. Если же пользователь хочет заново ответить на вопросы, то ему следует нажать кнопу «В Начало», и система повторит свои вопросы.

Если же пользователь выбрал расширенный режим, появится следующая форма:

Рис 3. Расширенный режим

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

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

Рис 4. Окно информации

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

Рис. 5 Окно добавления записи

Заполнив поля и нажав  кнопку «Добавить», запись поместится в таблицу и отобразится на экране. После чего данное окно автоматически  закроется.

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

При нажатии кнопки удалить  выбранная запись удаляется из таблицы.

 

Заключение

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

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

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

Плюсы разработанной экспертной системы:

    1. Имеет интуитивно понятный пользователю графический интерфейс
    2. Не имеет привязки к какой-либо операционной системе
    3. База данных имеет возможность обновления и пополнения.

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

  1. Получение списка предпочтений и подходящих моделей ноутбуков для конечного пользователя (покупателя)
  2. Обеспечение более конкретизированного и конструктивного диалога между продавцом-консультантом и конечным пользователем (покупателем)
  3. Снижение занятости продавца-консультанта.

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

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

 

Список  используемой литературы

 

  1.  Интеллектуальные машины С.Н. Корсакова 
    http://www.homeoscope.ru/
  2. Гаврилова Т. А., Хорошевский В. Ф. Базы знаний интеллектуальных систем. Учебник. — СПб.: Питер, 2000.
  3. Бланшет Ж., Саммерфилд М. Qt 4: программирование GUI на C++. Пер. с англ. 2-е изд., доп. - М.: КУДИЦ-ПРЕСС, 2008.
  4. Шлее М. Qt4.5 Профессиональное программирование на С++. – СПб.:БХВ-Петербург, 2010.
  5. Qt и SQLite и вообще, программирование БД в Qt. - http://habrahabr.ru/post/128836/

Информация о работе Проектирование экспертной системы по выбору ноутбука