prezentace aplikace powerpoint - mendeluqqfarana/rt/rt_pef_09.pdf · akční veličinu změnit a...

13
20.11.2017 1 Řídicí technika Fuzzy řízení Akademický rok 2017/2018 Připravil: Radim Farana Obsah Fuzzy řízení Fuzzy množiny Operace s fuzzy množinami Fuzzy pravidla Fuzzy regulátory 2 Fuzzy řízení 3 Fuzzy řízení je spolu s dalšími přístupy, jako například neuronové sítě, jednou z moderních metod regulace a ovládání řízených soustav. Podstatou fuzzy logiky je matematická metoda popisu neurčitého vyjadřování blízkého člověku: „přidej špetku soli“, „je celkem horko“, „nijak daleko“ apod. Fuzzy logika naplňuje toto vyjadřování matematickým obsahem, proto jí rozumí i počítač. Je tak možno zpracovávat i nepřesná (neurčitá) vstupní data – což není možné u klasické Booleovy algebry. U fuzzy řízení není základem řízená soustava a její model, ale pozornost je zaměřena na chování člověka (tzv. experta), který umí soustavu řídit, ale přitom nemá znalosti o klasickém matematickém modelu. Takový člověk pak řídí soustavu na základě pravidel typu „jestliže ukazatel teploty hodně pomalu klesá, stačí o trochu pootočit ventilem doprava“.

Upload: others

Post on 16-Oct-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

1

Řídicí technika

Fuzzy řízení

Akademický rok 2017/2018

Připravil: Radim Farana

Obsah

• Fuzzy řízení

• Fuzzy množiny

• Operace s fuzzy množinami

• Fuzzy pravidla

• Fuzzy regulátory

2

Fuzzy řízení

3

Fuzzy řízení je spolu s dalšími přístupy, jako například neuronové sítě, jednou

z moderních metod regulace a ovládání řízených soustav.

Podstatou fuzzy logiky je matematická metoda popisu neurčitého vyjadřování

blízkého člověku: „přidej špetku soli“, „je celkem horko“, „nijak daleko“ apod.

Fuzzy logika naplňuje toto vyjadřování matematickým obsahem, proto jí

rozumí i počítač. Je tak možno zpracovávat i nepřesná (neurčitá) vstupní data –

což není možné u klasické Booleovy algebry.

U fuzzy řízení není základem řízená soustava a její model, ale pozornost je

zaměřena na chování člověka (tzv. experta), který umí soustavu řídit, ale

přitom nemá znalosti o klasickém matematickém modelu. Takový člověk pak

řídí soustavu na základě pravidel typu „jestliže ukazatel teploty hodně pomalu

klesá, stačí o trochu pootočit ventilem doprava“.

Page 2: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

2

Fuzzy množiny

4

Fuzzy logika spočívá v rozšíření logických operátorů

na fuzzy množiny. Teorie fuzzy množin spočívá

v zavedení tzv. stupně anebo síly příslušnosti prvku

k množině, který může nabývat hodnot

z intervalu <0,1> na rozdíl od klasické teorie množin,

kdy každý prvek do množiny buď patří nebo nepatří.

Stupeň příslušnosti prvku (např. okamžité teploty) k fuzzy množině (teplota)

může nabývat všech hodnot od nuly do jedné (včetně). Při hodnotě 0 prvek

do množiny určitě nepatří, 0,2 znamená asi sotva, 0,5 snad, 0,8 téměř jistě, 1

znamená zcela jistou příslušnost k množině. Tím se elegantně vyhneme

situaci, kdy v klasické logice teplotu 25°C označíme jako příjemnou a 24,9

jako nepříjemnou.

Lotfi Aliasker Zadeh

* 4. 2. 1921 Baku

https://cs.wikipedia.org/wiki/Lotfi_Zadeh

Fuzzy množiny

5

teplota stupeň příslušnosti m slovní vyjádření

5 °C 0 zcela jistě není příjemná

10 °C 0,3 asi sotva

15 °C 0,5 snad

20 °C 0,8 téměř jistě

25 °C 1,0 zcela jistě

35 °C 0,5 sotva

Tabulka stupně příslušnosti skutečně teploty k množině

„Příjemná teplota“:

Fuzzy množiny

6

Příklad funkce příslušnosti

Page 3: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

3

Fuzzy množiny

7

Jazyková proměnná je taková proměnná, jejíž hodnoty jsou výrazy

nějakého jazyka. Hodnotu jazykové proměnné můžeme interpretovat jako

fuzzy množiny. Množina hodnot se označuje jako množina n jazykových

termů. Význam termů je definován na univerzu U, které chápeme jako

univerzální množinu.

Např. při regulaci teploty lázně můžeme teplotu kapaliny chápat jako

jazykovou proměnnou s názvem „Teplota lázně“. Teplotu měříme ve

stupních Celsia. Kvantitativní vyjádření teploty lázně v hovorovém jazyce

však nemusí být vyjádřeno jen ve stupních, ale v běžně používaných

výrazech jako: lázeň je LEDOVÁ, STUDENÁ, VLAŽNÁ, TEPLÁ atd.

Jako hodnotu jazykové proměnné „Teplota lázně“ pak můžeme označit

prvek z množiny teplot:

{ledová(L), studená(S), vlažná(V), horká(H)}

Fuzzy množiny

8

Takto zavedená jazyková kvantifikace teplot pomocí výrazů přirozeného

jazyka (např. studená), představuje termy, jejichž význam je vágní a modeluje

se pomocí fuzzy množin a je definována charakteristickou funkcí mS(x).

Charakteristická funkce mS(x) se u fuzzy množin nazývá funkcí příslušnosti

mS(x). Charakterizuje stupeň, s jakým daný prvek patří do dané množiny, a to

od hodnoty 0, kdy prvek do množiny určitě nepatří, až do hodnoty 1, kdy

prvek do množiny zcela jistě patří.

0

0,2

0,4

0,6

0,8

1

1,2

-20 -10 0 10 20 30 40

teplota [°C]

L-funkce

StudenámS(x) Λ-funkce

VlažnámV(x)

Fuzzy množiny

9

Proces přiřazování měřených hodnot vstupních veličin do fuzzy množin

pomocí funkcí příslušností se označuje jako fuzzifikace. Pro regulační úlohy se

používají standardní funkce příslušnosti:

Λ-funkce (funkce trojúhelníková),

L-funkce (viz obrázek),

Π-funkce (funkce lichoběžníková),

Γ- funkce,

S-funkce,

Z-funkce.

Page 4: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

4

Fuzzy množiny

10

Pro označování hodnot jazykové proměnné se používá standardní označení.

Význam Ozn. Čes. Ozn. Ang.

Hodnota velká záporná ZV NL

Hodnota střední záporná ZS NM

Hodnota malá záporná ZM NS

Hodnota záporná blízká nule ZN NZ

Hodnota nulová NU Z

Hodnota kladná blízká nule KN PZ

Hodnota malá kladná KM PS

Hodnota střední kladná KS PM

Hodnota velká kladná KV PL

Operace s fuzzy množinami

11

Na fuzzy množinách můžeme používat operace podobné těm, které jsme

používali na klasických množinách. Pro naší potřebu uvedeme pouze základní

tři operace (doplněk, průnik, sjednocení) Ux

Komplement fuzzy množiny, doplněk množiny A, C = NOT A

)(1)( xmxm AC

Průnik fuzzy množin (logický součin) C = A AND B

)(),(min)()( xmxmxmxm BABAC

Sjednocení fuzzy množin (logický součet) C = A OR B

)(),(max)()( xmxmxmxm BABAC

Operace s fuzzy množinami

12

x

1

x

1

x

1 mA(x)

x

1 mB(x)

x

1 mA(x)

mB(x)

x

1

x

1 sjednocení )(),(max)()( xmxmxmxm BABAC

x

1 průnik )(),(min)()( xmxmxmxm BABAC

x

1 komplement

(doplněk)

x

1 mC(x) = 1 – mA(x)

Page 5: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

5

Fuzzy pravidla

13

Obecně je logické řízení založeno na vyhodnocování rozhodovacích pravidel

ve formě podmíněných výroků

JESTLIŽE … PAK.

Pro fuzzy řízení a regulaci je podmínka vyjádřena formou implikace dvou

fuzzy výroků většinou jako

JESTLIŽE <fuzzy výrok> PAK <fuzzy výrok>,

V anglické verzi pak

IF <fuzzy výrok> THEN <fuzzy výrok>.

Tato podmínka je označována jako „fuzzy IF-THEN pravidlo“. První fuzzy

výroková množina, kterou je často složený výrok, se nazývá antecedent, kde

jednotlivé části výroku jsou vázány logickými spojkami. Druhý fuzzy výrok

je konsekvent.

Fuzzy pravidla

14

Jednoduchý fuzzy výrok IF <E.kladná> THEN <U.kladná>

V rozhodovacím pravidle je v antecedentu jazyková proměnná E (regulační

odchylka), jejíž hodnota je kladná a má funkci příslušnosti mkladná(E).

Konsekvent obsahuje jazykovou proměnnou U (akční veličinu) s hodnotou

kladná, jejíž funkce příslušnosti je mkladná(U),

mkladná(E)

IF <E.kladná>

0 4 10 e0

mkladná(U) THEN <U.kladná>

α

-20 0 20

*mkladná(U)

Fuzzy pravidla

15

Změříme-li ostrou hodnotu regulační odchylky e0, pak můžeme na obrázku

5 pomocí funkce příslušnosti mkladná(E) odečíst stupeň příslušnosti α,

s jakým změřená hodnota přísluší k množině hodnot E.kladná. Naším

úkolem je však nalézt pro změřenou ostrou hodnotu odpovídající fuzzy

množinu konsekventu.

Nejčastější postup jak určit tuto množinu vychází z logického předpokladu,

že důsledek – konsekvent může mít maximálně stupeň příslušnosti jako má

podmínka – antecedent. Stupeň příslušnosti změřené „ostré“ hodnoty e0

určuje tedy hladinu, která nám ořízne výstupní fuzzy množinu U

konsekventu. Funkce příslušnosti konsekventu je pak *mkladná(E).

Page 6: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

6

Fuzzy pravidla

16

Zobecnění tohoto principu na dvourozměrný

antecedent

JESTLIŽE (X je kladné malé) AND (Y je kladné střední)

PAK (U je záporné střední)

Existuje celá řada způsobů jak modeloval význam

fuzzy IF-THEN pravidla, ale z hlediska řízení a regulace je nejdůležitější

následující metoda (Mamdaniho), která definuje funkci příslušnosti

konsekventu jako )(),(min 21 xmxmm BAIM

Minimalizací se vyjadřuje skutečnosti, že důsledek (konsekvent) může mít

maximálně stupeň příslušnosti, jako má podmínka (antecedent)

mKS(y)

y0

mZS(u)

α

y

mKM(x)

x0x

β

MIN

u

Ebrahim H. Mamdani

* 6/1942 Tanzania

+ 22. 1. 2010 https://www.researchgate.net/publication/262424900

_Obituary_Abe_Mamdani_in_Memoriam

Fuzzy pravidla

17

Je-li vazba OR, tak vybíráme maximum z odpovídajících funkcí příslušnosti

IF <x.KM> OR <y.KS> THEN <u.ZS>

mKS(y)

y0

mZS(u)

α

y

mKM(x)

x0x

β

MAX

u

Fuzzy pravidla

18

Nalezení výstupní množiny pro dvě pravidla a dvourozměrnou závislost a

Mamdaniho metodu

IF <x.KM> AND <y.KM> THEN <u.KM> ELSE

IF <x.KS> AND <y.KS> THEN <u.KS>

Pro dvě fuzzy IF-THEN pravidla je jejich význam modelován těmito funkcemi

příslušnosti.

)(),(min)()(1 ymxmymxm KMKMKMKM

)(),(min)()(2 ymxmymxm KSKSKSKS

Pro konsekventy obou implikací dostaneme

)(,min)()( 11 umumum KMKMKM

)(,min)()( 22 umumum KSKSKS

Page 7: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

7

Fuzzy pravidla

19

Konsekventy obou implikací *mKS(u) a *mKM(u) určují jejich dílčí podíly na

velikosti akční veličiny. Intuitivně se nabízí možnost interpretovat účinek obou

dílčích výstupních termů jako jejich logický součet. Pak pro výstupní fuzzy

množinu obou účinků dostaneme

)(,min,)(,minmax)( 11 umumum KMKMCEL

1

mKM(x)

1

mKS(x)

1

mKM(y)

mKS(y)

y

1

x

y0x0

MIN

MIN

u

1

1

mKM(u)

mKS(u)

*mKM(u)

*mKS(u)

u

1

mCEL(u)

*mCEL(u)

Defuzzifikace

20

Výsledkem činnosti bloku rozhodovacích pravidel je soubor funkcí

příslušnosti pro jednotlivé termy výstupních jazykových proměnných. Funkce

příslušnosti výstupní množiny je dána sjednocením oříznutých funkcí

příslušnosti (Mamdaniho metoda).

Po praktickém provedení akčních zásahů je třeba přiřadit výstupním

jazykovým proměnným ostrou hodnotu akční veličiny v přípustném rozsahu.

Tento proces „aproximace neostrých termů“ ostrou hodnotnou akční veličiny

se nazývá defuzzifikace.

Existuje celá řada metod defuzzifikace, které vycházejí z empirického ověření

až po heuristické přístupy.

Defuzzyfikace

21

a)

(Left of Maximum)uvys

b)

LoM MoMRoM

(Mean of Maximum)uvys

Při volbě metody defuzzyfikace můžeme zvolit buď metody, které hodnotu

akční veličiny určí výpočtem jako nejlepší kompromis (metody těžiště – Center

of Gravity) nebo metody hledající přijatelné řešení (metody nejvýznamnějšího

maxima).

Page 8: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

8

Fuzzy regulátor

22

Na místě regulátoru budeme používat vhodný fuzzy regulátor, který bude

působit na regulovanou soustavu

Fuzzy regulátor přiřazuje zvoleným vstupním veličinám jazykovou hodnotu.

To se provede nejlépe pomocí tzv. funkcí příslušnosti – bývají voleny obvykle

ve tvaru lichoběžníku či trojúhelníku. Tato etapa je označována jako

fuzzifikace. V dalším kroku určí fuzzy regulátor na základě znalostí experta

slovní hodnoty akčních veličin (např. regulační odchylka bude záporná malá).

V závěrečném kroku převede slovní vyjádření na konkrétní číselné hodnoty

veličin – tzv. defuzzifikaci

fuzzy

převod

defuzzi-

fikace

y(t) w(t) regulátor

(fuzzy)

soust

ava

-

Fuzzy regulátor

23

Fuzzy řízení je vhodný prostředek pro řízení soustav, u nichž neznáme

matematický model, ale které dovede člověk řídit.

Lze určit hodnotu výstupu, aniž tak známe vzorce mezi vstupem a výstupem.

Každé fuzzy pravidlo přispívá jen částí ke konečnému výsledku.

Takový postup je odolnější proti chybám než obvyklý algoritmus.

K nevýhodám fuzzy regulátorů patří složitý řídicí algoritmus, možnost oscilací

v ustáleném stavu a zatím malé zkušenosti s návrhem.

Fuzzy regulátor

24

Dynamický

systém

d

Fuzzifikace Defuzzifikace Inference

Fuzzy

pravidla

x w

e

F I D

y + -

A/D D/A

Podrobná struktura fuzzy regulátoru. Jeho ústřední člen tvoří tři základní

bloky: Fuzzifikace F, Inference I a blok Defuzzifikace D.

Page 9: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

9

Fuzzy regulátor

25

Praxe ukázala, že pro jednoduchý fuzzy regulátor typu PI, PD je možno

odvodit bázi pravidel pomocí tří základních metapravidel

MP1: Jestliže regulační odchylka e(k) a její změna Δe(k) je nulová nebo

blízká nule, pak by měl být přírůstek akční veličiny Δu(k) – akční zásah

nulový nebo blízký nule.

MP2: Jestliže regulační odchylka e(k) klesá k nule nebo se blíží nule

s dostačující rychlostí, pak je vhodné také neměnit akční veličinu.

MP3: Jestliže se regulační odchylka e(k) nekoriguje sama, potom je třeba

akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a

znaménko závisí na znaménku a velikosti regulační odchylky e(k) a její

změny Δe(k).

Fuzzy regulátor

26

Z N K

Z Z Z N

N Z N K

K N K K

Δe

e

Regulační odchylka e { Z, N, K}

Změna regulační odchylky Δe { Z, N, K}

Akční zásah Δu { Z, N, K}

Jednoduchý inkrementální fuzzy regulátor typu PI

Typy fuzzy regulátorů

27

Rozlišujeme základní typy fuzzy regulátorů, které vycházejí z analogie

klasických regulátorů. Vyjdeme z ideálního spojitého klasického PID

regulátoru:

dt

tdeTde

Ttektu D

t

I

P

)()(

1)()(

0

V případě diskrétních regulátorů musíme vztahy aproximovat s ohledem na

časovou diskretizaci danou vzorkovací periodou T:

T

TkekTeTiTe

T

TkTekkTu D

k

iI

P

])1[()()()()(

1

což můžeme přepsat do tvaru:

T

kTekTkTekkTekkTu DIP

)()()()(

Page 10: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

10

Typy fuzzy regulátorů

28

fuzzifikátor jazykové

proměnné E, který převádí

ostré hodnoty e na fuzzy

množiny E~

defuzzifikátor jazykové

proměnné U, který k

fuzzy množině

určuje její

defuzzifikovanou

hodnotu u.

U~

zesílení signálu a konstantou

K na hodnotu aK

inferenční

mechanismus fuzzy

regulátoru

odpovídajícího typu

paměť předchozí

hodnoty, umožňuje

jednokrokové časové

zpoždění vstupní

hodnoty, která se na

výstupu objeví až

v následujícím

časovém okamžiku

Typy fuzzy regulátorů

29

Fuzzy P regulátor je nejjednodušší variantou fuzzy regulátoru. Jedná se v

podstatě o fuzzy aproximaci lineární závislosti dané analogií s klasickým P

regulátorem v podobě vztahu:

)()( kTekkTu P

Tato aproximace sama o sobě však

lineární být nemusí a jak z podstaty

samotné přibližné dedukce vyplývá, ani

nebývá. Celkový charakter přenosové

funkce je závislý na tvaru použitých

fuzzy množin a především na bázi

pravidel, které jsou v případě fuzzy

regulátoru tohoto typu ve tvaru:

IF E is AE THEN U is BU.

Typy fuzzy regulátorů

30

Fuzzy PD regulátor je obdobně aproximací vztahu

T

kTekkTekkTu DP

)()()(

Jazyková pravidla mají v tomto případě tvar:

IF E is AE AND ΔE is AΔE THEN U is BU.

Page 11: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

11

Typy fuzzy regulátorů

31

Fuzzy PI regulátor je analogií ke klasickému PI regulátoru, jehož akční zásah

je počítán podle

TkTekkTekkTu IP )()()(

Fuzzy PI regulátor můžeme realizovat dvěma způsoby. První varianta je dána

přímou aproximací výše uvedeného vztahu. V tomto případě mají fuzzy IF–

THEN pravidla popisující chování regulátoru tvar

IF E is AE AND δE is AδE THEN U is BU.

Typy fuzzy regulátorů

32

Druhou variantou fuzzy PI regulátoru je tzv. inkrementální fuzzy PI regulátor.

Jeho název pochází z toho, že výstupem z inferenčního pravidla není přímo

hodnota akčního zásahu, ale jeho změna (přírůstek) oproti stávající hodnotě.

Tomu také odpovídá struktura pravidel:

IF E is AE AND ΔE is AΔE THEN ΔU is BΔU.

Tento typ fuzzy regulátoru se v praxi používá nejčastěji, protože pravidla

obsahují pouze dvě antecedentové proměnné, takže pravidla můžeme přehledně

zobrazit ve dvojrozměrné tabulce. Pro člověka je navíc snazší uvažovat změnu

akčního zásahu, která představuje například další pootočení řídicího ventilu

oproti stávající poloze.

Použití fuzzy regulátoru

33

Model magnetické levitace, nelineární systém, vzorkovací perioda 0,002 [s]

Page 12: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

12

Použití fuzzy regulátoru

34

Systém řízení včetně modelu regulované soustavy od výrobce

Použití fuzzy regulátoru

35

Fuzzy regulátor s oddělenými parametry

Použití fuzzy regulátoru

36

0 20 40 60 80 100 120 140 160 180 2000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1Magnetic levitation - PID control

time [s]

w(t

), y

(t)

w(t)

y(t)

PID regulátor

0 20 40 60 80 100 120 140 160 180 2000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1Magnetic levitation - LFLC control

time [s]

w(t

), y

(t)

w(t)

y(t)

Fuzzy regulátor

Řízení polohy kuličky

Page 13: Prezentace aplikace PowerPoint - MENDELUqqfarana/RT/RT_PEF_09.pdf · akční veličinu změnit a akční zásah Δu(k) bude nenulový. Jeho velikost a znaménko závisí na znaménku

20.11.2017

13

Použití fuzzy regulátoru

37

PID regulátor

0 20 40 60 80 100 120 140 160 180 200-0.2

0

0.2

0.4

0.6

0.8

1

1.2Magnetic levitation - PID control

time [s]

w(t

), y

(t)

w(t)

y(t)

Fuzzy regulátor

0 20 40 60 80 100 120 140 160 180 2000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1Magnetic levitation - LFLC control

time [s]

w(t

), y

(t)

w(t)

y(t)

Programové řízení, střídání změny polohy