Проектування та використання системи нечіткого виводу



Мы поможем в написании ваших работ!


Мы поможем в написании ваших работ!



Мы поможем в написании ваших работ!


ЗНАЕТЕ ЛИ ВЫ?

Проектування та використання системи нечіткого виводу



Завдання 1. За допомогою СНВ зобразити поверхню функції на множині .

Проектування системи нечіткого виводу слід проводити на основі графічного зображення вказаної залежності. Для цього в М-файлі складемо наступну програму:

 

%Побудова графіка функції y=(x1^2-8)*cos(x2)

%в області x1є[0,4] и x2є[0,4].

n=15;

x1=0:4/(n-1):4;

x2=0:4/(n-1):4;

y=zeros(n,n);

for j=1:n

y(j,:)=(x1.^2-8)*cos(x2(j));

end

surf(x1,x2,y)

xlabel('x1')

ylabel('x2')

zlabel('y')

title('Target');

В результаті виконання цієї програми отримуємо графічне зображення, яке наведено на рис 2.1.

Проектування СНВ складається з наступних кроків.

Крок 1. Завантажити основний fis-редактор в (редактор нечіткого виводу) введенням в командному рядку слова fuzzy. Після чого з’явиться вікно редактору нечіткого виводу.

Крок 2. Ввести нову вхідну змінну. Для цього вибрати пункт Add Input в меню Edit.

Крок 3.Перейменувати першу вхідну змінну. Для цього слід зробити одне натиснення лівої кнопки миші на блоці Input1, ввести нове позначення х1 в поле редагування імені поточної змінної і натиснути <Enter>.

Крок 4.Перейменувати другу вхідну змінну. Для цього зробити одне натиснення лівої кнопки миші на блоці input2, ввести нове позначення x2 в поле редагування імені поточної змінної і натиснути <Enter>.

Крок 5. Перейменувати вихідну змінну. Для цього зробити одне натиснення лівої кнопки миші на блоці output1, ввести нове позначення y в поле редагування імені поточної змінної і натиснути <Enter>.

Крок 6.Задати ім’я системі. Для цього в меню File вибрати в підменю Export to disk і ввести ім’я файлу, наприклад, first.

 

Рис 2.1. Зображення поверхні залежності

 

Крок 7. Перейти в редактор функцій належності. Для цього зробити швидко подвійне натиснення лівої кнопки миши на блоці x1.

Крок 8.Задати діапазон зміни змінної x1. Для цього надрукувати 0 4в поле Rangeі натиснути <Enter>.

Крок 9.Задати функції належності змінної x1. Для лінгвістичної оцінки цієї змінної будемо використовувати 3 терми з трикутними функціями належності. Якщо в вікні немає ще функцій належності, тоді в меню Editслід вибратикоманду Add MFs...В результаті з’явиться діалогове вікно вибору типу і кількості функцій належності. За замовченням ці 3 терми мають трикутну функцію належності. Тому просто потрібно натиснути <Enter>.

Крок 10. Задати найменування термів змінної x1. Для цього робимо одне натиснення лівою кнопкою миші на графіку першої функції належності. (див. рис. 2.2). Потім вводимо найменування терму, наприклад, L (Низький), в полі Nameі натискаємо <Enter>. Потім робимо одне натиснення лівою кнопкою миші на графіку другої функції належності і вводимо найменування терму, наприклад, A (Середній), в полі Name інатискаємо <Enter>. Ще раз робимо одне натиснення лівою кнопкою миші по графіку третьої функції належності і введемо найменування терму, наприклад, H (Високий), в полі Name і натискаємо <Enter>. В результаті отримуємо графічне вікно, яке зображено на рис. 2.2.

Крок 11.Задамо функції належності змінної x2. Для лінгвістичної оцінки цієї змінної будемо використовувати 5 термів з гаусовськми функціями належності. Для цього активізуємо змінну x2за допомогою натиснення лівої кнопки миші на блоці x2.Задамо діапазон змін x2. Для цього надрукуємо 04в полі Range(див. рис. 2.3) і натиснемо <Enter>. Потім в меню Edit виберемо команду Add MFs.... В діалоговому вікні, що зявиться, оберемо тип функції належності gaussmfв полі MF type і 5термів в полі Number of MFs. Після чого натискаємо <Enter>.

Крок 12. За аналогією з кроком 10 задамо наступні найменування термів змінної x2: L (Низький), LA (Нижче середнього), A (Середній), HA (Вище середнього), H (Високий). В результаті отримуємо графічне вікно, яке зображене на рис. 2.3.

Крок 13.Задамо функції належності змінної y. Для лінгвістичної оцінки цієї змінної будемо використовувати 5 термів з трикутними функціями належності. Для цього активуємо змінну yза допомогою натиснення лівої кнопки миші на блоці y.Задамо діапазон змін змінної y. Для цього надрукуємо -10 10в полі Range(див. рис. 2.4) і натиснемо <Enter>. Потім в меню Editоберемо команду Add MFs.... В діалоговому вікні, що зявиться, виберемо 5термів в полі Number of MFs. Після чого натискаємо <Enter>.

Крок 14.За аналогією з кроком 10 задамо наступні найменування термів змінної y: L (Низький),LA (Нижче середнього) A (середній),HA (Вище середнього),H (Високий). В результаті отримуємо графічне вікно, яке представлене на рис. 2.4.

Крок 15.Перейдемо в редактор бази знань RuleEditor. Для цього оберемо в меню Edit команду Rules або в меню Viewкоманду Edit rules....

Крок 16.На основі візуального спостереження за графиком, який зображений на рис. 2.1 сформуємо наступні десять правил:

1. Якщо x1=Низький і x2=Низький, тоді y=Низький;

2. Якщо x1=Низький і x2=Високий, тоді y=Середній;

3. Якщо x1=Низький і x2=Вище середнього, тодіy=Високий;

4. Якщоx1=Високий і x2=Низький, тоді y=Вище середнього;

5. Якщо x1=Високий і x2=Високий, тоді y=Низький;

6. Якщо x1=Середній і x2=Середній, тоді y=Середній;

7. Якщо x1=Середній і x2=Вище середнього, тоді y=Вище середнього;

8. Якщо x1=Низький і x2=Нижче середнього, тоді y=Нижче середнього;

9. Якщо x1=Середній і x2=Вище середнього, тоді y=Середній.

Рис. 2.2. Функція належності змінної .

Рис 2.3. Функція належності змінної

Рис. 2.4. Функції належності змінної у.

Рис. 2.5. Вікно правил

 

Для введення правила необхідно обрати в меню відповідну комбінацію термів і натиснути кнопку Add rule. На рис. 2.5 зображено вікно редактору бази знань після введення усіх 9 правил. Число в дужках в кінці кожного правила представляє собою вагові коефіцієнти відповідного правила. Потрібно звернути увагу на параметр Weight, який вказує вагу нечіткої впевненості в правилі. Його можна задавати в діапазоні .

Крок 17.Збережемо побудовану систему. Для цього в меню File в підменю Export оберемо команду To disk.

На рис. 2.6 приведено вікно візуалізацій нечіткого логічного виводу. Це вікно активується командою View rules... меню View.В полі Input вказуються значення вхідних змінних, для яких виконується логічний вивід. Тобто, обраховується за алгоритмом Мамдані значення вихідної змінної.

 

Рис 2.6. Візуалізація нечіткого виводу

Рис 2.7. Поверхня системи «вхід-вихід».

 

На рис. 2.7 приведена поверхня “входи-вихід”, яка відповідає синтезованій системі логічного виводу. Для виводу цього вікна необхідно використати команду View surface... меню View. Порівнюючи поверхні на рис 2.1. і рис. 2.7. , можна зробити висновок, що нечіткі правила досить добре описують складну нелінійну залежність.

 

2.3 Завдання для самостійної роботи.

1. Створити систему нечіткого виводу, яка моделює залежність при .

2. Створити систему нечіткого виводу, яка відтворює поверхню при

3. Створити систему нечіткого виводу, яка відтворює поверхню при

Лабораторна робота №2



Последнее изменение этой страницы: 2016-04-18; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 44.192.27.11 (0.009 с.)