Vysoká škola báňská Technická univerzita Ostrava ZNALOSTNÍ SYSTÉMY ŘÍZENÍ učební text a návody do cvičení Prof. Dr. Ing. Miroslav Pokorný Ing. Vilém Srovnal, Ph.D. Ostrava 2012
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Recenze: Doc. RNDr. Jindřich Černohorský, CSc. Název: Znalostní systémy řízení Autoři: Miroslav Pokorný, Vilém Srovnal Vydání: první, 2012 Počet stran: Náklad: Studijní materiály pro studijní obor Měřicí a řídicí technika Fakulty elektrotechniky a informatiky Jazyková korektura: nebyla provedena. Určeno pro projekt: Operační program Vzdělávání pro konkurenceschopnost Název: Inovace oboru Měřicí a řídicí technika na FEI, VŠB - TU Ostrava Číslo: CZ.1.07/2.2.00/15.0113 Realizace: VŠB Technická univerzita Ostrava Projekt je spolufinancován z prostředků ESF a státního rozpočtu ČR Miroslav Pokorný, Vilém Srovnal VŠB Technická univerzita Ostrava ISBN 2
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ - Obsah OBSAH Pokyny ke studiu 1. ÚVOD 2. AUTOMATICKÁ REGULACE A UMĚLÁ INTELIGENCE 2.1 Problematika řízení složitých systémů 3. ZÁKLADY FUZZY MNOŽINOVÉ TEORIE 3.1 Základy teorie fuzzy množin 3.2 Fuzzy množinová formalizace vágnosti 4. VÍCEHODNOTOVÁ LOGIKA A JAZYKOVÉ MODELY 4.1 Základy fuzzy logiky 4.2 Fuzzy-logické jazykové modely řízení 4.3 Aproximativní vyvozování 4.4 Problematika využití fuzzy modelu 5. FUZZY REGULAČNÍ SYSTÉMY 5.1 Principy regulačního systému FLC 5.2 Funkce fuzzy regulátoru FLC 6. SUGENOVSKÉ REGULÁTORY 6.1 Jazyková aproximace nelineárních funkcí 6.2 Struktura a parametry Sugenovského regulátoru 7. STABILITA SYSTÉMů S FUZZY REGULÁTORY 7.1 Stabilita regulačních obvodů s fuzzy regulátory 8. FUZZY STAVOVÁ REGULACE 8.1 Fuzzy stavové regulátory 9. INTELIGENTNÍ REGULÁTORY 9.1 Struktura a funkce inteligentního regulátoru 3
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ - Obsah KLÍČ K ŘEŠENÍ CVIČENÍ 1 Fuzzy množiny a operace s nimi v programovacím jazyku C# CVIČENÍ 2 Fuzzy systém regulující teplotu vody ve sprše (Model Mamdani) CVIČENÍ 3 Fuzzy řízení automatické pračky (Model Mamdani) CVIČENÍ 4 Fuzzy řízení 4. stupňové automatické převodovky (Model Takagi Sugeno) CVIČENÍ 5 Expertní systém pro regulaci teploty tepelné soustavy v PLC Siemens (S7 3xx) CVIČENÍ 6 Expertní systém pro regulaci teploty s chlazením tepelné soustavy v PLC Siemens (S7 3xx) a řízením otáček 3. fázového motoru pomocí měniče Siemens Micromaster CVIČENÍ 7 Expertní systém pro regulaci teploty tepelné soustavy v PLC Bernecker & Reiner (B&R System 2003) CVIČENÍ 8 Fuzzy regulátor typu PS (Mamdani a Sugeno) určený pro regulaci soustavy 2. řádu a porovnání s klasickým PI regulátorem CVIČENÍ 9 Fuzzy regulátor typu PD (Mamdani a Sugeno) určený pro regulaci soustavy 2. řádu a porovnání s klasickým PD regulátorem CVIČENÍ 10 Fuzzy regulátor typu PSD (Mamdani a Sugeno) určený pro regulaci soustavy 2. řádu a porovnání s klasickým PID regulátorem CVIČENÍ 11 Automatická metoda hledání optimálních parametru fuzzy regulátorů typu PS, PD, PSD (Mamdani a Sugeno) soustav do 2. řádu CVIČENÍ 12 Řízení náklonu letadla pomoci automatického hledání optimálních parametru fuzzy regulátorů typu PS (Mamdani) CVIČENÍ 13 Fuzzy regulace magneticky levitující kuličky v prostoru virtuální reality CVIČENÍ 14 Expertní systém určený pro fuzzy regulace teploty v místnosti v programovacím jazyku C# 4
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Pokyny pro studium POKYNY KE STUDIU Znalostní systémy řízení Pro předmět zimního semestru oboru Měřicí a řídicí technika jste obdrželi studijní balík obsahující integrované skriptum pro distanční studium obsahující i pokyny ke studiu CD-ROM s doplňkovými animacemi vybraných částí kapitol harmonogram průběhu semestru a rozvrh prezenční části rozdělení studentů do skupin k jednotlivým tutorům a kontakty na tutory kontakt na studijní oddělení Předpoklady studia Pro studium tohoto předmětu se předpokládá absolvování předmětu (bude doplněno) Cílem předmětu je seznámení se základními pojmy vědního oboru Umělá inteligence a aplikačních systémů, které využívají jejích přístupů. Po prostudování modulu by měl student být schopen porozumět principům systémů s prvky umělé inteligence a pochopit výhody jejich použití v technické praxi. Pro koho je předmět určen Modul je zařazen do bakalářského / magisterského studia oborů (bude doplněno) studijního programu Měřicí a řídicí technika, ale může jej studovat i zájemce z kteréhokoliv jiného oboru, pokud splňuje požadované předpoklady kurzu. Skriptum se dělí na části, 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: xx hodin 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 touto problematikou ještě nikdy nesetkali a naopak takoví, kteří již v tomto oboru mají bohaté zkušenosti. Cíl: 5
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Pokyny pro studium Po prostudování tohoto odstavce budete umět popsat... definovat... vyřešit... 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í, vše doprovázeno obrázky, tabulkami, řešenými příklady, odkazy na animace. 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. Další zdroje Seznam další literatury, www odkazů ap. pro zájemce o dobrovolné rozšíření znalostí popisované problematiky. CD-ROM Informace o doplňujících animacích, videosekvencích apod., které si může student vyvolat z CD-ROMu připojeného k tomuto materiálu. Klíč k řešení Výsledky zadaných příkladů i 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řejí autoři výukového materiálu 6 Miroslav Pokorný Vilém Srovnal
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Úvod 1 ÚVOD Teorie i praxe tvorby klasických matematických modelů a jejich využívání v řídící technice jsou dnes všeobecně akceptovány. Matematické modely jsou vhodnou formou pro popis chování i řízení objektů a spolu s prostředky výpočetní techniky reprezentují velmi efektivní nástroj k hlubšímu poznání skutečnosti. Metodologie řídicích systémů, využívajících klasických matematických analytickostatistických modelů, je dnes dobře popsána. Základní přístupy při tvorbě takových modelů se opírají o znalosti fyzikálních principů a podstaty funkcí modelovaných a řízených objektů. Jsou to modely, postavené na bázi objektivních, kvantitativních znalostí. Matematické modely, reflektující exaktní, objektivně platné přírodní zákony, jsou z principu modely precizními. Takové modely však nejsou zcela a vždy adekvátní chování popisovaných složitých reálných soustav, které může být přirozeně ne zcela přesné, více či méně neurčité. Snaha o zvýšení preciznosti matematického modelu vede ke zvýšení jeho komplikovanosti, provázené zvýšenými nároky na přesnost vstupních dat a snížením celkové robustnosti modelu. Nároky takových modelů mohou přesáhnout míru praktické realizovatelnosti (např. možnost měření vstupních dat). Profesor univerzity v Berkeley, Lotfi A.Zadeh (zakladatel fuzzy matematiky), vyslovil v této souvislosti velmi důležitý závěr - princip inkompatibility: To, 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 (relevantnost) téměř vzájemně se vylučujícími charakteristikami Tyto problémy se vyskytují hlavně v případech, kdy popisujeme chování soustavy složité, neurčité, těžko popsatelné a obtížně měřitelné. Kvalita reálného modelu objektu a tudíž i kvalita jeho regulace je v takových případech dána především tím, jak se použitá metodologie vyrovná s reprezentací a efektivním využitím velmi důležité vlastnosti reality - neurčitosti. Klasickou formou reprezentace neurčitosti je aparát matematické statistiky. Přes svoji popularitu však trpí řadou omezení. Je to především schopnost reflektovat pouze neurčitost typu stochastičnost, dále pak problém časté nedostupnosti dostatečného počtu pozorování (důvody časové, technické, ekonomické a pod.) a problémy s platností řady apriorních předpokladů o datech. 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í informací subjektivních - znalostí. Problémy adekvátnosti matematických modelů při jejich využití pro studium chování složitých soustav se přenášejí i do oblasti automatické regulace. Syntéza konvenčního regulátoru (typu P, PS, PD, PSD) využívá standardních lineárních přenosů a pro určení 7
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Úvod optimální velikosti jeho parametrů je nezbytná identifikace regulované soustav, vedoucí ke stanovení jejího přenosu. Zde narážíme na první problém identifikace složitých reálných soustav je obtížná a získané přenosy jsou obvykle přibližné, zatížené řadou nutných zjednodušení. Získané přenosy pak trpí sníženou adekvátností a jejich využití vede k syntéze regulátoru, který nesplňuje požadavky na kvalitu regulace v dostatečné míře. Dalším problémem konvenčních regulátorů je jejich nízká robustnost. Reálné soustavy často mění průběžně své parametry, což při požadavku na dodržení kvality regulačního pochodu vyžaduje adaptaci parametrů regulátoru pomocí složitých a v praxi obvykle omezeně účinných adaptačních procedur. V řadě případů, zvláště při řízení složitých a obtížně měřitelných soustav, jsou v praxi úspěšně využívány závěry, které získává zkušený operátor (expert) jako výsledek rozhodovacích procesů ve svém mozku. Jde při tom jak o operátorské stanovení okamžiku, druhu a velikosti akčního zásahu, tak i o rozhodování při změněn nastavení tedy operátorské adaptaci použitých regulátorů. I když jsou tyto závěry postaveny, stejně jako v případě klasické matematické analýzy, na porovnávání vstupů a výstupů a uvážení vlastností regulované soustavy, využívá k jejich vyvození zkušený operátor (expert) zcela jiného než běžného matematicko-statistického a matematicko-logického aparátu. Expert vyvozuje závěry na základě operacemi nad mentálními modely, které jsou vytvořeny a uloženy v jeho mozku. Přitom efektivně využívá svých intelektuálních schopností. Mentální modely nejsou numerické, nýbrž jazykové. Jsou-li matematickoanalytické a-logické modely typicky numerické a precizní, jsou naopak jazykové modely nenumerické a typicky neurčité - vágní. Kvalita lidských úsudků pak spočívá ve schopnosti člověka takové neurčité a vágní modely efektivně využívat. Pokud uvažujeme modely řízení, pak platí toto konstatování v plné míře. Operativní rozhodování člověka o regulačních zásazích pří řízení složitých soustav (rozhodování řidiče pří řízení motorového vozidla ve složitých dopravních situacích, rozhodování provozního operátora při řízení složitých technologických procesů) je postaveno na jeho mozkových modelech a schopnostech. Jestliže řešíme problém vytvoření počítačových systémů, které by řídily takové procesy stejně kvalitně jako expert, musíme řešit dva základní problémy: a) jak počítačově formalizovat vágní jazykové mentální modely expertů b) jak formalizovat algoritmy, jejichž využití při operacích nad takovými modely dosáhneme stejně kvalitních závěrů jako expert, kdyby řešil stejnou situaci V případě automatického řízení jde tedy o formulaci a formalizaci jazykových mentálních řídicích modelů (nenumerická formalizace a implementace zákona řízení) a vytvoření algoritmů pro vyvozování velikosti akčních veličin při respektování konkrétních stavů řízené soustavy. Tyto problémy řeší vědní disciplína Umělá inteligence. 8
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Úvod Pro řešení uvedených problémů jsou nejčastěji použity přístupy jazykového fuzzy modelování a jazykové fuzzy logiky. Vzniká teorie fuzzy množinové matematiky, fuzzy logiky a její promítnutí do aplikační oblasti fuzzy regulace. Praktickým produktem jsou fuzzy, případně inteligentní (znalostní) regulátory. Jejich problematice budou věnovány následující kapitoly. 9
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Automatická regulace a umělá inteligence 2 AUTOMATICKÁ REGULACE A UMĚLÁ INTELIGENCE 2.1 Problematika řízení složitých systémů Čas ke studiu: 2 hodiny Cíl: Po prostudování tohoto odstavce budete umět vysvětlit problematiku modelování složitých soustav význam znalostí pro metody umělé inteligence definovat základní přístupy a metody umělé inteligence definovat typy znalostí vysvětlit pojem nenumerického abstraktního modelu vysvětlit význam vágních pojmů a jejich použití v jazykových modelech vysvětlit poslání jazykových modelů a fuzzy reprezentace vágnosti zdůvodnit použití vícehodnotové fuzzy logiky nakreslit a vysvětlit schémata fuzzy a inteligentního regulátoru... Výklad Umělá inteligence a její přístupy Kvalita lidských úsudků je podmíněna (a snad i dána) schopností efektivního zpracování ne zcela přesných informací, přičemž jejich neurčitost má jiný charakter než neurčitost stochastická. Tato schopnost, spolu s dalšími vlastnostmi lidského uvažování jako projevy lidského intelektu, se v posledních desetiletích stává středem zájmu nové vědní disciplíny - Umělé inteligence. Vědní disciplina Umělá inteligence se snaží o vytvoření algoritmů a systémů, projevujících v jistém smyslu inteligentní chování a schopnosti [5]. Vychází-li klasická matematická statistika ze zákonů empirické pravděpodobnosti s využitím rozložení pravděpodobnosti náhodných jevů, vychází metody pro práci s vágností ze zákonů distribuce možnosti. I když mezi možností a pravděpodobností existují kvalitativní vztahy, jde o dva zcela odlišné přístupy [jev, že v osobním automobilu Felícia bude cestovat 8 dospělých osob, je (technicky) vysoce možný; naproti tomu skutečnost, že v nejbližších 10 minutách pojede po sledovaném úseku ulice takto obsazený automobil, má pravděpodobnost téměř nulovou]. Označíme-li 10
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Automatická regulace a umělá inteligence možnost takového jevu J jako ( J ) 0, 1 jako N ( J ) 0, 1 ( J ) N( J ) M. M a pravděpodobnost takového jevu, potom mezi jejich hodnotami musí platit vztah Umělá inteligence, která se ve své dílčí oblasti zabývá metodami rozhodování a řešení složitých problémů, poskytla prostředky, které se pro efektivní zpracování neurčitosti zdají velmi nadějné. Jsou postaveny na principech zpracování především nenumerických informací - znalostí. Prakticky nejvíce je rozpracována metodologie expertních systémů [6] a s nimi souvisejících fuzzy regulátorů [7], [11]. Přechod od zpracování dat ke zpracování znalostí V souladu s rozvojem aplikací metod umělé inteligence vzniká trend přechodu od zpracování objektivních dat ke zpracování subjektivních znalostí [8]. Lidské znalosti můžeme přitom rozdělit do dvou kategorií: a) v první jsou tak zvané 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 znalosti subjektivní, které kvalifikují úroveň experta. Mělké znalosti jsou vyjádřitelné různými formami, např. formou predikátových kalkulů, rámců, kvalitativních vztahů či heuristických pravidel, jak bude uvedeno dále. 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é. Snížená účinnost takových modelů v případech popisu a řízení složitých, špatně objektivně popsatelných a obtížně měřitelných soustav, vedla E. Feigenbauma [8] k vyslovení této teze: Příslibem úspěšného řešení problémů jsou specifické, na danou problémovou oblast zaměřené znalosti (metody), kterými je třeba nahradit slabé metody všeobecné. Cesta uplatnění specifických (subjektivních, heuristických) znalostí vede k metodám tvorby nekonvenčních nenumerických modelů, které využívají vícehodnotovou logiku a různé formální aparáty jak pro reprezentaci neurčitých pojmů, tak i pro přibližné (aproximativní) vyvozování závisle proměnných veličin. Tyto modely se stávají i základem pro metodologii řídících systémů, které je využívají. 11
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Automatická regulace a umělá inteligence Formalizace neurčitosti v systémech řízení Neurčitost chování řízených objektů, vyjadřovaná pojmy jako velmi velký, téměř nulový, asi deset má charakter slovní (pojmové, jazykové) neurčitosti - vágnosti. Její formalizace je pro konstrukci jazykových (slovních, lingvistických, nenumerických) popisů objektů základním problémem. Určité řešení zavedla intervalová matematika použitím číselných intervalů. Věrohodnost reprezentace pojmové neurčitosti je však narušena v okolí intervalových mezí. Ostrá číselná horní mez 10,00 interpretuje číslo 9,99 jako hodnotu do intervalu zcela jistě náležející, zatímco číslo 10,01 jako hodnotu do intervalu zcela jistě nepatřící. Jestli bychom takovým intervalem formalizovali např. slovní pojem vysoký strom a číselné hodnoty by vyjadřovaly jeho výšku v [m], potom je rozpor takové reprezentace s lidským uvažováním evidentní. Pro formalizaci vágnosti bylo vyvinuto několik metod, z nichž největšího rozšíření doznala metoda tzv. mlhavých, neostrých neboli fuzzy množin. Fuzzy množiny se ukázaly jako přirozený a velmi efektivní nástroj pro počítačovou formalizaci a reprezentaci významu slov. Fuzzy množinová teorie je dnes dobře propracována a jejím výzkumem a rozvojem se zabývá řada zahraničních a dnes již i domácích pracovišť (Ústav pro výzkum a aplikace fuzzy modelování při Ostravské univerzitě v Ostravě). Zakladatelem fuzzy množinové matematiky je již výše zmíněný profesor univerzity v Berkeley Lotfi A. Zadeh. Ve své výchozí práci [2] zobecnil klasickou teorii množin a vyslovil fuzzy množinovou teorii, která je dnes v aplikačních oblastech umělé inteligence často využívána. Aplikace fuzzy přístupů v oblasti automatického řízení vedla ke vzniku tzv. fuzzy regulace, jinak řečeno - regulace s využíváním lidských zkušeností, znalostí. Fuzzy pojetí regulace Úvodní kapitola 1.1 pojednává o problémech dosažení dostatečné adekvátnosti a současného zachování praktické použitelnosti modelů složitých soustav (Zadehův princip inkompatibility). Tento problém se přenáší do problematiky automatického řízení tam, kde je použito principů řízení s matematickým modelem. Podobně jako modely matematické mohou být použity i modely slovní, jazykové. Slovní modely popisují chování soustavy prostředky přirozeného jazyka. Popisují chování řízené soustavy na základě znalostí svého tvůrce - experta a vytvářejí tzv. báze znalostí. Vágnost slovního popisu bude v našem případě formalizována pomocí aparátu fuzzy množinové matematiky. Pro vyhodnocování velikosti výstupních proměnných ze slovních (fuzzy) modelů - bází znalostí - je přitom využívána vícehodnotová lingvistická (fuzzy) logika [9]. 12
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Automatická regulace a umělá inteligence Báze znalostí, orientovaná obecně na řešení určitého problému, spolu s aparátem vyhodnocování odpovědí (velikosti závisle proměnných veličin) na dotaz (tvořený konkrétními hodnotami vstupních veličin) tvoří základ expertních systémů. Lze tedy říci, že řídící systémy se znalostní bází jsou jejich speciálními případy. V inženýrské praxi automatického řízení, zvláště složitých procesů, je totiž známo, že zkušený operátor dosahuje při manuálním řízení nebo manuální adaptaci parametrů klasického regulátoru často lepších výsledků, než řídící počítač. Pro regulaci v uzavřené smyčce pomocí fuzzy regulátorů a specializovaných fuzzy expertních systémů jsou tak známy dva přístupy. 1) Přístup fuzzy - pravidlový (FLC - Fuzzy Logic Control) [4], který je pokusem modelovat manuální řídící funkci zkušeného operátora procesu. Řídící model je vyjádřen slovními řídícími pravidly, která popisují, jak vybírat řídící signál (akční veličinu) v různých situacích. Tento přístup si klade za cíl reprezentovat empirické znalosti řízení procesu. Jeho schéma je na Obr.1. v(t) ω(t) + - e(t) Fuzzy regulátor u(t) Regulovaná soustava y(t) Obr.1 2) Přístup expertního (znalostního) řízení [10], který pomocí expertních systémů rozšiřuje možnosti klasických řídících algoritmů (PI, PID). Používá obecných znalostí (jazykových modelů) pro řízení k nastavení a adaptaci struktury i parametrů klasického regulátoru pomocí dohlížecích expertních systémů. Jeho schéma je na Obr.2. e(t) Dohlížecí expertní systém y(t) u(t) v(t) ω(t) + - e(t) PID u(t) Regulovaná soustava y(t) Obr.2 13
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Automatická regulace a umělá inteligence Problematika, uvedená v dalších kapitolách, je rozpracována v těchto oblastech: - základy fuzzy množinové teorie, - základy vícehodnotové lingvistické logiky, - fuzzy pravidlový přístup k řízení (Fuzzy Logic Control), - přístup znalostního (expertního) řízení, Kapitoly obsahují teoretické pozadí i zásady praktické realizace fuzzy regulátorů i systémů znalostní regulace. Řešené úlohy 2.1 Příklad 2.1.1 Jako příklad schématu méně rozšířeného inteligentního regulátoru uveďme systém znalostního adaptivního regulátoru. Shrnutí pojmů Matematické modely jsou z principu modely precizními. Takové modely však nejsou zcela a vždy adekvátní chování popisovaných soustav, které může být přirozeně ne zcela přesné, více či méně neurčité. Snaha o zvýšení preciznosti matematického modelu vede ke zvýšení jeho komplikovanost a omezuje jeho použitelnost, což formuluje princip inkompatibility. Potíže přetrvávají tehdy, pokud se snažíme pracovat pouze s objektivně zjištěnými numerickými informacemi. Problémy řeší metody, které připouštějí využití informací subjektivních, nenumerických - znalostí. 14
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Automatická regulace a umělá inteligence Kvalita lidských úsudků je podmíněna schopností efektivního zpracování ne zcela přesných informací, přičemž jejich neurčitost má jiný charakter než neurčitost stochastická. Tato schopnost, spolu s dalšími vlastnostmi lidského uvažování jako projevy lidského intelektu, se v posledních desetiletích stala středem zájmu vědní discipliny - umělé inteligence. Metody a nástroje umělé inteligence, jsou postaveny na principech zpracování především nenumerických informací - znalostí. Prakticky nejvíce je rozpracována metodologie expertních systémů a s nimi souvisejících fuzzy regulátorů. Metod umělé inteligence jsou příkladem přechodu od zpracování objektivních dat ke zpracování subjektivních znalostí. Lidské znalosti můžeme přitom rozdělit do dvou kategorií: znalosti hluboké a znalosti mělké. Hluboké znalosti jsou vyjadřovány formou analytických matematických vztahů, mělké znalosti jsou vyjádřitelné např. formou predikátových kalkulů, rámců, kvalitativních vztahů či heuristických pravidel. Jsou základem tzv. jazykových (nenumerických) modelů. Neurčitost chování řízených objektů má charakter slovní (pojmové, jazykové) neurčitosti - vágnosti. Její formalizace je pro konstrukci jazykových (slovních, lingvistických, nenumerických) popisů objektů základním problémem. Nejrozšířenějším způsobem je reprezentace pomocí fuzzy množin. Slovní modely popisují chování řízené soustavy na základě znalostí experta a pomocí tzv. báze znalostí. Vágnost slovního popisu je formalizována pomocí aparátu fuzzy množinové matematiky. Pro vyhodnocování velikosti výstupních proměnných ze slovních (fuzzy) modelů je využívána vícehodnotová lingvistická fuzzy logika. Pro regulaci v uzavřené smyčce jsou tak známy dva přístupy - přístup fuzzy regulátoru (FLC) a přístup inteligentního řízení. Otázky 2.1 2.1.1 Jaká omezení plynoucí z principu inkompatibility platí pro matematické modely? 2.1.2 Co je cílem vědního oboru Umělá inteligence? 2.1.3 Jaká relace platí mezi možností a pravděpodobností jevu? 2.1.4 Čím jsou typické nenumerické modely? 2.1.5 Jaký je rozdíl mezi znalostmi objektivními a subjektivními? 2.1.6 Co je to vágnost a jaký je její vztah k fuzzy množinám? 2.1.7 Jaké typy fuzzy regulačních systémů znáte? Úlohy k řešení 2.1 2.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! 15
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Automatická regulace a umělá inteligence 2.1.2 Uveďte objekt, který považujete z hlediska jeho matematického modelování za složitý. 2.1.3 Promyslete vyjádření 1. Newtonova pohybového zákona formou matematického vztahu a formou slovního vyjádření (popisu)! 2.1.4 Uveďte příklad mělké a hluboké znalosti v oboru, který je Vám blízký (řízení automobilu, hra v šachy apod.). 2.1.5 Pokuste se slovně popsat průběh regulace teploty v peci na zadanou hodnotu změnami topného příkonu! Další řešené příklady naleznete v kapitole: CVIČENÍ 1 Fuzzy množiny a operace s nimi v programovacím jazyku C# Další zdroje [1] Mařík, V. a kol.: Umělá inteligence I, II, Academia Praha, 1997. ISBN 80-200-0504-8 [2] Pokorný, M.: Umělá inteligence v modelování a řízení, BEN Praha, 1996. ISBN 80-901984-4-9 [3] Zadeh,L.A.: Fuzzy Sets, Inf. & Control, 8, 1965 [4] Lee,Ch.Ch.: Fuzzy Logic in Control Systems: Fuzzy Logic Controller - Part I,II, IEEE Trans., MAC, 2, 1990 [5] Arzen, A.E.: An Architecture for Expert System Based Feedback Control. Automatica, 1989. Vol. 25, No.6. pp 813-827. ISSN 0005-1098 16
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie 3 ZÁKLADY FUZZY MNOŽINOVÉ TEORIE 3.1 Základy teorie fuzzy množin Čas ke studiu: 3 hodiny Cíl: Po prostudování tohoto odstavce budete umět definovat princip fuzzy množiny popsat fuzzy množinu jejími parametry vyjmenovat a vysvětlit základní fuzzy množinové operace vysvětlit princip rozšíření operací nad obyčejnými množinami na fuzzy množiny Výklad Definice a vlastnosti fuzzy množiny V teorii klasických množin prvek x do množiny A buď patří (prvek x 1 ), nebo nepatří (prvek x 2 ), Obr. 3.1.1. Obr 3.1.1 Obr 3.1.2 V Zadehově fuzzy množinové teorii, která je zobecněním teorie abstraktních množin [1], [2], je fuzzy množina Bx definována jako třída, která přiřazuje prvkům svého univerza x neurčitost pomocí vlastnosti jejich částečné příslušnosti formou tzv. míry příslušnosti B(x). Tak na Obr.3.1.2 prvek x 1 do fuzzy množiny Bx určitě a zcela jistě patří a prvek x 2 zcela jistě a určitě nepatří. Takové zobecnělé množiny se nazývají fuzzy množinami (fuzzy znamená mlhavý, neurčitý, ne zcela přesně ohraničený viz Obr. 3.1.2). Míru příslušnosti prvku x 1 k fuzzy množině Bx pak vyjádříme hodnotou B(x 1 ) = 1, zatímco míru příslušnosti prvku x 2 k fuzzy množině Bx vyjádříme hodnotou 17
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie B(x 2 ) = 0. Uvažujme dále prvky např. x 3 a x 4, které k fuzzy množině Bx patří zřejmě jenom částečně. To je vyjádřeno u prvku x 3 mírou příslušnosti např. B(x 3 ) = 0,3 a u prvku x 4 mírou příslušnosti B(x 4 ) = 0,7. Uveďme důležitý poznatek: 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: µ 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. Významná je skutečnost, kterou si musíme velmi dobře uvědomit, že: 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>! Příklad průběhu charakteristické funkce (funkce nebo míry příslušnosti, někdy stupně nebo míry náležení) A(x) fuzzy množiny Ax v závislosti na velikosti prvků x je na Obr. 3.1.3. Tímto průběhem bývá často fuzzy množina Ax graficky popsána. Čárkovanou čarou je naznačena velmi často používaná aproximace průběhu A(x) = f(x) přímkovými úseky. Fuzzy množina Ax je tak parametrizována a bývá zadávána hodnotami bodů zlomů Ax = {a, b, c, d}. 18
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie A(x) 1 A(x 0 ) hgt A Ax 0 ker A a x 0 b C (A) c d supp A x Obr.3.1.3 Definujme základní vlastnosti fuzzy množin, které budeme potřebovat ve výkladu jejich aplikací v řízení (Obr.3.1.3) [2], [3]. Funkce příslušnosti takové fuzzy množiny má tyto důležité parametry, které nazýváme: a) Výškou fuzzy množiny Ax nazveme reálné číslo, definované vztahem hgta = sup A x ; x X ( ) b) Fuzzy množinu Ax nazveme normální, pokud hgt A = 1; c) Fuzzy množinu nazveme prázdnou, platí-li hgt A = 0; d) Nosičem fuzzy množiny Ax nazveme množinu supp A = { X / A( x) 0} x. e) α - řezem fuzzy množiny Ax nazveme množinu ( A) = { x X A( x) } C α / α ; α - řezy jsou zajímavé tím, že pomocí nich (jako klasických množin) lze vyjádřit fuzzy množinu vztahem ( ) Ax = α Cα A ; f) Jádrem fuzzy množiny Ax nazveme množinu ker = { x X / A( x) = 1} A. Základní fuzzy množinové operace Stejně jako v konvenční množinové matematice, která definuje operace mezi obyčejnými množinami, jsou ve fuzzy množinové matematice definovány operace mezi fuzzy množinami. Operace s fuzzy množinami definovanými na jednom univerzu Uvažujme dvě fuzzy množiny A a B s prvky x, definovanými na univerzu U, s funkcemi příslušnosti A(x) a B(x) a stupni příslušnosti μ (x A ) resp. μ (x B ) 0, 1. 19
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Operace sjednocení Sjednocením dvou fuzzy množin A a B nazýváme fuzzy množinuc = A B, jejíž funkci příslušnosti určíme podle vztahu [ A( x), B( )] C( x) = A( x) B( x) = max x, x U. (3.1.1) x Ve fuzzy množinové matematice však můžeme definovat operaci sjednocení i pomocí jiných vztahů než (3.1.1). Velmi často je používána operace Lukasiewiczova sjednocení, definovaného vztahem C ( x) = A( x) B( x) = 1 ( A( x) + B( x)), x U. (3.1.2) Operace průnik Sjednocením dvou fuzzy množin A a B nazýváme fuzzy množinuc = A B, jejíž funkci příslušnosti určíme podle vztahu [ A( x), B( )] C( x) = A( x) B( x) = min x, x U. (.1.3) x Poznamenejme opět, že operace minima, použitá v takové definici průniku, odpovídá v matematické logice konjunkci dvou logických tvrzení. Podobně jako v případě operace sjednocení, můžeme ve fuzzy množinové matematice definovat operaci průniku i pomocí jiných vztahů než (3.1.3). Velmi často je používána operace Lukasiewiczova průniku, definovaného vztahem C ( x) = A( x) B( x) = 0 ( A( x) + B( x) 1), x U (3.1.4) Operace doplněk Doplněk A fuzzy množiny A je definován nejčastěji používaným vztahem (3.1.5) A( x) = 1 A( x), x U. Inkluze fuzzy množin Inkluzí fuzzy množin Ax = [ X, A( x) ], Bx [ X, B( x) ] ( x) B( x) = nazveme stav, kdy A (3.1.6) pro všechna x X (Ax je podmnožinou Bx). Rovnost fuzzy množin Rovností fuzzy množin Ax = [ X, A( x) ], Bx [ X, B( x) ] = nazveme stav, kdy 20
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie pro všechna A(x) = B(x) (3.1.7) x X. Rozšíření fuzzy množinových operací Přirozený jazyk, který používáme k vzájemné komunikaci, je tak složitý, že interpretace významu jeho výrazů pomocí fuzzy množin a významu jeho jazykových konstrukcí s použitím základních operací (3.1.1) až (3.1.5) je mnohdy nedostačující. Základní fuzzy množinové operace jsou proto rozšířeny o jejich další varianty, které vzniknou jejich zobecněním. Tato skutečnost je pro fuzzy množinovou matematiku (a také, jak bude uvedeno dále, fuzzy logiku) specifická a v konvenční matematice nemá obdobu. Variantní operace se definují pomocí tzv. t-norem (triangulační normy) [1] [2]. Binární funkce T : [0,1] x [0,1] [0,1] se nazývá t-norma, pokud splňuje pro všechna x, y, z [0,1] následující vztahy: T(x,y) = T(y,x) T(x, T(y,z)) = T( T(x,y), z) jestliže x y, pak T(x,z) T(y,z) T (0,x) = 0 a T(1,x) = x komutativnost asociativnost monotónnost omezenost Platí,že t-normy mohou být spojité i nespojité. Základní t-normy jsou: M ( x, y) = x y = min( x, y) obyčejná (minimum) konjunkce P ( x, y) = x. y Larsenova konjunkce T ( x, y) = 0 ( x + y 1) Lukasiewiczova konjunkce W ( x, y) = x y, x y = 1 0 jinak drastický součin Pro jednotlivé t-normy platí vztah uspořádání W ( x, y) T ( x, y) M ( x, y). Drastický součin dává tedy nejmenší a minimum největší hodnotu mezi všemi t- normami. Prakticky významné je, že pomocí t-norem se pak definují operace, realizující ve fuzzy systémech průnik fuzzy množin C = A B, právě když C( x) = T( A( x), B( x) ). T 21
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Obdobně jako pomocí t-norem se definují operace realizující průnik fuzzy množin, sjednocení fuzzy množin může být definováno pomocí odpovídajících t-konorem (snorem). Vztahy mezi t-normami a s-normami můžeme vyjádřit pomocí výrazu S ( x, y) = 1 T(1 x),(1 y) Základní t-konormy odpovídají základním t-normám a jsou vyjádřeny vztahy N ( x, y) = x y = max( x, y) obyčejná (maximum) disjunkce Q ( x, y) = x + y - x. y Larsenova disjunkce T ( x, y) = 0 ( x + y 1) Lukasiewiczova disjunkce W ( x, y) = x y, x y = 0 1 jinak drastický součet Pro jednotlivé t-konormy platí vztah uspořádání N( x, y) S ( x, y) V ( x, y). Jak již byl uvedeno, prakticky významné je, že pomocí t-konorem se pak definují operace, realizující ve fuzzy systémech sjednocení fuzzy množin C = A B, právě když C( x) = S( A( x), B( x) ). S Třídy funkcí t-norem a t-konorem mají obdobnou platnost pro formalizaci operací mezi fuzzy logickými výroky, jak uvidíme dále. Operace s fuzzy množinami definovanými na různých univerzech Kartézský součin Jsou-li A U, B V fuzzy množiny, pak jejich kartézským součinem je fuzzy množina A B U V definovaná jako ( A B)( x, y ) = A( x) B( y) pro všechna x U a y V. Symbol x, y pak představuje uspořádanou dvojici prvků x a y. Tato definice představuje základ definice fuzzy relací. Namísto operace minima můžeme obecně použít kteroukoliv t-normu. Pak lze definovat kartézský součin dvou fuzzy množin vztahem ( B)( x, y ) = A( x) TB( y). A T 22
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Fuzzy relace Obecně n-ární fuzzy relace je definována jako fuzzy množina na vícerozměrném (n-rozměrném) univerzu U 1,, U n. R U... 1 U n. Fuzzy relace R je neostrá relace mezi prvky vybíranými z univerz U 1,, U n. Stupeň příslušnosti R(x 1,,x n ) <0,1> vyjadřuje náležení prvku n-rozměrného univerza k této relaci. Graficky si můžeme fuzzy relaci představit jako vícerozměrnou fuzzy množinu, jejíž funkce příslušnosti je reprezentována vícerozměrnou plochou. Dalšími důležitými fuzzy relacemi jsou projekce, cylindrické rozšíření a kompozice, které jsou výsledkem oprací nad fuzzy relacemi.. Operace nad fuzzy relacemi Uvažujme dvě binární relace R a S definované na kartézském součinu X Y. Definujme nad těmito relacemi operace jejich průniku a sjednocení. Funkce příslušnosti výsledné fuzzy množiny průniku relací R a S je definována vztahem ( x, y) min( μ ( x, y), μ ( x y) ) μ = R S R S, pro všechna x, y. Uvědomíme si, že místo operace minima lze užít libovolné operace t-normy. Funkce příslušnosti výsledné fuzzy množiny operace sjednocení relací R a S je dána vztahem ( x, y) max( μ ( x, y), μ ( x y) ) μ = R S R S, pro všechna x, y. Místo operace maxima lze užít libovolné operace s-normy. Uvedené binární operace mohou být jednoduše rozšířeny na operace n-ární. Významnou roli ve fuzzy množinové matematice zaujímají operace projekce a operace cylindrické rozšíření. Uvažujme binární relaci R definovanou na univerzu X Y. Pak definujeme projekci R na Y jako fuzzy množinu proj R nay Y x = sup μ R ( x, y) / y Operace projekce vytváří obecně z n-ární relace relaci l-ární, např. z ternární relace relaci binární, z binární relaci unární (obyčejnou fuzzy množinu). 23
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Opačnou operací k operaci projekce je operace cylindrické rozšíření. Uvažujme fuzzy množinu F definovanou na univerzu Y. Cylindrickým rozšířením F na X Y je množina všech dvojic (x, y) X Y s funkcí příslušnosti danou vztahem ( F ) = μ ( y)( / x y) cyl, F X Y Velmi důležitou fuzzy relací je relace kompozice. Kompozice je dána kombinací cylindricky rozšířené fuzzy množiny, fuzzy relace a následné projekce. Uvažujme dvě fuzzy množiny A 1 a B 1, které jsou definovány na spojitých univerzech X, Y. Na Obr.3.1.4. je nakreslena konstrukce jejich fuzzy relace R, která vznikne jako průnik jejich cylindrických rozšíření. Obr.3.1.4 Uvažujme fuzzy množinu A definovanou na univerzu X a R jako fuzzy relaci definovanou na X Y. Potom kompozicí fuzzy množiny A a relace R je fuzzy množina B, definovaná na Y, pro kterou platí B = A o R = proj ( cyl( A) R) nay Je-li průnik vytvořen pomocí operace min a projekce pomocí operace max pak funkce příslušnosti fuzzy množiny B jako kompozice A a R je dána vztahem μ ( y) = max min( μ ( x), μ ( x y) ) B A R, x a nazývá se min-max (minimaxová, někdy max-min) kompozice. Je-li průnik vytvořen pomocí operace součinu a projekce pomocí operace max potom funkce příslušnosti relace kompozice má tvar 24
μ ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie ( y) = max( μ ( x) μ ( x y) ) B A R, x a kompozice se nazývá max-produkt kompozicí. Význam relace kompozice vyplyne v Kap.4, věnované vyvozování tvaru fuzzy množin výstupní proměnné Mamdaniho fuzzy modelů a tedy i fuzzy regulátorů. Shrnutí pojmů 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 svého univerza neurčitost pomocí vlastnosti jejich absolutní příslušnosti nebo nepříslušnosti, ale i formou částečné příslušnosti pomocí stupně příslušnosti jako reálného čísla z uzavřeného intervalu 0, 1. Fuzzy množinu popisujeme jejím univerzem, nosičem, alfa-řezy, výškou a jádrem. Fuzzy množina může být normální, konvexní, prázdná. Speciálním typem normální konvexní fuzzy množiny je fuzzy číslo (fuzzy singleton). Základní operace mezi fuzzy množinami definovanými na jednom univerzu jsou fuzzy sjednocení, průnik a doplněk. Rozšířené operace mezi fuzzy množinami zahrnují třídy funkcí t- niormy (fuzzy průnik) a t-konormy (fuzzy sjednocení). Pro fuzzy množiny s různými univerzy jsou definovány fuzzy relace, z nichž důležité jsou kartézský součin, cylindrické rozšíření, projekce a kompozice. Otázky 3.1 3.1.1 Jaký je hlavní rozdíl mezi obyčejnou a fuzzy množinou? 3.1.2 Jaký charakter mají operace t-normy? 3.1.3 Jaký charakter mají operace s-normy? 3.1.4 Co je to fuzzy relace? 3.1.5 Jaký význam mají ve fuzzy logice třídy operací t-normy a t-konormy? 3.1.6 Jaký význam má víceznačnost interpretace fuzzy logických funkcí? Úlohy k řešení 3.1 3.1.1 Navrhněte fuzzy množinu a určete stupně příslušnosti jejích významných prvků! 3.1.2 Popište parametry obyčejné (klasické) množiny! 25
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Další řešené příklady naleznete v kapitole: CVIČENÍ 2 Fuzzy systém regulující teplotu vody ve sprše (Model Mamdani) Další zdroje [1] Novák, V.: Základy fuzzy modelování, BEN Praha, 2000. ISBN 80-7300- 09-1 [2] Novák, V.: Fuzzy množiny a jejich aplikace, SNTL Praha, 1992. ISBN 80-03-00325-3 [3] Pokorný, M.: Umělá inteligence v modelování a řízení, BEN Praha, 1996. ISBN 80-901984-4-9 26
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie 3.2 Fuzzy množinová formalizace vágnosti Čas ke studiu: 2 hodiny Cíl: Po prostudování tohoto odstavce budete umět vysvětlit princip použití fuzzy množin pro formalizaci významu vágních slovních pojmů provádět aproximace funkcí příslušnosti analytickými funkcemi navrhovat fuzzy množiny pro formalizaci významu vágních slovních pojmů... Výklad Neurčitý fenomén má v případě slovních popisů chování řízené soustavy charakter vágnosti. Vágnost je průvodní jev všech složitých, špatně popsatelných objektů, případně systémů, v jejichž funkci se uplatňuje lidský faktor. Pro její formalizaci je v našem případě použito adekvátního aparátu fuzzy množinové teorie [1], [2]. Fuzzy množinový aparát je přirozeným (nikoliv však jediným) prostředkem pro formalizaci vágnosti. Funkce příslušnosti fuzzy množiny V praxi je fuzzy množina F prvků u ztotožněna s její funkci příslušnosti μ F (u). Při popisu grafického průběhu funkce příslušnosti μ F (u) vyjdeme nejprve z průběhu funkce příslušnosti μ A (u) klasické množiny A, nakresleného na Obr.3.2.1. μ A (u) 1 A 0 u 1 u 2 u Obr.3.2.1 27
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Prvky u U z uzavřeného intervalu <u 1, u 2 > do množiny A zcela jistě patří, ostatní prvky univerza do množiny A zcela jistě nepatří. Na Obr.3.2.2 je nakreslena funkce příslušnosti fuzzy množiny F, definované opět na univerzu U. Prvky <u 1, u 2 > opět do fuzzy množiny F zcela jistě patří, prvky u z intervalu (-, u 3 a prvky u z intervalu u 4, ) do fuzzy množiny F zcela jistě nepatří. μ F (u 1 F 0 u 3 u 1 u 2 u 4 u Obr.3.2.2 Prvkům u z intervalů (u 3, u 1 ) a (u 2, u 4 ) je funkcí μ F (u) přiřazena hodnota jejich příslušnosti do fuzzy množiny F reálným číslem z intervalu (0, 1) a vyjadřuje tedy jejich příslušení částečné. Praktické použití fuzzy množin vyžaduje analytické vyjádření funkce μ F (u). V praxi používáme nejčastěji jejich aproximaci lomenými přímkami. Příklady takových aproximací a jejich analytické odpovídající aproximaci jsou uvedeny na Obr.3.2.3 až Obr.3.2.6. Funkce příslušnosti jsou parametrizovány jejich čtyřmi body zlomu, tedy hodnotami [a, b, c, d]. μ F ( 1 F Γ 0 1 ( u, a, b) = ( u a) /( b a) u < a a u b u > b 0 a b u Obr.3.2.3 28
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie 29 Obr.3.2.4 Obr.3.2.5 Obr.3.2.6 1 0 μ F (u F c u a b d a u 0 b c 1 F μ F (u) u ( ) ( ) ( ) > < = b u 0 b u a a b / u b a u 1 b u,a, L ( ) ( ) ( ) ( ) ( ) > < = Λ c u 0 c u b b c / u c b u a a b / a u a u 0 b,c u,a, ( ) ( ) ( ) ( ) ( ) > < = Π d u 0 d u c d c / u d c u b 1 b u a a b / a u a u 0 u,a,b,c,d 1 0 μ F (u) F a b
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Případ fuzzy množiny, jejíž funkce příslušnosti má trojúhelníkový tvar (Obr.3.2.5), má zvláštní důležitost. Taková fuzzy množina totiž formalizuje ne zcela přesné, tzv. fuzzy číslo, v daném případě reprezentované jazykovým výrazem asi b. Fuzzy čísla (vedle čísel obyčejných, ostrých zde přesně b ) mají velký praktický význam, jak uvidíme dále. Fuzzy množinu A definovanou na univerzu X nazýváme normální, pokud má výšku 1, neboli x X, μ A (x) = 1. Uvědomíme si, že ostré číslo můžeme rovněž reprezentovat fuzzy množinou (normální fuzzy množina definovaná na jediném prvku univerza). Takovou fuzzy množinu pak nazýváme singleton. Singletonem je fuzzy množina, odpovídající obyčejnému ostrému číslu. Aproximace funkce příslušnosti fuzzy množiny spojitou funkcí je uvedena na Ob.3.2.7 a Obr.3.2.8. Křivky jsou parametrizovány dvěma hodnotami [a,c] resp. [b,c]. μ F ( 1 F 0,5 S ( u,a,c) 0 2 = 1 1 2 2 ( u a) /( c a) 2 2( u c) / ( c a) 2 u a a < u b b < u c u > c 0 a b c u Obr.3.2.7 30
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie μ F ( 1 F 0,5 Π ( u, b,c) S = 1 ( u,c b,c) S( u,c,c + b) u c u b 0 c- c c+ Obr.3.2.8 u Fuzzy reprezentace jazykových hodnot 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. 3.2.9. 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 funkcí příslušnosti fuzzy množiny formalizovaného pojmu (Obr. 3.2.9). 31
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Obr.3.2.9 Taková křivka bývá často parametrizována čtyřmi body zlomu (2, 3, 5, 7) a aproximována lomenými přímkovými úseky, jak je uvedeno na Obr.3.2.10. Obr.3.2.10 Nyní definujme funkci příslušnosti µ Ji (x) takto: µ (x) = (x - a i )/(b i - a i ) pro a i < x < b i ; µ (x) = (x - d i )/(c i - d i ) pro c i < x < d i ; µ (x) = 1 pro b i > x < c i µ (x) = 0 pro a i ;< x > d i Každá jazyková hodnota J i je pak určena uspořádanou čtveřicí (a i,b i,c i,d i ). 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. 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ý" J 1, "středně vysoký" J 2 a "vysoký" J 3. Tyto tři jazykové hodnoty jsou reprezentovány třemi fuzzy množinami, a to typy Z, Π a S, podle Obr.3.2.11. 32
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Obr.3.2.11 Přeneseme-li problém do oblasti formalizace vágních proměnných regulačního obvodu, pak musíme uvážit, že regulační odchylka e a akční veličina Δu nabývají hodnot kladných i záporných. Navíc je třeba definovat pro vyregulovaný stav fuzzy hodnotu PŘIBLIŽNĚ NULA. Příklad takové jazykové proměnné je uveden na Obr. 5.2.2, který pro názornost zopakujeme v následujícím příkladu. Řešené úlohy 3.2 Příklad 3.2.1 Jako příklad praktického použití uvedeme návrh tvarů funkcí příslušnosti fuzzy množin, které formalizují jazykové hodnoty jazykové proměnné Změna akční veličiny. 33
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Shrnutí pojmů Neurčitý fenomén má v případě slovních popisů chování řízené soustavy charakter vágnosti. Vágnost je průvodní jev všech složitých, špatně popsatelných objektů, případně systémů, v jejichž funkci se uplatňuje lidský faktor. Pro její formalizaci je v našem případě použito adekvátního aparátu fuzzy množinové teorie fuzzy množin. Praktické použití fuzzy množin vyžaduje analytické vyjádření funkce μ F (u). V praxi používáme nejčastěji jejich aproximaci lomenými přímkami. Případ fuzzy množiny, jejíž funkce příslušnosti má trojúhelníkový tvar má zvláštní důležitost. Taková fuzzy množina totiž formalizuje ne zcela přesné, tzv. fuzzy číslo. Singletonem je fuzzy množina, odpovídající obyčejnému ostrému číslu. 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. Jazykové hodnoty formalizujeme nejčastěji lichoběžníkovými fuzzy množinami. Každá taková fuzzy množina je pak určena uspořádanou čtveřicí (a, b, c, d). 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 fuzzy množiny. Otázky 3.2 3.2.1 Jaký je rozdíl mezi funkcí příslušnosti obyčejné a fuzzy množin? 3.2.2 Jak jsou nejčastěji aproximovány spojité funkce příslušnosti? 3.2.3 Napište parametrizovaný tvar fuzzy množiny Vysoká teplota v lednu! Úlohy k řešení 3.2 3.2.1 Napište možné parametrické vyjádření trojúhelníkového fuzzy čísla velmi zhruba 3,0! 3.2.2 Napište možné parametrické vyjádření čísla přesně 100,5! 3.2.3 Nakreslete možný tvar funkcí příslušnosti jazykových hodnot jazykových proměnných u(t) a Δu(t)! Další řešené příklady naleznete v kapitole: CVIČENÍ 4 Fuzzy řízení 4. stupňové automatické převodovky (Model Takagi Sugeno) 34
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Základy fuzzy množinové teorie Další zdroje [1] Novák, V.: Základy fuzzy modelování, BEN Praha, 2000. ISBN 80-7300- 009-1 [2] Novák, V.: Fuzzy množiny a jejich aplikace, SNTL Praha, 1992. ISBN 80-03-00325-3 35
ZNALOSTNÍ SYSTÉMY ŘÍZENÍ Vícehodnotová logika a jazykové modely 4 VÍCEHODNOTOVÁ LOGIKA A JAZYKOVÉ MODELY 4.1 Základy fuzzy logiky Čas ke studiu: 2 hodiny Cíl: Po prostudování tohoto odstavce budete umět vysvětlit pojem formule vícehodnotové logiky definovat pravdivostní ohodnocení výsledků základních fuzzy logických operací definovat lingvistickou proměnnou a její atributy formalizovat jazykové hodnoty lingvistické proměnné fuzzy množinami Výklad Jazyková fuzzy logika 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 fuzzy konjunkci (fuzzy logický součin), fuzzy disjunkci (fuzzy logický součet) a fuzzy implikaci (fuzzy logické vyplývání). Spojením logických proměnných pomocí logických spojek získáme fuzzy logické složené výroky. 36