Mesterséges Intelligencia (MI) Intelligens ágensek Dobrowiecki Tadeusz Antal Péter, Bolgár Bence, Engedy István, Eredics Péter, Strausz György és mások
BME I.E. 437, 463-28-99
[email protected], http://www.mit.bme.hu/general/staff/tade
Ágens = (Ágens)Architektúra + (Ágens)Program Kiinduló elvek/észrevételek: Környezeteknek lehetnek tipikus esetei (Környezet-típusok) Környezetben fellelhető problémáknak lehetnek tipikus esetei (Probléma-típusok) Programnak lehetnek tipikus esetei (Ágensfüggvények és Ágenstípusok) .
Hozzáférhető vagy nem hozzáférhető környezet - érzékelők minden információt észlelni tudnak, ami a cselekvés kiszámításához szükséges (vagy sem) Következmény: információhiányt kompenzálni kell
Determinisztikus vagy nem determinisztikus környezet - nem kell a bizonytalansággal törődni, - nem hozzáférhető környezet nem determinisztikusnak tűnhet, gyakran jobb az ágens szemszögéből (program) determinisztikusnak/ nem determinisztikusnak tekinteni Következmény: milyen legyen a bizonytalanság matematikai modellje?
Epizódszerű vagy nem epizódszerű környezet - epizód = szünetek az ágens észleléseiben és cselekvéseiben, - az egymást követő epizódok nem függenek az előzőekben bekövetkezett cselekvésektől Következmény: az ágensnek kell/nem kell „folyamatosan” helytállnia.
Diszkrét vagy folytonos környezet - észlelések és cselekvések elkülönülő, világosan definiált véges/végtelen számú halmaza - folytonos környezet diszkretizálása? Következmény: diszkrét és folytonos matematika egyben? felbontás hibája?
Egy ágenses vagy többágenses környezet - másokról tudni a racionalitás része Következmény: több bizonytalan információ kezelése - bonyolúltabb
Kooperatív vagy versengő környezet - mások segítenek is, vagy belezavarnak és rontják a racionalitás esélyeit. Következmény: megnövekedett bonyolúltság mások hatásának kezelésére
Környezetek
hozzáférhető determinisztikus epizódszerű statikus diszkrét
nem hozzáférhető nem determinisztikus nem epizódszerű dinamikus folytonos
A legnehezebb a nem hozzáférhető, nem epizódszerű, dinamikus, nem determinisztikus, és folytonos környezet. A valós helyzetek legtöbbje olyan bonyolult, hogy gyakorlati okokból nem determinisztikusként kezelendőek. Ágens ellenségei (amiktől az intelligenciája korlátos, vagy romlandó) (1) véges erőforrásai (rendelkezésre álló időt beleértve) (2) információhiány érzékeléskor (3) a környezet változékonysága
Problémák Egyállapotú probléma fizikai állapot = hiedelmi állapot
Több állapotú probléma fizikai állapotok halmaza = hiedelmi állapot Eshetőségi probléma véges információ hiány, információ érzékelés, előkészített megoldások különböző eshetőségekre (Plan A, Plan B) Felfedezéses probléma önleírás hiánay, információ hiánya, cselekvéshatás érzékelése, kétes megoldások kipróbálása, vészhelyzetek, helyes információ tanulása
Mehet arrébb, ha nincs helyben munka
Mehet arrébb, ha nincs, vagy ha van munka
És ha nincs érzékelője?
Ágensfüggvény Min múlik, hogy az adott pillanatban mi a racionális? (Mivel gazdálkodhat ágens az intelligens feladatvégzéshez? Mivel gazdálkodhat az ágens tervezője emelt szolgáltatások megvalósítása érdekében?) - a sikert mérő valamilyen teljesítmény mérőszám, - amit az ágens eddig megfigyelt észlelési sorozat, - amit az ágens a környezetéről tud, - a cselekvések, amiket képes végrehajtani, mit tud róluk?
Ágensfüggvény Matematikailag egy ágens:
Legyen: cs = cselekvés m = megfigyelés TB = tudásbázis T = {1, …, t-1}
cst = f(mT , csT , TBt-1 ) cst = f(mt-1 ) cst = f(mT ) cst = f(mt-1 , cst-1 ) cst = f(TBt-1 ) cst = f(mt-1 , cst-1 , TBt-1 ) … (1) Melyik ágens(függvény) képvisel több intelligenciát? több önállóságot? több …? (2) Kinek a felelőssége az ágensfüggvény? (3) Milyen lehetőségek vannak kiszámítására?
Ágensfüggvény - kinek a felelőssége?
(a) ágens tervezésekor: a számítás egy részét a tervező végzi (b) feladatvégzés közben az ágens kikövetkezteti a soron lévő cselekvést, maga az ágens végez további számításokat, (c) amikor az ágens tanul a tapasztalataiból, még további számításokat végez annak eldöntésére, hogy hogyan módosítsa a viselkedését.
ágens függvény: eltérő esetekben (környezet, architektúra, …) eltérő matematika, eltérő esély a sikeres kiszámításra ...
Ágensfüggvény számítása – (3) lehetőségek Ágenstípusok (absztrakt programarchitektúrák) Egyszerű (ugrótábla) reflexszerű ágens Modell alapú ágens Cél-orientált ágens Hasznosság-orientált ágens Tanuló ágens BDI ágens Hibrid (réteges, moduláris) ágens MAS (Multiple Agent Systems) ágens
Reflexszerű ágens
Implementálás: ha … akkor …. kereső/ugró táblával
Reflexszerű ágens – önmagában kudarc 1. Már egy egyszerű, a sakkot játszó ágensnél, a tábla kb. 35100 bejegyzést tartalmaz. (Ágensprogram mérete) 2. Hosszú ideig tartana, amíg a fejlesztő elkészíti a táblát . (Fejlesztés időigénye) 3. A cselekvések kiválasztása beépített. Ha a környezet megváltozik előre nem várt módon, az ágens elvesz. (Merev a dinamikus/ nem hozzáférhető környezetben)
4. Ha tanulhat is, örökké tartana minden táblabejegyzést megtanulni. (Tanulás komplexitása) 5. De a reflexszerű ágens megvalósítja a kívánt ágens függvényt: cst = f(mt-1 ) Nem elég azt mondani: „nem lehet intelligens”, a lényeg azt megérteni, hogy milyen ágesn lehet sikeresebb az előbbi hátrányok elkerülésében.
Modell alapú ágens Reflexszerű ágens jó, ha a helyes döntés kiszámítható az aktuális észlelésből. És ha a környezet nem hozzáférhető?
Megoldás: “belső állapot” információ fenntartása és frissítése – megkülönböztetni a világ azonos észlelést generáló, de lényegében különböző állapotait. Két fajta tudás (modell) beépítése: 1. hogyan változik a világ magától (a környezet modellje) 2. ágens cselekvései hogyan befolyásolják a világot (ágens saját modellje)
Modell alapú ágens
Cél-orientált ágens A környezet jelenlegi állapotát tudni a döntéshez nem elég, mit tegyünk? (pl. több cselekvés feltétele egyszerre teljesül). A jelenlegi állapot leírása mellett az ágensnek valamiféle céllal is rendelkeznie kell (cél = a környezet egy kívánatos állapota) Ágensprogram: - összeveti a lehetséges cselekvések eredményeit, hogy a céljához vezető legjobb cselekvés meghatározza - megválasztott cselekvés befolyásolja a környezetet a cél irányába. Újfajta döntéshozatal: magába foglalja a jövő figyelembevételét is
Cél-orientált ágens
Cél-orientált - reflexszerű ágens szembeállítása Reflexszerű („procedurális”): fejlesztés hosszú, nehéz nagy rendszert építeni, csakis az eredeti célokra vethető be, tanulás kétséges, az észlelés és a cselekvés csatolása erős (= gyors).
Cél-orientált („deklaratív”): reprezentációs probléma - a szükséges információ időben kikövetkeztetése a világ szimbolikus ábrázolásából, transzlációs probléma - szükséges információ átalakítása szimbolikussá, mind időrabló. Elkésett információ haszontalan, felskálázás valós-világi esetekre kérdéses. Reflexszerű – csak a jelenben létezik Cél-orientált – múltról következhet, a jövőre vetíti ki Cél-orientált ágens: új cél megadása → új viselkedés generálása John Mccarthy, Programs with Common Sense (1958)
Hasznosság-orientált ágens Több cselekvéssorozat vezethet ugyanahhoz a célhoz. A cél ismerete nem elegendő a minőségi viselkedés létrehozásához, csak durva különbséget tesz az „előnyös”/ „nem előnyös” állapotok (trajektóriák) között. Egy állapot „előnyösebb” egy másikhoz képest, ha magasabb a hasznossága (utility) az ágens számára. Hasznosság függvény: információ, erőforrások (pénz) hasznossága, ... racionális döntéshez vezet, ha a célokkal bajban vannak A cél a magas hasznosságú állapotok mentén érhető el.
Hasznosság-orientált ágens
Tanuló ágens cselekvő alrendszer tanuló alrendszer kritikus problémagenerátor
BDI ágens (AgentSpeak) Szándék ismerete lehetővé teszi a jövőbeli cselekvések jóslását, cselekvések magyarázatát, konzisztencia vizsgálatot. (Bratman 1987) XYZ-nek szándéka van levizsgázni. Elvárjuk, hogy könyvtárban bukkan fel, hogy este könyvel a kezében látjuk, hogy szórakozás ajánlatát elhárítja. Nem ér meglepetés, ha mogorva hangulatban látjuk. Meglep minket, ha moziban találkozunk vele. B = Belief (Hiedelem) – ágens által igaznak tartott tények D = Desire (Kívánalom) – olyan tények, amiket ágens valamilyen módon „igazzá” szeretne tenni, a célok I = Intention (Szándék) – a célok megvalósításához vezető elhatározások, végrehajtásra kiválasztott, vagy már részben végre is hajtott tervek, melyek további cselekvései meghatározzák az ágens közeljövőbeli viselkedését
Hibrid ágens Különböző ágens típusok fúziója: előnyös tulajdonságok megtartása káros hatások visszaszorítása. Alapgondolat: jó definiált környezetben reflexszerű ágens helyesen cselekszik és GYORS, változó környezetben, hiányos érzékelés mellett a cél-orientált megoldás mindig működőképes (ROBUSZTUS, ADAPTÍV, TANULHATÓ), de a fokozott információfeldolgozás miatt LASSÚ.
Hármas torony perspektíva
Hármas réteg perspektíva
Hibrid ágens UAV/ ASV
MAS – Multi Agent System – ágens szervezetek Mások jelenléte: megzavar, ellehetetlenít, … (véges erőforrások miatt) segít, könnyít, elhárít, véd, … (ők is egyfajta erőforrás) Mások jelenlétét érzékelni: kivitelezhető? akarjuk? hasznos? tudásbázis: kommunikáció (nyelv), párbeszéd (protokollok) teamformálás, http://www.kivasystems.com
együttműködés
Service robots in nursing homes: Care-O-bot 3 and CASERO, https://www.youtube.com/watch?v=dx0zxr3D_zU https://www.youtube.com/watch?v=ABpOtvLzh2U A Day in the Life of a Kiva Robot, https://www.youtube.com/watch?v=6KRjuuEVEZs
Kis HF-2 Milyen ágens rendszernek fogható a Kolibree gyártmányú intelligens fogkefe? Milyen az intelligens fogkefe ágens környezete és milyen jellegű problémákat old meg? Tetszik az ötlet, vagy sem? Minden reklámszövegnek mardéktalanul hisz? Van-e az intelligens fogkefének árnyoldala is? A fogkefe rendszerben milyen további „intelligencia” beépítését el tudna képzelni, szigorúan az adott design lehetőségein belül? (max 1 oldal) http://imagazin.hu/kolibree-az-okosfogkefe-teszt/ Kolibree. Electric and Connected Toothbrush. https://www.kolibree.com/en/