Главная стр 1
скачать

Оглавление:



Контрольная работа №1. 2

Задание 2

Решение 2

Задача №1 2

Задача №2 3

Задача №3. 4

Контрольная работа №2. 9

Задание. 9

Решение. 9

Контрольная работа №3. 14

Задание. 14

Решение. 14





Контрольная работа №1.

Задание

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



Задача № 1. Дать словесную постановку задачи, связанной с деятельностью студента. Эта задача не имеет самостоятельного значения и выполняется только для осмысления студентом той предметной области, которую он выбрал для разработки базы знаний. В дальнейшем задача № 1 используется для упрощения формального представления в задаче № 2 выбранной предметной области.

Задача № 2. Создать набор правил продукции, описывающих последовательность решения задачи № 1. Количество данных правил выбирается студентом самостоятельно. Примерно их может быть 10-20.

Задача № 3. Написать программу на Турбо-Прологе, реализующую возможность работы экспертной системы с базой знаний, состоящей из правил продукции задачи № 2.

Решение

Задача №1


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

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




Задача №2


Создание набора правил продукции.

Построим дерево, определяющее общую диагностику неисправности.



Есть ли изображение на экране?

ДА

НЕТ

Включены ли СБ и МОН в электросеть?

Загружается ли ОС?

ДА

НЕТ

Работает ли СБ?

ДА

НЕТ

ДА

НЕТ

Загружается ли настройка BIOS?

Подключен ли МОН к СБ?

Работают ли УВВ?

ДА

НЕТ

ДА

НЕТ

Проверка:

исправен ли БП?



Отображается ли ЖД в BIOS?

Проверка:

исправен ли МОН?



ДА

НЕТ

ДА

НЕТ

ДА

НЕТ

ДА

НЕТ

Работают ли ПУ?

Подключен ли

ЖД к МП?


Проверка:

исправна ли ВК?



Подключен ли

БП к МП?


ДА

НЕТ

ДА

НЕТ

ДА

НЕТ

ДА

НЕТ

Компьютер исправен

Замена ПУ

Замена УВВ

Переустановить ОС

Замена ЖД

Подключить ЖД к МП

Очистить CMOS

Замена МП

Замена ВК

Замена МОН

Подключить МОН к СБ

Замена МП

Подключить БП к МП

Замена БП

Включить СБ и МОН в электросеть

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

На основании вышеописанного дерева сформулируем набор правил продукции, описывающих принципы диагностики.



Правило 1. Если есть изображение на экране, загружается ОС, работают устройства ввода-вывода и периферийные устройства,

то компьютер исправен.



Правило 2. Если есть изображение на экране, загружается ОС, работают устройства ввода-вывода, но не работает периферийное устройство,

то требуется замена неисправного периферийного устройства.



Правило 3. Если есть изображение на экране, загружается ОС, но не работает устройство ввода-вывода,

то необходимо заменить неисправное устройство ввода-вывода.



Правило 4. Если есть изображение на экране, но не загружается ОС, при этом в настройке BIOS жесткий диск отображается,

то требуется переустановка операционной системы.



Правило 5. Если есть изображение на экране, но не загружается ОС, при этом в настройке BIOS жесткий диск не отображается, хотя он подключен к материнской плате,

то необходимо заменить жесткий диск.



Правило 6. Если есть изображение на экране, но не загружается ОС, при этом в настройке BIOS жесткий диск не отображается вследствие того, что он не подключен к материнской плате,

то требуется подключить жесткий диск к материнской плате.



Правило 7. Если есть изображение на экране, но не загружается ОС, и нет возможности войти в настройку BIOS,

то необходимо очистить CMOS.



Правило 8. Если нет изображения на экране, при этом системный блок и монитор подключены к электросети, системный блок работает, монитор подключен к системному блоку, и монитор и видеокарта проверены,

то требуется замена материнской платы.



Правило 9. Если нет изображения на экране, при этом системный блок и монитор подключены к электросети, системный блок работает, монитор подключен к системному блоку и проверен, а видеокарта неисправна,

то требуется замена видеокарты.



Правило 10. Если нет изображения на экране, при этом системный блок и монитор подключены к электросети, системный блок работает, монитор подключен к системному блоку, но неисправен,

то требуется замена монитора.



Правило 11. Если нет изображения на экране, при этом системный блок и монитор подключены к электросети, системный блок работает, но монитор к нему не подключен,

то необходимо подключить монитор к системному блоку.



Правило 12. Если нет изображения на экране, при этом системный блок и монитор подключены к электросети, а системный блок не работает, хотя блок питания проверен и подключен к материнской плате,

то требуется замена материнской платы.



Правило 13. Если нет изображения на экране, при этом системный блок и монитор подключены к электросети, а системный блок не работает, блок питания проверен, но не подключен к материнской плате,

то необходимо подключить блок питания к материнской плате.



Правило 14. Если нет изображения на экране, при этом системный блок и монитор подключены к электросети, а системный блок не работает и блок питания неисправен,

то требуется замена блока питания.



Правило 15. Если нет изображения на экране и монитор или системный блок не подключены к электросети,

то необходимо, чтобы системный блок и монитор были подключены к электросети.


Задача №3.


Программа на языке Prolog.

/* Программа позволяет неопытному пользователю */

/* самостоятельно определить неисправность компьютера, */

/* не позволяющую загрузить операционную систему. */


domains

database


xpositive(symbol)

xnegative(symbol)

predicates

do_expert_job

do_consulting

ask(symbol)

process(integer)

answer()


show_menu

cons


positive(symbol)

negative(symbol)

remember(symbol,symbol)

clear_facts

goal

do_expert_job.



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

do_expert_job:-

show_menu,

readchar(_),

removewindow,

exit.


show_menu:-

makewindow(1,30,30," Меню ",3,2,16,34),

write(" Экспертная система для "),nl,

write(" диагностики компьютера "),nl,

write(" Студента Лаберко М.Л. "),nl,

write(" Шифр: 24-0094, спец. 2201 "),nl,

write("--------------------------------"),nl,

write("1.Режим экспертизы компьютера"),nl,

write("2.Выход из экспертной системы"),nl,

write(" Выберите пункт меню: "),

readint(Choice),

process(Choice).

process(1):-

cons.


process(2):-

removewindow,

exit.
cons:-

makewindow(1,30,30," Экспертная система",1,10,23,60),

nl,write("--------------------------------"),

nl,write("Данная система осуществляет "),

nl,write("диагностику компьютера "),

nl,write("Вам необходимо ответить на ряд вопросов."),

nl,write("Отвечайте латиницей y (да) или n (нет) "),

nl,write("--------------------------------"),

nl,nl,do_consulting.

do_consulting:-

answer(),!,nl,nl,nl,

write("Экспертиза окончена"),

clear_facts.

do_consulting :-

nl,write("Компьютер исправен!"),

clear_facts.


ask(X):-

write(X,"?"),

readln(Reply),

remember(X,Reply).


/* Вывод на экран */

positive(X):-

xpositive(X),!.

positive(X):-

not(negative(X)),!,ask(X).

negative(X):-

xnegative(X),!.

remember(X,"y"):-

asserta(xpositive(X)).

remember(X,"n"):-

asserta(xnegative(X)),fail.
clear_facts:-

retract(xpositive(_)),fail.

clear_facts:-

retract(xnegative(_)),fail.


/*Правило 1*/

answer():-

positive("Есть ли изображение на экране"),

positive("Загружается ли операционная система"),

positive("Работают ли устройства ввода-вывода"),

positive("Работают ли периферийные устройства"),

write("Компьютер исправен либо проблема неизвестна"),!.
/*Правило 2*/

answer():-

positive("Есть ли изображение на экране"),

positive("Загружается ли операционная система"),

positive("Работают ли устройства ввода-вывода"),

negative("Работают ли периферийные устройства"),

write("Требуется замена неисправного периферийного устройства"),!.
/*Правило 3*/

answer():-

positive("Есть ли изображение на экране"),

positive("Загружается ли операционная система"),

negative("Работают ли устройства ввода-вывода"),

write("Необходимо заменить неисправное устройство ввода-вывода"),!.


/*Правило 4*/

answer():-

positive("Есть ли изображение на экране"),

negative("Загружается ли операционная система"),

positive("Загружается ли настройка BIOS"),

positive("Отображается ли жесткий диск в BIOS"),

write("Tребуется переустановка операционной системы"),!.
/*Правило 5*/

answer():-

positive("Есть ли изображение на экране"),

negative("Загружается ли операционная система"),

positive("Загружается ли настройка BIOS"),

negative("Отображается ли жесткий диск в BIOS"),

positive("Подключен ли жесткий диск к материнской плате"),

write("Hеобходимо заменить жесткий диск"),!.


/*Правило 6*/

answer():-

positive("Есть ли изображение на экране"),

negative("Загружается ли операционная система"),

positive("Загружается ли настройка BIOS"),

negative("Отображается ли жесткий диск в BIOS"),

negative("Подключен ли жесткий диск к материнской плате"),

write("Tребуется подключить жесткий диск к материнской плате"),!.


/*Правило 7*/

answer():-

positive("Есть ли изображение на экране"),

negative("Загружается ли операционная система"),

negative("Загружается ли настройка BIOS"),

write("Hеобходимо очистить CMOS"),!.


/*Правило 8*/

answer():-

negative("Есть ли изображение на экране"),

positive("Включены ли системный блок и монитор в электросеть"),

positive("Работает ли системный блок"),

positive("Подключен ли монитор к системному блоку"),

positive("Проверка: исправен ли монитор"),

positive("Проверка: исправна ли видеокарта"),

write("Tребуется замена материнской платы"),!.
/*Правило 9*/

answer():-

negative("Есть ли изображение на экране"),

positive("Включены ли системный блок и монитор в электросеть"),

positive("Работает ли системный блок"),

positive("Подключен ли монитор к системному блоку"),

positive("Проверка: исправен ли монитор"),

negative("Проверка: исправна ли видеокарта"),

write("Tребуется замена видеокарты"),!.
/*Правило 10*/

answer():-

negative("Есть ли изображение на экране"),

positive("Включены ли системный блок и монитор в электросеть"),

positive("Работает ли системный блок"),

positive("Подключен ли монитор к системному блоку"),

negative("Проверка: исправен ли монитор"),

write("Tребуется замена монитора"),!.


/*Правило 11*/

answer():-

negative("Есть ли изображение на экране"),

positive("Включены ли системный блок и монитор в электросеть"),

positive("Работает ли системный блок"),

negative("Подключен ли монитор к системному блоку"),

write("Hеобходимо подключить монитор к системному блоку"),!.
/*Правило 12*/

answer():-

negative("Есть ли изображение на экране"),

positive("Включены ли системный блок и монитор в электросеть"),

negative("Работает ли системный блок"),

positive("Проверка: исправен ли блок питания"),

positive("Подключен ли блок питания к материнской плате"),

write("Tребуется замена материнской платы"),!.


/*Правило 13*/

answer():-

negative("Есть ли изображение на экране"),

positive("Включены ли системный блок и монитор в электросеть"),

negative("Работает ли системный блок"),

positive("Проверка: исправен ли блок питания"),

negative("Подключен ли блок питания к материнской плате"),

write("Hеобходимо подключить блок питания к материнской плате"),!.


/*Правило 14*/

answer():-

negative("Есть ли изображение на экране"),

positive("Включены ли системный блок и монитор в электросеть"),

negative("Работает ли системный блок"),

negative("Проверка: исправен ли блок питания"),

write("Tребуется замена блока питания"),!.
/*Правило 15*/

answer():-

negative("Есть ли изображение на экране"),

negative("Включены ли системный блок и монитор в электросеть"),

write("Hеобходимо, чтобы системный блок и монитор были подключены к электросети"),!.

Контрольная работа №2.

Задание.


Реализовать на программном комплексе ЭКО возможность работы экспертной системы с базой знаний, состоящей из правил продукции вышерассмотренной контрольной работы №1.

Решение.


Правила и описание системы позаимствуем из контрольной работы №1.

Объявим символьные атрибуты системы, которые имеют только два значения: «да» либо «нет»:



изображение

загрузка_ОС

устройства_ВВ

устройства_пер

загрузка_BIOS

ЖД_в_BIOS

ЖД_подключен

компьютер_вкл

СБ_работает

БП_проверка

БП_подключен

МОН_подключен

МОН_проверка

ВК_проверка


Для каждого значения символьного атрибута будет прописано безусловное правило-вопрос:



А_изображение

А_загрузка_ОС

А_устройства_ВВ

А_устройства_пер

А_загрузка_BIOS

А_ЖД_в_BIOS

А_ЖД_подключен

А_компьютер_вкл

А_СБ_работает

А_БП_проверка

А_БП_подключен

А_МОН_подключен

А_МОН_проверка

А_ВК_проверка



Есть ли изображение на экране?

Загружается ли операционная система?

Работают ли устройства ввода-вывода?

Работают ли периферийные устройства?

Загружается ли настройка BIOS?

Отображается ли жесткий диск в настройке BIOS?

Подключен ли жесткий диск к материнской плате?

Включены ли системный блок и монитор в электросеть?

Работает ли системный блок?

Проверьте блок питания. Исправен ли он?

Подключен ли блок питания к материнской плате?

Подключен ли монитор к системному блоку?

Проверьте монитор. Исправен ли он?

Проверьте видеокарту. Исправна ли она?


Далее необходимо прописать сценарий обработки правил:





Комментарий

ЕСЛИ

ТО

СООБЩЕНИЕ

0

Вход в систему




СООБЩЕНИЕ

Добро пожаловать в систему диагностики компьютера.

1

Запуск




ЦЕЛЬ изображение




2




изображение.YES

ПЕРЕХОД 33




3




изображение.NO

ЦЕЛЬ компьютер_вкл




4




компьютер_вкл.YES

ПЕРЕХОД 7




5




компьютер_вкл.NO

СООБЩЕНИЕ

Необходимо включить системный блок и монитор в электросеть

6







ВЫХОД




7

ПЕРЕХОД с

компьютер_вкл.YES






ЦЕЛЬ СБ_работает




8




СБ_работает.YES

ПЕРЕХОД 19




9




СБ_работает.NO

ЦЕЛЬ БП_проверка




10




БП_проверка.YES

ПЕРЕХОД 13




11




БП_проверка.NO

СООБЩЕНИЕ

Требуется замена блока питания

12







ВЫХОД




13

ПЕРЕХОД с

БП_проверка.YES






ЦЕЛЬ БП_подключен




14




БП_подключен.YES

ПЕРЕХОД 17




15




БП_подключен.NO

СООБЩЕНИЕ

Необходимо подключить блок питания к материнской плате

16







ВЫХОД




17

ПЕРЕХОД с

БП_подключен.YES






СООБЩЕНИЕ

Требуется замена материнской платы

18







ВЫХОД




19

ПЕРЕХОД с

СБ_работает.YES






ЦЕЛЬ МОН_подключен




20




МОН_подключен.YES

ПЕРЕХОД 23




21




МОН_подключен.NO

СООБЩЕНИЕ

Необходимо подключить монитор к системному блоку

22







ВЫХОД




23

ПЕРЕХОД с

МОН_подключен.YES






ЦЕЛЬ МОН_проверка




24




МОН_проверка.YES

ПЕРЕХОД 27




25




МОН_проверка.NO

СООБЩЕНИЕ

Требуется замена монитора

26







ВЫХОД




27

ПЕРЕХОД с

МОН_проверка.YES






ЦЕЛЬ ВК_проверка




28




ВК_проверка.YES

ПЕРЕХОД 31




29




ВК_проверка.NO

СООБЩЕНИЕ

Необходимо заменить видеокарту

30







ВЫХОД




31

ПЕРЕХОД с

ВК_проверка.YES






СООБЩЕНИЕ

Требуется замена материнской платы

32







ВЫХОД




33

ПЕРЕХОД с

изображение.YES






ЦЕЛЬ загрузка_ОС




34




загрузка_ОС.YES

ПЕРЕХОД 49




35




загрузка_ОС.NO

ЦЕЛЬ загрузка_BIOS




36




загрузка_BIOS.YES

ПЕРЕХОД 39




37




загрузка_BIOS.NO

СООБЩЕНИЕ

Попробуйте очистить CMOS

38







ВЫХОД




39

ПЕРЕХОД с

загрузка_BIOS.YES






ЦЕЛЬ ЖД_в_BIOS




40




ЖД_в_BIOS.YES

ПЕРЕХОД 47




41




ЖД_в_BIOS.NO

ЦЕЛЬ ЖД_подключен




42




ЖД_подключен.YES

ПЕРЕХОД 45




43




ЖД_подключен.NO

СООБЩЕНИЕ

Требуется подключить жесткий диск к материнской плате

44







ВЫХОД




45

ПЕРЕХОД с

ЖД_подключен.YES






СООБЩЕНИЕ

Необходимо заменить жесткий диск

46







ВЫХОД




47

ПЕРЕХОД с

ЖД_в_BIOS.YES






СООБЩЕНИЕ

Требуется переустановка операционной системы

48







ВЫХОД




49

ПЕРЕХОД с

загрузка_ОС.YES






ЦЕЛЬ устройства_ВВ




50




устройства_ВВ.YES

ПЕРЕХОД 53




51




устройства_ВВ.NO

СООБЩЕНИЕ

Необходимо заменить неисправное устройство ввода-вывода

52







ВЫХОД




53

ПЕРЕХОД с

устройства_ВВ






ЦЕЛЬ устройства_пер




54




устройства_пер.YES

ПЕРЕХОД 57




55




устройства_пер.NO

СООБЩЕНИЕ

Требуется заменить неисправное периферийное устройство

56







ВЫХОД




57

ПЕРЕХОД с

устройства_пер.YES






СООБЩЕНИЕ

КОМПЬЮТЕР ИСПРАВЕН!

58







ВЫХОД



Вводим символьные атрибуты, их значения и правила:







Вводим сценарий:





Тестируем систему на наличие ошибок:



Выходим в режим консультации:





Контрольная работа №3.

Задание.


Реализовать пример задачи нечёткого вывода с помощью средств системы MATLAB.

Решение.


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

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

1. Если количество людей в группе большое, а средний IQ группы низкий, то вероятность решения задачи - низкая.

2. Если группа средняя, то вероятность решения задачи - средняя.

3. Если группа небольшая или средний IQ группы высокий, то вероятность решения поставленной задачи высокая.

В качестве входных параметров системы нечеткого вывода рассматриваются две нечеткие лингвистические переменные: «количество людей» и «IQ группы», а в качестве выходных параметров – нечеткая лингвистическая переменная «вероятность решения».

В качестве терм – множества первой лингвистической переменной «количество людей» используется множество:

Т1 = {«большое», «среднее», «малое»}.

В качестве терм - множества второй лингвистической переменной «IQ группы» используется множество:

Т2 = {«высокий», «низкий»}.

В качестве терм – множества выходной лингвистической переменной «вероятность решения» используется множество:

Т3 = {«низкая», «средняя», «высокая»}.

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

Правило 1. ЕСЛИ «количество людей большое» и «IQ группы низкий», ТО «вероятность решения низкая».

Правило 2. ЕСЛИ «количество людей среднее», ТО «вероятность решения средняя».

Правило 3. ЕСЛИ «количество людей малое» и «IQ группы высокий», ТО «вероятность решения высокая».
Реализация системы нечеткого вывода.

Обозначаем имена входных и выходной переменных и вводим параметры для каждого терма каждой переменной.



Для переменной «Количество людей» выбраны три терма «большое», «среднее», «малое» с диапазоном изменения от 5 до 20:



Для переменной «IQ группы» выбраны два терма «высокий» и «низкий» с диапазоном изменения от 60 до 150:



Для выходной переменной «вероятность решения» выбраны три терма «большая», «средняя», «низкая» с диапазоном изменения от 0 до 100:



Указав количество входных и выходных переменных, определив их название и построив соответствующие функции принадлежности, переходим к созданию набора продукций.

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

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



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



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






скачать


Смотрите также:
Контрольная работа №1. 2 Задание 2 Решение 2 Задача №1 2 Задача №2 3 Задача №3. 4 Контрольная работа №2. 9 Задани
257.9kb.
Контрольная работа Вариант 1 Задача Фирма при реализации продукции ориентируется на 3 сегмента рынка
174.27kb.
Контрольная работа №1 состоит из четырех задач, которые выполняются средствами текстового процессора word и включают в себя
257.24kb.
Контрольная работа По предмету: Метрология, стандартизация и сертификация. Вариант №4. Задача №1
83.84kb.
Российская Экономическая Школа Курс: Теория Вероятностей и Математическая Статистика Домашнее задание 5 Решение Задача 1
26.15kb.
Линейная производственная задача задача
411.28kb.
Контрольная работа + экзамен; Право собственности в период экономических реформ контрольная работа + зачет
610.32kb.
Культура Киевской Руси контрольная работа Становление Киевской Руси контрольная работа
14.04kb.
Контрольная работа для специальности 260807 «Технология продукции общественного питания»
50.91kb.
Задача сетевого планирования Часть На основе графа, описанного в задании по динамическому программированию
30.8kb.
Контрольная работа №1 Площадь многоугольника Площадь круга и его частей Площади подобных фигур Контрольная работа №2
27.26kb.
Контрольная работа по курсу «Римское право»
23.77kb.