Нечеткая логіка в системах управления
Описание системы На цьому етапі засобами, доступних в fuzzy TECH, завдання формалізується. Тут слід описати лінгвістичні перемінні, які ви використовувати; їх функції приналежності; описати стратегію управління у вигляді нечітких правил, що ви зможете поєднати у єдину базу правил чи знання системі. У цілому нині CASE-технология, з урахуванням якій побудовано пакет, дає змогу всю такі дії виконати… Читати ще >
Нечеткая логіка в системах управления (реферат, курсова, диплом, контрольна)
Московская Державна Академія Приладобудування і Информатики.
РЕФЕРАТ по теорія систем і системного анализа.
«Нечітка логіка в системах управления».
Виконав: Пяров Тимур Р.
ЭФ2, 2 курс, 35.14.
Москва.
Зміст Нечітка логіка в системах управління 3 Трохи теорії 3 Фаззификация (перехід до нечіткості) 5 Лінгвістичні перемінні 6 Функції приналежності 6 Розробка нечітких правил 7 Дефаззификация (усунення нечіткості) 8 Метод центру максимуму (СоМ) 9 Метод найбільшого значення (МоМ) 9 Метод центроида (СоА) 9 Опис системи 10 Off-line-оптимизация 11 On-line-оптимизация 11 Реалізація 11 Література 13.
Нечітка логіка в системах управления В останнім часом нечітка технологія завойовує дедалі більше прибічників серед розробників системам управління. Узявши старт в 1965 року з робіт професора Лотфи Заді [1], за час нечітка логіка пройшла цей шлях від майже антинаукової теорії, практично відкинутої у Європі США, до банальної ситуації кінця дев’яностих років, як у Японії широкому асортименті з’явилися «нечіткі» бритви, пилососи, фотокамери [4, 10]. Сам термін «fuzzy» так міцно ввійшов у життя, що в багатьох мовами він навіть перекладається. У Росії її за приклад згадується рекламу пральних машин і мікрохвильових печей фірми Samsung, які мають штучним інтелектом з урахуванням нечіткою логики.
Тем щонайменше, настільки масштабний стрибок у розвитку нечітких системам управління випадковий. Простота і дешевизна їх розробки змушує проектувальників дедалі більше вдаватися до цій технології. Бурхливий зростання ринку нечітких систем показаний на рис. 1.
После воістину вибухового старту прикладних нечітких систем у Японії [2, 3, 5, 6] багато розробники навіть Європи нарешті зауважили цю технологію. Але час було згаяно, і світовим лідером у сфері нечітких систем стала Країна Вранішнього сонця [7, 8], де до кінця 1980;х років було налагоджений випуск спеціалізованих нечітких контролерів, виконаних по технології СБИС [9]. За такого стану Intel знайшла воістину геніальне рішення. Маючи велику кількість різноманітних контролерів від MCS-51 до MCS-96, що протягом багато років успішно використовувалися у багатьох додатках, корпорація вирішила створити засіб розробки додатків на базі цих контролерів, але з допомогою технології нечіткості. Це дозволило уникнути значних витрат за конструювання власних нечітких контролерів, а система від Intel, названа fuzzy TECH, завоювала величезної популярності у навіть Європі, а й прорвалася на японський рынок.
Немного теории Нечеткая логіка полягає в використанні таких оборотів природного мови, як «далеко», «близько», «холодно», «палко». Діапазон застосування сили вельми широке — від побутових приладів до управління складними промисловими процесами. Багато сучасні завдання управління не можуть бути вирішені класичними методами через дуже великі складності математичних моделей, їх що описують. Разом про те, щоб використовувати теорію нечіткості на цифрових комп’ютерах, необхідні математичні перетворення, дозволяють вийти з лінгвістичних змінних до числовим аналогам в ЭВМ.
[pic] На рис. 2 показані області найефективнішого застосування сучасних технологій управління. Як бачимо, класичні методи управління добре працюють при повністю детерминированном об'єкті управління і детермінованою середовищі, а систем з неповну інформацію і високої складністю об'єкта управління оптимальними є нечіткі методи управління. (У правом верхньому розі малюнка приведено ще одне сучасна технологія управління — із застосуванням штучних нейронних мереж, але поки ми не станемо настільки глибоко говорити про досягнення вчених.) Повернімося до теорії та коротко розглянемо такі поняття, як «нечіткі правила», «нечіткий висновок» та й термін «нечітке управління». Класична логіка розвивається давніх часів. Її основоположником вважається Аристотель. Логіка відома нам як сувора і дуже теоретична наука, більшість учених (крім розробників останнього покоління комп’ютерів) продовжують дотримуватися цієї думки. Разом про те класична чи булева логіка має одна істотна хиба — з її допомогою неможливо описати асоціативне мислення людини. Класична логіка оперує лише двома поняттями: ІСТИНА і БРЕХНЮ, і виключаючи будь-які проміжні значення. Аналогічно цьому булева логіка не визнає нічого крім одиниць і нулів. Усе добре для обчислювальних машин, але спробуйте уявити весь навколишній вас світ лише у чорному і білому кольорі, ще й виключивши зі мови будь-які запитання, крім ТАК і НЕМАЄ. За такого стану вам можна тільки поспівчувати. Розв’язати цю проблему і покликана нечітка логіка. З терміном «лінгвістична змінна» можна зв’язати будь-яку фізичну величину, на яку треба мати більше значень, чому тільки ТАК і НЕМАЄ. І тут ви визначаєте необхідну кількість термов і кожному їх ставите у відповідність деяке значення описуваної фізичної величини. І тому значення ступінь приналежності фізичної величини до терму дорівнюватиме одиниці, а решти значень — в залежності від обраної функції приналежності. Наприклад, можна запровадити зміну ВІК і побачити нею терми ЮНАЦЬКИЙ, СЕРЕДНІЙ і ПОХИЛИЙ. Обговоривши з експертами значення віку кожному за терма, з повною переконаністю можете позбутися обмежень логіки Аристотеля. Отримавши найбільше розвиток із усіх розробок штучного інтелекту, експертні системи завоювали стійке зізнання у ролі систем підтримки прийняття рішень. Такі системи здатні акумулювати знання, отримані людиною у різноманітних галузях діяльності. З допомогою експертних систем вдається вирішити багато сучасних завдання, зокрема і завдання управління. Проте оскільки більшість систем усе ще дуже залежить від класичної логіки. Однією з основних методів уявлення знань у експертних системах є продукционные правила, дозволяють наблизитися до стилю мислення людини. Будь-яке правило продукций складається з посилок і укладання. Можливо наявність кількох посилок у правилі, у разі вони об'єднуються у вигляді логічних зв’язок І, АБО. Зазвичай продукционное правило записується як: «ЯКЩО (посилка) (зв'язка) (посилка)… (посилка) ТЕ (висновок)». Головною ж вадою продукционных систем лишається тільки те, що їх функціонування потрібно наявність повної інформації про систему. Нечіткі системи теж засновані на правилах продукционного типу, однак у ролі посилки і укладення правилі використовуються лінгвістичні перемінні, що дозволяє уникнути обмежень, властивих класичним продукционным правилам. Цільова установка процесу управління пов’язують із вихідний перемінної нечіткою системи управління, але результат нечіткого логічного висновку є нечітким, а фізичне виконавче пристрій нездатна сприйняти таку команду. Необхідні спеціальні математичні методи, дозволяють переходити від нечітких значень величин до цілком певним. У цілому нині весь процес нечіткого управління може бути розбитий сталася на кілька кроків: фаззификация, розробка нечітких правив і дефаззификация. Розглянемо докладніше такі кроки з прикладу яка поставляється з пакетом fuzzy TECH моделі контейнерного крана. Нехай вам, як маститому крановщику, необхідно перевантажити контейнер з баржі на залізничну платформу. Ви управляєте потужністю двигуна візки крана, примушуючи її рухатися швидше чи повільніше. Від швидкості переміщення візки, своєю чергою, залежить відстань до цілі й амплітуда коливання контейнера на тросі. У результаті те, що стратегія управління краном залежить від становища візки, застосування стандартних контролерів з цією завдання дуже важко. Разом про те математична модель руху вантажу, що складається з кількох диференційних рівнянь, то, можливо складена досить легко, але на її рішення за різних вихідних даних знадобиться досить багато часу. До до того ж виконуваний код програми великим і поворотливым. Нечітка система справляється з такою завданням нас дуже швидко — як і раніше, що замість складних диференційних рівнянь руху вантажу весь процес руху описується термінами природної мови: «більше», «середньо», «трохи» тощо. п. Тобто так, що ви даєте вказівки своєму товаришу, що сидить за важелями управления.
Фаззификация (перехід до нечеткости) Точные значення вхідних змінних перетворюються на значення лінгвістичних змінних з застосування деяких положень теорії нечітких множин, саме — з допомогою певних функцій приналежності. Розглянемо це етап докладніше. Насамперед, введемо поняття «лінгвістичної перемінної» і «функції принадлежности».
Лингвистические переменные В нечіткою логіці значення будь-якого масштабу видаються не числами, а словами природної мови і називаються ТЕРМАМИ. Так, значенням лінгвістичної перемінної ДИСТАНЦІЯ є терми ДАЛЕКО, БЛИЗЬКО тощо. буд. Звісно, для реалізації лінгвістичної перемінної необхідно визначити точні фізичні значення її термов. Нехай, наприклад, змінна ДИСТАНЦІЯ може приймати будь-яке значення з діапазону від 0 до 60 метрів. Які ж нам вступити? Згідно з положеннями теорії нечітких множин, кожному значенням відстані з діапазону в $ 60 метрів може надійти у відповідність певна кількість, від нуля до одиниці, яка визначає РІВЕНЬ СПОРЯДЖЕННЯ даного фізичного значення відстані (скажімо, 10 метрів) до того що чи іншому терму лінгвістичної перемінної ДИСТАНЦІЯ. У нашому випадку відстані в 50 метрів можна поставити ступінь приналежність до терму ДАЛЕКО, рівну 0,85, а до терму БЛИЗЬКО — 0,15. Конкретне визначення ступеня приналежності можливе лише за працювати з експертами. При обговоренні питання про термах лінгвістичної перемінної цікаво прикинути, як усієї термов в перемінної необхідне досить точного уявлення фізичної величини. Нині склалося враження, що більшість додатків досить 3−7 термов кожну зміну. Мінімальна значення числа термов цілком оправданно. Такое визначення містить два екстремальних значення (мінімальне і забезпечити максимальне) та середнє. Більшість застосувань цього досить. Що ж до максимальної кількості термов, воно необмежена і повністю від докладання і необхідної точності описи системи. Кількість ж 7 зумовлено ємністю короткочасною пам’яті людини, у якій, по сучасним уявленням, може зберігатися сьомої одиниць інформації. На закінчення дамо два ради, які допоможуть визначенні числа термов: n виходите з що стоїть перед вами завдання й необхідної точності описи, пам’ятаєте, що з більшості додатків предосить трьох термов в перемінної; n составляемые нечіткі правила функціонування системи би мало бути зрозумілі, ви повинні відчувати істотних труднощів їх розробники; інакше, коли бракує словникового запасу в термах, слід збільшити їх число.
Функции принадлежности Как говорилося, приналежність кожного точного значення до жодного з термов лінгвістичної перемінної визначається у вигляді функції приналежності. Її вид то, можливо абсолютно довільним. Зараз сформувалося поняття про про стандартних функціях приналежності (див. рис. 3).
[pic] Стандартні функції приналежності легко застосовні до вирішення більшості завдань. Але якщо доведеться вирішувати специфічну завдання, можна вибрати і більш придатну форму функції приналежності, у своїй можна домогтися кращих результатів роботи системи, аніж за використанні функцій стандартного виду. Підіб'ємо деякі підсумки етапу фаззификации і дамо щось на кшталт алгоритму по формалізації завдання у термінах нечіткою логіки. Крок 1. До кожного терма взятій лінгвістичної перемінної знайти числове значення чи діапазон значень, найкраще характеризуючих даний терм. Оскільки це значення чи значення є «прототипом» нашого терма, то тут для них вибирається одиничне значення функції приналежності. Крок 2. Після визначення значень з одиничної приналежністю необхідно визначити значення параметра з приналежністю «0» до цього терму. Це значення то, можливо вибрано як значення з приналежністю «1» до іншого терму у складі певних раніше. Крок 3. Після визначення екстремальних значень слід визначити проміжні значення. Їх вибираються Пчи Л-функции у складі стандартних функцій приналежності. Крок 4. Для значень, відповідних екстремальним значенням параметра, вибираються P. Sчи Z-функции приналежності. Якщо вдалося таким чином описати вартісну перед вами завдання, ви вже повністю занурилися у світ нечіткості. Тепер потрібно щось, що дозволить знайти правильний шлях у цьому лабіринті. Таким путівником може стати база нечітких правил. Про методи їх створення ми й поговоримо ниже.
Разработка нечітких правил На цьому етапі визначаються продукционные правила, котрі пов’язують лінгвістичні перемінні. Сукупність таких правил описує стратегію управління, застосовується у цій завданню. Більшість нечітких систем використовують продукционные правила для описи залежностей між лінґвістичними перемінними. Типове продукционное правило складається з антецедента (частина ЯКЩО …) і консеквента (частина ТЕ …). Антецедент може містити більше посилки. І тут вони об'єднуються у вигляді логічних зв’язок І чи АБО. Процес обчислення нечіткого правила називається нечітким логічним висновком і підрозділяється на два етапу: узагальнення і висновок. Нехай маємо таке правило: ЯКЩО ДИСТАНЦИЯ=средняя І УГОЛ=малый, ТЕ МОЩНОСТЬ=средняя. Звернімося приміром з контейнерним краном і розглянемо ситуацію, коли відстань до платформи одно 20 метрів, а кут відхилення контейнера на тросі крана дорівнює чотирьом градусів. Після фаззификации вихідних даних одержимо, що ступінь приналежності відстані в $ 20 метрів до терму СЕРЕДНЯ лінгвістичної перемінної ДИСТАНЦІЯ дорівнює 0,9, а ступінь приналежності кута на чотири градуси до терму МАЛИЙ лінгвістичної перемінної КУТ дорівнює 0,8. У першому кроці логічного висновку необхідно визначити рівень приналежності всього антецедента правила. І тому в нечіткою логіці існують два оператора: MIN (…) і MAX (…). Перший обчислює мінімальне значення ступеня приналежності, а другий — максимальне значення. Коли застосовувати той чи інший оператор, залежить від цього, який зв’язкою з'єднані посилки у правилі. Якщо використана зв’язка І, застосовується оператор MIN (…). Якщо ж посилки об'єднані зв’язкою АБО, необхідно застосувати оператор MAX (…). Та якщо у правилі одне посилка, оператори зовсім не від потрібні. У нашій прикладу застосуємо оператор MIN (…), оскільки використана зв’язка І. Одержимо следующее:
MIN (0,9;0,8)=0,8. Отже, ступінь приналежності антецедента такого правила дорівнює 0,8. Операція, описана вище, відпрацьовується кожному за правила у базі нечітких правил. Таким кроком є власне висновок чи підписання. Аналогічним чином у вигляді операторів MIN/MAX обчислюється значення консеквента. Вихідними даними служать обчислені попередньому кроці значення ступенів приналежності антецедентов правил. По виконанні всіх кроків нечіткого виведення ми бачимо нечітке значення керуючої перемінної. Щоб виконавче пристрій змогло відпрацювати отриману команду, необхідний етап управління, у якому ми позбуваємося нечіткості і що називається дефаззификацией.
Дефаззификация (усунення нечеткости) На цьому етапі здійснюється перехід від нечітких значень величин до певним фізичним параметрами, які можуть слугувати командами виконавчому влаштуванню. Результат нечіткого виведення, ясна річ, буде нечітким. У прикладі з краном команда для електромотора крана звучатимуть термом СЕРЕДНЯ (потужність), але для виконавчого устрою це абсолютно нічого означає. Для усунення нечіткості остаточного результату є кілька методів. Розглянемо окремі. Абревіатура, що стоїть після назви методу, походить від скорочення його англійського эквивалента.
Метод центру максимуму (СоМ) Так як результатом нечіткого логічного висновку може бути кілька термов вихідний перемінної, то правило дефаззификации має визначити, який із термов вибрати. Робота правила СоМ показано на рис. 4.
[pic].
Метод найбільшого значення (МоМ) При використанні цього правило дефаззификации вибирає максимальне з отриманих значень вихідний перемінної. Робота методу зрозуміла з мал. 5.
[pic].
Метод центроида (СоА) В цьому методі остаточне значення окреслюється проекція центру тяжкості постаті, обмеженою функціями приналежності вихідний перемінної з припустимими значеннями. Роботу правила можна побачити на рис. 6.
[pic] Основні кроки розробки нечіткою системи управління з допомогою CADсистеми fuzzy TECH 3.0 Процес розробки проекту нечіткою системи управління на fuzzy TECH розбивається, як говорилося, чотирма основні етапи. Усі вони схематично показані на рис. 7.
[pic].
Описание системы На цьому етапі засобами, доступних в fuzzy TECH, завдання формалізується. Тут слід описати лінгвістичні перемінні, які ви використовувати; їх функції приналежності; описати стратегію управління у вигляді нечітких правил, що ви зможете поєднати у єдину базу правил чи знання системі. У цілому нині CASE-технология, з урахуванням якій побудовано пакет, дає змогу всю такі дії виконати у вигляді спілкування з екраном ЕОМ, не заглядаючи у програмний код. Тому є початковим етапом проектування ви сприймете легко, попри що здається складність. Можна дати одна порада: зверніть увагу до деякі тонкощі розробки. Приміром, ви можете встановити розрядність машинного коду, генерованого пакетом. Це впливає формат величин, які можна використовувати (див. табл. нижче). [pic] |Тип даних |Мінімальна значення |Максимальне значення | |8-битовый целочисленный |0 |255 | |16-битовый целочисленный |0 |32 786 | |32-битный целочисленный |0 |2 147 483 648 | |Подвійна точність |1,7−308 |1,7+308 |.
[pic].
Off-line-оптимизация На цьому етапі слід перевірити працездатність створеної системи у вигляді всіх коштів fuzzy TECH. Зазначимо, які можна використовувати заздалегідь створений програмний стимулятор вашого об'єкта управління, подібно моделі контейнерного крана. Для зв’язку системи управління з моделлю використовується спеціально розроблений протокол зв’язку fTlink, основою якого покладено концепція обміну повідомленнями Windows. Усі необхідні кошти на встановлення зв’язку з вашої моделлю перебувають у вихідних текстах програм зв’язку, поставлених з пакетом.
On-line-оптимизация На цьому кроці розроблювана систему управління і той реальний об'єкт управління з'єднуються фізичної лінією зв’язку (див. рис. 8). Такий вид налагодження дозволяє спостерігати поведінка системи за умов й за необхідності вносити зміни у систему управления.
Реализация На цьому етапі отримати остаточного варіанта коду для конкретного микроконтроллера і, коли потрібно, зв’язати його з вашої основний програмою. Про оптимальності створюваного fuzzy TECH коду можна судити з даним табл. нижче. Основу програмного коду, генерованого пакетом fuzzy TECH, становить аппаратно-ориентированное на конкретний тип процесора ядро. Поставлене з пакетом fuzzy TECH MCU-96 програмне ядро сумісно з цими контролерами, як 8096BH, 8096−90, 80196KB/KC/KD, 80 196 KR, 80196MC, 80196NT/NQ. Важливе зауваження стосується структури генерованого коду. Він, зазвичай, складається з з трьох основних частей:
. код бібліотечних функций;
. сегмент бази правив і функцій принадлежности;
. функції нечіткою системи. Знайти обсяг ОЗУ і ПЗУ, реквізит до роботи і збереження вашої системи, допоможуть такі формулы:
. для оперативної памяти,.
[pic]где.
Sv — обсяг оперативною пам’яті; ni — число вхідних змінних; no — число вихідних змінних; ti — число термов у вхідний лінгвістичної перемінної і; tj — число термов в вихідний лінгвістичної перемінної j;
Mконстанта, рівна 1 для 8-битного коду і 2 — для 16-битного;
З — константа, рівна 28 байтам для MCU-96 і аналогічних сім байт для MCU-51;
. для постійної памяти,.
[pic]где.
Sf — розмір бази правив у байтах; ni — число вхідних змінних; noчисло вихідних змінних; nr — число правив у базі знань; ti — число термов у вхідний лінгвістичної перемінної і; tj — число термов в вихідний лінгвістичної перемінної j;
Ir — число вхідних умов правила r;
Or — число вихідних умов правила r;
M — константа, рівна 1 для 8-битного коду і 2 — для 16-битного. Точний розмір згенерованого fuzzy TECH 3.0 коду вказується після закінчення процесу компіляції. [pic] |платформа |20 правил |20 FAM-правил |80 правил | | |2 вх. і одну вых.|2 вх. І 1 вых. |3 вх. і одну вых.| |MCS-96, 16 біт, 80С196KD,|0,28 мс |0,29 мс |0,43 мс | | |0,84 Кбайт ПЗУ|0,87 Кбайт ПЗУ |1.27 Кбайт ПЗУ| |вбудоване ПЗУ, 20 МГц | |63 байт ОЗУ | | | |63 байт ОЗУ | |69 байт ОЗУ | |MCS-51, 8 біт, 80С51, |1,4 мс |1,5 мс |4,4 мс | |вбудоване ПЗУ, 12 МГц |0,54 Кбайт ПЗУ|0,58 Кбайт ПЗУ |1,0 Кбайт ПЗУ | | | |25 байт ОЗУ |29 байт ОЗУ | | |25 байт ОЗУ | | |.
[pic].
1. Zade L. A. The concept of a linguistic variable and its application to approximate reasoning. Part 1, 2, 3 // Information Sciences, n. 8 pp.199−249, pp.301−357; n. 9 pp. 43−80.
2. Прикладні нечіткі системи: Переклад з япон./ До. Асаи, Д. Ватада, С.
Иваи та інших.; під ред. Т. Тэрано, До. Асаи, М. Сугено. — М.: Світ, 1993.
3. Mamdani E. H. Applications of fuzzy algorithms for simple dynamic plant. Porc. IEE. vol. 121, n. 12, pp. 1585−1588, 1974.
4. Smidth F. L. Computing with a human face. New Scientist, 6 may, 1982.
5. Yagashita O., Itoh O., and Sugeno M. Application of fuzzy reasoning to the water purification process, in Industrial Applications of Fuzzy.
Control, Sugeno M, Ed. Amsterdam: North-Holand 1985, pp.19−40.
6. Yasunobu P. S., Miyamoto P. S., and Ihara H. Fuzzy control for automatic train operation system, in Proc. 4th. IFAC/IFIP/IFORS Int. Congress on.
Control in Transportation Systems, Baden-Baden, April, 1983.
7. Yasunobu P. S., and Hasegawa T. Predictive fuzzy control and its applications for automatic container crane operation system, in Proc.
2nd. IFSA Congress, Tokyo, Japan, Julie 1987.
8. F. Fujitec, FLEX-8800 series elevator group control system, Fujitec.
Co., Ltd., Osaka, Japan, 1988.
9. Watanabe H., and Dettloff. Reconfigurable fuzzy logic processor: A full custom digital VLCI, in Int. Workshop on Fuzzy Systems.
Applications, Iiruka, Japan, Aug. 1988, pp. 49−50. 10. Sangalli A., and Klir G.R. Fuzzy logic goes to market, New Scientist,.
8 Feb., 1992.