Добавил:
darkwarius13@gmail.com Рад если помог :). Можешь на почту спасибо сказать Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LR_HM14_2018.doc
Скачиваний:
62
Добавлен:
27.06.2021
Размер:
1.97 Mб
Скачать

Операції над нечіткими множинами в модулі SciFlt

Виділяють три основні логічні операції з нечіткими множинами: кон'юнкцію, диз'юнкцію і логічне заперечення.

У модулі SciFLT існує можливість визначати кон'юнктивні і диз'юнктивні оператори різними методами.

Кон’юнкція або T-норма є знаходженням логічного І і може бути представлена в програмі такими операторами:

Визначення функції: y= tnorm([x1, x2], class [,class_par]), де class – рядок, задає вид T-норми і може приймати наступні значення: «dubois» для T-норми Дюбуа-Прада, «yager» для T-норми Ягера, «dprod» для імовірнісного І, «eprod» для твору Енштейна, «aprod» для алгебраїчного твору і «min» для операції знаходження мінімуму; class_par – скалярна величина, яка використовується в T-нормах «dubois» і «yager».

Диз'юнкція або S-конорма є логічною АБО і може бути знайдена за допомогою наступних операторів:

В изначення функції: y=snorm([x1, x2], class [,class_par]), class – рядок, що задає вид S-конорми і може приймати наступні значення: «dubois» для S- конорми Дюбуа-Прада, «yager» для S-конорми Ягера, «dsum» для імовірнісного АБО, «esum» для суми Енштейна, «asum» для алгебраїчної суми і «max» для операції знаходження максимуму; class_par – скалярна величина, яка використовується в S-конормах «dubois» і «yager».

Приклад 7. Програма використання операцій кон'юнкції і диз'юнкції

x=[0:0.1:10]';

y1=gaussmf(x[3 1.2]);

y2=gaussmf(x[7 1]);

yy1=tnorm([y1 y2],'min');

yy2=snorm([y1 y2],'max');

yy3=tnorm([y1 y2],'dprod');

yy4=snorm([y1 y2],'dsum');

xbasc();

subplot(3,1,1);

plot2d(x,[y1 y2],leg='mf1@mf2',rect=[0 -0.1 10 1.1]);

xtitle('Member Function Evaluation','x','mu(x)');

subplot(3,1,2);

plot2d(x,[yy1 yy3],leg='min@dprod',rect=[0 -0.1 10 1.1]);

xtitle('AND OPERATION','x','and(mf1,mf2)'); subplot(3,1,3);

plot2d(x,[yy2 yy4],leg='max@dsum',rect=[0 -0.1 10 1.1]);

xtitle('OR OPERATION','x','or(mf1,mf2)');

Символ “ ' ” у рядку визначення базової множини x показує транспонованість базової множини.

Рис. 7. Результати роботи програми з прикладу 7.

Мінімаксна інтерпретація є найбільш поширеною при побудові нечітких систем. Проте, на практиці досить часто використовується альтернативна імовірнісна інтерпретація кон'юнктивних і диз'юнктивних операторів.

Доповнення нечіткої множини є не що інше, як математичне представлення вербального виразу “НЕ A”, де A – нечітка множина, що описує деяке розмите судження.

Опис функції доповнення: y=complement(x, class [,class_par] ), де class – рядок, що задає вид оператора доповнення і може приймати наступні значення: «one» – для звичайного доповнення, «sugeno» – для доповнення по формулі Сугено і «yager» – для формули Ягера; class_par – скалярна величина, яка використовується в S-конормах «sugeno» і «yager».

Математичний запис функцій доповнення наступний:

Приклад 8. Програма використання операції доповнення.

x=[0:0.1:10]';

y1=gaussmf(x[3 1.2]);

y2=complement(y1,’one’);

xbasc();

plot2d(x,[y1 y2],leg='mf1@Not_mf1',rect=[0 -0.1 10 1.1]);

xtitle('Member Function and Inverse','x','mu(x)');

Символ “ ' ” у рядку визначення базової множини x показує транспонованість базової множини.

Рис. 8. Функція доповнення

1.4. Контрольні запитання

  1. Поняття нечіткої множини та способи її завдання.

  2. Що таке функція приналежності?

  3. Міра нечіткості множини. Індекс нечіткості.

  4. Основні типи функцій належності.

  5. Методи побудови функції належності нечітких множин.

  6. Операції над нечіткими множинами.

  7. Нечіткі оператори (Т-норма, S- норма).

Соседние файлы в предмете Нечеткие множества