жність дуття середня» І «висота киплячого шару середня» І «розрідження під склепінням високе» ТО «витрата повітря високий»
Дослідження нечіткої моделі управління. Для дослідження цієї моделі треба нормувати значення використовуваних змінних для роботи інтелектуальної підсистеми за наступною формулою:
де уmin - мінімальне значення; Уmax - максимальне значення; х - перетворене значення;
Після проведення операції нормування всі змінні будуть зміняться від 0 до1. В якості терм-множини для трьох вхідних лінгвістичних змінних використовується безліч {«низький», «середній», «високий»}, яка записується в символічному вигляді {nizkoe, srednee, visokoe}. В якості терм-множини вихідної лінгвістичної змінної використовується безліч {«низький», «середній», «високий»}, яка записується в символічному вигляді {nizkoe, srednee, visokoe} (див. Малюнок 13.2).
Малюнок 13.2 Графічний інтерфейс редактора функцій належності після завдання першої вхідної змінної
У редакторі FIS визначає три вхідні змінні з іменами «пружність дуття» (uprugostdutya), висота киплячого шару (vysotakipsloya) і розрідження під склепінням (razrigpodsvodom) і одну вихідну змінну з ім'ям витрата повітря (rashodvozduha).
Задамо 10 правил для розроблюваної системи нечіткого виводу (див. малюнок 13.3).
Малюнок 13.3 Графічний інтерфейс редактора правил після завдання бази правил для даної системи нечіткого виводу
Тепер можна виконати оцінку побудованої системи нечіткого виводу для задачі автоматичного керування витратою повітря. Для цього відкриємо програму перегляду правил системи Matlab і введемо значення вхідних змінних для окремого випадку, коли пружність дуття дорівнює 0.5, висота киплячого шару 0.5 і розрідження під склепінням 0.5. Процедура нечіткого виводу видає в результаті значення вихідної змінної «витрата повітря», рівне 0,526 (див. Малюнок 13.4).
Малюнок 13.4. Графічний інтерфейс програми перегляду правил після виконання процедури нечіткого виводу
Дане значення відповідає високому витраті повітря.
Також якщо значення вхідних змінних будуть визначатися як «не дуже низька» або «не дуже висока», які ми не визначали в правилах, результат відповідає тому значенню вихідної змінної, яка на практиці ведення процесу буває в таких випадках.
А тепер вирішимо завдання синтезу інтелектуальної підсистеми з використанням нейронних мереж.
Для чого складемо таблицю істинності навчання нейронної мережі
Таблиця 13.1 Таблиця істинності для навчання нейронної мережі
№Входние данниеЦель обученіяУпругость дутьяВисота киплячого слояРазряженіе під сводомРасход воздуха0.50.50.50.50.50.5110.500.5100.50.50.50.51000.501100.51110.51111110.50.511
Для навчання нейронної мережі вводимо дані з таблиці 13.1, а потім створюємо нейронну мережу. У полі (див. Малюнок 13.5) вхідні дані вказуємо заздалегідь створені дані, задаємо тип нейронної мережі, виберемо персептрон (Feed-Forward Back Propa-gation) c 10 сігмоідной (TANSIG) нейронами прихованого шару і одним лінійним (PURELIN) нейроном вихідного шару.
Навчання будемо виробляти, використовуючи алгоритм Левенберга-Маркардта (Levenberg-Mar-quardt), який реалізує функція TRAINLM. Функція помилки - MSE, число шарів відповідно одно 2.
Малюнок 13.5. Створення нейронної мережі
Тепер необхідно навчити мережу для її подальшого застосування, задаємо вхідні і цільові дані, потім вказуємо параметри навчання, програма покаже прогрес і підсумок навчання як показано на малюнку 13.6.
Порівняємо результати моделювання отриманих даних нейронної мережі і нечіткої моделі. Результати показали: нейронні мережі і нечіткі моделі підходять для впровадження в дану систему управління, але щоб з'ясувати які все-таки краще треба провести порівняння.
Малюнок 13.6. Підсумок навчання
Таким чином, ми навчили нейронну мережу і створили нечітку модель, і тепер необхідно провести порівняльний аналіз результатів розрахунку за цими двома моделями і запишемо їх в таблицю 13.2.
Таблиця 13.2
Таблиця зіставлення відповідей нейронної мережі і нечіткої логіки
№Нейронная сетьНечеткая логікаПравільний ответ0.500.250.7510.70.60.40.250.60.550.450.40.60.40.770.80.450.350.150.070.40.200110.850.75110.850.61
Тепер задамо в якості вхідних даних величини із заданого нами інтервалу, і подивимося, як буде реагувати нейронна мережа і нечітка логіка (див. таблицю 13.3).
...