korlátozott optimalitás (KO)

Kapcsolódó fogalmak: 
korlátozott optimalitás (KO)
Kapcsolódó fogalmak: 
ágens
Kapcsolódó fogalmak: 
ágens architektúra
Kapcsolódó fogalmak: 
ágensprogram
Kapcsolódó fogalmak: 
intelligens ágens
Kapcsolódó fogalmak: 
racionalitás
Kapcsolódó fogalmak: 
tökéletes racionalitás
Kapcsolódó fogalmak: 
korlátozott racionalitás
Kapcsolódó fogalmak: 
környezet
Kapcsolódó fogalmak: 
állapot
Kapcsolódó fogalmak: 
érzékelő
Kapcsolódó fogalmak: 
érzékelés
Kapcsolódó fogalmak: 
beavatkozó szerv
Kapcsolódó fogalmak: 
nemdeterminisztikus környezet
Kapcsolódó fogalmak: 
determinisztikus környezet
Kapcsolódó könyvfejezetek: 
27.1. Ágensösszetevők
Kapcsolódó könyvfejezetek: 
4.4. Lokális keresés folytonos terekben
Rövid szöveges bemutatás: 
Az ágens korlátozottan optimális, ha képességeihez mérten a lehető legjobban viselkedik környezetében. Ez egy reális, megvalósítható elvárás az ágensekkel szemben. Mindig van ilyen ágens, és az ágens akkor a legjobb, ha ilyen. Ilyen ágenseket szeretnénk tehát tervezni, készíteni. Az intelligens ágensek olyanok, mint egy függvény: bemenetük egy-egy érzet (pl. kép, hang), kimenetük pedig egy-egy cselekvés (pl. mozdulat, hangjelzés). Lényegében tehát az ágensek, ahogyan az emberek is, érzetek sorozatából kiindulva állítanak elő cselekvéseket (az előzőleg érkezett érzetek is szerepet játszhatnak abban, hogy mit teszünk). Az adott időpillanatig beérkezett érzeteket érzettörténetnek nevezzük. Az ágens, mint függvény, végső soron ezekhez az érzettörténetekhez rendel hozzá cselekvéseket minden időpillanatban. Mikor ágenst szeretnénk tervezni, akkor célszerű ezzel az ágens-függvénnyel szemben is támasztanunk pár elvárást. Az egyik legfontosabb ilyen elvárás az, hogy az ágens-függvénynek megfelelő ágens legyen intelligens. Mindazonáltal az intelligenciának mind a mai napig nincs kellőképpen egzakt definíciója, így inkább a racionalitást szokás előtérbe helyezni. Az ágens tehát akkor jó, ha racionális, azaz mindig azt teszi, ami a legjobb, ami helyes. Mégis, hogy lehet a cselekedetek helyességét, jóságát mérni? – merülhet fel a kérdés. A legegyszerűbb, ha megmondjuk pontosan, hogy mely környezeti állapotokat tartjuk kívánatosnak (pl. a szoba legyen kiporszívózva, az ágy legyen megágyazva, és a mosatlan legyen elmosva). Egy racionális házirobot-ágens ezek szerint ezt a környezeti állapotot állítaná elő. Ekkor viszont még nem tudjuk megmondani, hogy melyik állapot mennyire jó. Például mi van akkor, ha ágensünk csak felületesen porszívózza végig a lakást, rendetlenül ágyaz meg, és a mosogatás során is számos edénnyel tesz minket szegényebbé? Érdemes lehet bevezetni egy úgynevezett jósági mércét, amely megmondja egy-egy állapotról, vagy akár állapotok sorozatáról – állapottörténetről –, hogy mennyire jó. Nyilván nem csak az számít, hogy „mit”, hanem az is, hogy „hogyan”. Tehát tényleg állapotok sorozatában érdemes gondolkodnunk. Például, ha egy ágens a fentebb említett teendőket fele annyi idő alatt, jóval kevesebb energiát, üzemanyagot pocsékolva tudja előállítani, akkor az jobb. De mégis, mikor mondhatjuk, hogy racionális az ágensünk? A racionalitásnak nincsenek szintjei, mint ahogyan az optimalitásnak sem. Valami vagy racionális/optimális, vagy nem. A tudományban nem szokás racionálisabb, vagy optimálisabb rendszerekről beszélni. Ha egy rendszer eleget tesz a racionalitás, vagy optimalitás kritériumának, akkor racionális, vagy optimális, egyébként nem. Tehát például házi robotunk akkor lenne racionális, ha a lehető leggyorsabban, a lehető legkevesebb energiát felhasználva hajtaná végre a feladatát a lehető legjobb minőségben. Ehhez persze tudnunk kellene rangsorolni, hogy mennyire jó egy mosogatás, megágyazás, és porszívózás. Viszont, ha erre képesek vagyunk, akkor meg tudjuk mondani, hogy melyik lenne a legjobb, „legtöbb pontot érő”, leghasznosabb házi robot. Ez a robot volna tehát racionális. Ráadásul tökéletesen racionális. Tökéletesen racionális robotot konstruálni azonban nem biztos, hogy tudunk. Végső soron ideális esetben csak a fizika törvényszerűségei kellene, hogy határt szabjanak annak, hogy milyen hatékonysággal tudja házi robotunk elvégezni a teendőit. Ha például fénysebességgel porszívózna, mosogatna, és ágyazna meg, akkor – Einstein relativitás elméletéből tudjuk – ahhoz végtelen sok energiára volna szüksége, arról nem is beszélve, hogy a fénysebességet mind a mai napig még csak megközelíteni sem tudtuk … Tehát a tökéletes racionalitás irreális elvárás volna ágensünkkel szemben. Nagyon egyszerű esetben talán még kivitelezhető, de realisztikusabb esetben sajnos már nem. Ebből kifolyólag került bevezetésre a korlátozott racionalitás fogalma [1], ami úgy oldja meg az előbbi dilemmát, hogy azt mondja, hogy a megvalósítható lehetőségek közül válasszuk a legjobbat: ágensünk legyen a megvalósítható ágensek legjobbika. Ennek egy MI-n belüli, formálisabb megfogalmazása a korlátozott optimalitás [2]. A korlátozott optimalitás alapötlete, hogy már nem általában az ágens-függvényekre tesz megkötést, hanem adott ágens-architektúrán futtatott ágens-programokra. Egy ágens ugyebár tekinthető egy architektúra és egy program együttesének. Az ágens architektúráján futatott program eredményezi az ágens viselkedését (amit egy megfelelő ágens-függvénnyel is le lehet írni). Az ágens architektúrája fix. Például fix a házi robot váza, processzora, memóriája, szenzorai és beavatkozói (a hardvere), és találjuk meg ehhez az architektúrához a legjobb programot! Ez az elvárás már nyilván megvalósítható. Biztos, hogy van egy, vagy több legjobb program, még hogyha nagyon nehéz is megtalálni őket, amik az ágens képességeihez mérten a lehető legjobb viselkedést eredményezik. Például házi robotunk akkor volna korlátozottan optimális, ha olyan programja volna, amely úgy vezérelné az architektúráját, hogy képességeihez mérten minimális idő és energiafelhasználás mellett maximális hatékonysággal porszívózna fel, mosogatna el, és ágyazna meg. Ha tehát a korlátozott optimalitást választjuk elvárásnak, akkor lényegében azt várjuk el, hogy rendszerünk képességeihez mérten a lehető legjobban viselkedjen. Ha adott környezetben, adott feladatra képesek volnánk ilyen ágenst tervezni és megvalósítani (pl. otthonunkban egy korlátozottan optimális házi-robotot tudnánk létrehozni), akkor ez lenne az adott feladat kapcsán elvárható legjobb megoldás. Más környezetben más feladattal szembesülhet az ágens. Olyankor elképzelhető, hogy egészen más programra volna szüksége ahhoz, hogy korlátozottan optimális legyen. Ha például házi-robotunkat a ház előtti kert rendezésére is szeretnénk befogni, akkor programját ennek megfelelően kellene módosítani (hiszen a kerti körülmények mások, mint a házon belüli körülmények, és ezért a házon belüli működés várhatóan odakint nem volna optimális). Sajnos azonban elképzelhető, hogy a megváltozott környezetben az adott architektúra (pl. házi-robotunk hardveres felépítése) koránt sem volna elegendő ahhoz, hogy érdemben megoldja a feladatot. Elképzelhető, hogy házi-robotunk a kert göröngyös föld-talaján még csak mozogni sem lesz képes, mert nem alkalmas rá. Ekkor hiába próbálnánk rá bármilyen jó programot írni, a feladat elvégzésének hatékonysága igencsak korlátozott volna. Ettől még azonban továbbra is beszélhetnénk korlátozott optimalitásról. Továbbra is lenne legalább egy olyan legjobb/leghasznosabb ágens-program az adott ágens-architektúrára, amely a lehetőségekhez képest valóban a legjobb működést eredményezi, még hogyha ez nem is volna abszolút értelemben túl hatékony (pl. ez a korlátozottan optimális házi-robot nem igazán lenne képes a kertben rendet tenni). Ekkor megoldást jelenthet, ha a megváltozott környezethez hozzáigazítjuk az ágens architektúráját (pl. házi-robotunkat felszereljük olyan járóberendezéssel, amivel már a kert göröngyös föld-talaján is elboldogul). Tehát a korlátozott optimalitás első sorban az ágens programjától és feladatától függ, másodsorban viszont környezetétől és architektúrájától.