Создание экспертной системы по выбору электрогитары

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

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык русский
Дата добавления 14.08.2010
Размер файла 43,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ

УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ

Кафедра «Математика и моделирование»

Реферат по дисциплине:

«Базы знаний и экспертные системы»

Тема: «Создание экспертной системы

по выбору электрогитары»

Санкт-Петербург

2009г.

Цель работы: составить такую экспертную систему, чтобы любой человек при обращении к ней, мог принять решение в выборе электрогитары.

Краткое описание.

Самое сильное влияние на человеческое сознание и на эмоции оказывает музыка. Множество различных музыкальных инструментов было создано людьми и эти инструменты постоянно усовершенствуются, а так же создаются новые. В настоящее время для удобства звукозаписи и обработки музыки используются электронные музыкальные инструменты, в том числе электрогитары. Данная система поможет определиться с характеристиками и типами данного вида инструментов, так как для каждого покупателя-музыканта нужно помочь подобрать “его” гитару по тем основным характеристикам, которые представлены в моей экспертной системе .

Заключения.

1. Epiphone LP Studio

2. Epiphone LP Standart

3. ESP LTD JH-200

4. ESP LTD M-200 FM

5. ESP LTD H-100 FM

6. Ibanez AF75 BS

7. Ibanez SZ520QM GAB

8. Washburn 30В

9. Washburn J9

10. Washburn N3

11. Washburn WG587

12. Jackson DK2FS

13. Jackson JS30DKT

14. Gibson LP-100

15. Epiphone LP Custom

16. Fender FG -200

17. Fender LS -11

18. Squaer Standart

Модель предметной области.

Список вопросов.

1. Форма гитары:

а) Les Paul;

б) Stratocaster;

в) Classic;

2. Материал:

а) Дерево;

б) Другой;

3. Производитель:

а) Китай;

б) Корея;

в) Индонезия;

4. Количество звукоснимателей:

а) 2;

б) 3;

5. Наличие рычага;

a) есть

b) нет

6. Наличие встроенного эффекта;

а) есть

б) нет

 

1

2

3

4

5

6

Les Paul

Stratocaster

Classic

дерево

нет

Китай

Корея

Индонезия

два

три

ЕСТЬ

НЕТ

ЕСТЬ

НЕТ

1. Epiphone LP Studio

+

 

 

+

 

+

 

 

 -

 

2. Epiphone LP Standart

 +

 

+

 

 

+

 -

 -

 

 -

3. ESP LTD JH-200

 

 

 -

 -

 -

 -

 

4. . ESP LTD M-200FM

 

+

 

 -

 -

-

-

5. ESP LTD H-100FM

 +

 

 

 -

-

 -

-

6. Ibanez AF75 BS

 

 

 

 

+

 -

7. Ibanez SZ520 QM

 

 +

 

 

-

 -

 -

8. Washburn 30B

 

 

+

 

 

 -

-

 -

9. Washburn J9

 

+

 

+

 

 

 

-

 -

10. Washburn N3

 

 +

 

+

 

 

 -

 -

 -

 -

11. Washburn WG587

 

 +

 

 

 +

 

12. JACKSON DK 2FS

+

 

 

 

 

 -

 

13. JACKSON JS 30 DKT

 

+

 

 

 

 +

 

 -

-

-

14. Gibson LP Custom

 +

 

+

 

 

 

 -

-

-

15. Epiphone LP Custom

 +

 

 

 

 -

 -

-

-

16. Fender FG - 200

 

+

 

 

 +

 

 -

-

 +

17. Fender LS -11

+

 

 

+

 

+

 

 

 -

 -

 

18.Squaer Standart

 

+

 

 +

 

 

 +

Дерево вывода

Текст программы на Visual Prolog 5.2

% Идентификация гитары

database

db_positive ( symbol, symbol )

db_negative ( symbol, symbol )

predicates

do_expert % выполнить экспертную работу

do_consulting % выполнить консультацию

nondeterm

guitar_is ( symbol ) % гитара есть

it_is ( symbol ) % это есть

positive ( symbol, symbol ) % позитивный факт

negative ( symbol, symbol ) % негативный факт

remember ( symbol, symbol, symbol ) % запомнить факт в ДБД

ask ( symbol, symbol ) % вопрос пользователю

clear_facts % очистка ДБД

goal

do_expert.

clauses

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

do_expert :-

nl, write ("* * * * * * * * * * * * * * * * * * * * * * * * * * * *" ),

nl, write ("ДОБРО ПОЖАЛОВАТЬ в экспертную систему" ),

nl, write (" определения нужной гитары " ),

nl, write ("* * * * * * * * * * * * * * * * * * * * * * * * * * * *" ),

nl, write ( " Пожалуйста, ответьте на вопросы об интересующей Вас " ),

nl, write ( " гитаре 'y' (да), или 'n' (нет). " ),

nl, nl, nl,

do_consulting,

write ( "Нажмите любую клавишу..." ), nl,

readchar ( _ ),

exit.

do_consulting :-

guitar_is ( X ), !,

nl, nl,

write ( "Интересующая Вас гитара - ", X ),

nl, nl,

clear_facts.

do_consulting :-

nl, nl,

write ( "Извините, не могу Вам помочь!" ),

nl, nl,

clear_facts.

ask ( X, Y ) :-

write ( "Вопрос: ", X, " ", Y, "? " ),

readln ( Reply ),

remember ( X, Y, Reply ).

% Механизм вывода

positive ( X, Y ) :-

db_positive ( X, Y ), !.

positive ( X, Y ) :-

not ( db_negative ( X, Y ) ), !,

ask ( X, Y ).

negative ( X, Y ) :-

db_negative ( X, Y ), !.

remember ( X, Y, y ) :-

asserta ( db_positive ( X, Y ) ).

remember ( X, Y, n ) :-

asserta ( db_negative ( X, Y ) ),

fail.

clear_facts :-

retract ( db_positive ( _, _ ) ), fail.

clear_facts :-

retract ( db_negative ( _, _ ) ), fail.

clear_facts.

% Продукционные правила

guitar_is ( "Epiphone LP Studio" ) :-

it_is ( "форма Les Paul" ),

positive ( "материал", "дерево" ),

positive ( "страна", "Китай" ),

positive ( "должен быть", "встроенный эффект" ).

guitar_is ( "Fender LS-11" ) :-

it_is ( "форма Les Paul" ),

positive ( "материал", "дерево" ),

positive ( "страна", "Китай" ),

negative ( "должен быть", "встроенный эффект" ).

guitar_is ( "Gibson LP-100" ) :-

it_is ( "форма Les Paul" ),

positive ( "материал", "дерево" ),

negative ( "страна", "Китай" ),

positive ( "страна", "Корея" ).

guitar_is ( "jackson DK2FS" ) :-

it_is ( "форма Les Paul" ),

positive ( "материал", "дерево" ),

negative ( "страна", "Китай" ),

negative ( "страна", "Корея" ),

positive ( "должен быть", "рычаг" ).

guitar_is ( "Epiphone LP Standart" ) :-

it_is ( "форма Les Paul" ),

positive ( "материал", "дерево" ),

negative ( "страна", "Китай" ),

negative ( "страна", "Корея" ),

negative ( "должен быть", "рычаг" ).

guitar_is ( "ESP LTD H-100FM" ) :-

it_is ( "форма Les Paul" ),

positive ( "материал", "другой" ),

negative ( "страна", "Китай" ),

positive ( "страна", "Корея" ).

guitar_is ( "Epiphone LP Custom" ) :-

it_is ( "форма Les Paul" ),

positive ( "материал", "другой" ),

negative ( "страна", "Китай" ),

negative ( "страна", "Корея" ).

guitar_is ( "Washburn WG 587" ) :-

it_is ( "форма stratocaster" ),

negative ( "форма", "Les Paul" ),

positive ( "форма", "stratocaster" ),

positive ( "материал", "дерево" ),

positive ( "страна", "Китай" ),

positive ( "количество звукоснимателей", "2" ).

guitar_is ( "Ibanez AF75 BS" ) :-

it_is ( "форма stratocaster" ),

negative ( "форма", "Les Paul" ),

positive ( "форма", "stratocaster" ),

positive ( "материал", "дерево" ),

positive ( "страна", "Китай" ),

negative ( "количество звукоснимателей", "2" ).

guitar_is ( "Ibanez SZ520 QMGAB" ) :-

it_is ( "форма stratocaster" ),

negative ( "форма", "Les Paul" ),

positive ( "форма", "stratocaster" ),

positive ( "материал", "дерево" ),

negative ( "страна", "Китай" ),

positive ( "страна", "Корея" ).

guitar_is ( "Washburn J9" ) :-

it_is ( "форма stratocaster" ),

negative ( "форма", "Les Paul" ),

positive ( "форма", "stratocaster" ),

positive ( "материал", "дерево" ),

negative ( "страна", "Китай" ),

negative ( "страна", "Корея" ).

guitar_is ( "ESP LTD JH-200" ) :-

it_is ( "форма stratocaster" ),

negative ( "форма", "Les Paul" ),

positive ( "форма", "stratocaster" ),

positive ( "материал", "другое" ),

negative ( "страна", "Китай" ),

negative ( "страна", "Корея" ),

positive ( "должен быть", "встроенный эффект" ).

guitar_is ( "Fender FG-200" ) :-

it_is ( "форма stratocaster" ),

negative ( "форма", "Les Paul" ),

positive ( "форма", "stratocaster" ),

positive ( "материал", "другое" ),

negative ( "страна", "Китай" ),

positive ( "страна", "Корея" ),

negative ( "должен быть", "встроенный эффект" ).

guitar_is ( "Jackson JS30DKT" ) :-

it_is ( "форма classic" ),

negative ( "форма", "Les Paul" ),

negative ( "форма", "stratocaster" ),

positive ( "форма", "classic" ),

positive ( "материал", "дерево" ),

positive ( "страна", "Китай" ),

positive ( "количество звукоснимателей", "2" ).

guitar_is ( "Squaer Standart" ) :-

it_is ( "форма classic" ),

negative ( "форма", "Les Paul" ),

negative ( "форма", "stratocaster" ),

positive ( "форма", "classic" ),

positive ( "материал", "дерево" ),

positive ( "страна", "Китай" ),

negative ( "количество звукоснимателей", "2" ).

guitar_is ( "ESP LTD M-200FM" ) :-

it_is ( "форма classic" ),

negative ( "форма", "Les Paul" ),

negative ( "форма", "stratocaster" ),

positive ( "материал", "другое" ),

positive ( "страна", "Китай" ).

guitar_is ( "Washburn N3" ) :-

it_is ( "форма classic" ),

negative ( "форма", "Les Paul" ),

negative ( "форма", "stratocaster" ),

positive ( "форма", "classic" ),

positive ( "материал", "другое" ),

negative ( "страна", "Китай" ),

positive ( "страна", "Корея" ).

guitar_is ( "Washburn 30B" ) :-

it_is ( "форма classic" ),

negative ( "форма", "Les Paul" ),

negative ( "форма", "stratocaster" ),

positive ( "форма", "classic" ),

positive ( "материал", "другое" ),

negative ( "страна", "Китай" ),

negative ( "страна", "Корея" ).

it_is ( "форма Les Paul" ) :-

positive ( "форма", "Les Paul" ), !.

it_is ( "форма stratocaster" ) :-

negative ( "форма", "Les Paul" ), !,

positive ( "форма", "stratocaster" ), !.

it_is ( "форма classic" ) :-

negative ( "форма", "Les Paul" ), !,

negative ( "форма", "stratocaster" ), !.

Пример работы программы:

Текст программы на Leonardo:

1. if 'Form of the guitar' is 'Les Paul'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'China'

and 'Nalichie vstroennogo effecta' is 'yes'

then Guitar is 'Epiphone LP Studio'

2. if 'Form of the guitar' is 'Les Paul'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'China'

and 'Nalichie vstroennogo effecta' is 'no'

then Guitar is 'Fender LS11'

3 if 'Form of the guitar' is 'Les Paul'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'Korea'

then Guitar is 'Gibson LP-100'

4 if 'Form of the guitar' is 'Les Paul'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'Indonesia'

and 'nalichie rychaga' is 'yes'

then Guitar is 'JacksonDK2FS'

5 if 'Form of the guitar' is 'Les Paul'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'Indonesia'

and 'nalichie rychaga' is 'no'

then Guitar is 'Epiphone LP Standart'

6 if 'Form of the guitar' is 'Les Paul'

and 'material' is 'another'

and 'Strana Proizvoditel' is 'Korea'

then Guitar is 'ESP LTD H-200FM'

7 if 'Form of the guitar' is 'Les Paul'

and 'material' is 'another'

and 'Strana Proizvoditel' is 'Indonesia'

then Guitar is 'Epiphone LP Custom'

8 if 'Form of the guitar' is 'Stratocaster'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'China'

and 'number of hambekers' is '2'

then Guitar is 'Washburn WG 587'

9 if 'Form of the guitar' is 'Stratocaster'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'China'

and 'number of hambekers' is '3'

then Guitar is 'Ibanez AF75 BS'

10 if 'Form of the guitar' is 'Stratocaster'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'Korea'

then Guitar is 'Ibanez SZ520QM GAB'

11 if 'Form of the guitar' is 'Stratocaster'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'Indonesia'

then Guitar is 'Washburn J9'

12 if 'Form of the guitar' is 'Stratocaster'

and 'material' is 'another'

and 'Strana Proizvoditel' is 'Korea'

and 'Nalichie vstroennogo effecta' is 'yes'

then Guitar is 'ESP LTD JH-200'

13 if 'Form of the guitar' is 'Stratocaster'

and 'material' is 'another'

and 'Strana Proizvoditel' is 'Korea'

and 'Nalichie vstroennogo effecta' is 'no'

then Guitar is 'Fender FG-200'

14 if 'Form of the guitar' is 'Classic'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'China'

and 'number of hambekers' is '2'

then Guitar is 'JacksonJS30DKT'

15 if 'Form of the guitar' is 'Classic'

and 'material' is 'wood'

and 'Strana Proizvoditel' is 'China'

and 'number of hambekers' is '3'

then Guitar is 'Squaer Standart'

16 if 'Form of the guitar' is 'Classic'

and 'material' is 'another'

and 'Strana Proizvoditel' is 'China'

then Guitar is 'ESP M-200FM'

17 if 'Form of the guitar' is 'Classic'

and 'material' is 'another'

and 'Strana Proizvoditel' is 'Korea'

then Guitar is 'Washburn N3'

if 'Form of the guitar' is 'Classic'

and 'material' is 'another'

and 'Strana Proizvoditel' is 'Indonesia'then Guitar is 'Washburn 30 B'

seek Guitar

Выводы:

По результатам проделанной работы реализации экспертной системы в LEONARDO и PROLOG можно отметить, некоторые удобства и неудобства программ:

1) Неудобства переключения языка в программе LEONARDO, язык не переключается как в системе Windows, в отличие от PROLOG, как следствие увеличение времени на программирование ЭС в LEONARDO.

2) Неудобство в LEONADRO при создании экспертной системы, надо заполнять отдельно правила и объекты, что увеличивает время на создание экспертной системы, в отличие от этого в системе PROLOG достаточно написать тест программы руководствуясь нужными операторами.

3) Неудобства в программе PROLOG при выводе результатов на экран пользователю необходимо самому вводить ответ на вопрос, а в LEONARDO достаточно выбрать нужный ответ и нажать на ENTER.

4) Неудобства в программе LEONARDO при выводе результатов на экран и ответе на вопросы вы не видите вопросов, на которые уже ответили и ваших ответов, чтобы посмотреть при ошибке в каком вопрос вы не правильно ответили.


Подобные документы

  • Назначение экспертной системы. Разработка экспертной системы путем самостоятельного программирования в полном объеме простейшей ЭС в "GURU". Листинг экспертной системы по прогнозированию на бирже уровня цен, если валютный курс доллара падает или растет.

    лабораторная работа [17,8 K], добавлен 15.01.2011

  • Структура типичной экспертной системы. База данных (рабочая память), её назначение. Функция getsport как экземпляр класса cSport. Алгоритм работы экспертной системы. Реализация пользовательского интерфейса. Результаты тестирования системы пользователем.

    курсовая работа [1018,8 K], добавлен 13.06.2012

  • Создание интеллектуальной экспертной системы по подбору комплектующих для стационарного компьютера. Медицина как пример экспертной системы с использованием метода Криса-Нейлора. Извлечение знаний, их структурирование, представление, стратегия вывода.

    контрольная работа [827,5 K], добавлен 14.12.2012

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

    курсовая работа [1,9 M], добавлен 15.08.2012

  • Процесс подбора экспертной системой наиболее подходящих вариантов, оценки альтернатив в поисках оптимально подходящего конкретному пользователю мотоцикла. Экспертная система как набор программ и база знаний. Исходный код разрабатываемой системы.

    курсовая работа [626,5 K], добавлен 23.11.2012

  • Структура экспертной системы: база знаний, механизм вывода, система пользовательского интерфейса. Анализ требований, проектирование системы "Подбор сотовых телефонов". Спецификация области, кодирование. Листинг программы, результаты тестирования.

    курсовая работа [24,5 K], добавлен 12.05.2013

  • Разработка базы данных с применением выбранной модели представления знаний и системы пользовательского интерфейса. Определение системы логического вывода. Спецификация составных частей программы. Обзор основных используемых приёмов и методов обработки.

    курсовая работа [765,6 K], добавлен 12.05.2013

  • Структура экспертных систем, их классификация и характеристики. Выбор среды разработки программирования. Этапы создания экспертных систем. Алгоритм формирования базы знаний с прямой цепочкой рассуждений. Особенности интерфейса модулей "Expert" и "Klient".

    курсовая работа [1,1 M], добавлен 18.08.2009

  • Описание экспертной системы по подбору кадров. Требования к функциональным характеристикам программы. Состав и параметры технических средств ЭВМ. Структура входных данных. Руководство программиста и пользователя. Тестирование программного средства.

    курсовая работа [897,0 K], добавлен 13.11.2016

  • Технология экспертных систем на основе искусственного интеллекта: разработка и внедрение компьютерных программ, способных имитировать, воспроизводить области деятельности человека, требующих мышления, определенного мастерства и накопленного опыта.

    курсовая работа [264,8 K], добавлен 22.12.2008

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.