Elmosódott halmazok logikája

Az elmosódott halmazok logikája (angolul: fuzzy logic) a többértékű logikai szemantikák egyike. Tulajdonképpen fuzzy logika név alatt egy egész elméletcsaládról beszélhetünk, melynek sokrétű alkalmazásai vannak elsősorban az informatikában, de alkalmazásra talált a nyelvtudományi és logikai szemantikában, a matematikai logikában és a valószínűségelméletben is.

A tágabb értelemben vett fuzzy logika alapját képezi a fuzzy számítógépes rendszereknek, melyek szemben a szokványos rendszerekkel, nem csak igen és nem (illetve ki és be, vagy 1 és 0) értékekkel dolgoznak, hanem közbülső „valóságértékekkel” is, mint például 0,5 (félig-meddig), 0,2 (kicsit), 0,8 (eléggé)… Ezáltal az „életlen” (fuzzy) meghatározások (mint például az előbbiek) matematikailag kezelhetővé válnak.

Manapság a fuzzy logika illetve a fuzzy-control, tehát a fuzzy logikán alapuló irányítás, elsősorban gépek és robotok, háztartási készülékek irányításában talál alkalmazásra.

A fuzzy gondolatkör

Filozófiailag a fuzzy gondolatkör a sztoikusokig nyúlik vissza. Ők mutattak rá először arra, hogy természetes fogalmaink igazságtartományának határai nem jelölhetők ki egyértelműen. Klasszikus példájuk a kupac- vagy Szóritész-paradoxon volt. Eszerint tekintsünk egy halom vagy kupac kavicsot. A sztoikusok arról faggatták hallgatóságukat, hogy ha egyenként elveszünk egy-egy kavicsot, akkor meddig mondhatjuk még, hogy a szóban forgó dolog még kavicshalom-e vagy már más. Egy másik példa a kopasz ember paradoxonja. Egy dús hajú illető nyilvánvalóan nem kopasz. Vajon ha egyenként kihúznánk a hajszálait, hol lenne az a pont, ahol már kopasznak tekinthetnénk?

A fogalmaink igazságtartományának elmosódott határait matematikai szempontból először Lotfi A. Zadeh, a Berkeley (USA) egyetem számítástechnika-professzora vizsgálta 1965-ben. Ő adta a fuzzy logika (angolul: fuzzy = pontatlan, elmosódott, életlen, esetleg: „homálylogika”) kifejezést is. Ezt úgy modellezte, hogy minden egyes logikai kijelentéshez valamilyen módon egy, a [0,1] zárt intervallumba eső értéket rendelt. Eredetileg csak a fuzzy halmazok, illetve ezek karakterisztikus függvényének, a fuzzy függvényeknek fogalmát definiálta.

Egy U alaphalmaz H (hagyományos, vagy éles) részhalmazának karakterisztikus függvénye a következő:

χ H : U { 0 , 1 } ; x {   1 , ha  x H ,   0 , ha  x H {\displaystyle \chi _{H}:U\rightarrow \{0,1\};\;x\mapsto {\begin{cases}\ 1,&{\mbox{ha }}x\in H,\\\ 0,&{\mbox{ha }}x\notin H\end{cases}}}

Tehát a klasszikus H halmaz és egy elem tartalmazási relációja kölcsönösen egyértelműen megfeleltethető a karakterisztikus függvényének:

x H χ H ( x ) = 1 {\displaystyle x\in H\Leftrightarrow \chi _{H}(x)=1}

Ezzel szemben az U univerzum elemeiből alkotott fuzzy halmazzal, ami lényegében egy olyan függvény, a fuzzy-tartalmazási függvény ( μ H {\displaystyle \scriptstyle {\mu _{H}}} ), mely minden U-beli elemhez egy [0,1]-beli értéket rendel, és mely azt szándékozik jelenteni, hogy az adott elem milyen mértékben tekinthető a fuzzy halmaz elemének:

( x U ) ( μ H ( x ) [ 0 , 1 ] ) {\displaystyle (\,\forall x\in U\,)(\,\mu _{H}(x)\in [0,1]\,)}

Ezt a gondolatot Zadeh azokra a már meglévő vizsgálatokra alapozta, melyet Post, Gödel illetve Łukasiewicz végzett a többértékű extenzionális logikák megalkotásakor.

Megjegyezzük, hogy a fuzzy logika nem érinti a matematika megalapozási kérdéseit, hiszen a propozicionális és predikátumlogika fuzzy modelljei ugyanúgy a halmazelmélet talaján állnak, mint a többi modellelméleti illetve algebrai szemantikai rendszer. Másrészt logikai vonatkozásai is csak a fogalmak homályosságának egyféle modellezése, ráadásul realista (platonista) szemszögből. Ugyanis érthető módon azt feltételezi, hogy a fogalmak definíciójának homályossága a fogalmak természetes tulajdonsága és ennek mértéke egyértelműen meghatározott. Azt a problémát azonban kikerüli, hogy nem tudjuk, vajon nem nyelvi elégtelenségek okozzák-e csak a fogalmaink homályosságát, melyek mértékéhez ily módon nem férhetünk hozzá. Ezt jól mutatja, hogy az alkalmazásokban a számszerűsíthető, fokozatos homályosságot képes csak kezelni, mint például az életkor (vagy a kavicskupac nagysága), ellenben a bonyolultabb nyelvi szerkezetek homályosságával már csak hajánál fogva előrángatott módon tud megküzdeni. Tegyük hozzá azonban, hogy a fuzzy logikának nem is elsősorban logikai, hanem informatikai, szabályozáselméleti alkalmazásai vannak.

Alkalmazásai

A fuzzy logika alkalmazásai megtalálhatók az automatizálási technikában, az üzemgazdaságban, az orvosi technikában, a szórakoztató elektronikában az autóiparban stb. A fuzzy logika gyakran akkor hasznos, ha egy bizonyos probléma matematikai leírása nem áll rendelkezésre, ill. nem, vagy csak túlzott ráfordítással lenne elkészíthető, azonban a hétköznapi verbális, szöveges megfogalmazás adott. Ilyen esetekben a folyó nyelven, tehát normális emberi beszédben, fogalmazott mondatokból és szabályokból a fuzzy logika segítségével egy olyan matematikai megfogalmazás, leírás nyerhető, amely aztán számítógépeken is alkalmazható.

Egy tipikus alkalmazás a mosógépek oly módon történő programozása, hogy a gép a tisztítandó textíliák szennyezettségének függvényében adagolja a mosószert. A gondolatmenet kiindulópontja, hogy a ruhák szennyességi foka nem egyértelműen meghatározható. Példának okáért, nem létezik egy 55%-os szennyezettségi fok definíció. Mivel azonban a mosószer mennyisége pontosan meghatározandó, ezért egy olyan logikára van szükség, amely pontatlan, életlen fogalmakkal, mint "enyhén szennyes" vagy "erősen koszolódott" is bánni tud. A fuzzy logika, illetve a fuzzy logika alapján felállított szabályrendszer, a szennyeződési fokot dokumentáló verbális kifejezéseket egy konkrétan definiált tisztítószermennyiségre fordítja. Például a kifejezés "kissé szennyezett" 23 gramm tisztítószert, míg "erősen koszolódott" 65 grammnyit eredményez. A legfontosabb megállapítás, hogy ezen logika mögött nem található egy egyértelmű matematikai függvény. A nevezett mennyiségeket megfigyelésekből, tapasztalati értékekből, empirikus vizsgálatokból kell nyerni.

További alkalmazások a metrók irányítóberendezései, automata váltók vezérlése személygépkocsikban, riasztórendszerek orvosi műszereknél, rádiók frekvenciaszűrői, gépjárművek ABS rendszerei, tűzjelzőtechnika, energiaellátók prognózisai a felhasználást illetően, automatikus fényképezőgépek stb.

A fuzzy logika az irányítástechnikán túlmenően üzemgazdaságokban is sikeresen felhasználható. Egy ilyen példa az intelligens kárfelülvizsgálat, amellyel biztosítótársaságok csalások ellen védekeznek.

Fuzzy halmazok

A fuzzy logika alapja az ún. fuzzy, tehát életlen, elmosódott halmazok. A tradicionális halmazokkal szemben (a fuzzy logika összefüggésében éles halmazoknak is nevezik őket), amelyekben egy elem vagy a halmazhoz tartozik vagy nem, egy fuzzy halmaznál az elem részben is tartozhat a halmazhoz. A hozzátartozás mértékét a hozzátartozási függvény (fuzzy függvény) µ határozza meg, amely a fuzzy halmaz elemeihez egy nulla és egy közötti valós számot rendel hozzá.

Fuzzy halmazoknál is lehetséges az operátorok használata, mint a tradicionális halmaztanban, mint például metszet (ÉS), egyesülés (VAGY) és komplemens (NEM). Ezen operációk modellezéséhez a T-norm, S-norm és a negációs függvény osztályokat használják.

Fuzzy függvények

Fuzzy függvény az életkorhoz

A hozzárendelő függvények a fuzzy függvények. Egy példa erre az emberi kort leíró fuzzy halmaz fuzzy függvénye. Ez több tető alakú háromszögből áll, a különböző korok számára. Mindegyik háromszög az emberi élet néhány éves szakaszát fedi. Egy negyvenöt éves ember ezáltal következő tulajdonságokkal bírna: még fiatal 0,75-ös értékkel, (ez még viszonylag sok), középkorú 0,25-ös értékkel (egy kicsit) és a többi tulajdonsággal 0 értékkel bír, tehát egyáltalán nem. Más szavakkal: egy negyvenöt éves még elég nagy mértékben fiatal és egy kicsit középkorú, viszont egyáltalán nem öreg, egyáltalán nem nagyon fiatal stb.

Fuzzy függvényeket a legtöbb esetben statisztikai gyűjteményekből származó táblázatokból készítenek. Ezek az értékgyűjtemények készülhetnek a felhasználás során is, amennyiben van visszacsatolás, mint például egy liftvezérlés esetében.

Ez a háromszögletű, tehát lineáris forma egyáltalán nem szükséges, fuzzy függvények bármilyen formátumúak lehetnek, amíg a függvény értékek nulla és egy között maradnak. A gyakorlatban azonban ilyen háromszögszerű, lineáris függvényeket alkalmaznak a legszívesebben, az egyszerű kiszámíthatóság miatt.

A következő S függvény egy nemlineáris fuzzy függvény esete. A függvény azt mutatja meg, hogy az x {\displaystyle x} szám az a {\displaystyle a} állandóhoz mennyire van közel. A közelség definícióját ebben az összefüggésben maga a függvény adja meg. Az a {\displaystyle a} szám alkalmasan megválasztott pozitív δ {\displaystyle \delta } sugarú környezetén kívül eső x {\displaystyle x} -eket „nagyon távolinak” tekinti (azaz a függvény itt felveszi az elvárt szélsőértékeit), az ezen belülieket „valamennyire közelinek”, x = a {\displaystyle x=a} esetén pedig éppen 1/2, azaz „középen” lesz az eredmény.

S ( x , a , δ ) = { 0 x a δ 2 ( x a + δ 2 δ ) 2 a δ < x a 1 2 ( a x + δ 2 δ ) 2 a < x a + δ 1 x a + δ {\displaystyle S(x,a,\delta )={\begin{cases}0&x\leq a-\delta \\2({\frac {x-a+\delta }{2\delta }})^{2}&a-\delta <x\leq a\\1-2({\frac {a-x+\delta }{2\delta }})^{2}&a<x\leq a+\delta \\1&x\geq a+\delta \end{cases}}}

A görbe változó súlyozással rendeli a különböző életkorokat egy bizonyos halmazhoz.

Az emberi kor ezen görbe segítségével következőképpen ábrázolható:

Az emberi kor
Meghatározás (halmaz) Fuzzy-függvény
nagyon fiatal s 0 : ( 1 s ( x , 30 , 30 ) ) 2 {\displaystyle s_{0}:\;(1-s(x,30,30))^{2}}
fiatal s 1 : 1 s ( x , 30 , 30 ) {\displaystyle s_{1}:\;1-s(x,30,30)}
már nem nagyon fiatal s 2 : 1 ( 1 s ( x , 30 , 30 ) ) 2 {\displaystyle s_{2}:\;1-(1-s(x,30,30))^{2}}
többé-kevésbé öreg s 3 : | s 5 s ( x , 60 , 30 ) | {\displaystyle s_{3}:\left\vert \;s_{5}-{\sqrt {s(x,60,30)}}\right\vert }
öreg s 4 : s ( x , 60 , 30 ) {\displaystyle s_{4}:\;s(x,60,30)}
nagyon öreg s 5 : s ( x , 60 , 30 ) 2 {\displaystyle s_{5}:\;s(x,60,30)^{2}}

Hétköznapi módosítások, mint "nagyon", "többé-kevésbé" úgymint "már nem" az adott függvény egyszerű módosításával ábrázolhatók:

  • A hétköznapi megerősítő modifikátor "nagyon" egy fokozott exponens formájában ábrázolható ( s 0 = s 1 2 {\displaystyle s_{0}=s_{1}^{2}} ). Az eredmény egy meredekebb vonulat, a kiindulási függvényhez képest.
  • A hétköznapi modifikátor "többé-kevésbé" egy csökkentett exponens ill. egy gyök segítségével fejezhető ki ( s 3 = s 4 {\displaystyle s_{3}={\sqrt {s_{4}}}} ). Az eredmény egy laposabb vonulat, a kiindulási függvényhez képest; illetve ez a kifejezés azt is jelenti, hogy "nem nagyon", vagy másképp nem("nagyon"), így minél inkább igaz, hogy "nagyon", annál kevésbé igaz, hogy "többé-kevésbé" (tehát: s 3 = s 5 s 4 {\displaystyle s_{3}=s_{5}-{\sqrt {s_{4}}}} ).
  • A hétköznapi kifejezés tagadása egy egyszerű kivonással ábrázolható: s 2 = 1 s 0 {\displaystyle s_{2}=1-s_{0}} .

Életkor

Fogalmi behatárolás

A fuzzy logikával nem összetévesztendő a fuzzy keresés, amely adatbankokban egy "elmosódott", "életlen", "pontatlan" keresést tesz lehetővé, például olyan esetekben, amikor egy név vagy egy fogalom pontos írásmódja nem ismeretes.

Továbbá a fuzzy értékek az [0,1] intervallumból megjelenésükben emlékeztetnek ugyan a valószínűségre ill. valószínűségértékekre, azonban a fuzzy téma alapvetően más mint a valószínűség.

Megjegyzendő, hogy két egymást metsző függvény nem szükségszerűen összegez 1-et.

Források

  • Kóczy László T. – Tikk Domonkos: Fuzzy rendszerek Archiválva 2006. június 12-i dátummal a Wayback Machine-ben
  • Rendszerek szimulációja Fuzzy halmazokkal
  • Mesterséges intelligencia alapjai (radai)
  • [1]
  • Buch zum Thema (PDF)
  • Schnelle Takagi Sugeno Fuzzy-Modellierung (PDF)
  • Fuzzy Logik Image Processing Archiválva 2006. június 22-i dátummal a Wayback Machine-ben (engl.)
  • 7 Wahrheiten über Fuzzy Logik, (engl.)
  • Englische Einführung in das Thema (PDF)
  • What is Fuzzy Logic?
  • Matematika Matematikaportál
  • Informatika Informatikai portál