Difference between revisions of "Fuzzy logic/cs"

From Simulace.info
Jump to: navigation, search
m
m (Zdroje)
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{DISPLAYTITLE:Fuzzy logika v agentním rozhodování}}
 
{{DISPLAYTITLE:Fuzzy logika v agentním rozhodování}}
  
 +
= Úvod =
 +
 +
[[File:Zadeh.gif|thumb|right|L.A. Zadeh]]
 
'''Fuzzy Logika''' vznikla v kontexte teórie <i>Fuzzy množín</i>, ktorú prvý krát predstavil '''L. A. Zadeh''' v roku 1965. <i>Fuzzy množina</i> priradí stupeň členstva <i>(reálne číslo z intervalu [0,1])</i> elementom vesmíru, pričom fuzzy logika vzniká až priradením stupňov pravdy k týmto vesmírnym elementom. Vzťahuje sa na rodinu [https://plato.stanford.edu/archives/win2017/entries/logic-manyvalued viachodnotových logík], takže je určená na modelovanie logických úvah s neurčitými alebo nepresnými údajmi. Stanovuje, že hodnota pravdy (v tomto prípade pravdivostný stupeň) logicky zloženého návrhu <i>(napr. "Peter je bohatý a Ivan je vysoký.")</i> je určená pravdivosťou jeho komponentov, inak povedané, nepočíta iba s 2 možnými hodnotami pravdy. <ref name="fuzzyBasic"> Cintula, Petr, Fermüller, Christian G. and Noguera, Carles, "Fuzzy Logic", The Stanford Encyclopedia of Philosophy (Fall 2017 Edition), Edward N. Zalta (ed.), Dostupné z : https://plato.stanford.edu/archives/fall2017/entries/logic-fuzzy/</ref>.  
 
'''Fuzzy Logika''' vznikla v kontexte teórie <i>Fuzzy množín</i>, ktorú prvý krát predstavil '''L. A. Zadeh''' v roku 1965. <i>Fuzzy množina</i> priradí stupeň členstva <i>(reálne číslo z intervalu [0,1])</i> elementom vesmíru, pričom fuzzy logika vzniká až priradením stupňov pravdy k týmto vesmírnym elementom. Vzťahuje sa na rodinu [https://plato.stanford.edu/archives/win2017/entries/logic-manyvalued viachodnotových logík], takže je určená na modelovanie logických úvah s neurčitými alebo nepresnými údajmi. Stanovuje, že hodnota pravdy (v tomto prípade pravdivostný stupeň) logicky zloženého návrhu <i>(napr. "Peter je bohatý a Ivan je vysoký.")</i> je určená pravdivosťou jeho komponentov, inak povedané, nepočíta iba s 2 možnými hodnotami pravdy. <ref name="fuzzyBasic"> Cintula, Petr, Fermüller, Christian G. and Noguera, Carles, "Fuzzy Logic", The Stanford Encyclopedia of Philosophy (Fall 2017 Edition), Edward N. Zalta (ed.), Dostupné z : https://plato.stanford.edu/archives/fall2017/entries/logic-fuzzy/</ref>.  
  
Line 8: Line 11:
 
* '''"čiastočná pravda"''' je reprezentovaná všetkými ostatnými hodnotami (nazývané aj '''stredné stupne pravdy''')
 
* '''"čiastočná pravda"''' je reprezentovaná všetkými ostatnými hodnotami (nazývané aj '''stredné stupne pravdy''')
  
Viac o agentoch sa môžete dočítať v [http://www.simulace.info/index.php/Agents/cs kapitole na to určenej]. Pre nás bude užitočná najmä podkapitola o [http://www.simulace.info/index.php/Agents/cs#Deliberativn.C3.AD_agenty Deliberatívnych agentoch], v ktorej sa píše aj o teórií '''BDI''', ktorá tvorí sofistikovaný prístup k architektúre agenta a skladá sa z troch základných pojmov : <i>Beliefs</i>(domnienky), <i>Desires</i>(túžby) a <i>Intentions</i>(zámery). Na základe týchto domnienok, túžob a prianí agent uvažuje o svete a teda o svojom rozhodovaní.
+
Viac o agentoch sa môžete dočítať v [http://www.simulace.info/index.php/Agents/cs kapitole na to určenej]. Pre nás bude užitočná najmä podkapitola o [http://www.simulace.info/index.php/Agents/cs#Deliberativn.C3.AD_agenty Deliberatívnych agentoch], v ktorej sa píše aj o teórií '''BDI''', ktorá tvorí sofistikovaný prístup k architektúre agenta a skladá sa z troch základných pojmov :  
 +
* <i>Beliefs</i>(domnienky)
 +
* <i>Desires</i>(túžby)
 +
* <i>Intentions</i>(zámery)
 +
 
 +
Na základe týchto 3 faktorov, a teda domnienok, túžob a prianí agent uvažuje o svete a teda o svojom rozhodovaní, ktorému je tento učební text venovaný.
 +
 
 +
= Fuzzy logika z každodenného života =
 +
 
 +
 
 +
 
 +
= Fuzzy logika v agentovo-orientovaných počítačových hrách <ref name="book"> Li, Yifan & Musilek, Petr & Wyard-Scott, L. (2004).<i>Fuzzy logic in agent-based game design.</i> 734 - 739 Vol.2. 10.1109/NAFIPS.2004.1337393. Dostupné z : https://www.researchgate.net/publication/4092875_Fuzzy_logic_in_agent-based_game_design</ref>=
 +
 
 +
Umelá inteligencia v počítačových hrách sa vďaka rastúcim požiadavkám hráčov musí neustále zlepšovať. Inteligentní agenti môžu spolu s fuzzy logikou vylepšiť najdôležitejší prvok hier - '''interakciu'''. Agenti ponúkajú lepšie možnosti flexibilnej interakcie v rámci architektúry herného dizajnu, pričom fuzzy logika umožňuje lepšie kontrolovať správanie pre vytvorenie najrôznejších foriem umelých inteligencií.
 +
 
 +
== Porovnanie s inými technikami ==
 +
 
 +
Vo svete hier neznamená '''fuzzy kontrola''' iba ďalšiu metódu pre správanie agentov. Kontrolovanie agentov pomocou fuzzy logiky je zárukou '''generovania "správneho" správania'''. Toto prirodzené správanie agentov potom pomáha zvyšovať vnímanú zložitosť a dôveryhodnosť virtuálneho prostredia. V porovnaní s niektorými inými technikami návrhu inteligentných systémov sú systémy založené na fuzzy pravidlách jednoduché na návrh aj implementáciu. Klasické '''rule-based''' systémy pritom často nedokážu dosiahnuť prirodzenosť, akú ponúkajú '''fuzzy systémy''', pričom tie spotrebujú omnoho nižšie výpočtové náklady.
  
= Úvod =
+
== Fuzzy rule-based systémy ==
 +
 
 +
Systémy založené na fuzzy pravidlách sa vo všeobecnosti skladajú z 4 komponentov:
 +
* '''fuzzifier''' konvertuje sparsované vstupy z klienta do fuzzy množín
 +
* základňa pravidiel ('''rule-base''') uchováva všetky vzťahy medzi vstupmi a očakávanými výstupmi v kolekcií '''IF-THEN''' pravidiel
 +
* '''uvažujúca jednotka''' použije vstupy a aplikuje na nich konkrétne pravidlá
 +
* '''defuzzifier''' prekonvertuje výsledok rozhodovania a sparsované výstupy pošle späť na klienta
 +
 
 +
V prípade viacerých vstupov sú fuzzy pravidlá väčšinou prepojené logickým spojením (konektorom) AND, pričom '''rule-base''' musí pokrývať každú možnú kombináciu všetkých výrazov z definičného oboru vstupnej premennej. Táto požiadavka úplnosti ale vedie k tzv. '''rule explosion problém'''-u, kde pre systém s <i>n</i> vstupmi, ktorý má každý <i>m</i> možných stavov potrebujeme celkovo '''m^n''' pravidiel! Toto pravidlo výbuchu predstavuje vážny problém a komplikuje implementovanie fuzzy kontrolovania vďaka vysokým nárokom na CPU zdroje. Combs navrhol [https://en.wikipedia.org/wiki/Combs_method URC (Union Rule Configuration)] na zmiernenie tohto problému, kedy sa zložitosť výpočtu zníži na '''m*n''' pravidiel.
 +
 
 +
== Fuzzy logika v herných agentoch ==
  
Umelá inteligencia v počítačových hrách sa musí vďaka rastúcim požiadavkám hráčov neustále zlepšovať. Inteligentní agenti môžu spolu s fuzzy logikou vylepšiť najdôležitejší prvok hier - interakciu.<ref name="book"> Li, Yifan & Musilek, Petr & Wyard-Scott, L. (2004).<i>Fuzzy logic in agent-based game design.</i> 734 - 739 Vol.2. 10.1109/NAFIPS.2004.1337393. Dostupné z : https://www.researchgate.net/publication/4092875_Fuzzy_logic_in_agent-based_game_design</ref>
+
== Zhrnutie ==
  
 
= Zdroje =
 
= Zdroje =
  
 
<references/>
 
<references/>

Revision as of 18:51, 12 June 2019


Úvod

L.A. Zadeh

Fuzzy Logika vznikla v kontexte teórie Fuzzy množín, ktorú prvý krát predstavil L. A. Zadeh v roku 1965. Fuzzy množina priradí stupeň členstva (reálne číslo z intervalu [0,1]) elementom vesmíru, pričom fuzzy logika vzniká až priradením stupňov pravdy k týmto vesmírnym elementom. Vzťahuje sa na rodinu viachodnotových logík, takže je určená na modelovanie logických úvah s neurčitými alebo nepresnými údajmi. Stanovuje, že hodnota pravdy (v tomto prípade pravdivostný stupeň) logicky zloženého návrhu (napr. "Peter je bohatý a Ivan je vysoký.") je určená pravdivosťou jeho komponentov, inak povedané, nepočíta iba s 2 možnými hodnotami pravdy. [1].

Pri použití Fuzzy logiky na štandardnej škále oboru hodnôt [0,1] potom :

  • "úplná nepravda" je reprezentovaná hraničnou hodnotou 0
  • "úplná pravda" je reprezentovaná hraničnou hodnotou 1
  • "čiastočná pravda" je reprezentovaná všetkými ostatnými hodnotami (nazývané aj stredné stupne pravdy)

Viac o agentoch sa môžete dočítať v kapitole na to určenej. Pre nás bude užitočná najmä podkapitola o Deliberatívnych agentoch, v ktorej sa píše aj o teórií BDI, ktorá tvorí sofistikovaný prístup k architektúre agenta a skladá sa z troch základných pojmov :

  • Beliefs(domnienky)
  • Desires(túžby)
  • Intentions(zámery)

Na základe týchto 3 faktorov, a teda domnienok, túžob a prianí agent uvažuje o svete a teda o svojom rozhodovaní, ktorému je tento učební text venovaný.

Fuzzy logika z každodenného života

Fuzzy logika v agentovo-orientovaných počítačových hrách [2]

Umelá inteligencia v počítačových hrách sa vďaka rastúcim požiadavkám hráčov musí neustále zlepšovať. Inteligentní agenti môžu spolu s fuzzy logikou vylepšiť najdôležitejší prvok hier - interakciu. Agenti ponúkajú lepšie možnosti flexibilnej interakcie v rámci architektúry herného dizajnu, pričom fuzzy logika umožňuje lepšie kontrolovať správanie pre vytvorenie najrôznejších foriem umelých inteligencií.

Porovnanie s inými technikami

Vo svete hier neznamená fuzzy kontrola iba ďalšiu metódu pre správanie agentov. Kontrolovanie agentov pomocou fuzzy logiky je zárukou generovania "správneho" správania. Toto prirodzené správanie agentov potom pomáha zvyšovať vnímanú zložitosť a dôveryhodnosť virtuálneho prostredia. V porovnaní s niektorými inými technikami návrhu inteligentných systémov sú systémy založené na fuzzy pravidlách jednoduché na návrh aj implementáciu. Klasické rule-based systémy pritom často nedokážu dosiahnuť prirodzenosť, akú ponúkajú fuzzy systémy, pričom tie spotrebujú omnoho nižšie výpočtové náklady.

Fuzzy rule-based systémy

Systémy založené na fuzzy pravidlách sa vo všeobecnosti skladajú z 4 komponentov:

  • fuzzifier konvertuje sparsované vstupy z klienta do fuzzy množín
  • základňa pravidiel (rule-base) uchováva všetky vzťahy medzi vstupmi a očakávanými výstupmi v kolekcií IF-THEN pravidiel
  • uvažujúca jednotka použije vstupy a aplikuje na nich konkrétne pravidlá
  • defuzzifier prekonvertuje výsledok rozhodovania a sparsované výstupy pošle späť na klienta

V prípade viacerých vstupov sú fuzzy pravidlá väčšinou prepojené logickým spojením (konektorom) AND, pričom rule-base musí pokrývať každú možnú kombináciu všetkých výrazov z definičného oboru vstupnej premennej. Táto požiadavka úplnosti ale vedie k tzv. rule explosion problém-u, kde pre systém s n vstupmi, ktorý má každý m možných stavov potrebujeme celkovo m^n pravidiel! Toto pravidlo výbuchu predstavuje vážny problém a komplikuje implementovanie fuzzy kontrolovania vďaka vysokým nárokom na CPU zdroje. Combs navrhol URC (Union Rule Configuration) na zmiernenie tohto problému, kedy sa zložitosť výpočtu zníži na m*n pravidiel.

Fuzzy logika v herných agentoch

Zhrnutie

Zdroje

  1. Cintula, Petr, Fermüller, Christian G. and Noguera, Carles, "Fuzzy Logic", The Stanford Encyclopedia of Philosophy (Fall 2017 Edition), Edward N. Zalta (ed.), Dostupné z : https://plato.stanford.edu/archives/fall2017/entries/logic-fuzzy/
  2. Li, Yifan & Musilek, Petr & Wyard-Scott, L. (2004).Fuzzy logic in agent-based game design. 734 - 739 Vol.2. 10.1109/NAFIPS.2004.1337393. Dostupné z : https://www.researchgate.net/publication/4092875_Fuzzy_logic_in_agent-based_game_design