Témalabor 2018 Kooperatív intelligens rendszerekről Dobrowiecki Tadeusz
MAS Multi Agent Systems 2011
MAS Multiagent Systems Társadalom Szervezet Szerep Egyed Feladatkörnyezet 2011 Az a másik (ágens, ember) - hasznos, barát,... - ellenség - semleges
2011 Parallel raktár kiszolgálás Kiva szállító robotokkal
2011 Idős/beteg egészségügyi és szociális ápolása Fraunhofer Institut Care-O-bot 3-tal
Labdarugás, mint szervezett cselekvés Nao robotokkal (Aldebaran Robotics) 2011
Forgalomirányítás (makro/mikro szimulátorok) 2011
Grid Manufacturing Equiplet és Product ágensek együttese 2011
GerAmi titkári ágensek idősek otthonában 2011
Carrel - e-intézmény a szervátültetés megszervezéséhez 2011
Elosztott szenzor rendszerek Tornádó korai előrejelzése időjárási radárokkal 2011
Elosztott szenzor rendszerek GITEWS: German Indonesian Tsunami Early Warning System 2011
Elosztott szenzor rendszerek Orrv/mesterlővész beazonosítása 2011
Elosztott szenzor rendszerek Területörzés
First Responder Első Válaszadó robotok 2011
2011 MAS Ágens modellek
Kommunikáció egy cselekvésfajta: kikövetkeztethető, megtervezhető, Kommunikációnak szemantikus értelmezése van: üzenetet meg kell érteni, miért jött, miért ilyen, hogyan kell rá reagálni Ha cselekvés, akkor vannak előfeltételei és következményei, mik azok? Új ágensarchitektúra - BDI Belief, Desire, Intention belief hiedelem információs attitűd, az ágens által rendelkezett információ reprezentálása. desire (goal) - kívánalom (cél) motivációs attitűd, célállapot reprezentációja a cselekvés végrehajtásának az oka. intention (plan) szándék (terv) deliberatív attitűd, a cél elérésének eszközei a jövőbeli cselekvések Ágens leírása többnyire emberre alkalmazott elvek alpján: ágens tud/ elhisz dolgokat, szándékai, kívánságai, céljai vannak, ágens köteles valamire, Intencionális megközelítés egy bonyolult rendszer viselkedésének magyarázata v. jóslása anélkül, hogy a működését megértenénk (ember, mint fekete doboz)
Mit szabad hinnie egy ágensnek? Azaz ágensek tudásának logikai leírásával várhatóan problémáink lesznek - modális logikák modális operátorokkal - lehetséges világok szemantikája
MAS Ágens szervezetek 2011 Kooperatív és Tanuló Rendszerek DT-HG, BME-
Ágensszervezetek Szervezet: szerepek, relációk, tekintélystruktúrák együttese Egy szervezet célokat szolgál. Célok: konkrét absztrakt: valamilyen jellegű komplexitás csökkenése (munka, következtetés, kommunikáció, keresés, ) Nyílt - ágensek jönnek-mennek, felveszik a kommunikációt előny: rugalmas, nyílt, hátrány: nem stabil, nem megbízható Félig nyílt - kapuőrző (gate-keeper) ágensek, lehet csatlakozni, de szervezeti korlátok felvállalásával Félig zárt - külső ágens nem léphet be, de belül inicializálható egy olyan ágens, amely a külső ágens érdekeit képviseli, belül rugalmas Zárt - MAS team struktúrák, minden tervezési fázisban dől el, nincs ehetőség külső ágens bevitelére, csökkentett rugalmasság, megnőtt stabilitás és megbízhatóság
Szervezetek típusai: Hierarchia Holárchia Koalíció Team Kongregáció Közösség Federáció Piac Mátrix (Összetett) homogén heterogén ágensek egyéni közös cél elosztott központosított döntések
Agent Communication Language (ACL)
Emberi nyelv funkciói Információ átadása Ma szépen süt a nap. Éhes vagyok. Ebédelni szándékozom. A közös cselekvések koordinálása Jössz velünk ebédelni? Fizessünk külön-külön. Szociális kapcsolatok létesítése és fenntartása Menjünk enni! csevegő közeledés (fatikus, phatic communication) szociális funkciójú tartalmi közlés nélküli fecsegő, csevegő" kommunikáció, érzetek, hangulat keltése, hallgató figyelmének felkeltése, társalgás fenntartása. Jelzés, jeladás Hadd fizessek én!
Az emberi nyelv aspektusai (nyelvi elméletek): A nyelv szintaxisa: szavak, frázisok, mondatok, nyelvtan A nyelv szemantikája: milyen jelentést kölcsönzünk a szavaknak, a frázisoknak, a mondatoknak azaz milyen a jól definiált nyelvi kifejezések és a világ objektumainak ill. koncepcióinak a kapcsolata. A nyelv pragmatizmusa: a jelentés nem szemantikai aspektusa, pl. mi a beszélő szándéka, hogy azt mondta, amit mondott.
A beszélő szándéka Alíz azt mondja Bélának, hogy: A megbeszélés holnap ötkor lesz Bélának mit lenne szabad ebből kikövetkeztetnie? Hogy: A megbeszélés holnap lesz. Alíz azt hiszi, hogy a megbeszélés holnap lesz. Alíz azt akarja, hogy Béla azt higye, hogy a megbeszélés holnap lesz. Alíz azt akarja, hogy Béla azt higye, hogy a megbeszélés nem holnap lesz. Alíz azt akarja, hogy Béla azt higye, hogy Alíz azt hiszi, hogy a megbeszélés holnap lesz. Alíz azt akarja, hogy Béla azt higye, hogy Alíz nem hiszi, hogy a megbeszélés holnap lesz. Alíz azt akarja, hogy Béla azt higye, hogy Alíz azt akarja, hogy Béla azt higye, hogy a megbeszélés holnap lesz. A megbeszélés nem holnap lesz. stb. (ad infinitum).
Kijelentések és a szemantikájuk Kijelentés tényközlés, annak az állítása, hogy a világra érvényes valami (valamilyen tulajdonság). Egy kijelentés lehet igaz, vagy hamis. (Filozófiai kutatások többsége, a történelem nagyobb részében a kijelentések kutatására összpontosított.) Legyen P egy kijelentés, pl. Ma vörös a naplemente. Igazságfeltétel (truth-conditional) szemantika (Frege, Tarski) A Beszélő azt mondja, hogy: Én hiszem a P-t E állítás kérdőre vonása: Igaz a P? Verifikációs szemantika (Dummett, Wright) Számos tényszerű kijelentés nem verifikálható objektíve A Beszélő azt mondja, hogy: Én hiszem a P-t E állítás kérdőre vonása: Tudod igazolni, miért hiszed a P-t?
Nem minden kimondás egy kijelentés Beszédaktus (speech act) elmélet John L. Austin (1911-1960), Harvard Egyetem, 1955 előadás sorozat, halála után kiadva (1962): How to Do Things with Words nyelv = eszköz: - konstatívum (a világ állását konstatáló) megnyilatkozás - performatívum: kimondás = csinálás (Bocsánat!) logikai értéke nincs! magának a világállapotnak a létrehozása!
Beszédaktusok - a természetes nyelv pragmatikus elmélete, avagy nem a nyelv felépítését, hanem a használatát magyarázó elmélet. Az alap premissza: - kimondott mondatok, mondatfoszlányok is egyfajta cselekvések! - a beszélőnek tipikusan szándéka van, hogy a megnyilatkozása révén a világ (környezet) valamilyen megváltoztatását érje el, - a megnyilatkozások a fizikai cselekvések mintájára befolyásolják a fizikai valóságot is. http://hu.wikipedia.org/wiki/beszédaktus-elmélet
Beszélve ágens 3 fajta cselekvést hajt végre: lokuciós aktus (locutionary act) (beszédcselekedet) a kommunikáció puszta ténye, a szintaktikailag helyes beszéd kimondása, illokuciós aktus (illocutionary act): szándékhatás performatív ige által, pl.: felkér, követel, állít, ragaszkodik, megállapodik, figyelmeztet, parancsol,... szándékható erő, illokuciós erő, cselekvési erő (illocutionary force): fontos pl. hogy kitől jön? (király kérése parancs) ettől függ a megnyilatkozás illokuciós erejének az erőssége perlokuciós aktus (perlocutionary act): a valódi hatás kieszközölése a hallgatón, amit a beszélő cselekvése a beszédaktus során a hallgatóra valóban gyakorol.
Pl. Ígérem, hogy holnap segítek festeni a kerítést. beszéddel hivatkozom: magamra, őrá, cselekvésre, időre, Ígérem, hogy holnap segítek festeni a kerítést. a szándékható erő tisztázása, lehetne gondolom, sejtem, álmodtam, (felvállalás megnyilatkozása) Beszédaktusok (BA) és a feltételrendszerük egy párbeszéd, egy beszélgetés nem más, mint egy szabály alapú viselkedés. a beszédaktusok struktúrája: a szükséges és elégséges feltételek rendszere. Eszerint történik a BA értékelése: sikeresen, helyesen, helytelenül alkalmazott BA
Két (First Responder) ágens kommunikál. Ag1 érzékelni képes szenzorával, hogy egy ipari létesítménynél szívarog-e valahol a gáz. Ag2 ilyen szenzorral nem rendelkezik. X = Gázszívárgás Szelep-1-nél (Ag1 ténye, leendő információ Ag2-nek) Ag1 továbbítja Ag2 számára az X információt. Mikor hiteles ez? Mielőtt Ag1 elküldené a ténymegerősítő üzenetet, Ag1-nek magának el kell hinnie, hogy X igaz, és hinnie kell azt is, hogy Ag2 az üzenet hiányában nem lehet biztos az X igazában. Az üzenet elküldése után Ag2 már elhiszi az X igazát. Viszont Ag1 is hinni fogja, hogy Ag2 a vele konzisztens módon hiszi a világot. Üzenet Ag1, confirm (Ag2, X) Előfeltételek: B Ag1 (X) B Ag1 (U Ag2 (X)) B - Belief Tényleges hatás: B Ag2 (X) B Ag1 (B Ag2 (X)) U - Uncertain
Párbeszéd formális elméletei pl. párbeszéd fajták: Walton és Krabbe osztályozás
Más párbeszédek (nincsenek W&K listán) Információt szolgáltató (information giving) párbeszéd az egyik fél igyekszik információt adni a másik félnek Kivizsgáló (examination) párbeszéd az egyik fél igyekszik felmérni, hogy a másik fél tényszerű, vagy képesség tudása meddig terjed Felfedező (discovery) párbeszéd kettő, vagy több fél igyekszik minősített jövőbeli állapotokat/ cselekvéseket azonosítani (pl. egy terv rizikószintje; cselekvési lehetőséget,., affordánciák) Parancs (command) párbeszéd az egyik fél ráveszi a másik felet valamilyen cselekvés végrehajtására. stb.
Mi egy ágens kommunikációs nyelv? Kommunikáció eszköze (mint embereknél) független, autonóm egyedek között Funkció: információ átadás, cselekvés-koordinálás, szociális manipulálás, jeladás. Ágens programozásának eszköze lehetővé tenni az IT rendszer egyedeinek, hogy érjék el a céljaikat, pl. kapcsolatot létesítsenek más ágensekkel Software engineering eszköze lehetővé tenni IT mérnököknek, hogy érjék el a céljaikat, pl. az ágensei kapcsolatot létesítsenek más ágensekkel Formális nyelvek Definiált szintaxis Definiált szemantika Tulajdonságainak megértése az üzemeltetésük megelőzően.
Agent Communication Languages (ACLs) Két fő javaslat az ACL-re: USA DARPA s Knowledge Query and Manipulation Language (KQML) (több tudásbázis fuzionálása) Foundation for Intelligent Physical Agents ACL (FIPA ACL) (kifejezetten ágensek közötti kommunikáció) Mindkettő: a kommunikáció (üzenetek) 2 szintje: a párbeszéd témája valamilyen logikai nyelvben a témákra vonatkozó illokuciók Pl. - query (Esik az eső) Esik az eső? - inform (Esik az eső) Esik az eső!
KQML Knowledge Query and Manipulation Language A kommunikáció szintjei Adat csere szint (kommunikáció mechanizmusa): állomások között közlekedő üzenet csomagok legkülső rétege, a kommunikáció legalsó protokoll szintje: üzenet feladója, címzettje, azonosítója, egyéb kommunikációs paraméterek Üzenet szint (kommunikáció logikája): az üzenet tartalmának azonosítása, típus-meghatározása Tartalom szint (kommunikáció tartalma): Az átadott információ közvetítése. Bármit tartalmazhat, amiben a kommunikáló ágensek megegyeznek.
Példa: A küldi B-nak B küldi A-nak (standby :language KQML :ontology K10 :reply-with g1 :content (stream-about :language KIF :ontology motors :reply-with q3 :content motor1)) (next :in-reply-to 2F0B) (discard :in-reply-to 2F0B) (ready :reply-with 2F0B :in-reply-to g1) (tell :language KIF :ontology motors :in-reply-to q3 :content (= (val (torque motor1) (sim-time 5)) (scalar 12 kgf))
Példa: A küldi B-nak B küldi A-nak (advertise :language KQML :ontology K10 :content (subscribe :language KQML :ontology K10 :content (stream-about :language KIF :ontology motors :content motor1))) (subscribe :reply-with s1 :language KQML :ontology K10 :content (stream-about :language KIF :ontology motors :content motor1)) (tell :language KIF :ontology motors :in-reply-to s1 :content (= (val (torque motor1) (sim-time 5)) (scalar 12 kgf))
Szemantikailag (jobban) specifikált KQML (1997) performativum min. elő-feltételhalmaz min. utó-feltételhalmaz sikeresen elvégzett performativum által előidézett végállapot Advertise (A, B, M) 1. A azt állítja B-nek, hogy az M üzenetét elfogadja (ha megkapja) és processzálja (elkötelezettség) 2. Int (A, Proc (A, M)) M = performatívum-név (B, A, X) 3. Pre(A): Int (A, Proc (A, M)) Pre(B): - 4. Post(A): Know (A, Know (B, Int (A, Proc (A, M)))) Post(B): Know (B, Int (A, Proc (A, M))) 5. Compl: Know (B, Int (A, Proc (A, M)))
The Foundation for Intelligent, FIPA Foundation of Intelligent Physical Agents Physical Agents Indulás 1995/6, több tíz europói telecom cég, egyetem,... 2002 (félig-meddig) szabvány 2005-től része IEEE Computer Society, IEEE CS Standard Group on IEEE FIPA Standard Committee www.fipa.org Szabvány kérdése - gyors szabvány - semmi megkötés ágensek belsejére, de - megkötés a közösség építésére alapvető közösségi struktúra szervezet = közösség (belépés, kilépés, normatívák, specifikált viselkedések, ) alapvető kommunikáció FIPA konzisztencia HA alkalmaznánk, akkor előírás szerint viselkedjen. FIPA szabvány - normatív (formális, formálisan verifikálható modellek) - illusztratív (leíró informális modellek, alkalmazások)
The Foundation for Intelligent, Physical Agents Szabvány által lefedett témák: Abstract Architecture Agent/ Software Integration (örökölt rendszerek) Agent Message Transport Transport Protocols, Envelope Representations... String, XML, Efficient Binary,... ACL Representations - ACL Message Structure Agent Management (platform, kötelező ágensek) Agent Management Support For Mobility Agent Communication Languages Interaction Protocols - Interaction Protocol Library Specification (AUML) Communicative Acts Library (beszéd aktusok) Content Languages - KIF (Knowledge Interchange Format) - CCL (Constraint Choice Language) - SL (Semantic Language) - RDF (Resource Description Framework) - Content Language Library Specification Device Ontology Specification Message Buffering Service Specification Messaging Interoperability Service Specification Ontology Service Specification Reference Applications: Personel Travel Assistance, Nomadic Application Support,...
Agent Management Közösségdefiníció = Agent Platform fizikai infrastruktúra (1 v. több hoszton) - belépés/ kilépés - találkozás (hirdetés, erőforrás lokálizálás) - közösség belüli kommunikáció DF: Directory Facilitator, 1 vagy több (DF Federation) AMS: Agent Management System, csak 1/ platform MTS: Message Transport Service DF: register, deregister, modify, search (ágens nem köteles bejelentkezni) AMS: register, deregister, modify, search, get-description (ágens köteles bejelentkezni)
Communicative Act Library
Semantic Language SL (not) (and ) (or) (implies) (equiv) (forall) (exists) B <agent> <expr> U <agent> <expr> I <agent> <expr> PG <agent> <expr> szándéka van és tervez tartós célja van, de nem szükségk. tervez (feasible <actexpr> <Wff>) igaz, hogy cselekvés megtörténthet közvetlenül utana Wff igaz lesz (done <actexpr> <Wff>) igaz, hogy cselekvés épp megtörtént és előtte Wff igaz volt (iota x (P x)) pont olyan x, amire igaz P(x) (any <term> <formula>) akármilyen objektum, ami a formulát teljesíti (all <term> <formula>) minden olyan objektum, ami Bifi = Bi Bi, Abnij = Bi Bj Bi... Confirm i, confirm (j, ) FP: Bi Bi Uj RE: Bj
FIPA ACL problémái Implicit feltételezések: - Ágensek örökké kapcsolatban vannak egymással - Ágensek hivatalból öszinték, jó indulatúak, igazmondók. Beszédaktus hiányosságok - Párbeszédhez való csatlakozás, párbeszéd elhagyása? - Részvétel engedélyezése, tiltása? - Hiedelemkonfliktusok kezelése? - Mi van, ha az öszinteség nem vállalható fel (pl. tárgyalások) - Állítások megkérdőjelezése? - Dialektikus kötelezettség (aki állít, nem köteles előállni annak indoklásával) - Explicit érvelési lokuciók hiánya. - Bármely lokuciók követhetik egymást. Bomlasztó viselkedés nehezen hárítható el. - Önalakítás kifejezése hogyan fejezzük ki a hiedelmeink megváltozását hogyan ismerhető fel, hogy ez nem hibás, rosszindulatú, viselkedés?
- Magán axiomatikus szemantika (nyílt szervezetben!) nem verifikálható. Egy nyílt többágenses rendszerben egy ágens belső állapotai mások számára általában nem hozzáférhetőek. - Egy okos ágens mindig szimulálhatja, hogy egy szükséges belső állapottal rendelkezik. - Egy okos ágens vállalhat bizonyos hiedelmeket csakis a lokució kimondásának idejére (és akkor (pillanatnyilag) öszinte).
ACL területén mire való egy szemantika? 1. A kimondások, kimondássorozatok, párbeszédek közös jelentésének a biztosítása a kommunikációban részt vevő szoftver ágensek számára. 2. Közös jelentés biztosítása az ágensek emberi felelősei számára (ha ilyenek vannak). 3. Közös jelentés biztosítása az ágenseket és a protokollokat tervező emberi tervezők számára. 4. Közös jelentés biztosítása más emberi érintettek számára (pl. szabályozók). 5. Ágens nyelvek és protokollok tulajdonságainak precíz tanulmányozása, választ keresve pl. Terminálódik-e mindig egy legális párbeszéd? Biztosítható-e a sikeres terminálódás? Mik a terminált párbeszéd eredményállapota? 6. Különböző ágensnyelvek és protokollok összehasonlítása. 7. Ágensnyelvek és protokollok könnyű implementálhatósága produkciós (szabályalapú) rendszerekben. 8. Biztosítani, hogy a kommunikáció implementálása nyílt elosztott rendszerekben egységes (nyílt MAS-ban ACL olyan, mint egy API)
Párbeszédjáték (Dialogue Game) protokollok MAS számára Szabályozzák a kimondások kapcsolatát és kombinálását. Ágens nem mondhat akármit, akármikor. Zavaró viselkedés általában ki van szűrve. - Protokoll több információt szállít (a kimondások alátámasztásai). - Mások kimondásait lehet kérdőre vonni. - Komplex kötelezettségek felépíthetők kimondások révén. DG Protokollok specifikálása Indítási szabályok Legális lokuciók Lokuciók kombinálásának szabályai Kötelezettség-létesítés és kombinálásának szabályai Beszélőváltás szabályai Párbeszédterminálási szabályok Kötelezettség tárak A párbeszéd résztvevői által vállalt kötelezettségek nyomon követése Dialektikus kötelezettségek pl. kötelezettség egy állítást megindokolni Szemantikus kötelezettségek pl. kötelezettség egy cselekvés végrehajtására
Fatio Protokoll/1 További lokuciók az érvelések megvalósítására. assert(a, θ) A állít θ-t és dialektikus kötelezettséget vállal, hogy az állítását megindokolja, ha erre megkérik. question(b, A, θ) B megkéri A-t a korábbi θ állításának megindoklására. B- re a dialektikus kötelezettség nem vonatkozik. challenge(b, A, θ) B megkéri A-t a korábbi θ állításának megindoklására. B dialektikus kötelezettséget vállal, hogy megindokolja, miért ellenzi a θ-t. justify(a, Δ - θ) A, akit θ-ről megkérdeztek, vagy megtámadtak, megadhatja a θ (vagy θ negálásának) indoklását. retract(a, θ) A a θ-ra vonatkozó korábbi állítását, vagy indoklását visszavonja.
Fatio protokoll/2 A lokuciók kapcsolata CR1: assert bármikor alkalmazható. CR2: egy assert, vagy justify követően question és challenge bármikor alkalmazható. CR3: ha egy assert-et, vagy justify-t egy question, vagy challenge lokucióval megkérdőjeleznek, az assert-et kimondó ágensnek azonnal kell justify-al válaszolnia. CR4: challenge-t követően bármikor alkalmazható a question és a challenge. CR5: ha egy challenge-t question vagy challenge lokucióval kérdőre vonjuk, az eredeti challenge-et kimondó ágensnek azonnal kell justify-al válaszolnia. CR6: retract bármikor alkalmazható az ugyanannak az ágensnek assert, vagy justify lokuciója után.
Fatio protokoll/3 A szemantika Axiomatikus szemantika - A résztvevő ágensek hiedelmei és szándékai - Magán-írt/publikusan-olvasott dialektikus kötelezettség tár DOS(A) (dialectical obligation store) (A, θ, +/-) Assert(Pi, φ) Pre-conditions: Pi beszélő azt kivánja, hogy minden Pj (j=/=i) résztvevő elhigye, hogy Pi hiszi a φ-t. ((Pi, φ, +) / DOS(Pi)) ( j =/=i)(di Bj Bi φ). Post-conditions: Minden Pk (k =/=i) résztvevő azt hiszi, hogy Pi azt kivánja, hogy minden Pj (j =/=i) résztvevő azt higye, hogy Pi hiszi a φ-t. (Pi, φ,+) DOS(Pi) ( k =/=i) ( j =/=i) (Bk Di Bj Bi φ). Dialectical Obligations: (Pi, φ, +) t hozzáadjuk a DOS(Pi)-hez (a Pi beszélő dialektikus kötelezettség tárához)
Fatio protokoll/4 Operatív szemantika D1(φ): Claim or Not: Egy procedura minden φ állításhoz, ami lehetővé teszi Pi ágens számára, hogy eldöntse, kimondja-e az assert(pi, φ) lokuciót, vagy sem. A mechanizmus kimenete: listen ill. utter-assert(φ). D2: React or Not: Egy procedura minden φ állításhoz, ami lehetővé teszi Pi ágens számára, az assert(pk, φ)-t követően eldöntse, kimondja-e a question(pj, Pi, φ) vagy a challenge(pj, Pi, φ) lokuciókat, A mechanizmus kimenete: listen, utter-question(pi, φ), vagy utter-challenge(pi, φ). D3(φ): Defend or Not: Egy procedura, hogy egy állítása kapcsán indoklás dialektikus közelezettsége alatt lévő Pi ágens eldönthesse, hogy az indoklás lokuciót kimondja-e a közelezettség teljesítése érdekében. A mechanizmus kimenete: listen ill. utter-justify(.) D4(φ): Fold or Not: Egy procedura, hogy egy állítása kapcsán indoklás dialektikus közelezettsége alatt lévő Pi ágens eldönthesse, hogy a retract(.) lokuciót kimondja-e. A mechanizmus kimenete: listen ill. utter-retract(.). D5: Listen or Do: Egy procedura, hogy az ágens a résztvevők üzeneteire vár és ha érkeznek, eldönthesse, hogy mely D1-D4 viselkedéshez folyamodjon. A kimenet: listen és do-mech(di), i= 1,2,3,4.
Fatio protokoll/5 Állapotátmenetek rendszere Pi, K, s Pi ágens által alkalmazott K mechanizmus s kimenettel Pi részéről Pi, K,. nincs konkrét kimenet Állapotátmenet ua. az ágens mechanizmusai között Pi, D5, listen Pi, D5,. Állapotátmenet két különböző ágens mechanizmusai között egy lokució révén Pi, D1, utter-assert(φ) F1 Pj, D5, do-mech(d2) (részlet) TR1: Pi, D1(φ), listen Pi, D5,. TR2: Pi, D1, utter-assert(φ) F1 Pi, D5, listen TR3: Pi, D1, utter-assert(φ) F1 Pj, D5, do-mech(d2) TR4: Pj, D2, listen Pj, D5,. TR5: Pj, D2, utter-question(pi, φ) F2 Pj, D5, listen TR6: Pj, D2, utter-question(pi, φ) F2 Pi, D5, do-mech(d3(φ)) TR7: Pj, D2, utter-question(pi, φ) F2 Pk, D5, listen TR21: Pi, D5, do-mech(d4(φ)) Pi, D4(φ),. F1 F2 assert kimondása question kimondása
FIPA szabvány Jade platform kisérleti ágensközösség Jade a FIPA szabvány (www.fipa.org) implementációja Java-ban. Jade rendszer indulásakor egy platformot létesít (több hoszton elosztott), ahol az un. konténerekben indíthatók az ágensközösségek. A platform logikai infrastruktúra, ez oldja meg az ágensek kommunikációját. A platformhoz tartoznak hivatalból (automatikusan jönnek is létre): AMS (Agent Management System) - a platform (közösség) kapuőre, ACC (Agent Communication Channel) a kommunikáció ágense, DF (Directory Facilitator) - a platform telefon könyve (Sárga Oldalak), A platform felhasználói felületéhez tartoznak: RMA (Remote Monitoring Agent) - beépített kémágens, amely mindenről és mindenkiről tart számon, Sniffer - amely a kommunikáció forgalmát megjeleníti, Introspector - amely az ágensek életútját kiséri végig, kívánság szerint akár több DA (Dummy Agent) - ágensbőrbe bújtatott emberi felhasználó (embert csomagoló wrapper-agent).
Intelligens Elosztott Rendszerek BME-MIT, 2017
BDI ágensek programozási nyelvei AgentSpeak(L) Ágens AgentSpeak specifikációja: hiedelmek halmaza tervek halmaza (logikai jellegű tények) (kontextus-érzékeny, esemény-triggerelt receptek a hierarchikusan dekomponálható célok elérésére, elemei cél-orientált cselekvések). Ágens viselkedése: receptkönyvtár ( tervek ) = reaktív tervvégrehajtó rendszer Terv: Cél: Elérendő cél Engedélyező kontextus Tényleges terv lépései :. +!goal, +?goal,!goal,?goal, +belief, belief teljesítési célok, teszt célok Kontextus: belief Context Context Context Context Context x.context Terv lépései: action +belief belief?context!event Plan; Plan
AgentSpeak(L) A programozás elemei Kooperáció és intelligencia, BME-MIT 2012, BME-MIT
AgentSpeak(L) A programozás elemei Érzet Környezet beépített/programozható cselekvések és érzetek Cselekvés
Jason AgentSpeak platform Javaban, kiterjesztésekkel http://jason.sourceforge.net/ Szabadon kiterjeszthető, felhasználói szinten módosítható (Java)
2011 MAS Együttműködés
Együttműködés = megosztás + kommunikáció Mit lehet megosztani: információ, tudás, adat, eredmény, konklúzió, hipotézis, ilyen megosztásból általában homogén közösségek ( tudásban egyenlők ), feladat, cél,... ilyenből pedig strukturált közösségek (specializálódás) profitálnak. Együttműködés lehetséges, ha a felek (I/N?) : kognitív módon elismerik egymást közös céljuk van (akár negatív jelenségek mérséklése) etikailag elismerik egymást megbíznak egymásban
Együttműködés szintjei Koordinálás dim: együttműködés, tudás, koordinálás, szervezet Rendszer dim: kommunikáció, szervezet összetétele, rendszerarchitektúra, szervezet nagysága
Együttműködési protokollok Globális koherencia elérése a működésben (közös kontextus), de egyéni autonómia nem megsértése. Megosztott célok, közös feladatok azonosítása, de szükségtelen protokollok kerülése. Kritikus erőforrások terhelését kerülni. Tudás- és bizonyíték fuzionálása (ezt mind jó lenne tudni biztosítani), feladatokat megfelelő képességekkel párosítani, de figyelni a kommunikáció és szinkronizálás költségeinek csökkentésére. protokoll informális formális leírása A(gent extended)uml, XML, FSM, stb. logikával (információs attitűdök, modalitások, idő) protokoll verifikálás: logikai heurisztikus: szimulációk (pl. komplex gyártási folyamat, elosztott ágensek, )
AUML modell
Protokollok tipusai (szervezettől függ) zárt(abb) szervezet (hierarchia, team, közösség,...) üzenetváltás szekvencia merev (mechanikus, eltérés nem lehetséges) nem kiterjeszthető ( bedrótozott ) közösség erősen strukturált, megjelenik benne főnöki szerep taszk megosztás folyik, közösség gyengébben strukturált, megjelenik benne aszimmetrikus menedzseri szerep, taszk megosztás folyik nyílt(abb) szervezet (piac,..., web, e-kereskedelem,...) hiedelem-, cél alapú, rugalmas, egyenlősdi közösség, nagyjából szimmetrikus hatások: információ, eredménymegosztás folyik, érvelés alapú tárgyalási protokoll, aukció, szavazás gyengén strukturált közösségek, megjelenik a döntnöki szerep információ-megosztás: konfliktushelyzetek kezelése speciális protokollokkal
Taszk megosztás Vállalkozási háló protokollal (Contract Nets) 1. Menedzser ágens átveszi a feladatot és lebontja kisebb porciókra, taszkokra. (eldönti, hogy nem képes egyedül megoldani) 2. Menedzser ágens vállalkozót keres taszkjához, vagy taszkjának egyes részeihez. 3. E célból szétküldi (broadcast) a taszk (probléma) leírását (esetleges Megkötésekkel, pl. határidő) és kedvező ajánlatokra vár. 4. Vállalkozó ágensek összemérik a meghirdetett taszk leírását a saját képességeivel (tudás modellel) és vagy nem reagálnak, vagy beküldik a jelentkezésüket (milyen feltételekkel vállalkoznak a feladatra, milyen minőségű megoldást képesek szállítani, stb.). 5. Menedzser ágens választja ki a legjobbnak tűnő ajánlatot és a feladatot véglegesen kiadja elvégzésre. 6. Vállalkozó ágens a feladatát megvalósítja és a megoldást a Menedzsernek beküldi. 7. A befutó megoldásokból a Menedzser ágens összerakja a teljes feladat megoldását és a felhasználónak elküldi.
Vállalkozási háló protokoll (Contract Nets) Szükséges üzenetek (informálisan) Taszkok meghírdetése Licitbeküldés Taszk odaítélés Előrehaladás beszámolója Végleges beszámoló (eredménnyel együtt) Termináló üzenet (hátha a Menedzser a szerződést fel szeretne bontani) 9-73
Vállalkozási háló protokoll (Contract Nets) A feladatot végző konkrét ágens identitása előre ismeretlen, A Menedzser ágens tudása lényegesen több, mint a Vállalkozó ágensekké, abban, hogy az ő feladata kapcsolattartás a felhasználóval és a feladat dekompozíció /megoldás szintézis. Nem kell tudnia a feladatot megoldani, viszont tudnia kell mérlegelni a beküldött jelentkezéseket (mások modellje, feladat modellje, stb. alapján). Minden vállalkozó ágensnek rendelkeznie kell: problématerületre vonatkozó problémamegoldó tudással, önmaga modelljével, hogy a vállalkozás sikerét mérlegelni tudja. Szabad autonóm módon elutasítania is... Lehetőség: a fokozatos romlás biztosítása (szuboptimális viselkedés, )
2011 Kooperatív és Tanuló Rendszerek DT-HG, BME- MAS Együttműködés versengés ellenére
Szavazó ágensek racionális versengő ágensek egyvéleményű közössége (Valószínűleg) versengő preferenciák korrekt, kielégítő aggregálása egy közösségi döntésbe (szociális kimenetel). szavazás, erőforrás hozzárendelés, koálició formálás tetszési indexek számítása, kollaboratív szürés, Lényegi komponensek autonóm ágensek (szavazók) alternatívák (kimenetelek, jelöltek) preferenciák (kiemenetelek rendezése) (csoport)profil aggregáló függvény társadalmi választási függvény társadalmi jóléti függvény
Fontos kérdések Mi a (egyéni/csoportos) racionális döntés értelmezése? Milyen formális tulajdonságokkal kell rendelkeznie egy jó aggregáló függvénynek? E tulajdonságok közül melyek azok, amelyek egyidejűleg biztosíthatók? Milyen nehéz lehet egy közösségi választás kiszámítása? Profitálhatnak-e a szavazók, ha a preferenciáiról nem őszinte módon nyílatkoznak? Ágensek racionalítása Preferenciák tranzitivitása: humán racionalitás alapvető aspektusa, helyes világfelfogás kifejezése Tranzitív preferencia x i y, y i z x i z
Legelterjedtebb Többségi szavazás (plurality rule) (TB): az a győztes, akinek legtöbb szavazata van (a semleges szavazó nem számít) i N : x i y i N : y i x -ből következik x P y Minősített többségi szavazás (majority rule) (MT): az a győztes, akié a szavazatok több, mint a fele (csak a mellette szavazat számít, aki semleges, az ellene van) i N : x i y n/2 -ből következik x M y May tétel: Ha 2 jelölt van, a TB egyetlen olyan döntési folyamat, ami az alábbi 3 alapfeltétellel konzisztens (Kenneth May, 1952): - anonimitás: minden szavazónak egyenlő a súlya - semlegesség: átcímkézés egyéni preferenciákban = u.a. átcímkézés az eredményben - (pozitívan reagáló) erősen monoton: holtversenyben, ha egy szavazó x-nek kedvező módon megváltoztatja a preferenciáit, akkor x lesz a győztes, gyengén monoton: ha x a győztes és egy szavazó még inkább jobban felértékeli, akkor x marad a győztes.
MT szabály 2 jelölt esetén OK, de tendencia több jelöltre alkalmazni. Tipikus kiterjesztések: - tiszta többségi szavazás: az győz, akinek legtöbb szavazata van (de akár 50%). - két fordulós (run-off, RO): győztes, ha minősített többséget kap, ha nincs ilyen, akkor a legjobb kettő egymással szemben, sima többséggel. 1 cs 2 cs 3 cs 4 cs 20 24 26 30 1. z y x w 2. x z y z 3. y x z x 4. w w w y Többségi szavazás furcsasságai TB: w győz 30 szavazattal (kisebbségi jelölt!) w egyenkénti felmérésben mindenkivel szemben alulmarad, mégis győz. Kétfordulós: nincs minősített többségi győztes, a két legjobb jelölt: w (30), x (26) 2-ik fordulóban: x (70), w (30), x a győztes. Akik a z mellett vannak, joggal panaszkodhatnak, hogy miért éppen x, ha a többségnél z i x!? x miért nyert?
Szavazási paradoxonok (1) Értelmes algoritmusok és értelmes kritériumok nemigen futnak együtt. (2) Az egyéni preferenciák tranzitivitása ellenére a többségi szavazásból adódó közösségi preferencia nem mindig az (többségi gráf ciklusa). Konklúziók - Arrow tétel (Kenneth J. Arrow, 1963), stb. Nincs olyan szavazási rendszer, ami azt teljesítené, ami minimális alapvető követelménynek tűnik. Egy választási rendszer: Nemdiktatorikus: a szociális preferencia nem tükrözhet valamelyik egyéni preferenciát, a többi szavazó preferenciájától függetlenül. Pareto-elv: ha minden szavazó egy alternatívát jobbnak tart másnál, akkor a szociális preferenciának ezt tükröznie kell. Ha egy választási rendszer nemdiktatorikus és teljesiti a Pareto-elvet, akkor található olyan választói halmaz, ahol a szociális preferencia intranzitiv (szavazási ciklus), és/vagy sérül az irreleváns alternatíva függetlensége. Melyik választási rendszer problémái legkevésbé zavarók az adott közösség gyakorlatában?
Koordinálás és feladatkiosztás aukciókkal
Áukción nyert
Magán optimálizált
Optimál team mégis 1 1 1 1 2 4 2 10 2 2 2 2 10 1 4 1 1 3 4 3 3 1 15 1 2 2 1
Miért éppen aukció? ismeretlen értékű objektumok értékesítése automatizálható tárgyalás komplexitását csökkenti kedvező a számítógépes implementáció Koordinálás aukcióval Koordinálás Aukció tisztességes megoldás benyomását kelti Előnyök ágens feladat költség licitáló licit objektuma pénz aukciók átfutása rövid, aukció kommunikáció-hatékony: információkat a licitekbe tömörítjük, aukció számítás-hatékony: liciteket parallel módon lehet generálni, aukciók alacsony költségű team-eket eredményezhetnek. aukciókat lehet használni akkor is, ha a terep (környezet), vagy a róla alkotott ágenstudás változó.
Emberi aukciók fontos mozzanatai Hatékony hozzárendelés: az árút az viszi el, aki a legtöbbre értékeli. Ösztönzés őszinte licitre. Árverésvezető jövedelmének maximalizálása. Kerülni kell: összejátszás (manipulálás): licitálók, eladók, és/vagy árverésvezető összejátszása (bújócska stratégia, elnyomó licit, győztes átka, ) Ha az aukcióban gépi ágens(team)ek vesznek részt Ágenslicitnek más az IT mediuma. Ágensek nem akarják kijátszani a rendszert. Programozottan licitálnak. Ágensek szándékosan nem hallgatnak el információt, nincsenek titoktartási problémái. Ágenseknek nincsen belső, saját hasznosságuk (preferenciái). A hasznosságukat a team menedzsment definiálja: az aukció a közös team-célt szolgálja. Ágenseknek mintegy, ha az eredmény nekik nem igazságos.
Tipikus koordinációs feladatok Szerepek on-line elosztott kiosztása Feladatok hozzárendelése mentő/ tűzoltó/ rendőrségi ágensekhez misszió-kritikus/ SAR/ katasztrófa (RoboCup Rescue) Különböző megfigyelési célok hozzárendelése külön szenzorokhoz wireless szenzor hálózatokban Megfigyelő és manipuláló szerepek kiosztása manipulálási feladatkörben On-line elosztott ütemezés és vezérlés Feladatok ill. folyamatok hozzárendelése min. látencia idő, max. átbocsátó képesség, stb. érdekében On-line elosztott navigálás Lokációk hozzárendelése ágensekhez: baleseti színhelyek mentőkhöz, kivizsgálandó esetek rendőrjárőröknek, aknák a víz alatti autonóm járművekhez, SAR lokációk a legagilisabb mentőkhöz, kliensek taxikhoz, megvizsgálandó sziklák Mars bolygójárókhoz, megfigyelő lokációk térképező ágensekhez (számos NP teljes optimális problémák közelítő megoldása)
Aukció protokollok tervezése AUKCIÓ FORMATUMA nyílt v. zárt (borítékolt) emelkedő v. csökkenő szimultán v. szekvenciális egyfordulós v. több fordulós LICITSZABÁLYOK ár megállapítási szabályok licit komponensei köteg, kombinatorikus aukció szabályok LEBONYOLITÁS győztes és hozzárendelés megállapítása ki fizet és mennyit? időzítés RÉSZVÉTELI SZABÁLYOK INFORMACIÓ tételek/szolgáltatások licitek résztvevők Aukció Hagyományos 1 : N Inverz N : 1 Vegyes N : M Licit stratégiák Melyik aukcióban részt venni? Részvételköltség, aukció időtartama, licitálók száma. Mikor licitálni? Mennyit licitálni? (ár és/vagy mennyiség) Kölcsönhatások és skálázás eredménye. Megszokott aukciótípusok Egyedi árú árverés Csoportos árverés Kombinatorikus árverés
Egyedi árverés Árverésvezető egyetlenegy árút kínál Angol (emelkedő, be/ki, leütés) Japán (emelkedő, végleges kilépés) Holland (csökkenő, végleges kilépés)... Elsőlicites versenytárgyalás Minden licitáló a feladat költségét jelentő adatot nyújt be licitként. A legalacsonyabban licitáló nyer, megkapja a feladatot, és beleegyezik, hogy a licitált költségen megvalósítja. Másodlicites (Vickrey) versenytárgyalás Protokoll u.a., csak a győztes beleegyezik, hogy a feladatot a második legkisebb licit költségén valósítja meg. Melyik mechanizmus? Mintegy, amíg az ágensek hitelesen licitálnak.
Kombinatorikus aukció Az árverező egy T dologhalmazt ajánl. Minden licitáló a dolgok tetszőleges kötegeire (T részhalmazaira) licitál, az árverező több licitálónak a kötegek kombinációját (T halmaz dekompozícióját) ítéli meg (de licitálóként legfeljebb egy köteget). A hozzárendelésnek az árverező jövedelmét kell maximálnia. Kötegek száma exponenciális 2 T. Győztes kiszámítása NP-nehéz. Gyors optimális kiszámítás létezhet, ha a licithalmaz ritka. Redukált kötegszám. Árverező csak bizonyos kötegeket enged meg. Licitáló: kötegklaszterek, limitált nagyságú klaszterek
Kombinatorikus aukció nagyító alatt Licitálás - a licitáló képes a dolgok halmazaira licitálni - azok száma exponenciális - a licit tömör, informatív, implicit módon kódolt (kellene!) hozzárendelés - licitek beérkezése után, a dolgok kiosztása a győzteseknek, valamilyen optimum szerint árverező jövedelme, globális hatékonyság, - általában kezelhetetlen, NP-nehéz fizetés - mennyit fizessen a győztes, egyes esetekben nem amennyit ajánlott (mert nem pontosan azt a köteget kapja meg, ) - fizetési szabályok befolyásolják az árverező jövedelmét és a licitálási szabályokat stratégia - aukció protokoll, hozzárendelési és fizetési szabályok rögzítése után a licitálók kialakíthatják személyes licitálási stratégiákat
Koordinálás aukciókkal Kombinatorikus aukciókból Szekvenciális aukciók A 21 B 86 23 91 107 37 109 109 107 41 90 85 27 C 21 D
Ideális kombinatorikus aukció: A B {A}-ra: 86 {B}-ra: 91 {C}-ra: 23 {D}-ra: 37 {A,B}-ra: 107 {A,C}-ra: 130 {A,D}-ra: 160 {B,C}-ra: 132 {B,D}-ra: 144 {C,D}-ra: 44 {A,B,C}-ra: 151 {A,B,D}-ra: 165 {A,C,D}-ra: 153 {B,C,D}-ra: 151 {A,B,C,D}-ra: 172 C D {A}-ra: 90 {B}-ra: 85 {C}-ra: 41 {D}-ra: 27 {A,B}-ra: 106 {A,C}-ra: 148 {A,D}-ra: 146 {B,C}-ra: 150 {B,D}-ra: 134 {C,D}-ra: 48 {A,B,C}-ra: 169 {A,B,D}-ra: 155 {A,C,D}-ra: 155 {B,C,D}-ra: 157 {A,B,C,D}-ra: 176
Ideális kombinatorikus aukció: {A}-ra: 86 {B}-ra: 91 {C}-ra: 23 {D}-ra: 37 {A,B}-ra: 107 {A,C}-ra: 130 {A,D}-ra: 160 {B,C}-ra: 132 {B,D}-ra: 144 {C,D}-ra: 44 {A,B,C}-ra: 151 {A,B,D}-ra: 165 {A,C,D}-ra: 153 {B,C,D}-ra: 151 {A,B,C,D}-ra: 172 {A}-ra: 90 {B}-ra: 85 {C}-ra: 41 {D}-ra: 27 {A,B}-ra: 106 {A,C}-ra: 148 {A,D}-ra: 146 {B,C}-ra: 150 {B,D}-ra: 134 {C,D}-ra: 48 {A,B,C}-ra: 169 {A,B,D}-ra: 155 {A,C,D}-ra: 155 {B,C,D}-ra: 157 {A,B,C,D}-ra: 176 - {A,B,C,D} 176 {A} {B,C,D} 243 {B} {A,C,D} 246 {C} {A,B,D} 178 {D} {A,B,C} 206 {A,B} {C,D} 155 {A,C} {B,D} 264 {A,D} {B,C} 310 {B,C} {A,D} 278 {B,D} {A,C} 288 {C,D} {A,B} 150 {A,B,C} {D} 178 {A,B,D} {C} 206 {A,C,D} {B} 238 {B,C,D} {A} 241 {A,B,C,D} - 172
Ideális kombinatorikus aukció: A C B D Ideális kombinatorikus aukcióból adódó team költség minimális, mert minden kölcsönhatást vesz figyelembe a célpontok között, ami egy NP-nehéz probléma megoldása. A licitek száma exponenciális a célpontok számában. Licitgenerálás, -kommunikáció és a győztes kiszámítása költséges.
Szekvenciális aukció A B {A}-ra: (86) {B}-ra: (91) {C}-ra: 23 {D}-ra: (37) C D {A}-ra: (90) {B}-ra: (85) {C}-ra: (41) {D}-ra: 27
Szekvenciális aukció A {A}-ra: (107) {B}-ra: (109) {D}-ra: 21 C B D {A}-ra: (90) {B}-ra: (85) {D}-ra: 27
Szekvenciális aukció A {A}-ra: (109) {B}-ra: 107 C B D {A}-ra: (90) {B}-ra: 85
Szekvenciális aukció A {A}-ra: 109 C B D {A}-ra: 21
Szekvenciális aukció A C B D
Szekvenciális aukció A C B D
A licitek {A}-ra: (86) {B}-ra: (91) {C}-ra: 23 {D}-ra: (37) {A}-ra: (107) {B}-ra: (109) {D}-ra: 21 {A}-ra: (90) {B}-ra: (85) {C}-ra: (41) {D}-ra: 27 A hozzárendelések Felső Ág. Alsó Ág. C = 23 D = 21 {A}-ra: (109) {B}-ra: 107 {A}-ra: 21 B = 85 A = 21 Minden ágensnek elegendő csak a minimális licitek egyikét jelezni. Minden ágensnek az új licitet csak akkor kell jeleznie, ha az eddig licitált célpontot valaki elnyerte. (vagy ő maga,vagy más ágens). Minden ágens legfeljebb egy licittel jelentkezik körönként és a körök száma azonos a célpontok számával. (példában a jelezni nem szükséges licitek zárójelben vannak).
Szekvenciális aukció Implementáció: viszonylag egyszerű Decentralizáció: egyszerű Licitgenerálás: olcsó Licitkommunikáció: olcsó Aukció lebonyolítás: olcsó Team hatékonyság: nagyon jó, kölcsönhatások egy része figyelembe vett Licitszabályok származtatása Az a győztes, amely mellett a team költség legkevesebbet nő. MiniSum Összpályaköltség minimálása a team-re nézve. Teljes energia, távolság, valamilyen erőforrás minimálása. Pl. bolygófelszín kutatása. MiniMax Maximális pályaköltség minimálása ágensekre nézve. Teljes feladatvégzési idő minimálása (makespan). Pl. objektum-felügyelet, bányatakarítás. MiniAve Átlagos érkezési idő minimálása az összes célpontra nézve. Átlagos kiszolgálási idő minimálása (flowtime). Pl. sarch and rescue
Komplex feladatok kezelése Elemi feladat nem dekomponálható Dekomponálható egyszerű feladat elemi, v. dekomponálható elemi feladatokra, de egyetlen egy ágens hatáskörében (pl. Mars rover: elhozni egy ásványmintát) Egyszerű feladat elemi, v. dekomponálható egyszerű feladat Teljesen dekomponálható feladat ha egyszerű feladatai véges számú lépésben kiszámíthatók Összetett feladat dekomponálható egyszerű, v. összetett feladatokra, de a dekompozició (tetszőleges szinten) egyértelmű (csak egy létezik) (pl. gyár: feldolgozási igények és gépek/ műveletek (job-shop scheduling)) Komplex feladat többféle módon dekomponálható feladat, amelyhez legalább egy dekompozició többágenses (pl. SAR feladatok)
Stratégiák: Dekomponálás- majd-hozzárendelés hagyományos tervkészítő, stb.- egyszerű feladatok egyszerű feladatok hozzárendelése, a végleges terv költsége ismeretlen Probléma: hogyan tudjuk hatékonyan dekomponálni egy komplex feladatot, ha nem tudjuk melyik egyszerű feladatot melyik (milyen képességű) ágens fog végrehajtani? Hozzárendelés- majd-dekomponálás komplex feladatok hozzárendelése aukciókkal minden ágens/robot a dekompozíciót lokálisan végzi Probléma: hogyan tudhatjuk egy komplex feladat optimális hozzárendelését, ha még el sem döntöttük a dekomponálásának módját?
Komplex feladatok hozzárendelése Licit lehet: - MinSum MinMax jellegű Fa = licit korlátozása, pl. nem adható el egy csp., ha a szülője elkelt (a dekompozíció felett más uralkodik már) egy licitáló = csak egy csp. megnyerése (költség függ a létező kötelezettségtől) Licitnyelvek one-node levelek véletlen rendezésben, teljesített csp-ok kivonva, kifejező erő alacsony, megoldás nem optimális, de a lebonyolítás polinomiális any-nodes egy feladatgyökér - levél pálya mentén, OR ágakkal any-nodes minden, NP-nehéz, heurisztika kell (Any-nodes: több csp licitje, de csak egy csp hozzárendelése, mert a hozzárendeléssel a többi csp értéke megváltozik és az aukció nem lesz hiteles)
MAS Konfliktusok 2011 Kooperatív és Tanuló Rendszerek DT-HG, BME-
Konfliktusok Konfliktusok egyetemessége ágenseknél Erőforrások nem átadása (lokális autonómia) (DE EZ ÁLLITÓLAG NAGYON KELL!?) Nincs megegyezés, kinek mit kellene csinálni (gyenge probléma dekompozició) (EZ SAJNOS ÁLTALÁBAN JELEN VAN) Más véleményen vannak lehetséges döntésekről (eltérő perspektíva) (EZ SAJNOS GYAKRAN ELŐFORDUL) (és ami egy egyed szempontjából előny/hátrány, a közösség szempontjából hátrány/előny lehet) 2012
Magabiztosság Együttműködési készség Társadalmi minták Konfliktus kezelés kimenetelei
Konfliktusok osztályozása Konfliktusok felismerése (típus, hierarchia,...) Konfliktusfeloldás azonosítása (típus, hierarchia,...) Konfliktusfeloldás alkalmazása (protokoll,...) Mitől függ: kooperatív MAS (hierarchia, team,...) nem-kooperatív MAS (kongregáció, piac,...) feladatmegosztás közben eredménymegosztás közben pozitív jellegű (bőség zavara) negatív jellegű (valaminek a hiánya okozza)
Konfliktusok osztályozása Pozitív jellegű konfliktus feladatmegosztás közben pl. több ágens képes egy adott feladatot megoldani (VH) Negatív jellegű konfliktus feladatmegosztás közben pl. nincs, aki képes lenne/vállalkozna a feladat megoldására (VH) Pozitív jellegű konfliktus eredménymegosztás közben pl. különböző, komplemens válaszok ugyanarra a feladatra Negatív jellegű konfliktus eredménymegosztás közben pl. inkonzisztens, egymásnak ellentmondó válaszok Megjegyzés: (1) VH protokollban menedzser folyamatosan ki van téve konfliktusoknak (2) A vállalkozói felvállalások körülírása ezeknek egy részét mérsékli.
Konfliktusok osztályozása Cselekvés/eljárásmód (policy)-val kapcsolatos konfliktusok: Pozitív/negatív konfliktus: egy cselekvés egyszerre engedélyezett és tilos. Engedély/kötelezettség konfliktus: egy ágens kötelezve van egy nem engedélyezett cselekvésre. Deduktív finomítás konfliktusa: látszólag konfliktusmentes cselekvések következményei konfliktus helyzetekhez vezetnek. Többszörös menedzsment konfliktusa: (evidens) Ön-menedzsment konfliktusa: egy szerep-felválalás hatására egy ágens egyszerre effektíve saját beosztottja, ill. fönöke. Érdekkonfliktus: (evidens). Feladat/kötelesség konfliktusa: (evidens, ha a feladatok/kötelességek nincsenek jól szétválasztva). Függőségi konfliktus: temporális, v. térbeli, cselekvések között. Végrehajtási kényszer nem megfelelő idősorrendben, nem a megfelelő térbeli pozícióban. Erőforrás-konfiktus: (intra-ágens) kötelesség cselekvést megtenni hiányos erőforrásokal, (inter-ágens) több ágens kötelessége cselekedni hiányos, megosztott erőforrásokkal.
Konfliktusok osztályozása együttműködő ágensek Forrás: a két ágens tudáskezelése valahogy egymásnak ellentmond - adatok, - szabályok, - ismert erőforrások, - preferenciák, - aktivitások, -... (akármilyen szimbolikusan kifejezhető információ) Konfliktus típusok séma konfliktus - más sémák használata (elnevezések, predikátumok, ontológia,...) (ld. Web, ontológia szerverek, alkuszok, ) séma-izomorfizmus konfliktus u.azok a dolgok leírása inkonzisztens attributúm-halmazokkal entitás-id-konfliktus u.a. dolog más identítással általánosítás-konfliktus - adat konfliktus - inkorrekt, inkonzisztens adatok (viszont séma rendben van) problémák mértékegységekkel, pontossággal, tudás konfliktus - konklúziók között lokális következtetési szabályokból és axiómákból.
Konfliktusok osztályozása együttműködő ágensek BDI modell kontextusában cél-konfliktus inkompatibilis állapotok terv-konfliktus kompatibilis célokhoz vezető inkompatibilis (egymást ellehetlenítő) cselekvési szekvenciák. hiedelem-konfliktus helytelen konklúziók, konfliktusban lévő viselkedések generálása (ld. előbb adat-konfliktus). Hiedelem-konfliktusok legkevésbé komolyak. Mert: - hiedelmek az ágens sajátja (részleges hozzáférés, megosztott konzisztencia), - privát hiedelmek között hivatalból létezhetnek konfliktusok, - publikus hiedelmeket egyeztetni lehet megfelelő érvelési protokollokkal.
Konfliktusfeloldás általános folyamata Párbeszéd- protokollok Tervvégrehajtás
Konfliktusok elosztott problémamegoldásban terület-specifikus konfliktusok, perspektivikus terület, közös erőforrások, ellentmondó részmegoldások, nehezen dekomponálható problémák, eltérő döntési szempontok, - önálló tervező ágensek --> dekompozíció - probléma részei (adat, erőforrás) - probléma más aspektusai (pl. egy gépkocsinál: villamos rendszer, mechanikai rendszer, költség, szervezési problémák,...) Ágensek - saját problémáik, - eltérő szakértelmük és céljai, - együttműködés kényszere, - nincs optimális megoldás, - probléma (általában) rosszul definiált. Ágens kommunikáció - szervezeti hierarchia (tervező team): szerepek és viselkedések eltérnek - üzenet: akció típusú, válasz típusú, - különböző üzenetek: u.a. az alakjuk, de más a várható erőhatása (ajánlás, javaslat, utasítás,...)
Ágens kommunikáció INQUIRING kommunikációs szabály: információ kérése / felkérés akcióra INFORMING kommunikációs szabály: információ kiadása/ instrukció cselekvéshez COMPLAINING kommunikációs szabály: megegyezés hiányában, döntéssel, más cselekvéssel való nem megelégedés esetén Konfliktusfeloldás 4 módja INQUIRY (vizsgálat, nyomozás, kérdezősködés) ARBITRATION (választott bírói döntés, döntnöki döntés) PERSUATION (rábeszélés, meggyőzés) ACCOMODATION (alkalmazkodás)
Versengő ágensek konfliktusai - játékelmélet Játékelméleti modellek általában túl egyszerűek a tudás-intenzív feladatokkal küszködő intelligens ágensek világához, de bizonyos alapvető problémákat jó illusztrálnak. Egy ilyen alapvető iskolapélda az un. börtönrab paradoxon. (M. Flood, M. Dresler, 1950, Rand Corp., A. Tucker, Stanford) Két embert tartoztatnak le, gyanúsítottként, egy fegyveres rablás színhelyéhez közel. Mindkettőnél fegyver van, de fegyverviselési engedélyük nincs. Vizsgálati fogságba, külön cellákba kerülnek, összebeszélni nincs idejűk/alkalmuk. Tudják, hogy ha kitartanak és tagadnak mindent, kaphatnak egy-egy fél évet tiltott fegyverviselésért. Ha önként bevallják a rablást, akkor erre való tekintettel minimális két-két éves büntetésre számíthatnak. Azonban az államügyész mindkét fogolynak a következő alkut ajánlja: ha ő a másik ellen vall és a bűnösségét tanúsítja, szabad, a másik pedig maximum büntetést, azaz húsz évet kap. Mit tesznek erre fel a foglyok?
A helyzet játékelméleti módszerekkel is elemezhető, megalkotva a lehetséges kimenetelek mátrixát. Milyen büntetésre számíthatok? Én bevallom Én nem vallom be Ő bevallja 24 hó (24) 240 (0) Ő nem vallja be 0 (240) 6 (6) Átlag 12 123 Én bevallom Én nem vallom be Ő bevallja 24 hó (24) 240 (0) Ő nem vallja be 0 (240) 6 (6) Átlag 12 123 Az én szemszögömből nézve (ha a másik lépései egyformán valószínűek) Tehát, ha várható, átlagos nyereségre törekszem, akkor a baloldali oszlopot kell választanom és a hozzá tartozó cselekvést végrehajtanom. Ezzel azonban a (6 hó, 6 hó) optimumot elkerülve a játék a (24 hó, 24 hó) állapotba kerül, holott elvileg az optimum elérhető volt. De így is lehet: nekem a 0 a legjobb (ehhez neki vinnie kell 20 évet, hátha tényleg ilyen buta), tehát bevallom. 0-ra számítva azzal találom magam, hogy ő is lépett, és az elvárt 0 helyett 2 éves helyzetbe kerültem.
Játékelmélet elemei Játék Γ N, S i i N, u i i N (normál alak, extenzív alak) Stratégiák és kombinációk S s 1,s 2,,s n s 1 S 1,s 2 S 2,,s n S n Hasznosság i N re u i :S Szimmetrikus játék Zéró-összegű játék ( legvéresebb a verseny) 2 ágens esetén S1 S2 Sn u s,s,,s u s,s,,s i 1 2 n i 1 2 n i N S = S, s S u s,s u s,s, u s,s u s,s 1 2 1 1 2 2 2 1 1 1 2 2 1 2 i s S-re u s 0
Dominancia Az i N játékos s,s S stratégiái esetén s s, ha * * i i i i i s s,s,,s,s,...,s S esetén i 1 2 i 1 i 1 n i * u s,s u s,s teljesül, továbbá i i i i i i * s S úgy, hogy u s,s >u s,s -i -i i i -i i i -i Nash-egyensúly (NE) - a legjobb válaszstratégiát játszani * * * * 1 2 n i N és s S esetén i * * * u s,s u s,s i i -i i i -i i s s,s,,s S stratégia-kombináció NE, ha Szigorúan dominált stratégiák iterált eliminációja
Nemek harca (Battle of sexes) 2 1 Vers. Koop. Vers. (1, 1) (3, 2) Gyáva nyúl (Chicken) 2 1 Bátor Gyáva Bátor (0, 0) (3, 1) Koop. (2, 3) (0, 0) Gyáva (1, 3) (2, 2) Forintpárosítás (Matching pennies) Vezérürü (Leader) 1 2 Fej Írás 1 2 Megy Vár Fej (1, -1) (-1, 1) Írás (-1, 1) (1, -1) Megy (0, 0) (3, 2) Vár (2, 3) (1, 1)
Kevert stratégia: egy valószínűségi eloszlás a tiszta stratégiák felett Kevert stratégia kombinációk Hasznosság si Si-re s 0, és s 1 (tiszta: s 1) i i i i i i s S i,,, Q Q Q Q i 1 2 n 1 2 n i N re u i :Q, ahol Q esetén ui q 1 s1 2 s2 n sn ui s s s,s,,s S 1 2 n * * * * Kevert Nash-egyensúly (KNE) 1 2 n * * * i i i i -i i i -i * * * * * * i 1, 2,, i 1, i 1,..., n,,, Q kevert NE, ha i N és Q esetén u, u,, ahol Azaz i-re arg max u,,,,,,, * * * * * * i i 1 2 i 1 i i 1 n i Qi