Skripta AUI - Index of

Transkript

Skripta AUI - Index of
Vysoká škola báňská - Technická univerzita Ostrava
Fakulta elektrotechniky a informatiky
Katedra měřicí a řídicí techniky
APLIKOVANÁ UMĚLÁ INTELIGENCE
Miroslav Pokorný
Ostrava 2005
OBSAH
1 – ÚVOD - MODELOVÁNÍ A UMĚLÁ INTELIGENCE
1.1 Teorie modelování a matematické modely
1.2 Meze aplikace matematických modelů, problematika modelování složitých soustav
1.3 Využití znalostí v procesu modelování a jazykové modely
2 - KVALITATIVNÍ MODELY
2.1 Princip kvalitativního popisu
2.2 Kvalitativní proměnná
2.3 Kvalitativní algebra
2.4 Kvalitativní simulace
5.5 Kvalitativní model vylučování toxinů
3 - FUZZY MODELY
3.1 Fuzzy množinová teorie
3.2 Jazyková proměnná
3.3 Vícehodnotová logika a jazykové modely
3.4 Prohlášení a typy modelů
3.5 Aproximace jazykového modelu
4 - FUZZY EXPERTNÍ SYSTÉMY
4.1 Definice expertního systému
4.2 Architektura expertního systému
4.3 Uživatelské programové vybavení
4.4 Aktivizace fuzzy modelu
4.5 Interpretace odpovědí expertních systémů
5 - FUZZY ŘÍDÍCÍ SYSTÉMY
5.1 Expertní systémy a řízení
5.3 Jazykový popis řízení systémů
5.4 Typy fuzzy regulátorů
5.5 Fuzzy systémy FLC
6 - KOGNITIVNÍ ANALÝZA
6.1 Definice inženýrského ekvivalentu experta
6.2 Konzistence a kognitivní analýza
6.3 Ternární diagram
7 - NEURONOVÉ SÍTĚ
7.1 Princip biologických a umělých neuronových sítí
7.2 Architektury neuronových sítí
7.3 Vícevrstvá neuronová síť
7.4 Strategie adaptační metody
8 – GENETICKÉ ALGORITMY
8.1 Principy biologické evoluce
8.2 Evoluční algoritmy
8.3 Genetický algoritmus
8.4 Pokročilé evoluční algoritmy
9 – INTEGROVANÉ SYSTÉMY SOFT-COMPUTINGU
9.1 Integrace principů umělé inteligence a její výhody
9.2 Fuzzy-neuronové systémy
9.3 Fuzzy-genetické systémy
9.4 Fuzzy-neuro-genetické systémy
POKYNY KE STUDIU
Aplikovaná umělá inteligence
Skriptum se dělí na kapitoly, které odpovídají logickému dělení studované látky, ale nejsou
stejně obsáhlé. Předpokládaná doba ke studiu kapitoly se může výrazně lišit, proto jsou velké
kapitoly děleny dále na číslované podkapitoly a těm odpovídá níže popsaná struktura.
Při studiu každé kapitoly doporučujeme následující postup:
Čas ke studiu
Na úvod kapitoly je uveden čas potřebný k prostudování látky. Čas je orientační a může vám
sloužit jako hrubé vodítko pro rozvržení studia celého předmětu či kapitoly. Někomu se čas
může zdát příliš dlouhý, někomu naopak. Jsou studenti, kteří se s problematikou databází ještě
nikdy nesetkali a naopak takoví, kteří již v tomto oboru mají bohaté zkušenosti.
Cíl
Ihned potom jsou uvedeny cíle, kterých máte dosáhnout po prostudování této kapitoly –
konkrétní dovednosti, znalosti.
Výklad
Následuje vlastní výklad studované látky, zavedení nových pojmů, jejich vysvětlením, vše
doprovázeno řešenými příklady.
Shrnutí pojmů
Na závěr kapitoly jsou zopakovány hlavní pojmy, které si v ní máte osvojit. Pokud některému
z nich ještě nerozumíte, vraťte se k nim ještě jednou.
Otázky
Pro ověření, že jste dobře a úplně látku kapitoly zvládli, máte k dispozici několik teoretických
otázek.
Úlohy k řešení
Protože většina teoretických pojmů tohoto předmětu má bezprostřední význam a využití
v databázové praxi, jsou Vám nakonec předkládány i praktické úlohy k řešení. V nich je
hlavní význam kurzu a schopnost aplikovat čerstvě nabyté znalosti při řešení reálných situací
hlavním cílem kurzu. Výsledky zadaných příkladů – stejně jako teoretických otázek výše jsou
uvedeny v závěru učebnice v KLÍČI K ŘEŠENÍ. Používejte je až po vlastním vyřešení úloh,
jen tak si samokontrolou ověříte, že jste obsah kapitoly skutečně úplně zvládli.
Úspěšné a příjemné studium s touto učebnicí Vám přeje autor kurzu
Miroslav Pokorný
1 – ÚVOD - MODELOVÁNÍ A UMĚLÁ INTELIGENCE
1.1 Teorie modelování a matematické modely
Čas ke studiu: 30 min
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit základní principy tvorby abstraktních modelů soustav
 Popsat problematiku konstrukce modelů složitých objektů
 Řešit postup nenumerického modelování s využitím znalostí
Výklad
Modelování je proces tvorby abstraktních (počítačových) modelů, v němž se v konvenčních
přístupech využívá matematicko-fyzikální analýza i experimenty. Model je definován jako
zobrazení existujících stránek reálného systému. Identifikace je pak proces ztotožnění modelu
s objektem.
Identifikace a modelování jsou procesy, které se navzájem prolínají. Na základě předběžných
informací o systému, definovaném na zvolené rozlišovací úrovni a smyslu užití modelu přímo
na objektu zkoumání, odhadneme pomocí matematicko-fyzikální analýzy strukturu modelu a
vhodně volenými experimenty přímo na tomto systému pak v druhém kroku odhadujeme
metodami identifikace hodnoty jeho parametrů.
Cílem identifikace a modelování je vytvořit takový model systému, jehož chování by bylo v
jistém smyslu - nejčastěji z hlediska minima kriteria ztráty - stejné jako u systému za stejných
provozních podmínek.
Zkoumaný systém nazýváme procesem a určený systém nazýváme modelem. Slovem objekt
pak nazýváme onu hmotnou část skutečnosti, na které definujeme systém.
Definovat systém na objektu z hlediska daného účelu a vytvořit vyhovující model jsou
základní úlohy identifikace a modelování.
Provedeme-li rozklad zkoumaného objektu na soubor složek a1, a2, ..., ak vzájemně vázaných
a reprezentujících objekt, pak soubor složek
A  a1 , a 2 ,..., a k 
nazýváme složkovou charakteristikou objektu [1].
Označíme-li dále symboly ruv vzájemnou souvislost složek au a av, tedy ruv = r(au,av), jako
např. souvislost vstupních veličin složky au a výstupních veličin složky av, potom soubor
všech uvažovaných závislostí
1
RC  ruv 
nazýváme relační charakteristikou objektu.
Vztah RC se určuje induktivním způsobem, v případě matematického (numerického)
modelování výběrem nějakého všeobecného vztahu a konkrétními hodnotami jeho parametrů,
tedy
RC  F ,  
kde F je struktura a ß je množina parametrů vybraného vztahu.
V procesu identifikace pak vzhledem k definici systému na objektu rozeznáváme dvě etapy:
1. Výběr struktury systému F.
2. Porovnání chování systému se vztahy patřícími do množiny F s cílem nalezení
optimálních hodnot parametrů systému ß.
Druhou etapu (parametrickou identifikaci systému) je možno vykonávat systematicky, avšak
za podmínky, že byla ukončena etapa první, t.j. výběr struktury (kterou vykonáváme
heuristicky).
V procesu identifikace se při tvorbě operátoru modelu můžeme opírat jak o informaci
apriorní, tak o informaci aposteriorní. Apriorní máme k dispozici ještě před začátkem
pozorování a aposteriorní nám přináší vhodně volený experiment.
Míra shody mezi reálným procesem a modelem je nejčastěji definována tak, že kriteriem
kvality bývá míra shody modelu a procesu, určovaná pomocí funkce ztrát

 
J y0 , y*  y0  y*
 y
T
0

 y *  eT e
Taková kvadratická ztrátová funkce je funkcí výstupu procesu y0 a výstupu z modelu y*.
Odchylka e je mírou neshody mezi chováním procesu a modelu.
Optimálním výsledkem identifikace pak bude určení takového modelu, pro který bude platit,
že ztrátová funkce dosahuje minima

J y 0 , y*

min
Předběžné informace o zkoumaném procesu (jsou-li k dispozici) umožňují vytvořit výchozí
struktury a proces identifikace pak spočívá v určení parametrů předpokládané struktury.
Nejsou-li k dispozici apriorní znalosti o struktuře objektu, je třeba výchozí struktury rovněž
identifikovat.
Experimentálním způsobem identifikace je řešení úlohy definice modelu procesu na základě
souboru jeho vstupních a jim odpovídajících výstupních dat (datově orientované modely).
Je-li možno akceptovat předpoklad časové neproměnlivosti dynamických vlastností soustavy,
2
je možno použít identifikaci jednorázovou. Není-li tento předpoklad splněn, je třeba použít
metod identifikace průběžné, kdy parametry (případně i struktura) matematického modelu
jsou vyhodnocovány průběžně v reálném čase.
Shrnutí pojmů
Matematický model je vyjádřením problému pomocí fyzikálního a matematického formálního
aparátu. Takto lze vyjadřovat složité vztahy symbolicky a zachovat při tom jednoduchost a
racionálnost. Matematický model je představován soustavou matematických vztahů,
jednoznačně popisujících zkoumaný jev nebo proces. Formální aparát je tvořen obvykle
rovnicemi algebraickými, obyčejnými nebo parciálními diferenciálními rovnicemi,
soustavami takových rovnic, dále různými vztahy z teorie klasických množin, algebry, teorie
pravděpodobnosti, matematické statistiky a matematické logiky.
Příklad 1
Jako příklad matematického modelu uvedeme známý Newtonův zákon, který uvádí závislost
velikosti zrychlení a tělesa o hmotnosti m = 12,45kg, působí-li na něj síla F.
F = 12,45.a
a = F : 12,45 m/s2
Otázky 1.1.
Co je to matematický model objektu ?
Co je proces identifikace modelu ?
Úlohy k řešení 1.1.
Vymyslete sami matematickou rovnici (nebo soustavu rovnic), reprezentující fyzikální
soustavu. Určete parametry takto napsaného modelu soustavy a pouvažujte o možnosti
přesného stanovení jejich číselných hodnot !
3
1.2 Meze aplikace matematických modelů, problematika
modelování složitých soustav
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Popsat omezení v použití matematických modelů
 Vysvětlit úlohu vědního oboru umělá inteligence
Výklad
Konvenční matematicko-statistické analytické modely představují modely, pro jejichž
sestavení je k dispozici (předem nebo následně) přesná a úplná informace. Pod přesnou a
úplnou informací si zpravidla představujeme takovou informaci, která se dá reprezentovat či
modelovat tak, že jak struktura tak i všechny parametry jsou jednoznačně určeny. Modely,
vykazující takovou formální dokonalost, nejsou zpravidla adekvátní skutečnosti, která je
vágní a složitá.
Představa, že dostatečně složitý matematický model může reprezentovat realitu s libovolnou
přesností či adekvátností, není zřejmě správná. Formálně složité matematické modely
vyžadují informace, které jsou náročné jak způsobem svého objektivního získávání, tak i
nároky na svoji kvalitu. Tato skutečnost je zvláště závažná u modelů, určených pro práci v
informačních nebo řídících systémech reálného času. Potřebná rozsáhlá a náročná měření jsou
v těžkých provozních podmínkách buď zcela nemožná, nadměrně náročná na údržbu, nebo při
zajištění potřebné robustnosti je kvalita jejich informace tak nízká, že jsou nepoužitelná. Na
tuto skutečnost poprvé upozornil L.A.Zadeh [2], když v r. 1973 formuloval princip
inkompatibility slovy:
"Tak, jak roste složitost nějakého systému, klesá naše schopnost činit precizní a přitom ještě
použitelná tvrzení o jeho chování, dokud není dosaženo prahu, za nímž se stávají preciznost a
použitelnost (nebo relevantnost) téměř vzájemně se vylučujícími charakteristikami."
Studovaná část reálného světa vykazuje zpravidla mnoho nejasného a vágního. Klasické
metody pro formalizaci nepřesnosti předpokládají stochastický charakter ne zcela přesně
determinovaných jevů. Takový stochastický přístup ke zpracování neurčitosti pomocí aparátu
pravděpodobnosti a matematické statistiky vyžaduje, aby příslušné jevy byly dobře
definovanými prvky množiny a měly právě tak dobře definovaný význam výpovědí o nich.
Dále je nutno dodržet řadu předpokladů o datech a mít k dispozici dostatečný počet
pozorování.
Inženýrské projekty řízení složitých technologických procesů ukázaly, že klasická
matematická statistika se svým principiálním pojetím a řadou omezení není prostředkem k
formalizaci a efektivnímu využití takového typu neurčitosti, který nazýváme vágností
(pojmovou neurčitostí), jež je při jazykovém popisu složitých systémů podstatná.
4
V kap.1.1 jsme definovali složkovou charakteristiku objektu vztahem
RC  ruv 
kde
ruv  r a u , a v 
představuje souvislosti vstupních a výstupních veličin složek zkoumaného objektu.
Matematické modely vycházejí z předpokladu, že relační charakteristika objektu je
definována ostře, precizně a odchylky mezi odhadovanými a pozorovanými hodnotami
závisle proměnné jsou tudíž výsledkem chyb pozorování. Původ odchylek mezi
pozorovanými a vypočítanými hodnotami závisle proměnné veličiny mohou však být
nezanedbatelnou měrou způsobeny špatnou definovaností systémové struktury. Příčiny těchto
odchylek můžeme hledat i v ne zcela ostrém charakteru systémových parametrů.
V této souvislosti vyvstává relevantní problém metod formalizace a efektivního zpracování
neurčitých informací. Ukazuje se, že právě schopnost lidského mozku konstruovat a využívat
jednoduché algoritmy pro vyvozování závěrů v podmínkách neurčitosti je hlavní příčinou
kvality lidského uvažování.
Problematika poznávání obecných zákonitostí kognitivních procesů prostřednictvím
modelování a simulací a snaha vytvořit metody a jim odpovídající systémy pro řešení
složitých úloh takovými způsoby, které bychom považovali při řešení stejných úloh člověkem
jako projevy jeho intelektu, je jednou z definicí předmětu zájmu vědního oboru umělá
inteligence [3]. Za jedny z jejích dosavadních výsledků můžeme považovat nekonvenční
techniky modelování, simulací a řízení takových procesů, jejichž popis je vágní a pro jejich
formalizaci nelze dobře použít klasickou metodu popisu neurčitosti - matematickou statistiku.
V řadě inženýrských aplikací, které využívají statistických metod pro vyjádření míry
neurčitosti jevů, narážíme na problém malých rozsahů výběrových souborů. Počty
vykonaných experimentů bývají často nedostatečné. Doplňková pozorování přitom často
nejsou z technických nebo ekonomických důvodů dostupná.
Rozpor mezi informační náročností statistiky a omezenými informačními zdroji není jediný,
na nějž se při použití klasických formálních prostředků na zpracování informací naráží. Další
problémem může vyplývat ze složitosti studovaných soustav a dějů, které v nich probíhají.
Nemáme-li k dispozici dostatečný počet pozorování za reprodukovatelných podmínek, nelze
variabilitu přírodních dějů eliminovat tím, že vyhovíme požadavkům reprodukovatelnosti
stanovením příliš obecných podmínek. Získáme tím výsledky, jejichž rozptyl či konfidenční
intervaly jsou natolik široké, že výsledky znehodnotí.
Potíže přetrvávají tehdy, pokud se snažíme pracovat pouze s objektivně zjištěnými
informacemi. Problémy řeší metody, které připouštějí využití subjektivně zabarvených
informací
To jsou objektivní důvody, proč se ve zvýšené míře v řadě aplikací uplatňují metody umělé
inteligence. Od ní se očekává, že nabídne východisko z problémů, které vznikly snahou o
objektivizaci jak v přírodovědeckých, tak i inženýrských disciplínách.
5
Shrnutí pojmů
Ani složitý matematický model nemůže reprezentovat realitu s libovolnou přesností či
adekvátností. Formálně složité matematické modely vyžadují informace, které jsou náročné
jak způsobem svého objektivního získávání, tak i nároky na svoji kvalitu. Potřebná rozsáhlá a
náročná měření jsou v těžkých provozních podmínkách buď zcela nemožná, nadměrně
náročná na údržbu, nebo při zajištění potřebné robustnosti je kvalita jejich informace tak
nízká, že jsou nepoužitelná. Snaha vytvořit složité modely metody a jim odpovídající systémy
pro řešení složitých úloh takovými způsoby, které bychom považovali při řešení stejných úloh
člověkem jako projevy jeho intelektu, je jednou z definicí předmětu zájmu vědního oboru
umělá inteligence. Za jedny z jejích dosavadních výsledků můžeme považovat nekonvenční
techniky modelování, simulací a řízení takových procesů, jejichž popis je vágní a pro jejich
formalizaci nelze dobře použít klasickou metodu popisu neurčitosti - matematickou statistiku.
Příklad 1
Naprosto přesný matematický model z příkladu kap.1.1 nelze sestavit (identifikovat), pokud
nemáme možnost stanovit hmotnost tělesa m a velikost působící síly F.
Otázky 1.2.
Jaké jsou problémy při tvorbě matematických modelů konvenčními metodami ?
Co je náplní vědního oboru umělá inteligence ?
Úlohy k řešení 1.2.
Uveďte objekt, který považujete z hlediska jeho matematického modelování za složitý.
6
1.3 Využití znalostí v procesu modelování a jazykové modely
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Popsat a vysvětlit význam lidských znalostí a zkušeností pro modelování
složitých soustav
Výklad
V souladu s rozvojem aplikací metod umělé inteligence vzniká trend přechodu od zpracování
údajů ke zpracování znalostí [3]. Lidské znalosti můžeme rozdělit do dvou kategorií:
a) v první jsou tak tzv. znalosti hluboké, jejichž zdrojem je vlastní poznání přírodních dějů ve
formě přírodních zákonů. Jsou to znalosti objektivní, dostupné více či méně široké odborné
veřejnosti. Jsou produktem analytických, abstraktních a teoretických postupů zkoumání jevů
reality. Hluboké znalosti jsou vyjadřovány formou analytických matematických vztahů.
b) druhou kategorii znalostí označujeme jako znalosti mělké, povrchové (nikoli však
povrchní!). Jsou to poznatky, jejichž zdrojem je dlouhodobá zkušenost, praxe a vlastní
experimentování. Jsou to subjektivní znalosti, které kvalifikují úroveň experta. Mělké znalosti
jsou vyjádřitelné formou predikátových kalkulů, heuristických pravidel, rámců či
kvalitativních vztahů.
V procesu modelování hraje rovněž významnou roli dělení znalostí na znalosti apriorní,
známé již ve fázi tvorby modelu a znalosti aposteriorní, získávané až v etapě jeho identifikace
a využívání.
Využití hlubokých znalostí je typické pro metody konstrukce konvenčních, matematických
statisticko-analytických modelů. Tyto modely, formalizované soustavami algebraických či
diferenciálních rovnic, odrážejí díky aplikaci objektivních znalostí a metod obvykle širší třídy
problémů a mají ponejvíce obecnou platnost. Uplatnění subjektivních znalostí v takových
modelech není typické.
Cesta uplatnění specifických (subjektivních, heuristických) znalostí vede k metodám tvorby
nekonvenčních nenumerických (jazykových) modelů, které využívají vícehodnotové logiky a
různé formální aparáty jak pro reprezentaci neurčitých pojmů, tak i pro aproximativní
(přibližné) vyvozování. Mělké znalosti však nepodchycují podstatu vztahů uvnitř modelované
soustavy. Nedostatečnost mělkých znalostí vede k odkazům na metaznalosti - znalosti o
znalostech. Použití mělkých znalostí vede mnohdy ke zjednodušení principů a mechanizmů
metod vyvozování.
Přesto, že řada takto koncipovaných přístupů dosáhla komerčního úspěchu, v mnohých
případech se projevila významnost limit jejich funkčních schopností.
7
V první řadě zde stojí skutečnost, že konstrukce a kvalita takového modelu je plně závislá na
existenci kvalitního experta v dané problémové oblasti. Dále pak celou řadu problémů přináší
role znalostního inženýra, jehož úkolem je vedení dialogu s expertem, čerpání jeho znalostí,
volba vhodné metody jejich formalizace a způsobu aproximativního vyvozování. Vyvození,
která takové systémy poskytují, mají vyhraněně lokální charakter.
Obecně je možno říci, že systémy, založené výhradně na mělkých znalostech, trpí
ohraničenými možnostmi efektivního strukturování jimi realizovaných rozhodovacích procesů
a zjednodušenými principy odvozovacích a vysvětlovacích mechanizmů.
Snaha o přiměřené uplatnění hlubokých znalostí v nekonvenčních modelech z oblasti umělé
inteligence vedla k přístupům, které umožňují integraci objektivních a subjektivních
informací. Jejich výraznou charakteristikou je uplatnění globálních pohledů při rozhodování,
plynoucích právě z uplatnění objektivních informací.
Hluboké znalosti jsou rovněž nazývány znalostmi kvantitativními, mělké znalosti pak
znalostmi kvalitativními. Možnost jejich integrace má zvláště velký význam v oblasti
diagnostiky technologických procesů s ohledem na možnost predikce jejich poruchových
stavů (bezpečnostní inženýrství).
Shrnutí pojmů
V souladu s rozvojem aplikací metod umělé inteligence vzniká trend přechodu od zpracování
údajů ke zpracování znalostí. Lidské znalosti můžeme rozdělit do dvou kategorií – znalosti
mělké a znalosti hluboké. Využití hlubokých znalostí je typické pro metody konstrukce
konvenčních, matematických statisticko-analytických modelů. Tyto modely, formalizované
soustavami algebraických či diferenciálních rovnic, odrážejí díky aplikaci objektivních
znalostí a metod obvykle širší třídy problémů a mají ponejvíce obecnou platnost. Cesta
uplatnění mělkých znalostí vede k metodám tvorby nekonvenčních nenumerických
(jazykových) modelů, které využívají vícehodnotové logiky a různé formální aparáty jak pro
reprezentaci neurčitých pojmů, tak i pro aproximativní (přibližné) vyvozování.
Příklad 1
V příkladu kap.1 můžeme uplatnit znalost, že čím větší je působící síla, tím větší je udělené
zrychlení. Další znalostí může být zkušenost, že závislost působící síly a zrychlení není
lineární.
Otázky 1.3.
Jaký je rozdíl mezi mělkými a hlubokými znalostmi ?
Úlohy k řešení 1.3.
Uveďte příklad mělké a hluboké znalosti v oboru, který je Vám blízký (řízení automobilu, hra
v šachy apod.).
8
2 - KVALITATIVNÍ MODELY
2.1 Princip kvalitativního popisu
Čas ke studiu: 10 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit principy kvalitativního modelování a simulací
Výklad
Ke kvalitativnímu popisu zkoumaných jevů přistupujeme tehdy, pokud nechceme (nebo
neumíme) analyticky přesně popsat vztahy mezi proměnnými veličinami popisovaných dějů
[4], [10].
Důležitým znakem kvalitativního uvažování (Common Sense - naivní fyzika) je přechod k
novému oboru proměnných. Místo reálných čísel, typických pro matematický (numerický,
kvantitativní) popis, je oborem hodnot množina hodnot, která umožňuje kvalitativně
charakterizovat aktuální hodnotu číselné proměnné relativně vůči jejím významným
hodnotám.
Kvalitativní hodnota proměnné je pak dána údajem o velikosti hodnoty, charakterizující
polohu aktuální hodnoty proměnné vůči významným mezním hodnotám (kladná – větší než
nula, záporná – menší než nula a nulová) a údaji o vývojové tendenci proměnné (její velikost
roste, klesá, je konstantní). Čas je reprezentován uspořádanou množinou symbolů,
odpovídající významným okamžikům.
Kvalitativní průběh proměnné v čase je funkce, která přiřazuje významným okamžikům a
intervalům mezi nimi kvalitativní hodnoty.
Chování soustavy (kvalitativní model) je vyjádřeno pomocí formulí (kvalitativních rovnic
neboli konfluencí), vytvořených z množiny kvalitativních proměnných a kvalitativních vazeb.
Vazby jsou relace, definované na kvalitativních hodnotách tak, aby co nejpřesněji popisovaly
běžné aritmetické operace, vztahy derivací, rovností a nerovností. Zde je třeba zdůraznit, že
na rozdíl od kvantitativního popisu, kde jsou vazby funkcemi, jde v případě kvalitativních
vazeb o relace, neboť výsledek aplikace kvalitativní operace na kvalitativní hodnoty nelze
určit jednoznačně
Kvalitativní simulace systému spočívá v odvození kvalitativního průběhu jeho proměnných ze
soustavy konfluencí, které systém charakterizují a z kvalitativních hodnot nezávisle
proměnných ve zvoleném časovém okamžiku.
9
Shrnutí pojmů
Ke kvalitativnímu popisu zkoumaných jevů přistupujeme tehdy, pokud nechceme (nebo
neumíme) analyticky přesně popsat vztahy mezi proměnnými veličinami popisovaných dějů.
Důležitým znakem kvalitativního modelování je přechod k novému oboru proměnných. Místo
reálných čísel, typických pro matematický popis, je oborem hodnot množina hodnot, která
umožňuje kvalitativně charakterizovat aktuální hodnotu číselné proměnné relativně vůči jejím
významným hodnotám. Kvalitativní hodnota proměnné je pak dána údajem o velikosti
hodnoty, charakterizující polohu aktuální hodnoty proměnné vůči významným mezním
hodnotám (kladná – větší než nula, záporná – menší než nula a nulová) a údaji o vývojové
tendenci proměnné (její velikost roste, klesá, je konstantní).
Kvalitativní model je vyjádřen pomocí kvalitativních rovnic neboli konfluencí, vytvořených z
množiny kvalitativních proměnných a kvalitativních vazeb.
Kvalitativní simulace systému spočívá v odvození kvalitativního průběhu jeho proměnných ze
soustavy konfluencí.
Příklad 1
Kvalitativním popisem závislosti z příkladu kap.1.1 je věta:
Jestliže působící síla roste, rychlost tělesa stoupá. Rychlost tělesa stoupá nelineárně, druhá
derivace závislosti je kladná.
Otázky 2.1.
Jaký je rozdíl mezi kvantitativním (matematickým) a kvalitativním popisem (modelováním)
chování složité soustavy ?
Úlohy k řešení 2.1.
Promyslete kvalitativní popis řízení směru jízdy automobilu řízením natočením kol přední
nápravy
10
2.2 Kvalitativní proměnná
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit pojem kvalitativní proměnné a jejích kvalitativních hodnot
Výklad
Kvalitativní proměnné jsou v přístupech kvalitativního modelování značeny X:
X(1), X(2) , ... , X(n).
Kvalitativní proměnné mohou nabývat tří kvalitativních hodnot, a to
[K+, K0, K-].
Kvalitativní hodnota proměnné X může být tedy pozitivní (K+), negativní (K-) nebo nulová
(K0).
Kvalitativní dynamické chování systému je dáno hodnotami kvalitativních derivací jeho
proměnných. DX(1) je první a DDX(1) druhá derivace proměnné X(1). Zkušenosti s řešením
reálných inženýrských problémů ukazují, že pro postačující popis chování systému je
dostatečné uvažovat kvalitativní specifikaci proměnné X(1) ve tvaru tzv. kvalitativního
tripletu
[X(1), DX(1), DDX(1)]
Pro n- proměnných je pak užito n-tripletů
[X(1),DX(1),DDX(1);X(2),DX(2),DDX(2);...;X(n),DX(n),DDX(n)]
n-triplet pak udává kvalitativní stav soustavy ve zvoleném časovém okamžiku.
Příklad 1
Hodnota kvalitativní proměnné X(1) roste a tento stav je označen jako K+
Hodnota jiné kvalitativní proměnné X(2) klesá, tento stav je označen jako KHodnota jiné kvalitativní proměnné X(3) se nemění, tento stav je označen jako K0
11
Shrnutí pojmů
Kvalitativní hodnota proměnné X může být pozitivní (K+), negativní (K-) nebo nulová (K0).
Kvalitativní dynamické chování systému je dáno hodnotami kvalitativních derivací jeho
proměnných. DX(1) je první a DDX(1) druhá derivace proměnné X(1). Pro popis stavu
kvalitativní proměnné se používá kvalitativního tripletu [X(1), DX(1), DDX(1)].
Otázky 2.2.
Co je to kvalitativní triplet ?
Úlohy k řešení 2.2.
Popište kvalitativním tripletem proměnnou, jejíž hodnota exponenciálně roste
12
2.3 Kvalitativní algebra
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Provádět počítání s kvalitativními hodnotami kvalitativních proměnných
Výklad
Kvalitativní algebra je tvořena kvalitativními operacemi, které jsou specifikovány
následujícími předpisy.
a) Kvalitativní součet je definován podle Tab.1
X (i)  X ( j )  X ( s)
[+]
X(j)
K+
K0
K-
K+
K+
K+
?
K0
K+
K0
K-
K-
?
K-
K-
X(i)
Tab.1
b) Kvalitativní součin je definován předpisem podle Tab.2.
X (i )  X ( j )  X ( s )
X(j)
[]
K+
K0
K-
K+
K+
K0
K-
K0
K0
K0
K0
K-
K-
K0
K+
X(i)
Tab.2
c) Kvalitativní derivace součtu je definována vztahy
DX ( s )  DX (i )  DX ( j )
DDX ( s)  DDX (i)  DDX ( j )
13
d) Kvalitativní derivace součinu je definována vztahy
DX ( s)  DX (i )  DX ( j )   X (i )  DX ( j )  X ( j )  DX (i )
e) Druhou kvalitativní derivaci součinu lze vyjádřit pomocí vztahu pro derivaci první.
Zkušenosti však ukazují, že toto vyjádření je příliš složité a výsledek je vágní. Proto je v
inženýrské praxi hodnota druhé derivace součinu implicitně považována jako hodnota "?",
tedy pro triplet proměnné X(s)
X ( s) DX ( s) DDX ( s)
A
B
?
f) Kvalitativní časová derivace je dána jednoduchými vztahy
X ( j )  DX ( j )
DX ( j )  DDX ( j )
DDX ( j )  DDDX ( j )
Kvalitativní model QM je pak dán soustavou kvalitativních rovnic, kterou lze rozdělit do dvou
podsoustav. První podsoustava SMD je soustavou takových kvalitativních rovnic, které jsou
odrazem přírodních zákonů a reprezentují tedy tzv. hluboké znalosti. Jejich zdrojem je
obvykle kvalitativní transformace rovnic matematických. Naproti tomu druhá podsoustava
SMS je soustavou kvalitativních rovnic, generovaných využitím zkušeností, experimentů nebo
heuristik, tedy znalostí mělkých.
Charakteristickým rysem obou submodelů SMD a SMS je skutečnost, že společně reprezentují
znalost úplnou. Kvalitativní modelování lze tedy považovat za jednu z metod, umožňující
integraci znalostí.
Příklad 1
Převeďte kvantitativní konvenční rovnici
2y + x/3 - z = 2
na kvalitativní transformací převést na kvalitativní rovnici (konfluenci) !
Řešení:
Y + X - Z = K+
Shrnutí pojmů
Kvalitativní algebra je tvořena kvalitativními operacemi, které umožňují aritmetické operace
s kvalitativními hodnotami. Operace jsou specifikovány předpisy pro kvalitativní součet,
součin, derivaci součtu, derivaci součinu a časovou derivaci.
14
Otázky 2.3.
Proč jsou některé kvalitativní operace nejednoznačné ?
Úlohy k řešení 2.3.
Převeďte do kvalitativní formy následující rovnici
(3 x 2  2 x)  (2 z )  y 2
15
2.4 Kvalitativní simulace
Čas ke studiu: 1 hod
Cíl
Po prostudování tohoto odstavce budete umět
 Sestavovat kvalitativní modely a vyšetřovat jejich chování
Výklad
Kvalitativní simulace probíhá metodou položení kvalitativního dotazu QU. Dotaz QU je
tvořen množinou kvalitativního zadání
X (1), DX (1), DDX (1)  T1 , T2 , T3 
kde
Ti  K , K , K 0, ?
Kvalitativní řešení kvalitativního modelu QM je množina M všech n-tripletů takových, které
neodporují žádné modelové relaci. Nejjednodušším algoritmem odvození množiny řešení M je
postupné generování všech možných n-tripletů a jejich testování proti modelu QM.
Metodologie vytvoření kvalitativního modelu závisí v prvé řadě na dostupnosti
matematického (kvantitativního) modelu konvenčního. V případě jeho existence lze
kvalitativní model získat metodou kvalitativní transformace a jsou-li navíc známy i velikosti
numerických konstant, lze výsledky kvalitativních řešení s výsledky kvantitativními
konfrontovat. Typičtější je však situace, kdy kvantitativní model je znám jen částečně a
velikosti numerických konstant jsou známy v nejlepším případě jen přibližně.
Pro konstrukci kvalitativního modelu lze téměř vždy inženýrskou analýzou problému sestavit
alespoň výchozí rovnice, odrážející platnost základních přírodních zákonů - zákona zachování
hmoty nebo energie.
Jiný přístup ignoruje algebraické (hluboké) znalosti a staví kvalitativní model pouze na
"chování" soustavy a ne na interpretaci algebraických vztahů.
Stavový graf
Další formou výstupní informace kvalitativního modelu je tzv. stavový graf. Stavový graf
udává možné přechody jednoho kvalitativního stavu do stavu druhého. Jako příklad lze uvést
přechod, který je graficky interpretován na Obr.1.
16
ČASOVÝ INTERVAL
[++-]

BOD
[+0-]
ČASOVÝ INTERVAL

[+ - - ]
Obr.1
Označení možných přechodů kvalitativních stavů dává kvalitativnímu modelu významnou
predikční schopnost.
Příklad 1
Konstrukce kvalitativního vyjádření jednoduchého kvantitativního průběhu, vyjádřeného jeho
časovou funkcí, je uvedeno na Obr.2.
Obr.2
Interval AB je kvalitativně reprezentován jako
AB  X  PLUS (  ), DX  MINUS ( ), DDX  PLUS (  )     
Bod B a interval BC jsou kvalitativně charakterizovány triplety
B   0  ,
BC     
Kvalitativní interpretace časového průběhu proměnné X na Obr.1 je tedy dána sekvencí
tripletů
17
[+ - +]
[+ 0 +]
[+ + +]
Kvalitativní znalost, popsaná touto sekvencí, není tak specifická, jako kvantitativní informace
na Obr.1. Kvalitativní transformace tedy představuje jistou "degeneraci" kvantitativního
popisu, je však schopna vyjádřit integrovaně v jednom modelu jak znalost kvantitativní
(hlubokou), tak kvalitativní (mělkou - experimentálně zjištěnou či expertní nebo
hypotetickou).
Příklad 2
Na Obr.3 je nakreslen příklad jednoduchého chemického reaktoru, který lze popsat
jednoduchou diferenciální rovnicí
dVr / dt  Fi  Fo
Obr.3
Jelikož nebyla definována funkce kvalitativního rozdílu, je třeba přepsat rovnici do tvaru
dVr / dt  Fo  Fi
Tuto rovnici lze vyjádřit blokovým schématem na Obr.4, které je pro konstrukci
kvalitativního modelu velmi vhodné.
18
Obr.4
Toto blokové schéma lze zapsat ve formě soustavy dvou konfluencí s jednou pomocnou
proměnnou P1 jako
P1  dVr / dt
Fi  P1  F0
Soustavu těchto konfluencí lze dále zapsat ve formě matice, vhodné pro počítačové
programování
1 d / t VR P1 0
2 add P1 F 0 F1
Řešením tohoto kvalitativního modelu je množina n-tripletů, kde n je celkový počet
kvalitativních proměnných modelu. Každá proměnná je popsána svým jednoduchým
tripletem. Všechna možná řešení modelu jsou uvedena v následující tabulce Tab.3.
DDV
DF0
DFI
1
+
+
+
2
0
+
+
3
+
0
+
4
+
-
+?
5
-
+
+?
6
0
0
0
7
-
+
0?
8
+
-
0?
9
-
-
-
10
0
-
-
11
-
0
-
12
-
+
-?
13
+
-
-?
Tab.3
19
Všechny proměnné jsou uvažovány jako pozitivní. V tabulce jsou jako příklad vybrány
z tripletů proměnných pouze hodnoty jejich prvních derivací. Otazníky označují sporná
(nejednoznačná) kvalitativní řešení, neboť např. v řešení č.4
DDV     DF 0      ?
závisí polarita součtu na absolutní velikosti sčítanců.
Shrnutí pojmů
Kvalitativní simulace probíhá metodou položení kvalitativního dotazu QU. Dotaz QU je
tvořen množinou kvalitativního zadání. Kvalitativní řešení kvalitativního modelu QM je
množina M všech n-tripletů takových, které neodporují žádné modelové relaci.
Nejjednodušším algoritmem odvození množiny řešení M je postupné generování všech
možných N-tripletů a jejich testování proti modelu QM. Stavový graf udává možné přechody
jednoho kvalitativního stavu do stavu druhého.
Otázky 2.4.
Jak probíhá proces kvalitativní simulace ?
Čím je významný kvalitativní stavový graf ?
Úlohy k řešení 2.4.
Sestavte kvalitativní model funkce popsané jejím průběhem na následujícím obrázku.
Obr.5
20
3 - FUZZY MODELY
3.1 Fuzzy množinová teorie
Čas ke studiu: 1 hod
Cíl


Po prostudování tohoto odstavce budete umět
Objasnit pojem fuzzy množiny
Použít fuzzy množinu pro formalizaci vágního slovního výrazu
Výklad
V první části učebnice jsme zdůraznili úlohu zkušeností jako zdroje informací, které má k
dispozici lidský expert a dovede jich velmi efektivně využívat při řešení složitých problémů,
tedy např. i k řešení problému popisu chování či řízení složité soustavy.
Lidské zkušenosti lze vyjádřit větami přirozeného jazyka, tedy jazykovým popisem. Slova,
která jsou v takových popisech relevantními prvky, jsou nositeli neurčitosti, zvané, jak jsme
již uvedli, pojmovou neurčitostí čili vágností. Jestliže jsme došli k závěru, že právě efektivní
využití vágnosti spolu s exploatací jednoduchých, ale výkonných nenumerických algoritmů
umožňují člověku činit dobré závěry, je potom jednou z principielních otázek nalezení
formálního aparátu pro reprezentaci vágnosti a efektivní práci s ní.
Vágnost, jako průvodní jev všech složitých, špatně popsatelných soustav, případně soustav, v
jejichž funkci se uplatňuje lidský faktor, je nejčastěji formalizována pomocí aparátu fuzzy
množinové teorie, jejímž zakladatelem je profesor kalifornské university v Berkeley Lotfi A.
Zadeh [2], [5]. Ukázalo se, že fuzzy množiny jsou přirozeným prostředkem pro formalizaci
vágnosti. V další části této kapitoly uvedeme základní principy fuzzy množinové matematiky,
které jsou nezbytné pro pochopení jejích aplikací.
V teorii klasických množin prvek do množiny buď patří nebo nepatří. Hovoříme pak o (plné)
příslušnosti nebo o nepříslušnosti prvku do dané množiny. V Zadehově fuzzy množinové
teorii, která je zobecněním teorie abstraktních množin, je fuzzy množina definována jako
třída, která přiřazuje prvkům neurčitost pomocí vlastnosti jejich částečné příslušnosti formou
tzv. míry příslušnosti.
Nechť X  0 je klasická množina a µA : X  <0,1> nechť je zobrazení. Fuzzy množinou pak
budeme nazývat uspořádanou dvojici
A  X ,  A 
Množinu X přitom nazveme univerzem fuzzy množiny A , µA nazveme funkcí příslušnosti
fuzzy množiny A. Pro každé x X nazveme reálné číslo µA(x) stupněm příslušnosti prvku x k
fuzzy množině A, přičemž µA(x) budeme interpretovat takto:
21
µA(x) = 0 ..…... prvek x do množiny A nepatří
µA(x) = 1 ..…... prvek x do množiny A patří
µA(x) (0,1) ... nelze s jistotou určit, zda x patří do A, přičemž velikost µA(x) je vyjádřením
stupně příslušnosti x k A.
Klasifikace určitého objektu stupněm příslušnosti k určité fuzzy množině je ryze subjektivní a
její velikost záleží čistě na vnitřním přesvědčení lidského experta. Z tohoto hlediska nelze
zaměňovat stupeň příslušnosti µ(x) se statistickou, objektivně vypočitatelnou hodnotou
pravděpodobnosti P(x) <0,1> !
Jak jsme již uvedli, má člověk k popisu reality k dispozici přirozený jazyk. Jednou z jeho
hlavních schopností je efektivní používání vágních pojmů. Typickou vlastností vágního
pojmu je při tom skutečnost, že charakterizuje určitou třídu problémů, jejíž hranice bychom
velmi těžce určovali. Kdy lze např. o daném objektu prohlásit, že to je (není) vysoký strom, že
to je (není) červená barva a pod.?
Konvenční přístupy modelují vágní pojmy pomocí klasických množin a hraniční prvky tedy
musí být zařazeny do množiny (míra příslušnosti 1), nebo mimo ni (míra příslušnosti 0).
Ukazuje se, že v tom je hlavní příčina časté neadekvátnosti matematických metod v praxi.
Příklad 1
Pokusme se popsat pomocí fuzzy množiny vágní pojem "středně vysoký strom". Každé výšce,
která připadá v úvahu, přiřadíme číslo <0,1> vyjadřující stupeň našeho přesvědčení, že
takový strom je "středně vysoký". Tento stupeň vyplývá z toho, jak rozumíme pojmu "vysoký
strom", jak hluboká je v tomto ohledu naše zkušenost, jak dalece jsme v této oblasti experty.
Přiřazení takových stupňů (měr příslušnosti) závisí tedy na subjektu a také na kontextu. Po
přiřazení funkce příslušnosti prvkům fuzzy množiny je z principu subjektivní a odráží obecně
koncept, z něhož je problém posuzován.
Pokusme se tedy definovat fuzzy množinu, formalizující vágní pojem "středně vysoký strom".
Jedna z možností znázornění takové fuzzy množiny je grafický způsob, kdy na vodorovnou
osu budeme vynášet výšky, na svislou osu odpovídající míry příslušnosti. Naše definice je
takto zobrazena na Obr.6.
Takto jsou definovány jako "zcela určitě středně vysoké" stromy s výškou mezi 3m a 5m,
(míra příslušnosti 1); naproti tomu mezi "středně vysoké" nejsou zařazeny zcela určitě stromy
nižší než 2m a vyšší než 7m (míra příslušnosti 0). Čtenář si zcela určitě vytvoří podobné fuzzy
množiny sám ("staré auto", "mladý člověk", "hodně peněz" a pod.).
Spojitá křivka zvonového tvaru, představující průběh velikosti míry příslušnosti v závislosti
na velikosti prvku univerza, je nazývána fuzzy charakteristikou formalizovaného pojmu.
22
Obr.6
Taková křivka bývá často parametrizována čtyřmi body zlomu (a,b,c,d) a aproximována
lomenými přímkovými úseky, jak je uvedeno na Obr.7.
Obr.7
Shrnutí pojmů
Lidské zkušenosti lze vyjádřit větami přirozeného jazyka, tedy jazykovým popisem. Slova,
která jsou v takových popisech relevantními prvky, jsou nositeli neurčitosti, zvané, jak jsme
již uvedli, pojmovou neurčitostí čili vágností. Ukázalo se, že fuzzy množiny jsou přirozeným
prostředkem pro formalizaci vágnosti.
Funkci µA nazýváme funkcí příslušnosti fuzzy množiny A. Pro každé x  X nazveme reálné
číslo µA(x) stupněm příslušnosti prvku x k fuzzy množině A, přičemž µA(x) budeme
interpretovat takto: µA(x) = 0, když prvek x do množiny A nepatří, µA(x) = 1 když prvek x do
množiny A patří a µA(x) (0,1) kdy nelze s jistotou určit, zda x patří do A, přičemž velikost
µA(x) je vyjádřením stupně příslušnosti x k A.
23
Otázky 3.1.
Jaký je rozdíl mezi klasickými a fuzzy množinami ?
Jakou výhodu mají fuzzy množiny oproti množinám klasickým ?
Úlohy k řešení 3.1.
Nakreslete fuzzy množiny, formalizující jazykové pojmy „mladý člověk“ a „starý člověk“.
Popište tyto fuzzy množiny jejich parametry (body zlomů jejich funkcí příslušnosti).
24
3.2 Jazyková proměnná
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Definovat pojem jazykové proměnné jazykového modelu a její hodnoty
Výklad
Při konstrukci jazykových popisů chování či řízení systémů se dostáváme do nenumerické
oblasti, v níž musíme definovat základní prvky a operace.
Jedním ze základních pojmů nenumerické matematiky je bezpochyby jazyková proměnná.
Podle definice, kterou podal L. A. Zadeh [2], nazýváme jazykovou proměnnou p uspořádanou
pětici


p : P * , T ( P * ), U , SY , SE
kde P* je jméno (identifikátor) jazykové proměnné p, T(P*) je množina jazykových hodnot,
kterých může P* nabývat, U je univerzum, SY je syntaktické pravidlo, pomocí kterého jsou
generovány prvky T(P*) a SE je sémantické pravidlo, které přiřazuje každé jazykové hodnotě
její význam ve formě fuzzy množiny s univerzem U. Uvedenou obecnou definici obvykle
interpretujeme takto:
a) T(P*) je konečná množina jazykových hodnot J = {J1,J2,...,Jn}
b) Syntaktické pravidlo SY je omezeno na výčet prvků množiny T(P*).
c) Sémantické pravidlo SE interpretuje každou jazykovou hodnotu Ji, i = 1,2,3,...,n, jako
fuzzy množinu Ji = (R,µLi) kde R je univerzum reálných čísel. Znamená to tedy, že pravidlo
SE označuje jednotlivé fuzzy množiny přímo názvy jejich odpovídajících jazykových hodnot.
Tím je každá jazyková hodnota Ji jazykové proměnné p formalizována pomocí fuzzy množiny
Ji. Tím je realizována fuzzy interpretace neurčitosti, kterou každá lingvistická hodnota
obsahuje.
Fuzzy množina Ji, daná funkcí µ , tak reprezentuje hodnotu jazykové proměnné p, která bude
vystupovat jako proměnná v jazykovém modelu.
Příklad 1
Jako příklad můžeme uvést již zmíněnou jazykovou proměnnou "výška stromu", která může
nabývat tří jazykových hodnot "nízký" J1, "středně vysoký" J2 a "vysoký" J3. Tyto tři
jazykové hodnoty jsou reprezentovány třemi fuzzy množinami, a to typy Z,  a S, podle
Obr.8.
25
Obr.8
Nyní definujme funkci příslušnosti µJi(x) takto:
µ (x) = (x - ai)/(bi - ai) pro ai< x < bi;
µ (x) = (x - di)/(ci - di) pro ci< x < di;
µ (x) = 1 pro bi  x  ci
µ (x) = 0 pro ai; x  di
Každá jazyková hodnota Ji je pak určena uspořádanou čtveřicí (ai,bi,ci,di). Uspořádaná
čtveřice představuje body zlomu aproximační přímky a čtyři hodnoty tvoří v takovém případě
čtyři parametry zde lichoběžníkové fuzzy množiny.
Shrnutí pojmů
Jedním ze základních pojmů nenumerické matematiky je bezpochyby jazyková proměnná.
Podle definice, kterou podal L. A. Zadeh, nazýváme jazykovou proměnnou p, danou pětici
symbolů : P* - jméno (identifikátor) jazykové proměnné p, T(P*) - množina jazykových
hodnot, kterých může P* nabývat, U - univerzum, SY - syntaktické pravidlo, pomocí kterého
jsou generovány prvky T(P*) a SE - sémantické pravidlo, které přiřazuje každé jazykové
hodnotě její význam. Fuzzy množina, daná funkcí µ(x) , tak reprezentuje hodnotu jazykové
proměnné p, která bude vystupovat jako proměnná veličina v jazykovém modelu.
Otázky 3.2.
Vysvětlete princip použití fuzzy množin jako reprezentantů jazykových pojmů.
26
Úlohy k řešení 3.2.
Formalizujte jazykovou proměnnou „TEPLOTA V PECI“ a navrhněte tři její vhodné
jazykové hodnoty.
27
3.3 Vícehodnotová logika a jazykové modely
Čas ke studiu: 3 hod
Cíl
Po prostudování tohoto odstavce budete umět
 Použít fuzzy množiny v jazykových modelech
 Vyložit principy fuzzy logiky
 Popsat způsob použití fuzzy modelů v praxi
Výklad
Binární ohodnocování situací, které je typické pro klasickou logiku (ano-ne, černý-bílý, 0-1),
se - jak jsme již konstatovali - stává na určité úrovni popisu chování a řízení systémů
neefektivním. Je-li naším cílem vybudovat formální aparát pro reprezentaci a efektivní využití
neurčitosti, je nezbytné nahradit binární logiku logikou vícehodnotovou. Vícehodnotová
logika je jedním z typických nástrojů metod umělé inteligence.
Vícehodnotovou nazýváme logiku, jejíž pravdivostní hodnoty mohou nabývat více než dvou
stavů, nejčastěji z intervalu <0,1>. Jazykovou je pak nazývána taková vícehodnotová logika,
ve které jsou pravdivostní hodnoty vyjádřeny pomocí slovního ohodnocení. Interpretace
jednotlivých pravdivostních hodnot je přitom vágní.
Logickou proměnnou je zde tedy nazývána taková proměnná, která může nabývat hodnot z
intervalu <0,1>.
Fuzzy logika je vícehodnotová jazyková logika, která využívá aparát a zákony fuzzy
množinové matematiky.
Pro potřebu fuzzy logiky budeme dále uvažovat množinu logických spojek {and, or, =>} jako
konjunkci (logický součin), disjunkci (logický součet) a implikaci (logické vyplývání) [5],
[6]. Spojením logických proměnných pomocí logických spojek získáme logické výroky.
Jazykový model pak můžeme definovat jako složitý výrok, v němž se vyskytují jména
jazykových proměnných, jména jejich jazykových hodnot, logické spojky a pravdivostní
hodnoty logických výroků, které nabývají hodnot z intervalu <0,1>.
Významnou výhodou jazykového modelu je možnost vytvoření formálního zápisu, který nám
umožní zapsat jazykový model tak, jak je běžným způsobem napsána česká věta. Tato
skutečnost je základem pro použití jazykového modelu k formalizaci lidské znalosti resp. pro
slovní popis chování a řízení soustav. Máme-li např. jazykovou proměnnou
p = {TEPLOTA, J0, R}
a množina jejích jazykových hodnot je
28
J0 = {NÍZKÁ, STŘEDNÍ, VYSOKÁ},
µVYSOKA(p)
píšeme větu
" TEPLOTA p je VYSOKÁ " .
Dosadíme-li za teplotu p její určitou (konkrétní) hodnotu p0, pak tento výrok bude mít
pravdivostní hodnotu
µVYSOKA(p0).
Pro formalizaci zkušeností (znalostí) mají zásadní význam tzv. podmíněná tvrzení, která
vzniknou formální úpravou zápisu logické implikace. Implikaci
" => "
píšeme ve formě podmíněného výrazu
"Jestliže (IF) podmínka , pak (THEN) důsledek ".
Výše uvedené úpravy umožňují, aby se formální zápis jazykového modelu blížil co nejvíce
běžnému vyjadřování v přirozené lidské řeči.
Je zřejmé, že jednoduché podmíněné výrazy ještě neumožňují zápis složitějších chování. K
tomu je třeba vytvořit tzv. složené podmíněné výrazy. Složeným podmíněným výrazem
(prohlášením) je např. jazykový model, představující větu:
Jestliže (IF) TEPLOTA t je NÍZKÁ nebo TLAK p je VYSOKÝ, pak (THEN) RYCHLOST
PROUDĚNÍ v je VYSOKÁ a STABILITA SOUSTAVY s je MALÁ.
Část podmíněného výrazu vlevo od implikace "THEN" se nazývá jeho předpokladem
(antecedentem, premisou), pravá část pak jeho důsledkem (konsekventem).
Množina pravidel jako model
Jediné pravidlo popisuje chování modelované soustavy velice omezeně. Uvažujeme-li
soustavu s n- vstupními a jednou výstupní proměnnou s n- rozměrnou funkční závislostí mezi
vstupy a výstupem
y  f  x1 , x 2 ,..., x n 
potřebujeme pro dostatečně bohatý popis takové funkce vyslovit pravidel více. Označíme-li
jazykové hodnoty vstupních proměnných jako A a jazykové hodnoty výstupní proměnné jako
B, potom množina pravidel popisující chování soustavy má tvar
29
R1:
R2:
.
.
.
Rr:
.
.
.
RR:
IF(x1 is A11) and (x2 is A12) and … and (xn is A1n) THEN (y is B1)
ELSE
IF(x1 is A21) and (x2 is A22) and … and (xn is A2n) THEN (y is B2)
ELSE
.
.
.
IF(x1 is Ar1) and (x2 is Ar2) and … and (xn is Arn) THEN (y is Br)
ELSE
.
.
.
IF(x1 is AR1) and (x2 is AR2) and … and (xn is ARn) THEN (y is BR)
kde r = 1,2,…,R je počet pravidel. Takové množině IF-THEN pravidel říkáme pravidlový
fuzzy model. Konsekventy pravidel takového fuzzy modelu mají tvar fuzzy výroku o velikosti
výstupní jazykové proměnné (y is B) a model je nazýván podle svého tvůrce pravidlovým
modelem typu Mamdani.
Fuzzy logické spojky v modelu
V pravidlovém fuzzy modelu můžeme nalézt několik typů fuzzy logických spojek. Předně
jednotlivá dílčí tvrzení o nezávisle proměnných v antecedentech pravidel jsou vázána spojkou
„and“. Je to fuzzy spojka reprezentující fuzzy logický součin („a“) neboli fuzzy konjunkci.
Toto fuzzy logické spojení je v antecedentech fuzzy modelů nejčastější, velmi málo se pro
spojení v antecedentu používá logické spojky disjunkce „or“ (nebo).
Podmínková (IF) a důsledková (THEN) část pravidel je spojena spojkou „THEN“. Tato
spojka má charakter logické implikace a je opět v pravidlech standardní.
Jednotlivá pravidla jsou spojena v modelu logickou spojkou „ELSE“ (jinak).
Interpretace fuzzy logických spojek – funkce t-normy a funkce s-normy
V klasické logice je význam (interpretace) všech logických spojek jednoznačná. Fuzzy logika
se naopak vyznačuje tím, že interpretace fuzzy logických spojek jednoznačná není, každá
spojka může být interpretována (vyhodnocována) několika možnými způsoby. Tato
skutečnost je dána faktem, že fuzzy logické jazykové modely reprezentují lidskou
(jazykovou) formulaci výroků o chování popisované soustavy a způsob chápání vazeb mezi
výroky bývá interpretován různě, podle povahy popisovaného objektu.
Jako příklad uveďme interpretaci spojky ELSE mezi pravidly. Tato spojka sjednocuje
všechna dílčí pravidla Rr do jednoho celkového modelu. Jestliže vyslovujeme dílčí výroky a
slovně je spojujeme mezi sebou, můžeme použít dvou způsobů. První z nich je
charakterizování interpretací spojky ELSE jako konjunkce (A), tedy slovně
„Platí pravidlo R1 – A – pravidlo R2 – A – pravidlo R3 – A – … - A - pravidlo RR“
Druhý ze způsobů interpretuje spojku ELSE jako disjunkci (NEBO) a slovní vyjádření má
tvar
30
„Platí pravidlo R1 – NEBO – pravidlo R2 – NEBO – pravidlo R3 – NEBO – …- NEBO pravidlo RR“
Intuitivně jistě chápeme rozdíl v charakteru obou případů a můžeme tedy konstatovat, že
máme možnost vytvořit dva různé modely, které mají sice stejná pravidla, avšak jinak lidsky
chápaný význam.
Základní fuzzy logické operace disjunkce (sjednocení) a konjunkce (průnik) dvou fuzzy
množin A a B (definovaných na jednom univerzu) jsou dány vztahy
 A B ( x)  max A ( x),  B ( x)
 AB ( x)  min A ( x),  B ( x)
Situace, kterou jsme popsali v případě víceznačné (zde dvojznačné) interpretace logické
spojky ELSE, platí ve fuzzy logice i u spojek fuzzy konjunkce, fuzzy disjunkce a a také u
fuzzy negace. Je to sice komplikace, která ale představuje velmi silný prostředek fuzzy
logiky vytvářet modely s jemně odstupňovaným charakterem svého „chování“, tak jak je to
obvyklé při lidském uvažování.
Vezmeme-li v úvahu možné interpretace fuzzy logické spojky disjunkce (NEBO), musíme
v první řadě zdůraznit, že všechny interpretace musí splňovat základní teoretické předpoklady
kladené na logickou disjunkci, musí zachovat její typický logický charakter 6. Množina
možných fuzzy interpretací logické spojky disjunkce tvoři skupinu fuzzy logických funkcí
zvaných funkce t-konormy (triangulární konormy). Uvedeme příklad dvou různých (a často
používaných):
Algebraický součet
 A  B ( x)   A ( x )   B ( x )   A ( x )   B ( x)
Omezený součet
 A B ( x)  min1,  A ( x)   B ( x)
Obrátíme-li pozornost na interpretace fuzzy logické spojky konjunkce (A), pak platí totéž co
bylo řečeno o fuzzy disjunkci. Příslušná skupina možných interpretací fuzzy konjunkce je zde
nazývána funkcemi t- normy (triangulární normy). Uveďme opět příklad dvou takových často
používaných funkcí.
Omezená diference
 A(  ) B ( x)  max0,  A ( x)   B ( x)  1
Algebraický součin
 A B ( x )   A ( x )   B ( x )
Spojka ELSE mezi pravidly fuzzy modelu může být tedy interpretována jakoukoliv funkcí
s charakterem disjunkce (t-konormy) nebo s charakterem konjunkce (t-normy). Mamdaniho
pravidlové modely, používajících zde funkce t-konormy se nazývají modely disjunktivní
(součtové), modely používající funkci t-normy se nazývají modely konjunktivní (součinové).
Pro charakter (chování) modelu je toto spojení určující.
31
To, co bylo řečeno o spojkách ELSE, OR či AND, platí i pro třetí základní logickou spojku –
spojku NEGACE. Ve fuzzy logice existuje množina možných interpretací této funkce, která
se nazývá Sugenovy negace. Vztah pro možné interpretace fuzzy negace je analytický
s jedním parametrem, který určuje jeho charakter:
 A' ( x)  1   A ( x)
Ve fuzzy logice je možno použít celou řadu variant negace, vyjádřené parametricky
Sugenovým vztahem
C  (a) 
1 a
,   ( 1,  )
1  a
Je-li hodnota parametru lambda rovna nule, přechází vztah do formy klasické logické negace.
Doposud jsme hovořili pouze o možnosti víceznačné interpretace fuzzy logických spojek
disjunkce, konjunkce a negace. Tyto spojky jsou spojkami základními, s jejichž pomocí jsou
definovány logické spojky složené. Takovou složenou logickou spojkou je spojka logické
implikace (), která je v našem Mamdaniho fuzzy modelu použita ke spojení THEN mezi
antecedenty a konsekventy pravidel. V klasické logice je implikace definována s použitím
základních spojek formou
p  q  p  q  ( p  q)  p
tedy pomocí spojek konjunkce, disjunkce a negace. Její klasická interpretace je dána tabulkou
Tab.4
p
Q
pq
0
0
1
0
1
1
1
0
0
1
1
1
Tab.4
Jestliže můžeme základní spojky disjunkce, konjunkce a negace interpretovat pomocí
libovolné funkce t-normy, t-konormy a Sugenovy negace, potom (při jejich kombinacích)
existuje také celá řada možností interpretace fuzzy logické spojky THEN - implikace.
Uveďme pět nejpoužívanějších.
Kleene – Dienesova implikace
 ( x, y )  max 1   A ( x ),  B ( y ) 
Lukasiewiczova implikace
 ( x, y )  min1, 1   A ( x)   B ( y) 
Zadehova implikace
 ( x, y )  maxmin A ( x ),  B ( y ),1   A ( x)
32
Mamdaniho implikace
 ( x, y )  min  A ( x ),  B ( y )
Larienova implikace
 ( x, y )   A ( x )   B ( y )
Fuzzy logika tedy umožňuje pro každý řešený případ použít takové interpretace logických
spojek modelu, které „doladí“ chování modelu přesně podle vlastností a chování modelované
soustavy. Je potřeba zdůraznit, že v praxi používáme jen určitý omezený počet interpretací,
které volíme podle charakteru modelované soustavy. Často je potřeba postupovat ve fázi
ladění fuzzy modelu metodou „pokus-omyl“ a nejvhodnější interpretaci experimentálně
vyhledat.
Je třeba znovu zdůraznit, že použitý konkrétní způsob interpretace fuzzy logických spojek
v pravidlovém fuzzy modelu určuje způsob vyhodnocování modelu (tzv. vyvozování) v
procesu simulačních výpočtů a určuje také chování modelu a tím i velikost vypočtené
(vyvozené) závisle proměnné.
Pravidlový fuzzy model typu Takagi-Sugeno
V dosavadním pojednání o fuzzy modelech jsme uvažovali model typu Mamdani, jehož
konsekventy jsou tvořeny fuzzy výroky o velikosti závisle proměnné.
Jiným, velmi rozšířeným pravidlovým fuzzy modelem je model typu Takagi-Sugeno 7.
Tento model je typický tím, že konsekventem pravidel je funkce vstupních proměnných ve
tvaru
IF (x1 is A1) and (x2 is A2) and … and (xn is An) THEN y = f(x1,x2,…,xn)
Funkce konsekventu je realizována ve formě lineární kombinace vstupních proměnných, tedy
y  k o  k1 x1  k 2 x 2  ...  k n x n
Z matematického hlediska jde o lineární regresní funkci. Význam modelu Takagi-Sugeno
spočívá v tom, že antecedent pravidla vymezuje fuzzy prostor, v němž lineární regresní
funkce konsekventu platí. Máme-li pak více pravidel a každé pravidlo reprezentuje část fuzzy
prostoru vstupních proměnných v němž platí příslušná lineární regresní funkce konsekventu,
lze tímto modelem formalizovat libovolnou R- rozměrnou nelineární funkci, kde R je počet
pravidel modelu.
Uvažujme model Takagi-Sugeno ve tvaru
R1:
R2:
.
.
.
RR:
IF(x1 is A11) and (x2 is A12) and … and (xn is A1n) THEN y = k01+k11x1+…+k1nxn
IF(x1 is A21) and (x2 is A22) and … and (xn is A2n) THEN y = k02+k21x1+…+k2nxn
.
.
.
IF(x1 is AR1) and (x2 is AR2) and … and (xn is ARn) THEN y = k0R+kR1x1+…+kRnxn
Označíme-li obecně r- té pravidlo Rr a hodnotu jeho funkce v konsekventu yr, výsledná
globální výstupní hodnota modelu je dána váženým součtem hodnot ze všech jeho pravidel ve
tvaru
33
R
y
w y
r 1
R
r
w
r 1
r
, r  1,..., R
r
kde váhové koeficienty jednotlivých pravidel wr, r = 1,…,R jsou pravdivostní hodnoty
antecedentů pravidel pro dané vstupní hodnoty x*i, kde i = 1,…,a je počet vstupních
proměnných modelu
wr  min[  Ari ( xi )]
i
Globální výstupní hodnota modelu Takagi-Sugeno je obyčejné (ostré) číslo, zatímco
výstupem modelu typu Mamdani je fuzzy množina.
Příklad 1
Uveďme příklad sestavení modelu Mamdani pro jednorozměrnou nelineární funkci f(x)
s průběhem podle obrázku Obr.9.
Obr.9
Obor hodnot vstupní proměnné x rozdělme do dvou částí, které pojmenujeme jazykově jako
MALÁ a VELKÁ. Tyto jazykové hodnoty vyjádříme pomocí dvou fuzzy množin, a to Mx a
34
Vx. Obdobně obor hodnot závisle proměnné rozdělíme na dvě části – MALÁ a VELKÁ. Tyto
jazykové hodnoty budeme formalizovat fuzzy množinami My a Vy.
Čárkované přímky rozdělují obor hodnot funkce f(x) na čtyři části, přičemž funkce probíhá
oblastí označenou I a II. V těchto dvou částech podprostorech) je funkce f(x) definována
dvěma fuzzy pravidly
IF (x is Mx) THEN (y is My)
IF (x is Vx) THEN (y is Vy)
Tyto dvě pravidla tvoří fuzzy model typu Mamdani. V následujícím příkladu ukážeme, jak lze
tutéž funkci f(x) popsat pomocí fuzzy modelu typu Takagi-Sugeno.
Příklad 2
Uveďme příklad sestavení modelu Takagi-Sugeno pro jednorozměrnou nelineární funkci f(x)
s průběhem podle obrázku Obr.10.
Obr.10
Obor hodnot vstupní proměnné x rozdělme do dvou částí, které pojmenujeme jazykově jako
MALÁ a VELKÁ. Tyto jazykové hodnoty vyjádříme pomocí dvou fuzzy množin, a to Mx a
Vx.
Aproximujme nyní průběh funkce f(x) dvěma vhodnými přímkami, označenými lineárními
funkcemi
y1 = k01 + k1x
y2 = k02 + k2x
35
Přímky jsou voleny tak, že první z nich aproximuje původní nelineární funkci f(x) v oblasti
malých hodnot x, druhá pak aproximuje funkci f(x) v oblasti hodnot velkých. Jazykově
můžeme nyní aproximaci funkce f(x) popsat dvěma fuzzy pravidly typu Takagi-Sugeno takto:
IF (x is Mx) THEN y1 = k01+k1x
IF (x is Vx) THEN y2 = k02+k2x
Původní nelineární funkce f(x) je popsána pomocí dvou fuzzy pravidel a dvou lineárních
funkcí.
Shrnutí pojmů
Vícehodnotová logika je jedním z typických nástrojů metod umělé inteligence.
Vícehodnotovou nazýváme logiku, jejíž pravdivostní hodnoty mohou nabývat více než dvou
stavů, nejčastěji z intervalu <0,1>. Fuzzy logika je vícehodnotová jazyková logika, která
využívá aparát a zákony fuzzy množinové matematiky. Pro potřebu fuzzy logiky budeme dále
uvažovat množinu logických spojek {and, or, =>} jako konjunkci, disjunkci a implikaci.
Jazykový model pak můžeme definovat jako výrok, v němž se vyskytují jména jazykových
proměnných, jména jejich jazykových hodnot, logické spojky a pravdivostní hodnoty <0,1>.
Významnou výhodou jazykového modelu je možnost vytvoření formálního zápisu, který nám
umožní zapsat jazykový model tak, jak je běžným způsobem napsána česká věta.
Pro formalizaci zkušeností (znalostí) mají zásadní význam tzv. podmíněná tvrzení – fuzzy
pravidla IF-THEN.. Množině fuzzy pravidel říkáme pravidlový fuzzy model. Konsekventy
pravidel takového fuzzy modelu mají tvar fuzzy výroku o velikosti výstupní jazykové
proměnné a model je nazýván podle svého tvůrce pravidlovým modelem typu Mamdani.
V klasické logice je význam (interpretace) všech logických spojek jednoznačná. Fuzzy logika
se naopak vyznačuje tím, že interpretace fuzzy logických spojek jednoznačná není, každá
spojka může být interpretována (vyhodnocována) několika možnými způsoby. Fuzzy logika
tedy umožňuje pro každý řešený případ použít takové interpretace logických spojek modelu,
které „doladí“ chování modelu přesně podle vlastností a chování modelované soustavy.
Jiným, velmi rozšířeným pravidlovým fuzzy modelem je model typu Takagi-Sugeno. Tento
model je typický tím, že konsekventem pravidel je funkce vstupních proměnných ve tvaru
lineární kombinace vstupních proměnných.
Otázky 3.3.
Co je to vícehodnotová jazyková logika ?
Čím je typická fuzzy logika ?
Co je to IF-THEN fuzzy pravidlo ?
Čím se od sebe liší fuzzy modely typu Mamdani a Takagi-Sugeno ?
36
Úlohy k řešení 3.3.
Sestavte fuzzy model typu Takagi-Sugeno pro nelineární jednorozměrnou funkci y = f(x),
která je klesající (má charakter nepřímé úměrnosti) !
37
3.4 Aproximace jazykového modelu
Čas ke studiu: 1 hod
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit způsob výpočtu velikosti výstupní proměnné fuzzy modelu
Výklad
Jazykové fuzzy modely se používají pro studium chování namodelované soustavy, predikci
jejích stavů nebo pro její řízení (fuzzy regulátory). V těchto případech postupujeme jako při
simulaci chování soustav pomocí modelů konvenčních (matematických, numerických) tak, že
dosadíme konkrétní (aktuální) hodnoty vstupních proměnných a vypočítáme odpovídající
hodnotu veličiny výstupní. V případě jazykových fuzzy modelů, které využívají neurčitosti
formalizované fuzzy množinami, je výsledkem výstupní hodnota opět ve formě fuzzy
množiny. Výstup tedy není numerický (číslo) nýbrž nenumerický, jazykový, zatížený určitým
stupněm nejistoty, vágnosti. Proto se procedura výpočtu hodnoty výstupní veličiny
jazykových modelů nazývá přibližné (aproximativní) vyvozování.
Procedura aproximativního vyvozování využívá přístupů a zákonů fuzzy množinové
matematiky a fuzzy logiky. Tuto proceduru vysvětlíme na jednoduchém příkladu vyvození
velikosti výstupní veličiny fuzzy pravidlového modelu typu Mamdani.
Příklad 1
Uvažujme soustavu s dvěma vstupními a jednou výstupní proměnnou. Tuto soustavu budeme
modelovat s využitím fuzzy modelu Mamdani, který bude mít dvě vstupní a jednu výstupní
jazykovou proměnnou. Všechny proměnné nechť mají dvě jazykové hodnoty – MALÝ a
VELKÝ.
Sestavíme jazykový model soustavy s použitím dvou pravidel, z nichž první se bude
vyjadřovat k situaci, v níž je hodnota výstupní proměnné MALÁ a druhé k situaci v níž je
hodnota výstupní proměnné VELKÁ.
R1:
R2:
IF(x1 is MALÝ) and (x2 is VELKÝ) THEN (y is MALÝ)
IF(x1 is VELKÝ) and (x2 is VELKÝ) THEN (y is VELKÝ)
Jazykové proměnné vstupních veličin x1 a x2 a výstupní veličiny y jsou nakresleny na obrázku
Obr.11, který současně reprezentuje graficky obě pravidla modelu.
38
Obr.11
Fuzzy množiny jazykových hodnot, které jsou aktuální v jednotlivých pravidlech jsou
zdůrazněny tučnými čarami.
Stanovení tvaru výsledné fuzzy množiny výstupní proměnné y při uvažování (dosazení)
konkrétních hodnot vstupních proměnných x1 a x2 postupujeme podle obrázku Obr.12 takto:
Obr.12
39
Dosazované konkrétní hodnoty vstupních proměnných jsou označeny x1* a x2*.
Nejprve zjistíme tvar výstupní fuzzy množiny pro první pravidlo. V souladu se zněním
prvního pravidla zjistíme velikost stupně příslušnosti hodnoty x1* k fuzzy množině M a
označíme jej jako M(x1*). Dále zjistíme velikost stupně příslušnosti hodnoty x2* k fuzzy
množině V a označíme jej jako V(x2*).
Porovnáme velikosti M(x1*) a V(x2*) a vybereme menší z nich, tedy V(x2*).
Touto hodnotou „ořežeme“ jazykovou hodnotu výstupní hodnoty y v prvním pravidle, tedy
fuzzy množinu M. Ořezanou fuzzy množinu označíme jako M* a budeme ji uvažovat jako
výstup prvního pravidla.
Nyní zjistíme tvar výstupní fuzzy množiny pro druhé pravidlo. V souladu se zněním druhého
pravidla zjistíme velikost stupně příslušnosti hodnoty x1* k fuzzy množině V a označíme jej
jako V(x1*). Dále zjistíme velikost stupně příslušnosti hodnoty x2* k fuzzy množině V a
označíme jej jako V(x2*).
Porovnáme velikosti V(x1*) a V(x2*) a vybereme menší z nich, tedy V(x1*).
Touto hodnotou „ořežeme“ jazykovou hodnotu výstupní hodnoty y v druhém pravidle, tedy
fuzzy množinu V. Ořezanou fuzzy množinu označíme jako V* a budeme ji uvažovat jako
výstup druhého pravidla.
Výslednou výstupní fuzzy množinu s uvažováním všech (obou) pravidel Y* získáme
sjednocením fuzzy množin M* a V*
Y* = M*  V*
Výsledkem simulace chování soustavy je tedy fuzzy množina Y*, kterou můžeme jazykově
interpretovat jako „SPÍŠE MALÝ“. Pokud bychom potřebovali výstup ve formě čísla,
provedeme tzv. defuzzifikaci fuzzy množiny Y* tak, že vypočteme polohu těžiště její plochy
T a jeho souřadnici y* označíme jako číselný výstup modelu (Obr.13).
Obr.13
40
Příklad 2
Aproximativní vyvození výstupu modelu typu Takagi-Sugeno je popsáno přímo v kapitole
3.3. Výstupní hodnota fuzzy modelu typu Takagi-Sugeno má formu obyčejného čísla a není ji
proto třeba defuzzifikovat.
Shrnutí pojmů
Jazykové fuzzy modely se používají pro studium chování namodelované soustavy, predikci
jejích stavů nebo pro její řízení (fuzzy regulátory). V těchto případech postupujeme jako při
simulaci chování soustav pomocí modelů konvenčních (matematických, numerických) tak, že
dosadíme konkrétní (aktuální) hodnoty vstupních proměnných a vypočítáme odpovídající
hodnotu veličiny výstupní. V případě jazykových fuzzy modelů, které využívají neurčitosti
formalizované fuzzy množinami, je výsledkem výstupní hodnota opět ve formě fuzzy
množiny. Výstup tedy není numerický (číslo) nýbrž nenumerický, jazykový, zatížený určitým
stupněm nejistoty, vágnosti. Proto se procedura výpočtu hodnoty výstupní veličiny
jazykových modelů nazývá přibližné (aproximativní) vyvozování.
Výsledkem simulace chování soustavy pomocí modelu Mamdani je fuzzy množina, jejíž
význam můžeme dobře interpretovat slovně (jazykově). Pokud bychom potřebovali výstup ve
formě čísla, provedeme tzv. defuzzifikaci fuzzy množiny výstupní hodnoty tak, že vypočteme
polohu těžiště její plochy a souřadnici těžiště označíme jako číselný výstup modelu.
Výstupní hodnota fuzzy modelu typu Takagi-Sugeno má formu obyčejného čísla a není ji
proto třeba defuzzifikovat.
Otázky 3.4.
Co je procedura aproximativního vyvozování ?
Jaký je postup vyvození fuzzy množiny závisle proměnné veličiny u modelu Mamdani ?
Jaký je postup vyvození hodnoty závisle proměnné veličiny u modelu Takagi-Sugeno ?
Co je výsledkem procedury defuzzifikace ?
Úlohy k řešení 3.4.
Proveďte vyvození výstupní hodnoty y modelu Takagi-Sugeno pro model který jste vytvořili
v úloze 3.3 pro Vámi zvolenou velikost vstupní proměnné x !
41
4 - FUZZY EXPERTNÍ SYSTÉMY
4.1 Definice expertního systému
Čas ke studiu: 1 hod
Cíl

Po prostudování tohoto odstavce budete umět
Vysvětlit princip a účel expertních systémů
Výklad
V minulé části knihy byla probrána problematika popisu ne zcela určitých soustav s využitím
metod a prostředků fuzzy množinové matematiky a vysvětleny metody simulace jejich
chování.
V této části se budeme věnovat nejrozšířenějším fuzzy systémům, kterými jsou speciální
programy, používané pro řešení složitých problémů, tzv. expertní systémy. Podrobné
rozpracování této problematiky může čtenář nalézt např. v literatuře [3], [8]. Podstatné zde je,
že jednou ze základních částí (fuzzy orientovaného) expertního systému je jazykový fuzzy
model.
Již v úvodu této knihy jsme zdůvodnili, proč je v určité fázi řešení složitých problémů nutno
přejít od zpracování dat ke zpracování znalostí. Znalostí přitom nazýváme vzájemně
provázané a měnitelné či doplnitelné struktury souvisejících jazykově vyjádřitelných
poznatků. Počítače, vybavené programy, umožňujícími řešit problémy na základě znalostí, se
nazývají znalostní systémy. Jejich úkolem je podporovat řešení složitých problémů, které, i
když pro ně neznáme algoritmické postupy řešení, jsou řešitelné pomocí produktivních metod
využívajících znalostí. Povaha těchto znalostí může být jak odborná tak i všeobecná. Podobně
i problémy, řešitelné znalostními systémy, mohou být tedy jak odborné, tak i všeobecné, které
lidé na základě všeobecných poznatků a zkušeností řeší v každodenním životě (hlavolamy,
hry, testy, interpretace, plánování, monitorování či řízení běžných životních situací a pod).
Expertními systémy pak nazýváme takové znalostní systémy, které jsou určeny k řešení
odborných problémů, vyžadujících na rozdíl od všeobecných především znalosti často velmi
úzce specializované.
Hlavním posláním expertních systémů je poskytovat závěry o stavech sledované soustavy
nebo o postupech řešení úloh. Tyto závěry jsou získávány na základě numerických nebo
jazykových informací o konkrétním stavu soustavy. Stěžejním požadavkem je, aby kvalita
závěrů expertního systému odpovídala kvalitě závěrů, které by v téže situaci učinil zkušený
expert.
Základní třídy problémů, které jsou vhodné pro řešení expertními systémy, jsou:
42
- interpretace:
rozpoznávání situací z údajů, které
je popisují;
- predikce:
odvození očekávaných důsledků dané situace;
- diagnostika:
určení stavu (poruchy) systému z pozorovatelných projevů jeho chování;
- konstruování:
výběr a sestavení objektů do určitého
funkčního celku při daných omezujících podmínkách;
- plánování:
sestavení posloupnosti akcí za účelem
dosažení požadovaného cíle;
- monitorování:
sledování a porovnávání údajů odpovídajících určité situaci za účelem zjišťování a následného odstranění odchylek od očekávané situace;
- ladění a opravování:
výběr,sestavení a uskutečnění posloupnosti akcí
odstraňující odchylky nebo chybové stavy;
- učení:
diagnostika, ladění a upravování vědomostí studenta;
- řízení:
interpretace, predikce, monitorování a
oprava chování systému.
Z obecného hlediska lze expertní systémy klasifikovat do třídy systémů analyzujících
(typickým problémem je diagnostika) a systémů syntetizujících (typickým problémem je
plánování). Na těchto hlediscích závisí jejich architektura.
Architektura expertního systému vychází ze základní struktury, která je vždy tvořena bází
znalostí (fuzzy modelem) na straně jedné a inferenčním (vyvozovacím) mechanizmem na
straně druhé. Další rysy jeho architektury jsou však dány jeho typem, tj. jeho určením pro
řešení úloh diagnostického nebo plánovacího typu.
Úlohou diagnostických expertních systémů je provádět efektivní interpretaci dat s cílem určit,
která z hypotéz o chování zkoumané soustavy nejlépe koresponduje s reálnými daty,
týkajícími se konkrétního případu. Řešení případu (problému) probíhá formou postupného
ohodnocování a přehodnocování dílčích hypotéz v rámci pevně daného modelu řešeného
problému, který je sestaven expertem. Struktura diagnostického expertního systému je
znázorněna na Obr.14.
Jádro takového systému tvoří řídící (inferenční) mechanizmus, který operacemi nad bází
znalostí na základě aktuálních dat (dotazu) upřesňuje (aktualizuje) obecný model a vyvozuje
odpověď (závěr) simulace.
43
Obr.14
Báze znalostí jako obecný model chování studované soustavy je tvořena expertními
znalostmi, které jsou formalizovány vhodnou reprezentací. Kromě fuzzy pravidlové
reprezentace, která je preferována v této knize, existuje řada dalších možností.
Aktualizace modelu je provedena vstupem konkrétních dat k danému případu. Konkrétní data
jsou reprezentována bází dat a mohou být získána jako jazykové hodnoty od uživatele
(operátora), přímým měřením nebo kombinovaně.
Výsledkem činnosti diagnostického expertního systému je seznam ohodnocených závěrů cílových hypotéz (diagnóz).
Uživatelsky významnou částí expertního systému je vysvětlovací podsystém. Ten poskytuje
informace o konkrétním postupu, jímž bylo dosaženo závěru. Tak může uživatel sám posoudit
kvalitu báze znalostí i inference a výsledek odvození případně dodatečně modifikovat.
Plánovací expertní systémy jsou určeny k řešení úloh, kdy je znám cíl a počáteční stav řešení
a systém má s využitím dat o konkrétním případu nalézt (pokud možno optimální)
posloupnost kroků (operátorů), kterou lze cíle dosáhnout. Schéma struktury takového systému
je uvedeno na Obr.15.
Základní částí plánovacího expertního systému je generátor možných řešení, který
automaticky kombinuje posloupnost operátorů a vytváří tak varianty řešení. S rostoucím
počtem operátorů však počet možných kombinací velmi rychle narůstá (kombinatorická
exploze). Data o konkrétním případu resp. znalosti experta tuto explozi omezují.
Výsledkem činnosti plánovacího expertního systému je nabídka ohodnocených přípustných
řešení, z nichž uživatel podle svých kriterií vybírá jednu dominantní.
44
Obr.15
Příklad 1
Příkladem celosvětově velmi úspěšného a široce rozšířeného expertního systému je americký
systém MYCIN (1976), určený pro podporu rozhodování lékaře při diagnóze a terapii
infekčních onemocnění.
V technické oblasti je velmi známý opět americký systém PROSPECTOR (1978), který je
určen pro podporu rozhodování při vyhodnocování geologických vrtů z hlediska nalezišť
ložisek barevných kovů.
V oblasti plánovacích expertních systémů je známý systém R1/XCON (1986), určený pro
návrh optimálních konfigurací počítačů fy Digital Equipment (DEC).
Velmi známým expertním systémem české provenience je systém FEL-EXPERT, vyvíjený
postupně již od roku 1983 na ČVUT Praha. Prázdný systém diagnostického typu je vybaven
celou řadou moderních výkonných procedur.
45
Shrnutí pojmů
Počítače, vybavené programy, umožňujícími řešit problémy na základě znalostí, se nazývají
znalostní systémy. Jejich úkolem je podporovat řešení složitých problémů, které, i když pro
ně neznáme algoritmické postupy řešení, jsou řešitelné pomocí produktivních metod
využívajících znalostí.
Expertními systémy pak nazýváme takové znalostní systémy, které jsou určeny k řešení
odborných problémů, vyžadujících na rozdíl od všeobecných především znalosti často velmi
úzce specializované.
Stěžejním požadavkem je, aby kvalita závěrů expertního systému odpovídala kvalitě závěrů,
které by v téže situaci učinil zkušený expert.
Architektura expertního systému vychází ze základní struktury, která je vždy tvořena bází
znalostí (fuzzy modelem) na straně jedné a inferenčním (vyvozovacím) mechanizmem na
straně druhé. Další rysy jeho architektury jsou však dány jeho typem, tj. jeho určením pro
řešení úloh diagnostického nebo plánovacího typu.
Otázky 4.1.
Co je to znalostní systém ?
Jaký je účel expertního systému ?
Jaký je rozdíl mezi diagnostickými a plánovacími expertními systémy ?
Úlohy k řešení 4.1.
Navrhněte Vám známý problém, k jehož řešení by bylo možno vypracovat expertní systém
(např. diagnostika automobilového motoru, proč pláče kojenec, apod.).
46
4.2 Problematika tvorby expertních systémů
Čas ke studiu: 1 hod
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit a v praxi použít základní principy znalostního inženýrství a metod
tvorby expertních systémů
Výklad
Ve fázi výstavby expertního systému buduje bázi znalostí ve spolupráci s expertem (-ty)
znalostní inženýr [10]. Ten musí být dostatečně detailně seznámen nejen s problematikou
expertních systémů, formami reprezentace znalostí a inferenčními mechanizmy, ale do
nezbytně nutné hloubky i s problémovou oblastí úlohy. Jeho úkolem je získávat znalosti od
experta a vhodným způsobem je zakódovat. Proces tvorby báze znalostí je možno rozdělit do
těchto fází:
- identifikace problému,
- návrh koncepce báze znalostí,
- volba reprezentace znalostí,
- implementace,
- ladění báze znalostí,
- využívání báze znalostí.
Speciální místo zajímají systémy, které umožňují tvorbu tzv. automatické báze znalostí.
Vycházejí z hodnot nezávisle proměnných xijo a hodnoty závisle proměnné yoj, kde i = 1,2,...,n
je množina měřených hodnot vstupních (nezávisle) proměnných a j = 1,2,...,Z je počet měření.
Každý vektor
xoj = {xo1j, xo2j, ..., xonj, yoj}
lze považovat za podmíněné tvrzení o chování soustavy, pokud {xo1j, xo2j, ..., xonj} považujeme
za jeho antecedent a {yoj} za jeho konsekvent. Z- měření tak poskytne celkem Z- pravidel
znalostní báze. Vstupní i výstupní proměnné jsou fuzzifikovány a ukládány do báze ve formě
trojúhelníkových fuzzy čísel. Metoda tvorby automatické báze využívá přímé informace,
obsažené v měřených datech a je jednou z metod tvorby tzv. datových modelů, využívajících
k simulaci chování soustavy fuzzy datových algoritmů.
V průběhu ladění báze znalostí, tj. její optimalizace ve fázi návrhu, se opakuje následující
cyklus:
- test báze na reálných datech (případech),
- konzultace výsledků s expertem,
47
- úprava báze znalostí.
Cyklus ladění báze znalostí je časově náročný a klade dosti vysoké požadavky na
soustředěnou práci všech zúčastněných odborníků.
I když zatím úlohy znalostního inženýra nejsou plně podporovány počítačovými programy,
existuje řada prostředků, které mu práci ulehčují. Mezi ně patří především:
A. Podpůrné prostředky pro tvorbu báze znalostí, kam řadíme
- editory bází znalostí, které podporují kódování znalostí a zabraňují vzniku syntaktických
(někdy i sémantických) chyb;
- vysvětlovací subsystémy, které usnadňují ladění bází a jsou schopny detailně rekonstruovat
logický postup uvažování systému;
B. Prostředky pro efektivní získávání znalostí od experta, které
- pomáhají analyzovat expertovy znalosti,
- vyhledávají znalosti nedostatečně jasně vyjádřené,
- kladou expertovi doplňující otázky pro upřesnění a zjemnění struktury znalostí.
C. Induktivní algoritmy pro automatizované získávání znalostí, které se opírají o různé
metody a techniky induktivního učení s využíváním trénovací množiny případů. Význam
těchto prostředků spočívá především v tom, že
- snižují vysoký podíl lidské účasti na tvorbě expertních systémů,
- svým způsobem odstraňují nutnost existence experta pro vytvoření expertního systému.
Vysoký význam má existence a komerční nabídka tzv. prázdných (shell) expertních systémů
jako programových prostředků, které jsou vybaveny veškerými úlohami expertního systému,
mají však prázdnou ("nenaplněnou") bázi znalostí. Problémová orientace (dedikace)
expertního systému pak vznikne naplněním báze znalostí (implementace pravidel o chování
soustavy) podle konkrétní potřeby uživatele.
Příklad 1
Pro ilustraci expertního systému je uveden příklad odhadu zbytkové aktivity katalyzátoru při
výrobě kyseliny sírové. K vytvoření expertního systému je použito prázdného vývojového
fuzzy orientovaného pravidlového expertního systému LMPS (Linquistic Model Processing
System) [12], poskytujícího inference typu CCD, CIC i CI&.
Pravidlový model obsahuje celkem 5 proměnných podle níže uvedené tabulky Tab.5. Poslední
je uvedena výstupní (závisle) proměnná.
48
Č. LINGVISTICKÁ PROMĚNNÁ
ROZMĚR
1 Doba provozu 1. vrstvy katalyzátoru
měsíc
o
2 Teplota (vztažená na výstup etáže)
C
3 Počet zastávek ve výrobě
měsíc
4 Průměrná délka zastávky
hod
5 Zbytková aktivita katalyzátoru
%
Tab. 5
Jednotlivé jazykové proměnné mají jazykové hodnoty, reprezentované fuzzy množinami,
aproximovanými lomenými úseky. Jejich parametry jsou v následující tabulce Tab.6
označeny písmeny {A, B, C, D}.
PROMĚNNÁ
1
2
3
4
5
JAZYKOVÁ JMÉNO
HODNOTA
JH
PN
KRÁTKÝ
SD
STŘEDNÍ
KZ
DLOUHÝ
NIZ
NÍZKÁ
NOR
NORMÁL
VYS
VYSOKÁ
M
MALÝ
S
STŘEDNÍ
E
VYSOKÝ
KAB
KRÁTKÁ
VYF
STŘEDNÍ
VCH
DLOUHÁ
H
HAVARIJ.
N
NÍZKÁ
U
USPOKOJ.
D
DOBRÁ
VÝBORNÝ
V
A
B
C
D
0
12
27
560
585
605
0
2
5
0
100
360
0
56
66
80
90
0
18
36
560
590
615
0
3
7
0
120
480
0
60
75
82
96
6
24
48
580
600
700
1
5
20
3
360
2300
54
66
80
87
100
15
33
48
590
610
700
3
6
20
9
480
2300
60
75
82
96
100
Tab. 6
Báze znalostí je vytvořena 45-ti IF-THEN pravidly. Jejich tvar ukazuje následující tabulka.
Tab.7.
49
ČÍSLO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
1
PN
PN
PN
PN
PN
PN
PN
PN
PN
PN
PN
PN
PN
PN
PN
SD
SD
SD
SD
SD
SD
SD
SD
2
NIZ
NIZ
NIZ
NIZ
NIZ
NOR
NOR
NOR
NOR
NOR
VYS
VYS
VYS
VYS
VYS
NIZ
NIZ
NIZ
NIZ
NIZ
NOR
NOR
NOR
3
M
M
M
S
E
M
M
M
S
E
M
M
M
S
E
M
M
M
S
E
M
M
M
4
KAB
VYF
VCH
KAB
KAB
KAB
VYF
VCH
KAB
KAB
KAB
VYF
VCH
KAB
KAB
KAB
VYF
VCH
KAB
KAB
KAB
VYF
VCH
5
V
V
V
V
D
V
D
D
D
U
V
D
D
U
U
D
D
D
U
U
D
U
U
ČÍSLO
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
1
SD
SD
SD
SD
SD
SD
SD
KZ
KZ
KZ
KZ
KZ
KZ
KZ
KZ
KZ
KZ
KZ
KZ
KZ
KZ
KZ
2
NOR
NOR
VYS
VYS
VYS
VYS
VYS
NIZ
NIZ
NIZ
NIZ
NIZ
NOR
NOR
NOR
NOR
NOR
VYS
VYS
VYS
VYS
VYS
3
S
E
M
M
M
S
E
M
M
M
S
E
M
M
M
S
E
M
M
M
S
E
4
KAB
KAB
KAB
VYF
VCH
KAB
KAB
KAB
VYF
VCH
KAB
KAB
KAB
VYF
VCH
KAB
KAB
KAB
VYF
VCH
KAB
KAB
5
U
N
D
V
U
U
N
D
U
U
N
N
U
N
N
N
H
N
H
H
H
H
Tab. 7
Pro ilustraci výsledků vyvozování uvedeme odpovědi fuzzy modelu na dotazy, jejichž tvar je
následující (Tab.8):
PŘÍKLAD
TVAR DOTAZU
1
2
3
4
1
20
570
1
850
2
32
595
3
2
3
14
588
1
120
Tab. 8
Výsledkem řešení příkladu jsou odpovědi tří modelů (CCD, CIC a CI&), z nichž si může
uživatel vybrat tu nejkvalitnější. GRAF 1 představuje odpovědi na příklad 1, GRAF 2 a
GRAF 3 odpovědi na příklady 2 a 3 z Tab.8.
50
GRAF 1
51
GRAF 2
52
GRAF 3
Systém LMPS poskytuje prostředky pro analýzu odpovědí. Do tvaru funkce příslušnosti
odpovědi lze vykreslit funkce příslušnosti jednotlivých hodnot závisle proměnné, kurzorem
lze odečítat souřadnice významných bodů. Lze vyvolat seznam pravidel, kterých bylo použito
pro výpočet odpovědi (aktivní pravidla).
53
Shrnutí pojmů
Ve fázi výstavby expertního systému buduje bázi znalostí s expertem (-ty) znalostní inženýr.
Ten musí být dostatečně detailně seznámen nejen s problematikou expertních systémů,
formami reprezentace znalostí a inferenčními mechanismy, ale do nezbytně nutné hloubky i
s problémovou oblastí úlohy. Jeho úkolem je získávat znalosti od experta a vhodným
způsobem je zakódovat.
Speciální místo zajímají systémy, které umožňují tvorbu tzv. automatické báze znalostí [6].
Vysoký význam má existence a komerční nabídka tzv. prázdných (shell) expertních systémů
jako programových prostředků, které jsou vybaveny veškerými úlohami expertního systému,
mají však prázdnou („nenaplněnou“) bázi znalostí. Problémová orientace (dedikace)
expertního systému pak vznikne naplněním báze znalostí (implementace pravidel o chování
soustavy) podle konkrétní představy uživatele.
Otázky 4.2.
Jaký je postup při tvorbě expertního systému?
jaká je úloha znalostního inženýra ve fázi tvorby expertního systému?
Úlohy k řešení 4.2.
Navrhněte 4 pravidla báze znalostí expertního systému pro diagnostiku systému, v jehož
oblasti jste expertem !
54
4.3 Problematika použití expertních systémů
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Objasnit způsobu uvažování expertního systému
 Interpretovat odpověď fuzzy expertního systému
Výklad
Z inženýrského hlediska je velmi důležitá správná interpretace vyvozených odpovědí. K tomu
je třeba správného pochopení nuancí "uvažování", které jsou pro jednotlivé modely
charakteristické [10]:
a) Součinové modely na začátky předpokládají, že pravda je všechno a potom tvrdí, že pravda
je to, co není v rozporu se žádným prohlášením. Způsob jejich uvažování bývá interpretován
jako "zbabělý intelektuál".
b) Součtové modely na začátku předpokládá, že nic není pravda, a potom tvrdí, že pravda je
to, co tvrdí alespoň jedno prohlášení. Způsob uvažování CCD modelu bývá charakterizováno
jako "naivní hazardér".
Kvalitu odpovědi lze parametrizovat [10]. Parametry kvality pro nejrozšířenější model CIC
jsou definovány podle Obr.16 takto:
Obr.16
55
So = 1 - maxµ(y)
Do = 1 - minµ(y)
No = b - a
Jo = maxµ(y) - minµ(y)
1. Spornost odpovědi:
2. Důvěryhodnost použitých informací:
3. Neurčitost odpovědi:
4. Jasnost odpovědi:
Interpretace typických odpovědí jsou pro model CIC a CI& uvedeny na Obr.17, pro model
CCD na Obr.18.
Obr.17
Komentář k Obr.17:
A - zcela jasná odpověď,
B - jasná odpověď s mírným sporem mezi pravidly,
C - odpověď vyvozená z málo pravdivých předpokladů, navíc sporná,
D - odpověď při absolutním sporu mezi prohlášeními,
E - odpověď při pokusu o popis soustavy typu "relace".
Komentář k Obr.18:
A - zcela jasná odpověď,
B - odpověď při existenci sporu mezi pravidly,
C - odpověď při nedostatku informací.
56
Obr.18
Je-li nutno převést fuzzy množinu odpovědi do formy obyčejného čísla, použijeme proceduru
defuzzifikace, jak to bylo vysvětleno v kap.3.4.
Příklad 1
Na katedře měřicí a řídicí techniky FEI VŠB TU Ostrava bylo v rámci řešení doktorských
disertačních prací navrženo, odladěno a otestováno několik expertních systémů, zaměřených
do oblasti lékařské diagnostiky.
Expertní systém VANĚK byl určen pro podporu rozhodování neurologa při vyhodnocování
elektroencefalografického záznamu (EEG) s cílem určit nebezpečí výskytu epilepsie.
Expertní systém PENHAKER byl určen pro automatické vyhodnocování záznamu
pletysmografu s cílem zjištění kondice cévního systému pacienta.
Shrnutí pojmů
Součinové modely na začátky předpokládají, že pravda je všechno a potom tvrdí, že pravda je
to, co není v rozporu se žádným prohlášením. Způsob jejich uvažování bývá interpretován
jako "zbabělý intelektuál".
Součtové modely na začátku předpokládá, že nic není pravda, a potom tvrdí, že pravda je to,
co tvrdí alespoň jedno prohlášení. Způsob uvažování součtových modelů bývá
charakterizováno jako "naivní hazardér".
Kvalitu odpovědi lze parametrizovat pomocí kritérií Spornosti odpovědi, důvěryhodnost
použitých informací, neurčitosti odpovědi a jasnosti odpovědi.
57
Otázky 4.3.
Jaké jsou základní parametry pro posouzení kvality odpovědi fuzzy expertního systému ?
Úlohy k řešení 4.3.
Jak je třeba postupovat, nedává-li expertní systém odpovědi na dotazy z určité oblasti
řešeného problému ?
58
5 - FUZZY ŘÍDICÍ SYSTÉMY
5.1 Expertní systémy a řízení
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Popsat princip fuzzy regulátorů
 Vysvětlit výhody jejich použití
Výklad
Původní myšlenku využití fuzzy přístupů k řízení soustav vyslovil Mamdani. Myšlenka
vychází z principu využití jazykového popisu procesu řízení a vyvozovacího kompozičního
pravidla, které jsou základem teorie fuzzy regulace (FLC - Fuzzy Logic Control) [10], [11].
Z tohoto hlediska existuje podobnost mezi fuzzy pravidlovými expertními systémy a systémy
FLC [11]. Oba vycházejí z modelování lidské zkušenosti a prostředí lidského rozhodování.
Mamdani definuje princip fuzzy regulátoru FLC takto:
"Základní myšlenkou takového přístupu bylo vtělení zkušenosti operátora do funkce
regulátoru. Řídící algoritmus je reprezentován soustavou jazykových pravidel, odrážejících
jeho řídící strategii, přičemž jazykové pojmy jsou reprezentovány fuzzy množinami. Hlavní
výhodou takového přístupu je možnost implementace heuristických pravidel ("rule of the
thumb"), jakož i zkušenosti a intuice jako součásti modelu procesu".
Potřebu použití FLC se zdůvodňuje tím, že složité reálné procesy jsou velmi obtížně řiditelné
klasickými automaty, neboť se vyznačují nelinearitou, časově proměnným chováním a trpí
nedostatkem kvalitních informací o svých stavech (měření). V takových případech je možno
automatické řízení realizovat pouze pro nepřímé proměnné, které lze měřit a regulovat, jako
teploty, tlaky, průtočná množství a pod. Řízení globálních parametrů, jako kvalita a množství
produkce, je pak obvykle v rukou operátora.
Moderní metody řízení procesů, realizující vyšší řídící funkce, využívají matematické modely
ve složitých počítačových řídících systémech. Obtíže vznikají, jestliže se podmínky procesu
mění v širokém rozsahu a podléhají náhodným poruchám.
V mnohých případech je potvrzeno, že zkušený operátor je schopen řídit takový složitý proces
úspěšněji než automatický regulátor. Pokud se operátor rozhoduje obtížně, může to být
způsobeno rozsahem nebo způsobem zobrazení měřených dat případně nepřiměřenou
hloubkou požadovaného rozhodování.
Oproti expertním systémům se však systémy FLC vyznačují jistými odlišnostmi:
59
- systémy FLC jsou řazeny spíše do oblasti inženýrské problematiky řízení než do oblasti
umělé inteligence;
- modely FLC jsou budovány výhradně formou řídících pravidel;
- oblasti použití FLC v regulaci průmyslových procesů jsou širší než oblasti použití expertních
systémů;
- obecně nemusí být řídící pravidla formulována expertem, nýbrž explicitně tvůrcem FLC
systému;
- vstupními proměnnými FLC systémů jsou pravidelně informace o chování řízeného systému
a výstupními proměnnými jsou velikosti akčních zásahů.
Kapitoly, věnované systémům FLC, uvedeme pojednáním o popisu řízení technologických
procesů pomocí klasických regulačních algoritmů.
Příklad 1
Příkladem operátorské znalosti (heuristiky) uplatnitelné při řízení je např. informace:
Jestliže tlak na ukazateli 1 stoupá pomalu a doba od zahájení ohřevu je krátká, surovina je
příliš nekvalitní a teplotu je třeba podstatně zvýšit.
Shrnutí pojmů
Základní myšlenkou přístupu znalostního řízení (FLC) je vtělení zkušenosti operátora do
funkce regulátoru. Řídící algoritmus je reprezentován soustavou jazykových pravidel,
odrážejících jeho řídící strategii, přičemž jazykové pojmy jsou reprezentovány fuzzy
množinami. Hlavní výhodou takového přístupu je možnost implementace heuristických
pravidel, jakož i zkušenosti a intuice jako součásti modelu procesu. Systémy FLC jsou natolik
rozšířené, že jsou dnes již řazeny spíše do oblasti inženýrské problematiky řízení než do
oblasti umělé inteligence.
Otázky 5.1.
Jaká je základní myšlenka použití expertního systému jako regulátoru ?
Jaká jsou specifika fuzzy regulátorů oproti obecným expertním systémům ?
Úlohy k řešení 5.1.
Pokuste se vyslovit heuristiku, kterou uplatňujete při řízení automobilu !
60
5.2 Fuzzy regulátory
Čas ke studiu: 2 hod
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit funkci a navrhnout fuzzy regulátor typu Mamdani
 Vysvětlit funkci a navrhnout fuzzy regulátor typu Takagi-Sugeno
Výklad
První fuzzy regulátor byl vytvořen v roce 1973 anglickým profesorem Ebrahimem
Mamdanim. Ten zjistil, že pro úspěšné řízení i složitější soustavy lze použít jen několika
jednoduchých podmíněných fuzzy pravidel a že fuzzy regulační obvod má lepší dynamické
vlastnosti než regulátor klasický. Jím použitá struktura fuzzy regulátoru se stala základem pro
konstrukci takových regulátorů v celé řadě úspěšných aplikací.
Základní konfigurace systému FLC je nakreslena na Obr.19. Typy a zapojení jednotlivých
bloků odpovídají obecnému expertnímu systému. Konfigurace fuzzy regulátoru obsahuje čtyři
základní bloky, jejichž funkce jednotlivých částí je tedy následující:
Obr.19
61
a) blok FUZZIFIKACE, který zahrnuje funkce
- měření hodnot vstupních veličin,
- převod rozsahů měřených dat do odpovídajících univerz,
- fuzzifikaci, transformující vstupní data (obyčejná čísla) do formy fuzzy množin;
b) blok ZNALOSTNÍ BÁZE, představující znalosti z konkrétní aplikační oblasti se zahrnutím
cílů řízení. Znalostní báze zahrnuje dále
-
BÁZI DAT, provádějící nezbytné operace se vstupními daty, vedoucí k definici
funkcí příslušnosti jazykových hodnot jazykových proměnných a ke stanovení měr
příslušnosti vstupních dat vzhledem k těmto jazykovým hodnotám;
-
BÁZI ZNALOSTÍ, obsahující jazyková řídící pravidla, charakterizující cíle a
strategii řízení;
c) blok ROZHODOVACÍ LOGIKY, tvořící jádro systému FLC. Provádí vyvození fuzzy
řídících zásahů s využitím příslušných fuzzy inferenčních (aproximačních) algoritmů;
d) blok DEFUZZIFIKACE, zahrnující
- proceduru defuzzifikace, transformující vyvozený fuzzy akční zásah do obyčejné
číselné formy;
- převod rozsahů výstupních veličin do odpovídajících univerz.
Inference systému FLC probíhají v jednotlivých krocích podobně jako v případě klasické
diskrétní regulace. Proto je možno koncipovat jednotlivá typy fuzzy regulátorů stejně jako v
technice klasické, tedy fuzzy regulátory obdobné typům P (regulátor proporcionální), PS
(regulátor proporcionálně-sumační), PD (regulátor proporcionálně-derivační) a PSD
(regulátor proporcionálně-sumačně-derivační) [11].
Jednotlivé typy fuzzy regulátorů se od sebe liší závisle proměnnými, nezávisle proměnnými a
strukturou pravidel.
Fuzzy regulátor považujeme za regulátor nelineární, čtyř typů, s těmito strukturami:
1. Fuzzy P- regulátor
IF (e is A) THEN (u is B)
2. Fuzzy PD regulátor
IF (e is A) and ( e is B) THEN (u is C)
3. Fuzzy PS regulátor
IF (e is A) and ( e is B) THEN (u is C)
4. Fuzzy PSD regulátor
IF (e is A) and ( e is B) and ( 2e is C) THEN (u is D)
62
Kde A, B, C a D jsou příslušné jazykové hodnoty vstupní proměnné e (regulační odchylka) či
výstupní proměnné u (akční veličina), reprezentované fuzzy množinami. Operátor  je
symbolem změny (derivace).
Výběr typu fuzzy regulátoru závisí, stejně jako v případě regulátoru klasického, na charakteru
regulované soustavy a na požadavcích kvality regulace. Tak např. fuzzy PSD regulátor je
používán pro procesy vysoce nelineární a nestabilní.
Regulační zákon je popsán IF-THEN pravidly řízení, které tvoří regulační model (bázi
znalostí) fuzzy regulátoru. Tvar pravidel je dán typem fuzzy regulátoru (P, PD, PS, PDS).
Velmi významná je skutečnost, že tvar řídicích pravidel je závislý na typu regulátoru, pro
určitý typ regulátoru jsou však stejná pro kteroukoliv aplikaci. Je to dáno skutečností, že ve
všech případech platí základní zákon regulace – akční veličina má vždy takovou velikost a
smysl, že vede ke zmenšení (nulování) regulační odchylky. Báze znalostí fuzzy regulátorů
jsou tedy tvořeny pravidly s typizovanou strukturou, lišící se pouze parametry fuzzy množin
formalizující hodnoty jejich jazykových proměnných.
Jako příklad uvedeme tabulku struktur pravidel pro fuzzy PD regulátor. Vstupními
proměnnými takového regulátoru sou regulační odchylka e a změna regulační odchylky e,
výstupní proměnnou je pak velikost akční veličiny u. Tabulka pravidel je dvojrozměrná a lze
ji dobře znázornit strukturou na Obr. 20
e
ZV
ZS
ZM
KM
KS
KV
KV
N
ZS
ZM
ZS
ZV
ZV
KS
KM
A
ZM
ZS
ZS
ZV
KM
KS
KS
N
ZM
ZS
ZS
ZM
KS
KS
KM
N
ZM
ZS
ZS
KV
KS
KS
KM
N
ZM
ZV
KV
KV
KS
KS
KM
N
e
Obr.20
Pravidla předpokládají následující jazykové hodnoty svých proměnných:
ZV
ZS
ZM
A
KM
KS
KV
záporná velká
záporná střední
záporná malá
nulová
kladná malá
kladná střední
kladná velká
Povšimněme si, jak strategie pravidel vždy směřuje k minimalizaci regulační odchylky a ke
snížení rychlosti její změny v nežádoucím smyslu (narůstání). Tím je respektován již zmíněný
základní zákon regulace.
63
V praxi je obvykle použito méně pravidel než uvádí jejich úplná tabulka. Jednak se některá
pravidla mohou opakovat a jednak některé stavy velikosti proměnných z důvodů fyzikálních
omezení nemohou ani nastat.
Inferenční mechanizmy v systémech FLC jsou závislé na typu řídicího modelu. Stejně jako u
expertních systémů mohou být složeny z pravidel typu Mamdani nebo pravidel typu TakagiSugeno. Proto rozeznáváme dva typy inferenčních metod.
a) Mamdaniho metoda vyvození akční veličiny
Grafická interpretace vyvození velikosti fuzzy akční veličiny B(u) je na Obr.21
Obr.21
Metoda je zcela analogická s vyvozováním odpovědi expertního systému s modelem
Mamdani, jak bylo uvedeno v kap.3.4. Podstatné je, že výsledná fuzzy množina B0(u) musí
být vždy převedena procedurou defuzzifikace na obyčejné číslo, které pak představuje
velikost akční veličiny regulátoru. Nejpoužívanější procedurou defuzzifikace je založena na
metodě stanovení těžiště [11].
Je třeba si uvědomit, že fuzzy regulátory jsou vždy regulátory nelineárními. Jednak proto, že
využívají nelineární metodu defuzzifikace, jednak proto, že fuzzy množiny reprezentující
jazykové hodnoty proměnných nemusí být uspořádány geometricky rovnoměrně.
b) Sugenova metoda vyvození velikosti akční veličiny
je používána v případech, kdy konsekventy pravidel jsou funkcí vstupních jazykových
proměnných (pravidlo typu Takagi-Sugeno – hovoříme pak o Sugenovském regulátoru).
Potom r-té řídící pravidlo má tvar
Rr:
IF (xr1 is Ar1) and ... and (xnm is Arnn) THEN ur = fr(x1,x2,...,xn),
r = 1,2,...,m,
kde x1,...,xn a u jsou jazykové proměnné, reprezentující stavové proměnné a řídící veličinu,
Ar1,...,Arnn jsou jazykové hodnoty jazykových proměnných x1,...,xn v univerzech X1,...,Xn, pro
r=1,2,...,m a f je funkce stavových proměnných x1,...,xn, definovaných ve vstupních
podprostorech, které jsou vymezeny antecendenty jednotlivých pravidel. Uvažujme opět dvě
64
fuzzy řídící pravidla a dvě vstupní proměnné
R1: IF (x11 is A11) and (x12 is A12) THEN u1 = f1(x1, x2)
R2: IF (x21 is A21) and (x22 is A22) THEN u2 = f2(x1, x2).
Vyvozená hodnota řídící veličiny z prvního pravidla je g1f1(x1, x2), z druhého pravidla pak
g2f2(x1, x2). Řídící veličina (obyčejné číslo) je pak určena váženým průměrem podle vztahu
u* = [g1f1(x1, x2) + g2f2(x1, x2)]/(g1 + g2).
Inferenční mechanizmus je totožný s inferenčním mechanizmem modelu Takagi-Sugeno,
popsaným v kap.3.3.
Tato metoda je výhodná tím, že pravidla regulátoru lze automaticky identifikovat
z naměřených dat a výstupem je přímo obyčejné číslo (není třeba jeho defuzifikace).
Příklad 1
Ilustrujme základní zákon regulace slovní interpretací pravidel fuzzy regulátoru typu P
s pravidly typu Mamdani::
Je-li regulační odchylka velká kladná, pak je akční veličina velká záporná.
Je-li regulační odchylka malá kladná, pak je akční veličina malá záporná.
Je-li regulační odchylka nulová, pak je akční veličina nulová.
Je-li regulační odchylka malá záporná, pak je akční veličina malá kladná.
Je-li regulační odchylka velká záporná, pak je akční veličina velká kladná.
Příklad 2
Jako příklad konkrétního fuzzy regulátoru uvedeme často publikovanou úlohu regulace
inverzního kyvadla (známé balancování svislé tyče). Laboratorní model takové úlohy je na
obrázku Obr.22.
Obr.22
65
Tyč má délku L, hmotnost m, vozík má hmotnost M a působíme na něj silou w takovou, aby
byla výchylka tyče e udržována na nule. Matematický model takové soustavy je dosti složitý a
jeho rovnice jsou
I
mL3
3
Ie  VL sin e  HL cos e

  mLe cos e  e
H  mw

sin e 
V  mg  mL e sin e  e 2 cos e
2

V  H  Mw
Kdybychom chtěli použít pro regulaci takové soustavy použít klasický regulátor, museli
bychom použít regulátor PID jehož nastavení by bylo složité a kvalita jeho funkce by byla
silně závislá na stabilitě všech rozměrů a hmotností modelu. V případě použití fuzzy
regulátoru se situace značně zjednodušuje, lze použít fuzzy regulátor s pravidly typu PD,
jejichž tvar určuje tabulka Tab.9.
e
ZV
Z
e
PN
K
ZM
PN
ZM
ZV
KM
KV
PN
PN
PN
KV
KM
Tab.9
Fuzzy regulátor je kvalitní a velmi robustní, protože jeho funkce nezávisí na změnách
velikosti parametrů modelu (např. délky tyče).
Příklad 3
Zajímavým příkladem je typová struktura pravidel fuzzy regulátoru typu PID, který má tři
vstupní proměnné. Dvourozměrná tabulka využívá faktu, že se některá pravidla opakují a lze
ji proto nakreslit podle Obr.23.
66
Obr.23
Shrnutí pojmů
Fuzzy regulátory je možno koncipovat stejně jako v technice klasické, tedy fuzzy regulátory
obdobné typům P (regulátor proporcionální), PS (regulátor proporcionálně-sumační), PD
(regulátor proporcionálně-derivační) a PSD (regulátor proporcionálně-sumačně-derivační).
Výběr typu fuzzy regulátoru závisí, stejně jako v případě regulátoru klasického, na charakteru
regulované soustavy a na požadavcích kvality regulace. Fuzzy regulátor je – na rozdíl od
svých konvenčních vzorů - vždy regulátorem nelineárním.
Regulační zákon je popsán IF-THEN pravidly řízení, které tvoří regulační model (bázi
znalostí) fuzzy regulátoru. Tvar pravidel je dán typem fuzzy regulátoru (P, PD, PS, PDS).
Velmi významná je skutečnost, že tvar řídicích pravidel je závislý na typu regulátoru, pro
určitý typ regulátoru jsou však stejná pro kteroukoliv aplikaci. Báze znalostí fuzzy regulátorů
jsou tedy tvořeny pravidly s typizovanou strukturou, lišící se pouze parametry fuzzy množin
formalizující hodnoty jejich jazykových proměnných.
Inferenční mechanizmy jsou stejné jako u expertních systémů a liší se druhem použitého
řídicího modelu (pravidla Mamdani, pravidla Takagi-Sugeno).
67
Otázky 5.2.
Uveďte vstupní a výstupní proměnné regulátorů typu P, PD, PS a PDS
Uveďte strukturu pravidel fuzzy regulátorů obdobných P, PD, PS a PDS - typu Mamdani
Uveďte strukturu pravidel fuzzy regulátoru obdobného PDS - typu Takagi-Sugeno
Proč mají fuzzy regulátory vlastnosti regulátorů nelineárních
Proč jsou báze znalostí fuzzy regulátorů standardizovány
Úlohy k řešení 5.2.
Napište pravidla fuzzy regulátoru obdobného P typu Mamdani, budou-li mít jeho jazykové
proměnné dvě jazykové hodnoty: negativní a pozitivní (dvouhodnotová fuzzy regulace).
68
6 - KOGNITIVNÍ ANALÝZA
6.1 Konzistence a kognitivní analýza vlastností báze znalostí
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit pojem konzistence znalostní báze
 Popsat princip kognitivní analýzy báze znalostí
 Definovat stabilitu, variabilitu a extremálnost báze znalostí
Výklad
Kognitivní přístup je reprezentován mechanizmem odpovědí na dotazy. Kognitivní analýza,
využívající tohoto mechanizmu, je podstatou metody pro určení vlastností a diskriminačních
schopností znalostní báze. Základem této metody jsou testy konzistence, které umožňují
predikci chování báze znalostí při řešení praktických úloh [12], [10]. Uvedená metoda je
využívána v oboru znalostního inženýrství.
Test konzistence spočívá ve stanovení vzájemné podobnosti prohlášení, tvořících bázi
znalostí. Při testu pokládáme expertnímu systému s modifikovanou bází takovou množinu
dotazů, jaké lze v praxi očekávat (modifikovaná báze potom slouží jako skupina expertů).
Předpokládejme, že báze obsahuje M prohlášení. Vyjmeme-li z báze k-té prohlášení, potom
modifikovaná báze je tvořena zbylými (M-1) prohlášeními. Ponecháme-li dále z k-tého
prohlášení jeho antecendent, máme k dispozici dotaz, který položíme modifikované bázi.
Přitom očekáváme, že odpověď báze bude alespoň v částečné shodě s jeho původním
konsekventem. Má-li závisle proměnná R hodnot, potom každé prohlášení se vyslovuje k
určité r-té hodnotě.
Stupeň podobnosti (konzistence) dotazu a aktivovaného prohlášení je při testu oceněna
hodnotou podobnosti V(k,r) v intervalu <0,1>. Je-li podobnost dokonalá, je V(k,r) = 1. Jestliže
se m- prohlášení vyslovuje k jedné r-té hodnotě s různými mírami podobností V(k,r), potom
výsledná podobnost je
VE(k,r) = max[V(k,r)] , k=1,2,...,M, r=1,2,...,R.
m
Získané míry podobnosti jsou klasifikovány do tří základních kategorií - souhlasné,
nesouhlasné a neurčité, které lze s využitím prahových hodnot v a w schematicky vyjádřit dle
Obr.24.
69
Obr.24
Kategorie odpovědí se při testování k-tého pravidla vůči r-té hodnotě závisle proměnné
stanovuje podle těchto pravidel:
IF [VE(k,r) < v]
THEN [KD(k,r) = -1]
(nesouhlas, N)
IF [VE(k,r) <v,w)]
THEN [KD(k,r) = 0]
(neurčitá, D)
IF [VE(k,r) < v]
THEN [KD(k,r) = 1]
(souhlas, Y)
Celkový počet souhlasných, neurčitých a nesouhlasných odpovědí vůči r-té hodnotě závisle
proměnné při testu všech M prohlášení jsou dány vztahy
[KD(k,r) = 1] = P(r)
[KD(k,r) = 0] = Z(r)
[KD(k,r) = -1] = N(r)
Celkový počet odpovědí v jednotlivých kategoriích získáme součtem přes všech R hodnot
závisle proměnné:
P(r) = DP
Z(r) = DZ
N(r) = DN
Z kognitivního hlediska jsou odpovědi typu Y a N jednoznačné, odpověď D je neurčitá.
Budeme-li měnit velikost mezí v a w, potom se i jednoznačné odpovědi mohou stát
neurčitými. Pomocí hodnot DP, DZ a DN můžeme hodnotit bázi jako celek - pro všechny
hodnoty závisle proměnné globálně.
Bude-li převážná část odpovědí jednoznačných, označíme bázi (analogicky jako výše otázku)
jako stabilní. Bude-li převážná část odpovědí neurčitých, bude báze označena jako variabilní.
Bude-li přitom počet odpovědí Y a N přibližně stejný, hovoříme o bázi balancované, v
opačném případě o bázi extremální.
Z hlediska uživatele je žádoucí, aby báze měla vlastnosti, zajišťující co největší rozlišovací
schopnost (diskriminaci). Ukazuje se, že stabilní a balancovaná báze bude mít zřejmě
nejvýhodnější vlastnosti. Tato kombinace však nemusí zajistit dostatečnou rozlišovací
schopnost. Může totiž poskytovat příliš jednoznačné odpovědi díky tomu, že chybí odpovědi
typu D (taková báze budí nedůvěru - z neurčitých informací jsou vyvozovány určité závěry).
70
Expertní báze tedy musí vykazovat rovněž určitou míru variability, přispívající její
diskriminační schopnosti.
Vhodná je tedy taková báze, která je přiměřené balancovaná, a k tomu přiměřeně variabilní.
Příklad 1
Na obrázku je uveden příklad diskriminační schopnosti znalostní báze pro dvě hodnoty
výstupní proměnné – LO (Nízký) a HG (Vysoký). Povšimněte si, že báze znalostí velmi dobře
rozpoznává jazykovou hodnotu LO, zatímco v případě hodnoty HG je situace horší. Znalostní
báze dovede dobře tuto hodnotu potvrdit (interval Y, YES), nedovede ji však dostatečně
popřít (interval N, NO).
Obr.25
Shrnutí pojmů
Kognitivní přístup je reprezentován mechanizmem odpovědí na dotazy. Kognitivní analýza je
podstatou metody pro určení vlastností a diskriminačních schopností znalostní báze.
Základem této metody jsou testy konzistence, které umožňují predikci chování báze znalostí
při řešení praktických úloh Test konzistence spočívá ve stanovení vzájemné podobnosti
prohlášení, tvořících bázi znalostí. Při testu pokládáme expertnímu systému s modifikovanou
bází takovou množinu dotazů, jaké lze v praxi očekávat (modifikovaná báze potom slouží
jako skupina expertů). Jako dotazy slouží podmínkové části jednotlivých pravidel, odpovědi
jsou jejich části důsledkové. Stupeň podobnosti (konzistence) dotazu a aktivovaného
prohlášení je při testu oceněna hodnotou podobnosti. Získané míry podobnosti jsou
klasifikovány do tří základních kategorií - souhlasné, nesouhlasné a neurčité, z nich pak
klasifikujeme odpovědi na jednoznačné a neurčité.
Bude-li převážná část odpovědí jednoznačných, označíme bázi (analogicky jako výše otázku)
jako stabilní. Bude-li převážná část odpovědí neurčitých, bude báze označena jako variabilní.
Bude-li přitom počet odpovědí Y a N přibližně stejný, hovoříme o bázi balancované, v
opačném případě o bázi extremální.
Otázky 6.1.
Jaký je princip kognitivní analýzy báze znalostí ?
Jaké typy odpovědí rozeznáváme ?
Jaké typy bází znalostí rozeznáváme a jak se od sebe jednotlivé typy liší ?
71
Úlohy k řešení 6.1.
Znázorněte graficky vhodnou a nevhodnou diverzifikační schopnost báze vůči jedné jazykové
proměnné !
72
6.2 Ternární diagram
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Provést konstrukci ternárního diagramu
 Použít ternární diagram k posouzení vlastností báze znalostí
Výklad
Pro kontrolu vlastností báze z výše uvedených hledisek lze použít tzv. ternární diagram.
Vyjádřeme relativní četnosti jednotlivých kategorií odpovědí jako
Y = DP / (DP + DN + DZ)
N = DN / (DP + DN + DZ)
C = DZ / (DP + DN + DZ)
Je zřejmé, že platí
Y+N+C=1
Označme dále balancovanost jako B, variabilitu V, extremálnost E a stabilitu S. Ternární
diagram je rovnostranný trojúhelník o straně rovné 1, jehož vrcholy tvoří body Y = 1, N = 1 a
C = 1, viz Obr.26.
Obr.26
73
Ve směru základny trojúhelníka je vynášena extremalita E a balancovanost B, v směru výšky
pak stabilita S a variabilita V. Zřejmě platí
S+V=1
E + B = 1.
Významné body diagramu jsou patrné z Obr.27. Bod C = 0.33, odpovídající hodnotám S = V
= 0.5, byl získán na základě zkušenosti, že báze má 50% stabilitu (a variabilitu) tehdy, je-li
počet odpovědí Y a N dvojnásobný než počet odpovědí C, tedy
(Y + N) / C = 2.
Tomu odpovídá v trojúhelníkovém diagramu přímka pro C = 0.33 tj. (Y + N) = 0.66. Touto
přímkou je diagram rozdělen na oblast variability a stability (Obr.27).
Bod I jako těžiště trojúhelníka je bodem zdravé balancovanosti. Oblast zdravé balancovanosti
vůči závisle proměnné veličině je pak dána plochou kružnice, opsané kolem bodu I
poloměrem 0.125.
Obr.27
Charakteristický bod báze K pak v případě dobré báze leží uvnitř tohoto kruhu (Obr.28).
74
Obr.28
K určení charakteristického bodu K vyšetřované báze stačí znát dva údaje, např. YK a NK,
podle Obr.26.
Ternární diagram lze konstruovat buď pro jednotlivé jazykové hodnoty závisle proměnné
(diskriminační schopnost báze vůči určité hodnotě závisle proměnné), nebo pro závisle
proměnnou jako celek (diskriminační schopnost báze vůči závisle proměnné jako takové).
V první variantě diagramu vynášíme k získání bodu K podle Obr.26 na jednotlivé strany
trojúhelníka YNC hodnoty, např.
Yr = P(r)/M
Nr = N(r)/M
Ve druhé variantě vynášíme hodnoty
YK = DP / (DP + DN + DZ)
NK = DN / (DP + DN + DZ)
Příklad 1
Uveďme příklad ternárního diagramu báze znalostí, vyznačující se příliš vysokou stabilitou !
75
Obr.29
Shrnutí pojmů
Diskriminační vlastnosti báze znalostí můžeme s výhodou graficky znázornit pomocí jejího
zastupujícího bodu v tzv. ternárním diagramu. Ternární diagram je rovnostranný trojúhelník
se stranou dlouhou 1. Ve směru základny trojúhelníka je vynášena extremalita E a
balancovanost B, v směru výšky pak stabilita S a variabilita V.
Ternární diagram lze konstruovat buď pro jednotlivé jazykové hodnoty závisle proměnné
(diskriminační schopnost báze vůči určité hodnotě závisle proměnné), nebo pro závisle
proměnnou jako celek (diskriminační schopnost báze vůči závisle proměnné jako takové).
Otázky 6.2.
Kde leží v ternárním diagramu zastupující bod báze znalostí s ideálními diskriminačními
vlastnostmi (bod zdravé balancovanosti ?
Ve které oblasti leží zastupující body přípustné ?
Úlohy k řešení 6.2.
Nakreslete ternární diagram se zastupujícím bodem u báze znalostí, která má vlastnost velké
variability !
76
7 - NEURONOVÉ SÍTĚ
7.1 Princip umělých neuronových sítí
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit strukturu modelu prvku neuronové sítě – perceptronu
 Popsat funkci perceptronu při stanovení velikosti jeho výstupu
Výklad
V rámci vývoje metod umělé inteligence hrají významnou roli neuronové sítě. Jsou to
struktury, které jsou inspirovány svými biologickými vzory. Jejich hlavním úkolem je
simulovat a implementovat některé funkce lidského mozku, především schopnost adaptace a
učení [3], [13].
Nejjednodušším modelem biologické neuronové sítě je jediný neuron, jehož matematický
model se nazývá perceptron. Jeho schéma je nakresleno na Obr.30.
Obr.30
Do neuronu vstupuje n- spojů (axonů) buď jako výstupy jiných neuronů nebo podněty z jeho
okolí, i-tým spojem vstupuje informace ve formě reálného čísla xi. Vektor vstupů
x = x1, …. ,xn
(ve formě teplot, tlaků, barvy, rychlosti apod.) charakterizuje určitý zkoumaný objekt.
77
Každý spoj je vybaven reálným číslem wi, které udává váhu spoje (jeho důležitost). Dále je
každý neuron vybaven prahem . Vážený součet
n
   wi xi   , i  1,..., n
i 1
udává celkový podnět neuronu, tzv. potenciál neuronu. Na tento potenciál reaguje neuron
odezvou na svém výstupu o velikosti
z  S  
kde S je předepsaná nelineární přenosová funkce neuronu. Obvykle má tvar sigmoidy
s možným analytickým vyjádřením
S   
1
1  exp  
jejíž grafické vyjádření pro určitou velikost parametru  (strmost sigmoidy) je na Obr.31
Obr.31
Odezva neuronu je dána vztahem
 n

z  S   wi xi   
 i 1

Přenosová funkce může mít různý tvar. Lze použít jakoukoliv omezenou rostoucí
diferencovatelnou funkci.
Sítě s mnoha neurony lze dělit podle různých hledisek. První je dáno topologií (strukturou)
sítě, druhé je dáno způsobem práce sítě. Podle prvního hlediska tak známe sítě rekurentní,
jejichž graf je cyklický, tj. výstupy některých neuronů se vracejí jako vstupy zpět do sítě, a
sítě ostatní, z nichž nejdůležitější jsou sítě vícevrstvé s neurony rozdělenými do vrstev.
78
Výstupy neuronů předešlé vrstvy slouží jako vstupy neuronů vrstvy následující.
Dolní vrstva sítě je pak vrstva vstupní, horní vrstva je vrstvou výstupní. Další hledisko
rozeznává sítě s učitelem a samoorganizující se sítě, jak bude vysvětleno v následujícím textu.
Shrnutí pojmů
Umělé neuronové sítě jsou struktury, které jsou inspirovány svými biologickými vzory. Jejich
hlavním úkolem je simulovat a implementovat některé funkce lidského mozku, především
schopnost adaptace a učení.
Nejjednodušším modelem biologické neuronové sítě je jediný neuron, jehož matematický
model se nazývá perceptron. Neurony jsou v síti propojeny vzájemnými vazbami, z nichž
každá je vybavena matematickou váhou. Přenosová funkce neuronu je dána váženým součtem
jeho vstupních hodnot, který je argumentem vhodné nelineární funkce. Ve vícevrstvé síti jsou
neurony jsou uspořádány ve vzájemně propojených vrstvách.
Příklad 1
Kromě sigmoidní přenosové funkce používají neuronové sítě rovněž neurony s funkcemi
jiného typu. Rozšířenými neurony jsou takové, které využívají přenosové funkce lineární
S() = K.  = 
funkce typu signum
S() = {
1 pokud   0
0 pokud   0
případně po částech lineární funkci
1 pokud   0.5
S() = {  pokud   (-0.5, 0.5)
0 pokud   -0.5
Otázky 7.1.
Co je to umělá neuronová síť ?
Jaká je funkce neuronu v síti ?
Co je to vícevrstvá neuronová síť ?
Úlohy k řešení 7.1.
Je obdoba mezi matematickým perceptronem a biologickým neuronem z hlediska jejich
funkce ?
79
7.2 Vícevrstvá neuronová síť
Čas ke studiu: 1 hod
Cíl
Po prostudování tohoto odstavce budete umět
 Popsat strukturu vícevrstvé neuronové sítě
 Vysvětlit vlastnosti a funkci vícevrstvé neuronové sítě
Výklad
Propojení neuronů může být libovolné. v praxi však používáme tzv. sítě vícevrstvé, v nichž
jsou neurony uspořádány do několika vrstev nad sebou. První vrstva je pak vrstvou vstupní,
poslední je vrstva výstupní. Mezilehlé vrstvy se pak nazývají vrstvy skryté.
Zatímco neurony téže vrstvy nejsou vzájemně propojeny, do každého neuronu vrstvy vyšší
vstupují vazby od všech neuronů vrstvy nižší. Vazby jsou jednosměrné, tzn. že neurony vyšší
vrstvy nemohou ovlivnit velikost vnitřního potenciálu neuronů ve vrstvě nižší. Schéma takové
třívrstvé neuronové sítě je nakresleno na Obr.32.
Obr.32
Vícevrstvá neuronová síť má m- vstupních neuronů ve vrstvě vstupní, n- výstupních neuronů
ve vrstvě výstupní a r- vrstev skrytých, přičemž.s- tá vrstva má k- neuronů. Obrázek Obr.32
ukazuje 4-vrstvou síť s jednou vrstvou vstupní, jednou výstupní a dvěma vrstvami skrytými.
Taková síť se označuje symbolem 3-2-1.
80
Neuronová vícevrstvá síť patří mezi systémy konekcionistické, neboť neurony sousedních
vrstev jsou propojeny systémem „každý s každým“ (viz Obr.32).
Základní vlastnost vícevrstvých neuronových sítí
Každému reálnému spojitému zobrazení  z m- rozměrného vstupního prostoru do nrozměrného prostoru výstupního lze najít skryté vrstvy a hodnoty vah (prahů) a tím tedy
určitou síť tak, že  je realizováno touto sítí s libovolnou přesností.
Jestliže k libovolnému zobrazení  již příslušnou síť (váhy) máme, můžeme k danému x najít
(přibližnou) hodnotu y  (x) tak, že
a) na vstupy neuronů vstupní vrstvy přivedeme hodnoty prvků vektoru x. Výstupy neuronů
vstupní vrstvy nabudou hodnot yi = xi, i = 1,…, m, a jsou přeneseny podél spojů s váhami
které označíme wji na vstupy všech k- neuronů první skryté vrstvy (j = 1,…,k)
b) takto vzniklé hodnoty zpracují neurony první (skryté) vrstvy na své odezvy a postoupí je
neuronům vyšší vrstvy jako jejich vstupy
c) tato aktivita se šíří postupně výše až
d) z výstupů neuronů výstupní vrstvy utvoříme vektor odezvy celé sítě y na vstupní vektor x.
Tato procedura tvoří tzv. aktivní (pracovní) mód práce sítě. Stavem sítě nazveme jistý vektor
s(t) tvořený hodnotami výstupů ze všech (vhodně uspořádaných) neuronů v čase t. Jestliže
všechny neurony pracují synchronně, takže signály procházejí současně od jedné vrstvy ke
druhé a stavové vektory snímáme v těchto okamžicích, je délka zmíněné trajektorie dána
počtem vrstev sítě a je konečná.
Neuronové sítě jsou však charakteristické ne svým aktivním módem, nýbrž módem
adaptačním (módem učení). Při něm nejde o to, jak využít danou síť k výpočtu hodnot
zobrazené funkce , ale najít takovou síť, která by požadované zobrazení  realizovala.
S tímto problémem jsou spojeny následující problémy:
a) zobrazení  můžeme považovat za definované, jestliže budeme znát dostatečnou množinu
dvojic x, (x). Tuto dvojici můžeme považovat za množinu příkladů vstup sítě,
požadovaná odezva sítě. Na takových příkladech jsou postaveny metody učení se
novému v přírodě. Živé organizmy se učí porovnáváním a napodobováním od své matky
správným odezvám na vstupní vjemy. Organizmus se však učí i nevědomě, jeho
schopnosti a chování se přizpůsobují prostředí – adaptují se. Příklady jsou pak vnější
vliv, vnitřní změna. V terminologii neuronových sítí nazýváme množinu dvojic vstup,
požadovaný výstup trénovací množinou . Tento druh adaptace, při němž je možno
porovnat okamžitou skutečnou odezvu sítě s odezvou požadovanou, se nazývá učení
s učitelem.
b) Problémem je dostatečnost množiny . Čím více je příkladů, tím může být proces učení
efektivnější, tím lépe je neuronová síť schopna extrahovat znalosti, rozpoznávat a
reprezentovat pravidla podle nichž je  utvářena.
c) Ani systém, který se dobře adaptoval na , nemusí reagovat správnou odezvou na nějaký
nový, dříve nepoznaný, podnět. K tomu by musel být naučen reagovat na situace alespoň
částečně podobné.  bude proto výstižná, jestliže bude pokrývat celý prostor možných
vstupů, přičemž „hustěji“ budou zastoupeny příklady z oblastí, kde zobrazení  bude
vykazovat větší změny. Jedině pak můžeme očekávat rozumnou generalizaci – schopnost
81
sítě zobecňovat.
d) Máme-li k dispozici uspokojivou trénovací množinu , hledáme neuronovou síť tak, aby
jí realizované zobrazení  co nejpřesněji odpovídalo na podněty z  (tj. aby co nejlépe
extrahovalo znalosti z , co nejlépe je reprezentovalo a generalizovalo). Najít takovou síť
znamená předně zvolit správně počet skrytých vrstev a počty neuronů v nich a dále
stanovit správně váhy popř. prahy všech spojů případně jiné parametry specifické pro
danou metodu hledání sítě.
Cílem vytváření neuronových sítí je získání struktur, které by měly svým chováním
napodobovat svoje biologické vzory. Jestliže je významnou vlastností biologické neuronové
sítě její adaptabilita a schopnost přizpůsobení svých vlastností požadavkům požadovaného či
optimálního chování, je obdobná adaptabilita umělé neuronové sítě zřejmě prvořadá. Jako
základní a podstatnou vlastnost neuronových sítí považujeme jejich schopnost adaptace - tedy
učení. Při využití neuronové sítě pak odpadá nutnost hledání a vytváření algoritmů, které
transformují množinu dat vstupních do množiny dat výstupních. Způsob transformace
vstupních dat určuje právě fáze učení (adaptace sítě), založená na využití vzorů (příkladů)
požadovaného chování - tzv. trénovací množiny.
Proces hledání optimálního nastavení struktury i parametrů neuronové sítě k dosažení
požadované transformace vstupní množiny do množiny výstupní (požadované chování
neuronové sítě) se nazývá adaptace sítě. Pro adaptaci vícevrstvé neuronové sítě se spojitými
perceptrony byla vyvinuta a často je používána adaptační metoda tzv. "back-propagation"
(BP) - metoda "zpětného šíření".
Příklad 1
Velmi často se trénovací množina generuje tak, že na vstup matematického modelu
modelované soustavy přivádíme náhodný signál o náhodné frekvenci a amplitudě. Tím se
zaručuje lepší „pokrytí“ prostoru vstupních hodnot a zvyšujeme vlastnost generalizace sítě.
Shrnutí pojmů
Propojení neuronů může být libovolné. V praxi však používáme tzv. sítě vícevrstvé, v nichž
jsou neurony uspořádány do několika vrstev nad sebou. První vrstva je pak vrstvou vstupní,
poslední je vrstva výstupní. Mezilehlé vrstvy se pak nazývají vrstvy skryté.
Vícevrstvá neuronová síť má m- vstupních neuronů ve vrstvě vstupní, n-výstupních neuronů
ve vrstvě výstupní a r- vrstev skrytých, přičemž.s- tá vrstva má k- neuronů.
Každému reálnému spojitému zobrazení  z m-rozměrného vstupního prostoru do arozměrného prostoru výstupního lze najít skryté vrstvy a hodnoty vah (prahů) a tím tedy
určitou síť tak, že  je realizováno touto sítí s libovolnou přesností.
Jako základní a podstatnou vlastnost neuronových sítí považujeme jejich schopnost adaptace tedy učení. Při využití neuronové sítě pak odpadá nutnost hledání a vytváření algoritmů, které
transformují množinu dat vstupních do množiny dat výstupních. Způsob transformace
82
vstupních dat určuje právě fáze učení (adaptace sítě), založená na využití vzorů (příkladů)
požadovaného chování - tzv. trénovací množiny.
Otázky 7.2.
Jak se nazývají vrstvy vícevrstvé neuronové sítě ?
Jaká je základní vlastnost vícevrstvé neuronové sítě ?
Co je to procedura adaptace a jakou roli hraje trénovací množina dat ?
Úlohy k řešení 7.2.
Nakreslete vícevrstvou neuronovou síť s označením 4-1-2 !
83
7.3 Strategie adaptační metody
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit metodu učení vícevrstvé neuronové sítě
Výklad
V první řadě se budeme věnovat problému, jak k vícevrstvé síti u níž již známe její topologii
(počet vrstev a neuronů v nich) najít váhy všech spojů. Problém nalezení topologie budeme
řešit dále.
Vycházíme z vah, které jsou zvoleny náhodně. Tyto zřejmě nebudou vyhovovat
požadovanému zobrazení  a bude je třeba v procesu adaptace sítě upravit. K tomu lze využít
několika metod, zejména metod gradientních, stochastických a metod genetických algoritmů.
Jednou z nejpoužívanějších metod je tzv. metoda zpětného šíření chyby (BP – backpropagation) [14].
Základem metody adaptace (učení) je použití trénovací množiny obsahující vzory
(požadované hodnoty) excitací neuronů vstupní a výstupní vrstvy. Trénovací množinu TR pak
zapisujeme jako množinu uspořádaných dvojic
TR = {{X01, Y01} {X02, Y02} ... {X0p, Y0p}}
X0i = [x01 x02 ... x0k],
x0j <0,1>
Y0i = [y01 y02 ... y0m],
y0j <0,1>,
kde p- je počet vzorů trénovací množiny, X0i je vektor excitací vstupní vrstvy s k- neurony,
Y0i je vektor excitací výstupní vrstvy tvořené m- neurony a x0j, y0j jsou excitace j-tého neuronu
vstupní resp. výstupní vrstvy.
Adaptační algoritmus (algoritmus učení) metody BP lze popsat těmito procedurami:
1. Neurony vstupní vrstvy excitujeme na odpovídající úroveň vektorem X0i i-tého prvku
trénovací množiny TR.
2. Provedeme šíření tohoto signálu dopředným způsobem (feedforward) až k výstupní
vrstvě neuronů takto:
2.1 Excitace první vrstvy jsou vahami přivedeny k následující vrstvě a upraveny
pomocí synaptických vah;
2.2 Každý neuron této vyšší vrstvy provede sumaci opravených signálů od nižší vrstvy
84
a je excitován na úroveň danou svojí aktivační funkcí;
2.3 Kroky 2.1 a 2.2 jsou opakovány přes všechny vnitřní vrstvy až k vrstvě výstupní,
čímž jsou získány excitační stavy jejích neuronů;
3. Porovnáme požadovaný stav Y0i i-tého prvku trénovací množiny se skutečnou odezvou
neuronové sítě Y*i.
4. Diference skutečné a požadované hodnoty odezvy definuje chybu, kterou pak v určitém
poměru vracíme do neuronové sítě formou úpravy synaptických vah směrem od horních
vrstev k vrstvám nižším tak, aby chyba následující odezvy klesla.
5. Po vyčerpání celé trénovací množiny vyhodnotíme celkovou chybu (přes všechny vzory
trénovací množiny TR) a pokud je tato chyba vyšší než chyba požadovaná, opakujeme
kroky 1. až 4 znovu.
Schéma adaptační metody, v níž učící se proces je řízen velikostí chybové funkce En, je na
Obr.33.
Obr.33
Cílem adaptivní strategie metody BP je tedy minimalizace funkce chyby En, definované
vztahem
En 

1 p m 0
 y j  y*j
2 i 1 j 1

2
i
kde y0j je skutečná a y*j je požadovaná odezva j- tého neuronu výstupní vrstvy. Algoritmus
back-propagation můžeme nalézt např. v 14.
Neuronová síť, popsaná v této části, je koncipována zcela univerzálně a je určena pro
modelování obecné vícerozměrné závislosti (chování vícerozměrné soustavy) typu MIMO
(Multi - Input - Multi - Output).
85
Příklad 1
Pro realizaci procedury adaptace neuronové sítě, tj. optimalizace jejích parametrů, se
používají i jiné optimalizační metody. Z nich je třeba jmenovat zdokonalenou GaussNewtonovu optimalizační metodu Levenberg-Marquardt. V dalších kapitolách uvedeme
použití univerzálního optimalizačního genetického algoritmu.
Shrnutí pojmů
Základem metody adaptace (učení) je použití trénovací množiny obsahující vzory
(požadované hodnoty) excitací neuronů vstupní a výstupní vrstvy.
Pomocí adaptačního algoritmu (algoritmu učení) metody BP adaptujeme automaticky
parametry sítě (velikosti vah jejích vazeb a parametry přenosových funkcí neuronů) tak,
abychom minimalizovali chybu sítě.
Vícevrstvé neuronové sítě se používají k řešení složitých úloh, jako jsou úlohy klasifikace,
predikce, řízení nebo komprese dat.
Otázky 7.3.
Vysvětlete složení trénovací množiny dat
Vysvětlete metodu adaptace neuronové sítě metodou zpětného šíření chyby
Co je to chybová funkce ?
Vyjmenujte příklady použití vícevrstvých neuronových sítí !
Úlohy k řešení 7.3.
Vymyslete příklady úloh pro řešení pomocí vícevrstvých neuronových sítí !
86
7.4 Architektury neuronových sítí
Čas ke studiu: 1 hod
Cíl
Po prostudování tohoto odstavce budete umět
 popsat strukturu a funkci Hopfieldovy neuronové sítě
 popsat strukturu a funkci Kohonenovy neuronové sítě
 vysvětlit způsoby použití vícevrstvých neuronových sítí
Výklad
Hopfieldova síť
V Hopfieldově síti [13], představující tzv. Hopfieldův model, je každý z jejích n neuronů
spojen s každým prostřednictvím spojů se symetrickými váhami
wij = wji
Hopfieldovy sítě patří do skupiny sítí rekurentních a slouží jako tzv. asociativní paměti.
Jestliže přivedeme na vstupy takové sítě určité hodnoty, po naučení sítě jsou tytéž hodnoty na
jejích výstupech. Počet neuronů sítě je roven počtu vstupů sítě nebo jejich výstupů, protože
vstupní neurony jsou současně i neurony výstupními. Obraz jednoduché Hopfieldovy sítě
s šesti neurony je na Obr. 34.
Obr.34
87
Jestliže označíme počáteční stav vstupů sítě xp, jeví síť tendenci přecházet (relaxovat) do
některého z dříve naučených stavů xi, který je blízký stavu xp. Tento stav se objeví na výstupu
sítě. Jde tedy o proces vybavení dříve naučeného („viděného“) vzoru na základě zadání, které
může být i neúplné nebo nepřesné (xp může představovat jenom část xi, jeho „zašuměnou“
verzi apod.). Asociativnost Hopfieldovy sítě je dána tím, že vybavovaný vzor zadáváme jeho
jistou částí, do značné míry libovolnou. Vzor je vybavován podle části svého „obsahu“,
nikoliv odkazem na nějakou jeho „adresu“.
Adaptace vah neuronů se řídí Hebbovým zákonem. Vnutíme-li dvěma neuronům stavy xi a xj
změní se jejich vazba wij o hodnotu
wij  wij t  1  wij t   xi t   x j t , i, j  1,..., n
Každý vstupní vektor ovlivní takto celou matici vzájemných vazeb wij. Pro změnu stavu
neuronové sítě xi pak platí vztah
 n

xi t  1  sign  wij  x j t  , i  1,..., n
 j 1

Siť se stabilizuje ve stavu
x t 0   x t 0  1
V celkovém důsledku se síť chová tak, že usiluje o dosažení minima hodnoty odpovídající
velikosti její energie
E

1 n  n
  wij x j  xi



2 i 1  j 1

Jednotlivé neurony mění svůj stav (tj. jsou aktivizovány) – na rozdíl od neuronové sítě
vícevrstvé - asynchronně. Problémem Hopfieldových sítí je skutečnost, že počet
uchovatelných vzorů je malý (asi 0,15N, kde N je počet neuronů sítě).
Hopfieldovy sítě s výhodou používají k realizace funkcí rozpoznávání vzorů a klasifikaci.
Skutečnost, že standardní Hopfieldova síť dosáhne nutně v konečném čase (lokálního)
minima své energie, se využívá k (suboptimálnímu) řešení některých optimalizačních úloh.
Kohonenova síť
Typickou procedurou učení vícevrstvých neuronových sítí je učení s učitelem, při němž je síti
předkládán požadovaný výsledek. U živých organizmů je takovou analogií učení se na
základě „odměny a trestu“. V přírodě se organizmy nepoučují jen pomocí vnějších kritiků
(rodiče, společnost), ale i vlastním hodnocením vlastní historie. Pokud se funkce sítě upravuje
(adaptuje) jen na základě stimulů a ne na základě vnějšího hodnocení odpovídajících reakcí,
hovoříme o její samoorganizaci. Do třídy takových sítí patří i neuronové sítě Kohonenovy –
Obr.35a [13].
88
Obr.35a
Uvažujme situaci, kdy k- neuronů je určeno k rozpoznání k- tříd (kategorií) a každý vstupní
vektor příznaků x máme přiřadit jedné z nich. Při tom podobným (ve smyslu nějaké metriky)
vstupním vektorům má odpovídat tatáž kategorie. Vezměme jednoduchou dvouvrstvou síť
s náhodně inicializovanými váhami. Neuron i vyšší vrstvy spojený se všemi neurony j vstupní
vrstvy váhami wij je daným vstupním vektorem x na potenciál wix. Pro daný vstup pak
existuje výstupní neuron, který je excitován nejvíce. Označme jej . Platí
w * X  wi X , pro všechna ostatní i.
Řekněme, že  reprezentuje x. Pokud je jiný vstup x´ blízký vektoru x, je pravděpodobné, že 
bude reprezentovat i x´.
Funkci takového klasifikátoru výrazně zlepší procedura adaptace, kdy příchod každého
nového vektoru x´ posune (adaptuje) váhový vektor w reprezentující vektory blízké vektoru
x tak, aby  reprezentoval i x´. Toho se dosahuje použitím Kohonenova adaptačního pravidla
w * nové   w * ( staré )    X  w * ( staré ) 
K výběru neuronu, který je daným vstupem nejvíce excitován, slouží jev zvaný kompetice.
Každý neuron vrstvy posiluje sám sebe a potlačuje ostatní s týmiž koeficienty úměrnosti. Tím
jeho náskok postupně vzrůstá až nakonec ten, který měl na začátku byť jen malý náskok,
dosáhne své maximální hodnoty výstupu zatímco výstupy ostatních jsou nulové. Takový
mechanizmus (laterální inhibice) je znázorněn na Obr.35b.
89
Obr.35b
Tento mechanizmus je zaveden tím, že navíc ke spojům vedoucím mezi vrstvami neuronů je
horní vrstva realizována jako Hopfieldova síť, kde wii  0, wii  0, j  i.
Příklad 1
Použití vícevrstvých neuronových sítí v jednotlivých typických úlohách:
a) Klasifikace
Pro klasifikaci vstupů {x} do dvou tříd použijeme např. síť m - k – 1 (vstupní vrstva mneuronů, k- skrytých vrstev, výstupní vrstva 1 neuron) s trénovací množinou {x, y …}, kde y
= 1 nebo y = 0 podle toho, do které třídy vstup x patří. Chceme-li klasifikovat do více tříd,
použijeme více výstupních neuronů.
b) Predikce
Mějme časovou posloupnost x1 ,x2 ,…,xj ,… ,xT ,xT+1, kde prvky xi pro i = 1,2,…,T jsou
změřeny. Pro m  T předkládáme na vstup sítě vždy m-tici známých hodnot a pomocí (m +
1)-ní hodnoty na výstupu učíme. Pokud je síť schopna extrahovat v adaptačním módu dobře
zákonitosti „historie“, bude v aktivním módu schopna předpovídat i xT+1 položíme-li na vstup
m- známých hodnot.
c) Řízení
Neuronové sítě jsou schopny napodobovat různé řídicí systémy tím, že po delší dobu
„pozorují“ a s postupem adaptace stále lépe kopírují. Tak jsou schopny nahradit např. člověka
(experta), který na základě své dlouholeté praxe a neuvědomované intuice převádí jisté
indikační příznaky na řídicí povely (expertní systém jako regulátor). Je to typický příklad
extrakce znalostí, které expert není schopen formulovat ve tvaru pravidel.
d) Komprese dat
Uvažujme tří-vrstvou neuronovou síť s počtem k- neuronů ve skryté a m- neuronů ve vstupní
a výstupní vrstvě (k  m). Naučíme-li takovou síť na identitu (tj. x = y ) potom skrytá vrstva
reprezentuje data komprimovaná na m/k původního počtu. Sít realizující identické zobrazení
m-bitových signálů se rozdělí do dvou částí (vysílač-přijímač) které komunikují
prostřednictvím přenosu kódu na k  m linkách.
90
Shrnutí pojmů
V Hopfieldově síti, představující tzv. Hopfieldův model, je každý z jejích n neuronů spojen
s každým prostřednictvím spojů se symetrickými váhami. Hopfieldova síť má cyklickou
uzavřenou strukturu (topologii).
Hopfieldovy sítě patří do skupiny sítí rekurentních a slouží jako tzv. asociativní paměti.
Jestliže přivedeme na vstupy takové sítě určité hodnoty, po naučení sítě jsou tytéž hodnoty na
jejích výstupech. Počet neuronů sítě je roven počtu vstupů sítě nebo jejich výstupů, protože
vstupní neurony jsou současně i neurony výstupními.
Asociativnost Hopfieldovy sítě je dána tím, že vybavovaný vzor zadáváme jeho jistou částí,
do značné míry libovolnou.
Hopfieldovy sítě s výhodou používají k realizace funkcí rozpoznávání vzorů a klasifikaci.
V přírodě se organizmy nepoučují jen pomocí vnějších kritiků (rodiče, společnost), ale i
vlastním hodnocením vlastní historie. Pokud se funkce sítě upravuje (adaptuje) jen na základě
stimulů a ne na základě vnějšího hodnocení odpovídajících reakcí, hovoříme o její
samoorganizaci. Do třídy takových sítí patří i neuronové sítě Kohonenovy. V postupu
předkládání vektoru vstupních dat se mění excitace výstupních neuronů tak, že u jednoho
neuronu jeho výstup roste a u ostatních klesá.
K výběru neuronu, který je daným vstupem nejvíce excitován, slouží jev zvaný kompetice.
Každý neuron vrstvy posiluje sám sebe a potlačuje ostatní s týmiž koeficienty úměrnosti. Tím
jeho náskok postupně vzrůstá až nakonec ten, který měl na začátku byť jen malý náskok,
dosáhne své maximální hodnoty výstupu zatímco výstupy ostatních jsou nulové.
Kohonenovy sítě jsou vhodné pro řešení úloh rozpoznávání.
Otázky 7.4.
Jaká je typická topologie Hopfieldovy neuronové sítě ?
Co je to vlastnost asociativní paměti a jak se tato vlastnost projevuje ?
Jaký je princip funkce Kohonenovy neuronové sítě ?
Vysvětlete princip procedury kompetice !
Úlohy k řešení 7.4.
Nakreslete Hopfieldovu síť se čtyřmi neurony a všemi vazbami, včetně jejích vstupů a
výstupů !
Nakreslete Kohonenovu neuronovou síť pro rozpoznávání šesti hlásek pomocí tří jejich
formantů !
91
8 – GENETICKÉ ALGORITMY
8.1 Evoluční strategie
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Popsat aplikaci principů biologického evolučního vývoje v technice
Výklad
Neuronové sítě, popsané v minulé kapitole, nejsou jediným nástrojem umělé inteligence,
jehož inspirací jsou biologické struktury a jejich funkce. Objevy v oblasti genetiky vedly k
úspěšnému pokusu o umělé napodobení procesů, které jsou základem utváření charakteru
jedince a mechanizmu dědění jeho vlastností v potomstvu. Výsledkem jsou vyhledávací
algoritmy, založené na principech biologické evoluce a na mechanizmu přirozeného výběru.
Díky evolučním principům jsou takové algoritmy poměrně jednoduché a mají oproti jiným
vyhledávacím a optimalizačním metodám řadu výhod.
Biologická evoluce je založena na změnách genetické struktury populace a zahrnuje štěpení,
vznik a zánik vývojových linií organizmů. Evoluční mechanizmy jsou prověřeny v přírodě
dlouhodobým vývojem. Lze je úspěšně aplikovat i na technické problémy, a to zejména
takové, které jsou složité nebo těžko popsatelné matematickými metodami. Obecně jsou
určeny k vyhledávání nejlepších (optimálních) řešení různých problémů. Evoluční algoritmy
se dělí na genetické algoritmy, genetické programování a evoluční strategie 15.
Genetické algoritmy (GA) používají pro nalezení optimálního řešení speciální procedury,
nazývané operacemi selekce, křížení a mutace pro simulaci procesu reprodukce. Zatím co GA
pracují pouze s parametry účelové funkce optimalizační úlohy, genetické programování
pracuje i s proměnnými a funkcemi s úlohou spojenými.
Genetické programování je vhodné pro řešení speciálních problémů (symbolická regrese).
Tyto algoritmy jsou silně závislé na charakteru řešeného problému a proto neexistují v obecné
formě.
Evoluční strategie na rozdíl od genetických algoritmů nemusí používat operaci křížení a
potomky (varianty řešení problému v rámci vyhledávání optimálního řešení) mohou vytvářet
např. pouze modifikací (mutací) jednoho rodiče (řešení).
Pokročilé evoluční algoritmy využívají ke zrychlení a zvýšení spolehlivosti nalezení
optimálního řešení problému principy matematické statistiky. Jejich použití vyžaduje
vytvoření tzv. pravděpodobnostního modelu řešení daného problému. Nová řešení jsou
v průběhu vyhledávání optimálního řešení generována právě na základě tohoto modelu.
92
Nejpoužívanějšími pravděpodobnostními modely jsou zde tzv. modely Bayesovské. Takové
evoluční algoritmy jsou pak nazývány algoritmy Bayesovskými.
V další kapitole se budeme zabývat nejrozšířenějšími evolučními algoritmy – algoritmy
genetickými.
Příklad 1
Procedurou biologické genetiky je hynutí a přežívání takových živočichů, kteří nejsou či jsou
schopni přizpůsobit se změněným životním podmínkám.
Shrnutí pojmů
Biologická evoluce je založena na změnách genetické struktury populace a zahrnuje štěpení,
vznik a zánik vývojových linií organizmů. Evoluční mechanizmy jsou prověřeny v přírodě
dlouhodobým vývojem. Lze je úspěšně aplikovat i na technické problémy, a to zejména
takové, které jsou složité nebo těžko popsatelné matematickými metodami. Obecně jsou
určeny k vyhledávání nejlepších (optimálních) řešení různých problémů. Evoluční algoritmy
se dělí na genetické algoritmy, genetické programování a evoluční strategie.
Otázky 8.1.
Jaká je základní myšlenka biologických evolučních procesů ?
Jaké problémy řeší evoluční metody v technické oblasti ?
Úlohy k řešení 8.1.
Vyjmenujte alespoň dva biologické evoluční procesy, které proběhly v přírodě !
93
8.2 Genetický algoritmus
Čas ke studiu: 1 hod
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit princip genetického algoritmu
 Definovat funkci základních genetických operací
Výklad
Genetický algoritmus (GA) je robustní vyhledávací procedura, která je založena na principu
přirozeného výběru a přírodní genetiky. Svoje největší uplatnění nachází v úlohách
optimalizace a strojového učení. Genetické algoritmy se vyznačují zejména těmito znaky:
- mají daleko širší hranice svého použití, než klasické optimalizační metody. Z pohledu
způsobu formalizace zadání optimalizační úlohy jsou to metody zcela univerzální.
Omezení jejich praktické použitelnosti je dáno hlavně dobou výpočtů.
- nepracují s lokálními parametry optimalizovaného procesu, nýbrž operují s globální
strukturou - chromozomem - v němž jsou jednotlivé parametry zakódovány.
- jsou to slepé prohledávací metody, které principiálně nevyžadují dodatečné informace pro
řízení výpočtu (jako např. metody gradientní). Pro orientaci optimálního postupu řešení
vyžadují pouze formulaci účelové funkce. Dodatečné informace však mohou významně
snižovat dobu, potřebnou k nalezení optimálního řešení.
- pro řízení vyhledávacích procedur využívají, na rozdíl od jiných metod, statistická
přechodová pravidla.
Základem pro operace GA je, jak již bylo řečeno, znakový řetězec, v němž jsou zakódovány
parametry studovaného procesu. Tento řetězec je, ve shodě se svým biologickým vzorem,
nazván chromozomem. Principem funkce GA je pak kopírování těchto řetězců a vyměňování
jejich částí navzájem.
Obecně jsou chromozomy bitové řetězce. Příkladem takového chromosomu je např. struktura
[1 0 1 1 0 0 1 0 1]
Jednotkami chromozomu jsou zde jednotlivé bity - geny. Jednotlivé geny mohou být (v
závislosti na řešené problematice) obsazeny i reálnými čísly, což vede ke struktuře
chromosomu v podobě seznamu reálných čísel, např.
[0.1 0.5 1.0 0.4 0.2].
94
Ve všech případech má však chromozom konečnou délku. Každý gen - bit nebo reálné číslo je (stejně jako v biologii) nositelem vlastností chromozomu.
Množina chromozomů je nazývána populací. V každém kroku genetického procesu tvoří
příslušná populace tzv. generaci chromozomů.
Generace chromozomů vzniká reprodukcí populace. Každý chromozom populace je vybaven
fitness hodnotou, která je dána cílovou (účelovou) funkcí (fitness - vhodnost chromosomu) a
vyjadřuje míru přiblížení se chromosomu optimálnímu.
Mechanizmy GA umožňují kopírování řetězců a vzájemnou výměnu jejich částí pomocí tří
operací, a to
- operace reprodukce,
- operace křížení,
- operace mutace.
Operace reprodukce je proces, při němž jsou jednotlivé chromozomy kopírovány do nové
populace podle velikosti jejich fitness hodnoty. Čím je její velikost vyšší, tím má chromozom
větší pravděpodobnost přežití, tj. přestupu do další generace chromozomů. Tím jsou "dobrá"
řešení vybírána pro další reprodukci a "špatná" jsou eliminována. Vybraná řešení
(chromozomy) jsou dále podrobena dalším operacím - křížení a mutaci.
Proces křížení umožňuje rekombinaci částí vybraných párů chromozomů (rodiče). Tento
proces je tvořen dvěma kroky:
- v prvním jsou vytvořeny náhodné páry dvou chromozomů,
- ve druhém je realizován vlastní proces výměny informace křížením.
Křížení je provedeno tak, že náhodným výběrem (z rovnoměrného rozdělení) se stanoví bod
křížení k v chromozomu a z původních dvou chromozomů rodičovských se vytvoří dva noví
jedinci tak, že první potomek je tvořen geny na pozici (1 až k) jednoho z rodičů a geny na
pozicích [(k+1) až L] druhého rodiče, přičemž L je celkový počet genů (délka) chromozomu.
Druhý potomek má pořadí genů stanoveno křížem opačně. Proces křížení je znázorněn na
Obr.36.
95
Obr.36
Dalším operátorem GA je mutace. Touto procedurou je s určitou, obvykle velmi malou
pravděpodobností, měněna hodnota genů chromozomu z 1 na 0 a opačně. Význam této
operace je v tom, že zabraňuje ztrátě určité genetické informace obsažené ve "špatných"
chromozomech. Princip operace mutace je uveden na Obr.37.
Obr.37
Vytvoření genetického algoritmu provází pětice základních problémů:
1. Metoda (způsob) zakódování chromozomů
2. Definice účelové funkce (fitness hodnoty)
3. Způsob získání výchozí (startovní, nulté) generace chromozomů
96
4. Množina operátorů pro vygenerování následující generace chromozomů (populace)
5. Množina pracovních parametrů.
V populaci je obsaženo P chromozomů. Výchozí (nultá) populace chromozomů p0 je
generována pomocí generátoru náhodných čísel. Entita akt označuje k-tý chromozom v t-té
generaci. I je chromozom, zakódovaný formou řetězce genů (parametrů).
Evoluční proces genetického algoritmu pokračuje tak dlouho, dokud stop-kriterium (T=0)
nedosáhne hodnoty (T=1). Stop-kriteriem je dvouhodnotová proměnná, která změní svoji
binární hodnotu v okamžiku, kdy je možno proceduru vyhledávání optimálního řešení
ukončit.
Genetické algoritmy jsou samy o sobě univerzálním, robustním a efektivním prostředkem pro
hledání optimálních řešení problémů. Velmi zajímavé možnosti svého uplatnění však
nacházejí genetické algoritmy, jako optimalizační procedury, ve fuzzy systémech, systémech
s neuronovými sítěmi případně v systémech fuzzy-neuronových. Těmto aplikacím se budeme
věnovat dále.
Příklad 1
Příklad zakódování konkrétní úlohy do chromozomu. Jsou zakódovány chromosomy dvou
optimalizovaných parametrů, jejichž hodnoty 41 a 43 jsou kódovány jako osmibitová
dvojková čísla.
Obr.38
Shrnutí pojmů
Genetické algoritmy se mají daleko širší hranice svého použití než klasické optimalizační
metody. Z pohledu způsobu formalizace zadání optimalizační úlohy jsou to metody zcela
univerzální. Omezení jejich praktické použitelnosti je dáno hlavně dobou výpočtů. Nepracují
s lokálními parametry optimalizovaného procesu, nýbrž operují s globální strukturou chromozomem - v němž jsou jednotlivé parametry zakódovány. Jsou to slepé prohledávací
metody, které principiálně nevyžadují dodatečné informace pro řízení výpočtu (jako např.
metody gradientní). Pro orientaci optimálního postupu řešení vyžadují pouze formulaci
účelové funkce. Dodatečné informace však mohou významně snižovat dobu, potřebnou k
nalezení optimálního řešení. Pro řízení vyhledávacích procedur využívají, na rozdíl od jiných
metod, statistická přechodová pravidla.
Genetické algoritmy jsou samy o sobě univerzálním, robustním a efektivním prostředkem pro
hledání optimálních řešení problémů. Velmi zajímavé možnosti svého uplatnění však
97
nacházejí genetické algoritmy, jako optimalizační procedury, ve fuzzy systémech, systémech
s neuronovými sítěmi případně v systémech fuzzy-neuronových.
Otázky 8.2.
Jak jsou generováni potomci pomocí operace křížení ?
Jak se realizuje operace mutace ?
Čím jsou ohodnocováni jedinci v generaci ?
Úlohy k řešení 8.2.
Navrhněte chromozom pro zakódování parametrů fuzzy množiny A, která je dána čtyřmi
body zlomu její po částech lineární lichoběžníkové funkce příslušnosti. K zakódování použijte
binárního kódu:
A: 5, 8, 12, 16
98
9 – INTEGROVANÉ SYSTÉMY SOFT-COMPUTINGU
9.1 Integrace principů umělé inteligence (soft-computing)
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 vysvětlit důvody a principy kombinace metod umělé inteligence
 vyjmenovat nejpoužívanější metody soft-computingu
Výklad
V minulých kapitolách byly popsány nejpoužívanější metody umělé inteligence, založené na
principech fuzzy množinové matematiky, umělých neuronových sítí a genetických algoritmů.
Jejich principů využívají fuzzy expertní systémy, fuzzy regulátory, neuronové modely
složitých soustav a genetické algoritmy pro optimalizaci procesů. Na příkladech použití těchto
nástrojů byla demonstrována jejich efektivita a schopnost využívat pro svoji funkci neurčitosti
a neúplných informací o soustavách i datech, které takové špatně popsatelné soustavy
charakterizují.
V průběhu vývoje a aplikací těchto metod umělé inteligence se ukázalo, že v mnohých
případech lze jednotlivé metody, tj. přístupy fuzzy množinové matematiky, neuronových sítí a
genetických algoritmů spojovat a vytvářet přístupy nové, kombinované, které jsou výkonnější
než jejich přístupy jednotlivé. Tak vznikla celá řada nových nástrojů, které jsou zařazovány
do širší oblasti tzv. výpočtové inteligence nebo soft-computingu 13. Nejčastěji používanými
kombinacemi jsou metody fuzzy-neuronové, fuzzy-genetické, neuro-genetické či konečně
fuzzy-neuro-genetické. V kombinacích se také vyskytují hybridní přístupy, které využívají i
principů konvenčních či nekonvenčních metod pravděpodobnostních a matematickou
statistiku.
Příklad 1
V praktických aplikacích metod soft-computingu se nejčastěji vyskytují kombinace přístupů
fuzzy logika + neuronové sítě
neuronové sítě + genetické algoritmy
fuzzy logika + genetické algoritmy
fuzzy logika + neuronové sítě + genetické algoritmy.
Následující kapitoly jsou věnovány těmto kombinacím s ukázkami příkladů praktického
řešení.
99
Shrnutí pojmů
V průběhu vývoje a aplikací metod umělé inteligence se ukázalo, že v mnohých případech lze
jednotlivé metody, tj. přístupy fuzzy množinové matematiky, neuronových sítí a genetických
algoritmů spojovat a vytvářet přístupy nové, kombinované, které jsou výkonnější než jejich
přístupy jednotlivé. Tak vznikla celá řada nových nástrojů, které jsou zařazovány do širší
oblasti tzv. výpočtové inteligence nebo soft-computingu. Nejčastěji používanými
kombinacemi jsou metody fuzzy-neuronové, fuzzy-genetické, neuro-genetické či konečně
fuzzy-neuro-genetické. V kombinacích se také vyskytují hybridní přístupy, které využívají i
principů konvenčních či nekonvenčních metod pravděpodobnostních a matematickou
statistiku.
Otázky 9.1.
Jaký je princip metod soft-computingu ?
Které metody umělé inteligence jsou v soft-computingových přístupech nejčastěji využívány?
Úlohy k řešení 9.1.
Navrhněte příklad kombinace některé z metod umělé inteligence s metodou matematické
statistiky !
100
9.2 Fuzzy-neuronové systémy
Čas ke studiu: 1 hod
Cíl
Po prostudování tohoto odstavce budete umět
 vysvětlit princip kombinace metod fuzzy logiky a neuronových sítí
 popsat a objasnit příklad praktické aplikace
Výklad
V mnohých případech praktického použití vícevrstvých neuronových sítí je jejich nevýhodou
skutečnost, že neexistuje znalost kauzálních vztahů nebo postupů, jejichž prostřednictvím jsou
vstupní veličiny transformovány na veličiny výstupní. Algoritmus neuronové sítě je v tomto
případě pro vysvětlení způsobu výpočtu výstupních hodnot nedostatečný. Znalost postupu
výpočtu v případě neuronových sítí je znalostí skrytou (tacitní). Velkou výhodou
neuronových sítí je naopak jejich obecná schopnost samoučení. Naproti tomu velmi
srozumitelný základ pro vyvození hodnot výstupních veličin představují fuzzy orientované
pravidlové systémy. Podmíněná IF-THEN pravidla jsou dokonale srozumitelná hlavně pro
uživatele, pro něž je takto popsaný systém transparentní a při použití vzbuzuje důvěru.
Schopnost automatické identifikace fuzzy modelů je však omezená.
Z těchto hledisek je proto velmi zajímavá kombinace fuzzy modelu a neuronové sítě, která
umožňuje vysvětlení zásad výpočtu hodnot výstupních veličin pravidlovým popisem a přitom
má plnou schopnost automatické identifikace parametrů pomocí trénovací množiny
naměřených dat. V takových případech je pak použita vícevrstvá neuronová síť, jejichž
neurony obsahují procedury nutné pro realizaci fuzzy modelu typu Mamdani nebo TakagiSugeno. Po naučení takové fuzzy-neuronové sítě lze tvar i parametry takto identifikovaných
pravidel z neuronové sítě extrahovat a pracovat s nimi dále jako s modelem pravidlovým.
Velmi často se taková kombinace používá ve spojitosti s fuzzy-neuronovými modely nebo
regulátory.
Na rozdíl od fuzzy pravidlových modelů, v nichž jsou znalosti vyjádřeny explicitně ve formě
jednotlivých pravidel, neuronová síť akumuluje znalosti implicitně (skrytě, tacitně) do hodnot
synaptických vah a parametrů přenosových funkcí svých neuronů. Mají však velkou přednost
v možnosti svého učení prostřednictvím tréninkové množiny.
Fuzzy neuronové sítě jsou postaveny na principu transformace fuzzy pravidlového modelu do
topologie odpovídající vícevrstvé neuronové sítě, adaptace (naučení) parametrů této sítě
pomocí trénovací množiny a zpětné transformace naučené sítě do explicitních fuzzy pravidel.
Takový přístup ukazuje Obr.39.
101
Obr.39
Uvažujme expertně sestavený model typu Mamdani, jehož struktura je dána m- vstupními
proměnnými xj, j = 1,…,m a jednou proměnnou výstupní y. i-té pravidlo takového modelu má
tvar
Ri: IF (xi is A1i) and ... and (xm is Am1) THEN (y is Bi)
V této fázi tvorby modelu jsou jeho parametry neznámé. K jejich identifikaci použijeme
metodu fuzzy neuronové sítě.
Topologie takové neuronové sítě musí odpovídat struktuře (tvaru a počtu pravidel) fuzzy
modelu, přenosové funkce neuronů sítě pak musí realizovat fuzzy procedury nutné i realizaci
inferenčního mechanizmu (zde typu Mamdani).
Vyvozenou výstupní fuzzy množinu B0 získáme jako výstup rovnice představující tzv.
Maximo-minimální vyvozovací pravidlo (odpovídající metodě vyvození popsané v kap.5.2.)
B0   max min{min  Aij ( x j )   Bi ( y ) / y
y
j
i
Číselný výstup fuzzy neuronové sítě y* získáme defuzzifikací fuzzy množiny B0 procedurou
n
y  defuzz ( B0 ) 
gr
 y   Br ( y)dy
y
r 1
n
  B
y
r 1
gr
r
( y )dy
kde Br , r=1,…,n jsou jazykové hodnoty výstupní jazykové proměnné a gr je ořezávací
koeficient pro jejich hodnoty (viz kap.5.2.).
Transformace takového modelu a jeho realizace fuzzy procedur je provedena s využitím 5-ti
vrstvé neuronové sítě podle Obr.40
102
Obr.40
Označme obecně přenosovou funkci neuronu takové sítě f jako
y  f a x1 , x2 ,..., xn 
kde xi, i = 1,…,n jsou vstupy neuronu, a(.) je agregační funkce neuronu a f(.) je jeho funkce
přenosová.
Pro neurony první vrstvy (vstupní s indexem n) platí vztahy
a n ( xn )  xn
f n (an )  an
Ve druhé vrstvě (s indexem m) reprezentuje každý neuron jednu jazykovou hodnotu vstupní
proměnné a obsahuje funkci příslušnosti její fuzzy množiny. Tyto neurony realizují proceduru
výpočtu stupně příslušnosti aktuální hodnoty vstupní proměnné k této fuzzy množině. Váhový
koeficient wmn mezi neurony první a druhé vrstvy je přitom roven 1.
am ( xm )   Am ( xm )
f m (am )  am
Každý neuron třetí vrstvy (s indexem l ) odpovídá jednomu podmíněnému pravidlu a je
spojen s neurony druhé vrstvy podle jazykových hodnot které jsou obsaženy v antecedentu
příslušného pravidla. Plní proceduru výpočtu výsledné pravdivostní hodnoty (ořezávacího
koeficientu) pravidla.
al ( x1 , x2 ,..., x p )  minx1 , x2 ,..., x p 
f l (al )  al
Váhové koeficienty wlm mezi druhou a třetí vrstvou neuronů jsou opět rovny 1.
103
Každý neuron čtvrté vrstvy (s indexem j) odpovídá jedné jazykové hodnotě výstupní
proměnné a je propojen s těmi neurony třetí vrstvy, které reprezentují pravidla které se k této
hodnotě vyjadřují ve svém konsekventu. Každý neuron této vrstvy vypočítává tvar ořezané
fuzzy množiny jazykové hodnoty Br. Váhový koeficient mezi neurony třetí a čtvrté vrstvy je
opět roven 1.
ak  ( x1 , x2 ,..., xq )  maxx1 , x2 ,..., xq   g k
b1 k ( g k )   y   B gk ( y )dy
y
i
b 2 k ( g k )    B gk ( y )dy
y
i
Neuron v páté vrstvě (index k) sestavuje fuzzy množinu výsledné odpovědi modelu B0 a
provádí její defuzzifikaci
y  defuzz ( B0 )  a j 
b1 k ( g k )  b 2 k ( g k )
b2k (gk )
f j (a j )  a j
Váhový koeficient mezi neurony čtvrté a páté vrstvy je opět roven 1.
Takto je provedena transformace fuzzy pravidlového modelu do topologie odpovídající
vícevrstvé neuronové sítě. Pro její adaptaci (učení) je možno použít metodu Back Propagation
(BP), uvedenou v kap.7.3.
Uvedený postup konstrukce a využití fuzzy-neuronového modelu je uveden na Obr.41
104
Obr.41
Takto naučenou (adaptovanou) fuzzy-neuronovou síť můžeme použít k vyvozování výstupní
hodnoty modelu buď přímo bez dalších úprav, nebo můžeme extrahovat její parametry
k parametrizaci pravidel původního fuzzy pravidlového modelu (procedura retransformace,
zpětné transformace). Tím získáme výchozí fuzzy model nyní již parametricky
identifikovaný.
Fuzzy neuronová síť tak umožňuje automatickou identifikaci modelu Mamdani pomocí
tréninkové množiny dat.
Příklad 1
Jako příklad použití fuzzy-neuronového modelování zvolíme úlohu aproximace solně
nelineární závislosti. Pro její popis použijeme fuzzy pravidlový model a provedeme jeho
transformaci do formy neuronové sítě s její následnou adaptací [10]. Pro účely modelování
vytvořme umělý systém popsaný nelineární rovnicí
f(x) = 1/40.[3(4x-2)(4x-3)(4x-3.7)(4x-1.3)(4x-0.2) + 20]
Na Obr.43 je plnou čarou znázorněn průběh výchozí funkce f(x). Výchozí navržené rozdělení
105
vstupního fuzzy prostoru X a výstupního fuzzy prostoru Y na 6 podprostorů je nakresleno na
Obr.42.
Obr.42
Obr.43
Pro fuzzy popis chování funkce f(x) bylo sestaveno 6 podmíněných pravidel:
R1: IF X is A1 THEN Y is B1
R2: IF X is A2 THEN Y is B5
R3: IF X is A3 THEN Y is B3
R4: IF X is A4 THEN Y is B4
R5: IF X is A5 THEN Y is B2
R6: IF X is A6 THEN Y is B6
Při použití Mamdaniho inference a metody defuzzifikace pomocí těžiště je chování fuzzy
modelu znázorněno čárkovanou křivkou na Obr.43.
106
Z tohoto fuzzy modelu lze zkonstruovat fuzzy neuronovou síť, jejíž vrstvy mají následující
počet neuronů: 1 (1.vrstva), 6 (2.vrstva), 6 (3.vrstva), 6 (4.vrstva), 1 (5.vrstva). Fuzzy neuronový model je nakreslen na Obr.44.
Obr.44
Pomoci rovnice f(x) bylo vygenerováno 50 dat trénovací množiny. Rekonstruované fuzzy
množiny po ladění jsou nakresleny na Obr.45. Zlepšení adekvátnosti naladěného modelu
ukazují průběhy na Obr.46. Další ladění modelu provedeno nebylo, neboť jeho adekvátnost
byla shledána dostatečnou.
Obr.45
107
Obr.46
Shrnutí pojmů
Na rozdíl od fuzzy pravidlových modelů, v nichž jsou znalosti vyjádřeny explicitně ve formě
jednotlivých pravidel, neuronová síť akumuluje znalosti implicitně (skrytě, tacitně) do hodnot
synaptických vah a parametrů přenosových funkcí svých neuronů. Mají však velkou přednost
v možnosti svého učení prostřednictvím trénovací množiny.
Fuzzy neuronové sítě jsou postaveny na principu transformace fuzzy pravidlového modelu do
topologie odpovídající vícevrstvé neuronové sítě, adaptace (naučení) parametrů této sítě
pomocí tréninkové množiny a zpětné transformace naučené sítě do explicitních fuzzy
pravidel.
Otázky 9.2.
Jaká je myšlenka integrace přístupů fuzzy logiky a neuronových sítí ?
Jak probíhá proces identifikace fuzzy modelu typu Mamdani v prostředí vícevrstvé neuronové
sítě ?
Úlohy k řešení 9.2.
Promyslete případ, kdy je potřebné (nebo velice užitečné) znát přesné znění pravidel fuzzy
modelu. Nejčastěji jsou takové případy nutné v případě modelů, které řeší problémy spojené
s nebezpečnými situacemi.
108
9.3 Neuro-genetické systémy
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 Vysvětlit použití genetického algoritmu pro optimalizaci parametrů neuronové
sítě
Výklad
Idea využití GA v neuronových systémech spočívá v realizaci úlohy adaptace (učení)
neuronových sítí jako optimalizace počtu vrstev, počtu neuronů a synaptických vah pomocí
GA [10]. Jde tedy o náhradu běžně používané adaptační metody BP, jak byla na případu
obecných neuronů uvedena v kapitole 7.3.
Využití BP algoritmu pro adaptaci (učení) neuronové sítě, popsaného v kap.7.3, naráží v
určitých případech na řadu potíží. Reálné prostředí je totiž typické svojí diskontinuitou a
silnou multimodálností, špatně definovanými hodnotami, šumem a pod. V takových případech
může BP algoritmus nemusí být dostatečně robustní a efektivní a neuronová síť může
směřovat k lokálnímu minimu, i když je v blízkosti minimum mnohem hlubší.
Lepší výsledky dává v tomto případě náhrada metody BP metodou GA. Zdůrazněme nejprve
dva základní rysy GA při optimalizaci multimodálních funkcí:
- GA má schopnost konvergovat k optimu, lokálnímu nebo globálnímu,
po určení oblasti takové optimum obsahující;
- GA má schopnost prohledat nové oblasti prostoru řešení a hledat
optimum globální.
Tyto dva rysy zajišťují při řešení optimalizačních úloh vyšší robustnost metody GA než
metody BP.
Příklad 1
Příklad využití genetického algoritmu pro adaptaci neuronové sítě je uveden v následující
kapitole ve spojitosti se systémem fuzzy-neuro-genetickým.
Shrnutí pojmů
Idea využití GA v neuronových systémech spočívá v realizaci úlohy adaptace (učení)
neuronových sítí jako optimalizace počtu vrstev, počtu neuronů a synaptických vah pomocí
GA. Jde tedy o náhradu běžně používané adaptační metody BP.
109
Otázky 9.3.
Jaké výhody poskytuje použití GA pro adaptaci neuronové sítě ?
Úlohy k řešení 9.3.
V kterých případech může být použití GA pro adaptaci neuronové sítě nevýhodné
(neefektivní) ?
110
9.4 Fuzzy-genetické systémy
Čas ke studiu: 1 hod
Cíl
Po prostudování tohoto odstavce budete umět
 vysvětlit principy použití GA ve fuzzy modelování
 popsat a objasnit konkrétní aplikaci GA při optimalizaci parametrů fuzzy množin
Výklad
Konkrétní realizace genetického algoritmu vyžaduje vždy speciální implementaci genetických
operátorů (křížení, reprodukce a mutace). Jelikož genetický algoritmus je univerzálním
prostředkem pro hledání optimálního řešení úloh, lze jej použít i v případě optimalizace fuzzy
modelů. V úloze použití genetického algoritmu při optimalizaci struktury i parametrů fuzzy
IF-THEN pravidel existuje několik možností jeho aplikace. Základním problémem je zde
vhodné uložení optimalizovaných veličin do struktury chromozomu a volby vhodného
způsobu jejich zakódování.
Základními optimalizačními úlohami v případě pravidlového fuzzy modelu je stanovení počtu
pravidel, počet jazykových hodnot jeho vstupních a výstupních jazykových proměnných,
stanovení kombinací dílčích fuzzy tvrzení v antecedentech, pravidel, stanovení tvaru a
parametrů fuzzy množin pro formalizaci jazykových hodnot proměnných. Způsob integrace
fuzzy modelu a genetického algoritmu nejlépe vysvětlíme na příkladu, v němž je uveden
jednak způsob genetické optimalizace velikosti parametrů fuzzy množin jazykových hodnot,
jednak způsob hledání optimální struktury pravidel modelu.
Příklad 1
První typ chromozomu obsahuje zakódování polohy středu základny trojúhelníkových fuzzy
množin jazykových hodnot a zakódování hodnot krajních bodů těchto základen (fuzzy
množiny mají tvar rovnoramenných trojúhelníků). Způsob zakódování jedné fuzzy množiny
v chromozomu je na Obr.47.
111
Obr.47
GA algoritmus může mít následující variantu procedury křížení:
- stanovení bodu křížení chromozomu prvního rodiče náhodným výběrem
- stanovení bodu křížení chromozomu druhého rodiče náhodným výběrem
- zkopírování celé pravé části chromozomu prvního rodiče do levé části chromozomu
druhého následníka
- zkopírování celé pravé části chromozomu druhého rodiče do levé části chromozomu
prvního následníka.
Procedura produkuje chromozomy následníků o různé délce, protože dělicí bod neleží obecně
uprostřed bitového řetězce chromozomu rodičů. Aby byl zachován smysl parametrů (který je
dán jejich pozicí v pravidle) zakódovaných v řetězci, každý chromozom pozůstává z řetězce
(úplných) pravidel. Dělicí bod však leží uvnitř bitového řetězce pravidla, proto je vždy jeden
z parametrů uvnitř rodičovského páru změněn. Tato změna se děje náhodně, avšak se stejnou
pravděpodobností velikosti změny v kladném nebo záporném smyslu. Celá situace je
znázorněna na Obr.48
Obr.48
Tato metoda křížení produkuje fuzzy regulátory o různém počtu pravidel. Integrace principů
fuzzy logiky a GA je popsána i v příkladu následující kapitoly.
112
Příklad 2
Pěkným příkladem efektivity optimalizace funkce pomocí GA je příklad optimalizace
charakteristiky stejnosměrného sériového elektromotoru. Regulace otáček stejnosměrného
sériového motoru [63] je prováděna změnami jeho budícího proudu. Jeho charakteristika
(závislost otáček motoru N na buzení I) je nakreslena na Obr.49.
Obr.49
Jazykový popis výchozí (neoptimalizované) nelineární charakteristiky je proveden pomocí
IF-THEN pravidel ve formě:
R1: IF (I is NULL)
THEN (N is VELMI VYSOKÝ)
R2: IF (I is ASI NULA)
THEN (N is VYSOKÝ)
R3: IF (I is MALÝ)
THEN (N is STŘEDNÍ)
R4: IF (I is STŘEDNÍ)
THEN (N is MALÝ)
R5: IF (I is VYSOKÝ)
THEN (N is ASI NULA)
R6: IF (I is VELMI VYSOKÝ)
THEN (N is ASI NULA)
Fuzzy relace modelu je vytvořena jako
R(I,N) = R1 and R2 and R3 and R4 and R5 and R6
Model pracuje se 6 jazykovými hodnotami vstupní a 5 jazykovými hodnotami výstupní
proměnné. Fuzzy interpretace těchto hodnot je uvedena na Obr.50.
113
Obr.50
Pro hodnocení adekvátnosti modelu je použita kvadratická ztrátová funkce. Velikost ztrátové
funkce výchozího modelu je e2=2,633.10-2.
Pro optimalizaci modelu bylo použito genetického algoritmu způsobem, popsaným v kap.8.2.
Chromozom obsahoval 12 genů, reprezentujících parametry fuzzy množin jazykových hodnot
vstupní nezávislé jazykové proměnné I. Parametry procedury GA jsou uvedeny v Tab.10:
Rozsah populace
50
Rozsah generace
100
Pravděpodobnost křížení
0.9
Pravděpodobnost mutace
0.1
Modif. koeficienty
a, ß <-1.5, 1.5>
Tab.10
Výsledkem optimalizace pomocí GA jsou optimalizované tvary funkcí příslušnosti, uvedené
na Obr.51.
Obr.51
114
Průběh optimalizované charakteristiky je uveden na Obr.49 (Skutečný průběh). Velikost
ztrátové funkce při použití tohoto modelu poklesla z hodnoty e2 = 2,633.10-2 na hodnotu e2 =
5.68*10-6, tedy o 4 řády. Použití GA bylo tedy velmi efektivní.
Shrnutí pojmů
Jelikož genetický algoritmus je univerzálním prostředkem pro hledání optimálního řešení
úloh, lze jej použít i v případě optimalizace fuzzy modelů. V úloze použití genetického
algoritmu při optimalizaci struktury i parametrů fuzzy IF-THEN pravidel existuje několik
možností jeho aplikace. Základním problémem je zde vhodné uložení optimalizovaných
veličin do struktury chromozomu a volby vhodného způsobu jejich zakódování. Základními
optimalizačními úlohami v případě pravidlového fuzzy modelu je stanovení počtu pravidel,
počet jazykových hodnot jeho vstupních a výstupních jazykových proměnných, stanovení
kombinací dílčích fuzzy tvrzení v antecedentech, pravidel, stanovení tvaru a parametrů fuzzy
množin pro formalizaci jazykových hodnot proměnných.
Otázky 9.4.
Které optimalizační operace fuzzy pravidlového modelu můžeme realizovat s použitím
genetických algoritmů ?
Úlohy k řešení 9.4.
Promyslete, které parametry by bylo lze optimalizovat pomoci GA v případě fuzzy regulátoru
typu PID !
115
9.5 Fuzzy-neuro-genetické systémy
Čas ke studiu: 30 minut
Cíl
Po prostudování tohoto odstavce budete umět
 vysvětlit principy syntézy fuzzy, neuronových a GA přístupů
 popsat konkrétní metodu FNG na příkladu adaptivního regulátoru
Výklad
Syntéza principů fuzzy logiky, neuronových sítí a genetických algoritmů je dalším rozšířením
možností soft-computingu, které vede ke zvýšení efektivity nástrojů umělé inteligence.
Kombinace fuzzy-neuronových principů byla vysvětlena v kapitole 9.2. Jestliže tato symbióza
vedla k prohloubení principů samoučení fuzzy modelů, je cílem rozšíření kombinace o
genetické algoritmy realizace automatické optimalizace těch úloh, které jsou jinak řešeny
pouze subjektivním návrhem zkušeného odborníka.
Principiální zásady integrace principů GA ve schématu fuzzy neuronového systému jsou
stejné jako v případě systému fuzzy-genetického nebo neuro-genetického. Způsob integrace
nejlépe pochopíme z následujícího praktického příkladu.
Příklad
Příklad vysvětluje rozšíření metody soft-computingu ve schématu fuzzy neuronového
regulátoru. Schéma automaticky se adaptujícího fuzzy-logického neuronového regulátoru je
uvedeno na Obr.52.
Obr.52
Ladění využívá chybový signál mezi výstupem regulované soustavy a jejího referenčního
modelu
116
E(t) = y(t) – ym(t)
Fuzzy PID regulátor pracuje s řídicími pravidly typu
IF (e is Ai) and (e is Bi) and (de is Ci) THEN (dU is Di)
kde e vyjadřuje regulační odchylku, e sumu a de diferenci regulační odchylky, U je akční
veličina, Ai, Bi, Ci jsou jazykové hodnoty jazykových proměnných e, e, de a U.
Regulátor je realizován pomocí neuronové sítě. Jazykové hodnoty proměnných jsou
formalizovány pomocí lichoběžníkových fuzzy množin aproximovaných lomenými přímkami
s body lomu a, b, c, d.
Tyto parametry jsou spolu vázány relací
a  b  c  d.
Ladění regulátoru spočívá ve změnách tvaru funkcí příslušnosti, tedy hodnot uvedených
parametrů, pomocí genetického algoritmu. Tento algoritmus je složen z následujících
procedur:
Kódování parametrů do bitového řetězce chromozomů
Stanovení účelové funkce optimalizace parametrů ve tvaru
F = 0,5
Adaptace tvaru funkcí příslušnosti – pomocí GA jsou hledány optimální hodnoty
parametrů funkcí příslušností minimalizující vztah F. GA generuje optimální hodnoty
ve smyslu vztahu F pomocí následujících procedur:
- vytvoření počáteční populace (PP) – náhodným vygenerováním hodnot
parametrů n- jedinců
- ohodnocení jedinců počáteční populace výpočtem hodnot F
- generování nové populace jako následníků rodičů s nejlepšími hodnotami F
- ohodnocení jedinců další populace výpočtem hodnot F
- po dosažení předepsaného počtu generací (např. 150) ukončení procesu
výběru jedince s nejvyšší hodnotou F jako optimálního řešení.
Shrnutí pojmů
Kombinace fuzzy a neuronových principů vedla ke zvýšení užitné hodnoty neuronových
modelů tím, že fuzzy-neuronový model umožňuje interpretaci jeho pravidel při zachování
výhodné vlastnosti samoučení neuronové sítě. Cílem rozšíření fuzzy-neuronové kombinace o
genetické algoritmy je realizace automatické optimalizace úloh, které se v systémech použití
fuzzy-neuronových modelů vyskytují a které jsou jinak řešeny pouze subjektivním návrhem
zkušeného odborníka. Takovým případem je např. optimalizace parametrů fuzzy neuronového
regulátoru.
117
Otázky 9.5.
Kdy je třeba provést novou adaptaci (optimalizaci) parametrů fuzzy-neuronového regulátoru ?
Úlohy k řešení 9.5.
Promyslete příklad použití GA algoritmu pro optimalizaci fuzzy-neuronové sítě, pokud by
byly optimalizační úlohy soustředěny do vlastní topologie a parametrů neuronové sítě !
118
Doporučená literatura
Literatura, doporučená k eventuálnímu doplnění a rozšíření učební látky, je vybrána
z dostupných odborných publikací, pokud možno knižních vydaných v českém (slovenském)
jazyce.
1 Noskievič,P.: Modelování a identifikace systémů, MONTANEX a.s., 1999
2 Zadeh,L.A.: The Concept of Linguistic Variable and its Application to Aproximate
Reassoning, American Elsevier P.C., New York, 1973
3 Mařík, V. a kol.: Umělá inteligence I, II, Academia Praha, 1997
4 Dohnal,M.: Methodology of Qualitative Modelling, Proc. SCAI´89, Tampere, 1989
5 Novák, V.: Fuzzy množiny a jejich aplikace, SNTL Praha, 1992
6 Novák, V.: Základy fuzzy modelování, BEN Praha, 2000
7 Takagi,T.: Fuzzy Identification of Systém and its Application to Modelling and Control,
IEEE Trans., SMC, 1, 1985
8 Provazník,I.: Expertní systémy, VUT Brno, FEI, 1999
9 Jura,P.: Základy fuzzy logiky pro řízení a modelování, VUT Brno, 2000
10 Pokorný, M.: Umělá inteligence v modelování a řízení, BEN Praha, 1996
11 Vysoký,P.: Fuzzy řízení, ČVUT Praha, FEL, 1996
12 Babinec,F.: Cognitive Analysis of Furnace reliability, VUT Brno, FS, 1990
13 Sinčák,P.: Neurónové siete, I, II, ELFA, 1996
14 Vondrák, I.: Neuronové sítě, VŠB Ostrava, 1997
15 Goldberg D.E: Genetic Algorithms in Search, Optimization, and Machine Learning,
Addisson-Wesley, 1989
119
Klíč k řešení
Úlohy k řešení 1.1.
Vymyslete sami matematickou rovnici (nebo soustavu rovnic), reprezentující fyzikální
soustavu. Určete parametry takto napsaného modelu soustavy a pouvažujte o možnosti
přesného stanovení jejich číselných hodnot !
Soustavou bude pohybující se těleso. Rychlost rovnoměrného přímočarého pohybu tělesa je
dána rovnicí (matematickým modelem)
v=s:t
Pro určení rychlosti vm/sec je třeba znát dva parametry : dráhu s m a čas t sec. Tyto
parametry je možno změřit délkovým metrem (pásmem) a stopkami s přesností, která je
závislá hlavně na pečlivosti, které měření věnujeme.
Úlohy k řešení 1.2.
Uveďte objekt, který považujete z hlediska jeho matematického modelování za složitý.
Vysoká pec (na výrobu železa), letící letoun, chování vojáka v boji
Úlohy k řešení 1.3.
Uveďte příklad mělké a hluboké znalosti v oboru, který je Vám blízký (řízení automobilu, hra
v šachy apod.).
Znalost hluboká:
Čím delší je ujetá dráha a čím vyšší je rychlost jízdy, tím vyšší je spotřeba paliva
Znalost mělká (heuristika):
Jedu-li z Brna do Prahy, nemám silniční mapu a silnice nejsou značeny, jedu tak, abych měl
Slunce stále před sebou.
120
Úlohy k řešení 2.1.
Promyslete kvalitativní popis řízení směru jízdy automobilu řízením natočení kol přední
nápravy.
Pokud je třeba změnit směr jízdy mírně doleva, otočíme volantem mírně doleva.
Pokud chceme odbočit prudce doleva, otočíme volantem prudce doleva.
Pokud je třeba změnit směr jízdy více doprava, otočíme volantem více doprava.
Pokud chceme zachovat stávající směr jízdy, udržujeme polohu volantu beze změny.
Úlohy k řešení 2.2.
Popište kvalitativním tripletem kladnou kvalitativní proměnnou X, jejíž hodnota
exponenciálně roste
X: +,+,+
Úlohy k řešení 2.3.
Převeďte do kvalitativní formy následující rovnici
(3x2 + 2x)( – 2z) = y2
X.X + X = P1
-Z = P2
Y.Y = P1.P2
121
Úlohy k řešení 2.4.
Sestavte kvalitativní model funkce popsané jejím průběhem na následujícím obrázku !
A:
+ + 0
B:
+ 0 0
C.
 + - 0
 + + 0 
+ 0 0 
+ - 0
Úlohy k řešení 3.1.
Nakreslete fuzzy množiny, formalizující jazykové pojmy „mladý člověk“ a „starý člověk“.
Popište tyto fuzzy množiny jejich parametry (body zlomů jejich funkcí příslušnosti).
122
Úlohy k řešení 3.2.
Formalizujte jazykovou proměnnou „TEPLOTA V PECI“ a navrhněte tři její jazykové
hodnoty vyjádřené fuzzy množinami !
Jazykové hodnoty:
STUDENÁ (S), POLOVYHŘÁTÁ (PV), VYHŘÁTÁ (V)
Úlohy k řešení 3.3.
Sestavte fuzzy model typu Takagi-Sugeno pro nelineární jednorozměrnou funkci y f(x), která
je klesající (má charakter nepřímé úměrnosti) !
IF(x is MALÝ) THEN y1 = -2x + 3
IF (x is VELKÝ) THEN y2 = -4x + 6
Úlohy k řešení 3.4.
Proveďte vyvození výstupní hodnoty y modelu Takagi-Sugeno pro model který jste vytvořili
v úloze 3.3 pro Vámi zvolenou velikost vstupní proměnné x !
x=2
MALY(x) = 0,6 (zvoleno)
VELKY(x) = 0,3 (zvoleno)
y1 = -2.2 + 3 = -1
123
y2 = -4.2 + 3 = - 5
y = MALY(x) . y1 + VELKY(x) . y2 / MALY(x) + VELKY(x) =
= 0,6 . (-1) + 0,3 . (-5)  / (0,6 + 0.3) = -2.1/0.9 = -2.33
Úlohy k řešení 4.1.
Navrhněte Vám známý problém, k jehož řešení by bylo možno vypracovat expertní systém
(např. diagnostika automobilového motoru, proč pláče kojenec, apod.)
Kromě uvedených např.: odhad výsledku sportovního utkání, podpora při rozhodování o
nákupu počítače, podpora při rozhodování o výběru partnera, rozhodování o nastavení
velikosti clony a doby expozice fotoaparátu při fotografování
Úlohy k řešení 4.2.
Navrhněte 4 pravidla báze znalostí expertního systému pro popis systému, v jehož oblasti jste
expertem !
Z oblasti řízení automobilu – soustava je jedoucí automobil:
IF(vozovka je KLUZKÁ)THEN(brždění je MÍRNÉ )
IF(viditelnost je ZHORŠENÁ)THEN(odstup vozidel je VĚTŠÍ)
IF(provoz je HUSTÝ)THEN(pozornost je VYSOKÁ)
IF(stav pneumatik je ZHORŠENÝ)THEN(rychlost je NIŽŠÍ)
Úlohy k řešení 4.3.
Jak je třeba postupovat, nedává-li expertní systém správné nebo vůbec žádné odpovědi na
dotazy z určité oblasti řešeného problému ?
Pokud expertní systém vyvozuje nesprávné odpovědi, bývá nejčastější příčinou existence
rozporných pravidel. Není-li k dispozici programový systém pro kognitivní analýzu vlastností
báze znalostí, je třeba prohlédnout pravidla a zkontrolovat jejich validitu.
Pokud expertní systém nedává odpovědi na dotazy z některé problémové oblasti (odpověď
NEVÍM), je třeba zkontrolovat bázi znalostí a doplnit pravidla, která se této problémové
oblasti týkají.
124
Úlohy k řešení 5.1.
Pokuste se vyslovit heuristiku, kterou uplatňujete při výkonu svého povolání nebo pěstování
svého koníčka !
Z oblasti jízdy automobilem:
pokud chci jet v noci nebo za snížené viditelnosti bezpečněji, udržuji vozidlo spíše u středové
čáry než u krajnice.
Úlohy k řešení 5.2.
Napište pravidla fuzzy regulátoru obdobného P typu Mamdani, budou-li mít jeho jazykové
proměnné dvě jazykové hodnoty: negativní a pozitivní (dvouhodnotová fuzzy regulace).
JESTLIŽE (regulační odchylka je NEGATIVNÍ) PAK (akční veličina je POZITIVNÍ)
JESTLIŽE (regulační odchylka je POZITIVNÍ) PAK (akční veličina je NEGATIVNÍ)
Úlohy k řešení 6.1.
Znázorněte graficky vhodnou a nevhodnou diverzifikační schopnost báze vůči jazykové
hodnotě MALÝ a vhodnou diverzifikační schopnost vůči jazykové hodnotě VELKÝ!
125
Úlohy k řešení 6.2.
Nakreslete ternární diagram se zastupujícím bodem u báze znalostí, která má vlastnost velké
variability !
Úlohy k řešení 7.1.
Je obdoba mezi matematickým perceptronem a biologickým neuronem z hlediska jejich
funkce ?
Podobnost spočívá ve schopnosti obou reagovat změnou svého výstupu na změnu svých
vstupů (podnětů) s případnou existenci prahu pro reakci na vzruch
126
Úlohy k řešení 7.2.
Nakreslete vícevrstvou neuronovou síť s označením 4-1-2
Úlohy k řešení 7.3.
Vymyslete příklady úloh pro řešení pomocí vícevrstvých neuronových sítí




Klasifikace výrobků do jakostních tříd podle jejich vad
Predikce meteorologické situace pro následující období podle vývoje počasí v období
předcházejícím
Neuronový regulátor automatické převodovky automobilu
Přenos 5-ti bitového binárního čísla prostřednictvím 3-vodičového kabelu
127
Úlohy k řešení 7.4.
Nakreslete Hopfieldovu síť pro rozpoznávání objektu, charakterizovaného čtyřmi číselnými
znaky!
Úlohy k řešení 8.1.
Vyjmenujte alespoň dva biologické evoluční procesy které proběhly v přírodě !


Vyhynutí velkých plazů
Vývoj živočichů přizpůsobených k létání ve vzduchu
128
Úlohy k řešení 8.2.
Navrhněte chromozom pro zakódování parametrů fuzzy množiny A, která je dána čtyřmi
body zlomu její po částech lineární lichoběžníkové funkce příslušnosti. K zakódování použijte
binárního kódu:
A: 5, 8, 12, 16
Úlohy k řešení 9.1.
Navrhněte příklad kombinace některé z metod umělé inteligence s metodou matematické
statistiky !
Neuronová síť, jejíž vstupní hodnoty jsou získány pomocí metody statistického vyhodnocení
dat
Úlohy k řešení 9.2.
Promyslete případ, kdy je potřebné (nebo velice užitečné) znát přesné znění pravidel fuzzy
modelu. Nejčastěji jsou takové případy nutné v případě modelů, které řeší problémy spojené
s nebezpečnými situacemi.
Podpora rozhodování při diagnostice poruch nebezpečné soustavy (atomový reaktor).
Jakékoliv vyhodnocení provedené expertním systémem musí být doloženo seznamem
aktivních pravidel, z nichž bylo rozhodnutí vyvozeno.
129
Úlohy k řešení 9.3.
V kterých případech může být použití GA pro adaptaci neuronové sítě nevýhodné
(neefektivní) ?
V případě rozsáhlé neuronové sítě použité v systému řízení v reálném čase. Pokud je
výpočtová náročnost adaptace příliš velká, může její doba překročit periodu dvou po sobě
následujících akčních zásahů.
Úlohy k řešení 9.4.
Promyslete, které parametry by bylo lze optimalizovat pomoci GA v případě fuzzy regulátoru
typu PID !
Velikost zesílení proporcionálního P, integračního I a derivačního D.
Úlohy k řešení 9.5.
Promyslete příklad použití GA algoritmu pro optimalizaci fuzzy-neuronové sítě, pokud by
byly optimalizační úlohy soustředěny do vlastní topologie a parametrů neuronové sítě !
Optimalizace struktury sítě (počet skrytých vrstev neuronů a počet neuronů v nich), váhové
koeficienty synaptických vazeb a parametry přenosových funkcí v každém neuronu.
130