Fuzzy logika

**Fuzzy logika** je odbor matematiky odvodený z teórie fuzzy množín, v ktorom sa logické výroky ohodnocujú stupňom príslušnosti (tiež index vágnosti), ktorého hodnoty sú v intervale od 0 do 1. V klasickej výrokovej a predikátovej logike, sa výroky ohodnocujú buď ako pravdivé, alebo nepravdivé — v binárnom vyjadrení ako 1 alebo 0. Fuzzy logika je vhodnejšia pre množstvo reálnych rozhodovacích úloh. Používa sa napríklad v umývačkách riadu, pračkách, autopilotoch, parkovacích senzoroch atď.

Fuzzy logika bola formulovaná roku 1965 Lotfim Zadehom z Kalifornskej univerzity v Berkeley.

Funkcia príslušnosti vo fuzzy logike umožňuje priradiť príslušnosť k množinám v rozmedzí od 0 do 1, vrátane oboch hraničných hodnôt. Fuzzy logika tak umožňuje matematicky vyjadriť pojmy ako „trochu“, „dosť“ alebo „veľa“. Presnejšie, umožňuje vyjadriť čiastočnú príslušnosť k množine.

Stupeň príslušnosti je často zamieňaný s pravdepodobnosťou. Tieto pojmy sú ale rozdielne. Fuzzy hodnota je priradená funkcii príslušnosti k vágne definovaným množinám a nepredstavuje pravdepodobnosť nejakého javu. Príkladom môže byť napríklad 30 ml vody v 100 mililitrovom pohári spolu s dvoma fuzzy množinami: Plná a Prázdna. Čiastočne naplnený pohár potom pripadá z 0.7 k Prázdnej a z 0.3 k Plnej.

## Aplikácia
Fuzzy logika sa používa, ak sa systém nedá exaktne opísať a je v ňom veľký rozptyl hodnôt.

Príkladom je ľudská reč. Ľudská reč (prevedená do počítača ako napr. wav súbor) sa dá zapísať ako poradie nejakých hodnôt v čase. Ale ani ten istý človek nepovie to isté slovo úplne rovnako a preto pre to isté slovo dostaneme od toho istého človeka dva rôzne wav súbory, ktoré sa ale graficky podobajú. Keď sa však porovnajú bajt po bajte, tak sa nerovnajú. Na riešenie tohto problému možno použiť fuzzy logiku.

Fuzzy algoritmy nie sú matematicky zložité; pre navrhovanie stačia aj stredoškolské znalosti matematiky. Takéto algoritmy bývajú spravidla veľmi robustné a odolné proti chybám hodnôt a šumom. Ich nevýhodou je, že môžu byť dosť nepresné. V takom prípade sa kombinujú s lineárnymi regulátormi.

## Fuzzy čísla
Fuzzy číslo je číslo, ktoré má dve zložky: hodnotu a rozptyl. Ak je rozptyl nulový, tak sa fuzzy číslo stáva reálnym číslom.

Kanonické fuzzy čísla majú tvar Gaussovho zvonu. Pre zjednodušenie sa v praxi nahradzujú trojuholníkmi, ktoré fungujú rovnako dobre. Gaussove čísla majú tú výhodu, že ich možno sčítavať, odčítavať, násobiť a aj deliť a ostávajú to stále len Gaussove čísla.

Pre toto je fuzzy logika dosť dobre použiteľná aj v matematickej štatistike (a niekedy aj opačne). Preto sa dá veľmi dobre použiť v teórii spoľahlivosti systémov.

## Fuzzy riadenie a regulácia
Fuzzy riadenie a regulácia bola prvá oblasť kde bola fuzzy logika nasadená. Tu sa fuzzy nasadzuje dvoma spôsobmi:
* *priame fuzzy riadenie* – fuzzy algoritmus priamo prijíma hodnoty z riadeného systému a reaguje na ne tak, že posiela priamo riadiace zásahy do systému
* *nepriame fuzzy riadenie* - fuzzy algoritmus síce prijíma hodnoty zo systému, ale spracovanie vstupov a riadiace zásahy robí klasický lineárny regulátor. Fuzzy regulátor len prepína medzi viacerými lineárnymi regulátormi, podľa toho, v ktorom pracovnom bode je systém (aj to zisťuje fuzzy regulátor).

Všetky fuzzy regulátory majú:
* *fuzzifikáciu* – premieňa vstupné merané hodnoty na fuzzy hodnoty
* *tabuľku pravidiel* – samotný regulačný algoritmus, nastavuje operátor podľa systému
* *defuzzifikáciu* – vyrába podľa vstupu a tabuľky pravidiel rovno regulačné zásahy (ich hodnoty)

Defuzzifikácia môže byť Mandaniho alebo Sugenova.

## Príklady
### Príklad 1

thumb|right|240px|Fuzzy príklad č. 1 – 2 stavy
Definíciou určená zima je keď je pod 5&nbsp;°C a teplo je keď je nad 30&nbsp;°C. Keď je zima, sa spustí kúrenie, keď je teplo, klimatizácia.

Aby sa ošetrili všetky stavy, tak je interval určený tak, aby sa pri nijakej teplote v rozsahu nestalo, že zároveň zima aj teplo budú 0%.

Napríklad je 20&nbsp;°C – to je na 40 % zima a 60 % teplo – takže zjednodušená regulácia (Mamdaniho regulátor a Sugenov regulátor to robia inak) by bola na 40% kúrenie a na 60% klimatizácia - ale len v prípade, keď sú závislosti od klimatizácie a kúrenia lineárne.

### Príklad 2
thumb|right|240px|Fuzzy príklad č. 2 – 3 stavy
K definovaným hodnotám vyššie sa pridá hodnota pre príjemnú teplotu, t. j. napr. 20&nbsp;°C. Tabuľka by potom vyzerala takto:

Keď je zima, tak sa kúri, keď je teplo, tak sa spustí klimatizácia, keď je príjemne, tak sa nerobí nič.

Hodnoty sú schválne nastavené tak, aby pri 20&nbsp;°C bolo teplo aj zima na 0 %.

Pri teplote napr. 15&nbsp;°C je z 33 % zima a zo 66 % príjemne. Takže sa spustí kúrenie na 33 % a to je všetko (alebo zo 66 % nič a to je zase nič).

Tieto dva príklady sú dosť primitívne, pretože tabuľka je jednorozmerná. Pri dvojrozmerných modeloch existuje okrem teploty napr. ešte aj derivácia teploty podľa času.

## Fuzzy operácie
**Fuzzy konjunkcia** je binárna operácia T, zorazenie [0,1] x [0,1] → [0,1]. Pre lubovoľné x, y, z ∈ [0,1] fuzzy konjunkcia spĺňa:

* 1 je neutrálny prvok: T(x, 1) = x
* je neklesajúca: x x \land y. Jej konkrétna interpretácia závisí od zvolenej logiky, napr.:

* Gődelova fuzzy konjunkcia: x \land y = \min(x, y)
* Lukasieviczova fuzzy konjunkcia: x \land y = \begin{cases} x+y-1, & \text{ak } x+y-1 > 0 \\ 0, & \text{inak }\end{cases}
* Produktová fuzzy konjunkcia: x \land y = xy

**Fuzzy disjunkcia** je binárna operácia S, zorazenie [0,1] x [0,1] → [0,1]. Pre lubovoľné x, y, z ∈ [0,1] fuzzy disjunkcia spĺňa:

* 0 je neutrálny prvok: S(x, 0) = 0
* je neklesajúca: x x \lor y. Jej konkrétna interpretácia závisí od zvolenej logiky, napr.:

* Gődelova fuzzy disjunkcia: x \lor y = \max(x, y)
* Lukasieviczova fuzzy disjunkcia: x \lor y = \begin{cases} x+y, & \text{ak } x+y 
* Produktová fuzzy disjunkcia: x \lor y = x+y-xy

**Fuzzy negácia** je unárna operácia \ulcorner, zorazenie [0,1] → [0,1]. Pre lubovoľné x, y ∈ [0,1] fuzzy negácia spĺňa:
* je nerastúca: x x \leq y \Rightarrow \ulcorner x \geq \ulcorner y
* \ulcorner 0 = 1, \ulcorner1 = 0.

Jej konkrétna interpretácia závisí od zvolenej logiky, napr.:

* Gődelova fuzzy negácia : \ulcorner x = \begin{cases} 0, & \text{ak } x > 0 \\ 1, & \text{ak }x = 0 \end{cases}
* Lukasieviczova fuzzy negácia : \ulcorner x = 1 - x
* Produktová fuzzy negácia : \ulcorner x = \begin{cases} 0, & \text{ak } x > 0 \\ 1, & \text{ak }x = 0 \end{cases}

## Referencie
* George Klir, UTE H. St.Clair and Bo Yuan *Fuzzy Set Theory Foundations and Applications*, 1997, ISBN 0-13-341058-7

*Pavol Fedor.: Riadenie procesov s využitím FUZZY logiky. ELINA 2001. 

Kategória:Teória riadenia
Kategória:Regulácia
Kategória:Matematická logika