390 likes | 552 Views
Koordinációs elvek. Gulyás László AITIA International Rt. lgulyas@aitia.ai. Ágensek és multi-ágens rendszerek Kurzus az ELTE programtervező-matematikus hallgatóinak. Napirend. Ismétlés A koordináció szükségessége A koordináció és a kooperáció fogalma Elosztott problémamegoldás
E N D
Koordinációs elvek Gulyás László AITIA International Rt. lgulyas@aitia.ai Ágensek és multi-ágens rendszerekKurzus az ELTE programtervező-matematikus hallgatóinak
Napirend • Ismétlés • A koordináció szükségessége • A koordináció és a kooperáció fogalma • Elosztott problémamegoldás • Keresés / Optimalizáció • Koordináció • Megközelítések • Központosított • Hierarchia / Szervezet • Kompetencia-alapú • P2P • Piaci alapú • Stigmergia • Reprezentáció Ágensek és multi-ágens rendszerek
A koordináció szükségessége • A közlegelő tragédiája (globális vs lokális) • Fogolydilemma, Iterált Fogolydilemma (a kommunikáció hiánya, globális vs lokális) • Térbeli Iterált Fogolydilemma és függősége az interakciós topológiától • 3-személyes térbeli iterált fogolydilemma. • A tőzsde és az El Farol Bar problémája (kommunikáció, reflexivitás), a „Minority Game” fogalma. Ágensek és multi-ágens rendszerek
A MAS-ok céljának elérése • CCCCN • Cooperation (Kooperáció) • Conflict (Konfliktus) • Coordination (Koordináció) • Communication (Kommunikáció) • Negotiation (Egyezkedés, Alku) Ágensek és multi-ágens rendszerek
Coordination (Koordináció) • A koordináció a tevékenységek összehangolása a rendszer feladatainak megoldása, illetve a rendszerrel szemben támasztott korlátozások betartása érdekében. • Mechanizmus a lokális viselkedés szabályozására, valamely globális cél/állapot elérése érdekében. • Célja az anarchia és a káosz elkerülése. • Olyan részfeladatokat foglal magába, mint • a rendszerrel szemben támasztott globális korlátozások betartása, • az elosztott erőforrások megfelelő allokálása, • az ágensek akciói közötti függőségi viszonyok felderítése • a minél hatékonyabb megvalósítás. Ágensek és multi-ágens rendszerek
Cooperation (Kooperáció)Collaboration (Kollaboráció) • A kooperáció (együttműködés):az ágens olyan tevékenysége, amely egy másik ágenst a célja elérésében segít. • Az ideális eset. • Az együttműködésnek nem kell szándékosnak lennie. • Segítheti a végrehajtó ágenst is céljai elérésében. • A kooperáció tehét véletlen mellékhatásként is létrejöhet (ld. külső és belső problémája). Ágensek és multi-ágens rendszerek
Osztályozás • Elosztott Problémamegoldás (DPS, DAI) • „Egy mindenkiért, mindenki egyért.” • ~ Kollaboráció • ~Zárt rendszer • Koordináció • „Mindenki a maga sikerének kovácsa.” • ~ Nyílt MAS Ágensek és multi-ágens rendszerek
Elosztott Problémamegoldás(Distributed Problem Solving / Distributed AI) • Keresés/Tervezés (planning, search, graph search) • „Bináris optimizáció” • Nem kell az egészet bejárni… • Mégis: pl. STRIPS-planning a PSPACE-ben • Optimalizáció (maximalizálás) • Nehezebb feladat, a „teljességi igénye” • Közelítő megoldások • Közös • Csak lokálisan elérhető információ Ágensek és multi-ágens rendszerek
EPM/Optimalizáció F(x) F(x) x x Valós Ideális F(x) x „Bizarr” Ágensek és multi-ágens rendszerek
EPM/Optimalizáció • A nehéz problémák • Nem lineárisak • Nem folytonosak • Zajosak • Hatalmas (keresési) tereken adottak Ágensek és multi-ágens rendszerek
EPM/Optimalizáció • Klasszikus gradiáns módszer (hill climbing): • Szimulált hűtés (simulated annealing) • A hibák hasznosak lehetnek. • Hibázzunk többet! • Kezdetben • Ha nem túl drága • P(elfogadás)=exp(-d/T) • d – veszteség • T – hőmérséklet (idővel csökken) F(x) x Valós Ágensek és multi-ágens rendszerek
EPM/Optimalizáció • Elosztott keresés • A kommunikáció szükségessége. • Genetikus Algoritmus • A kommunikációt a globális szelekció helyettesíti. Ágensek és multi-ágens rendszerek
Genetikus Algoritmus • Populáció: megoldás-kezdemények sokasága. • „Génreprezentáció” (kódoló függvény) • Rátermettségi függvény (fitness function) • Szelekciós operátor • Rekombinációs és mutációs operátor • Szelekciófajtái • Rangsorolás, elitizmus • Rátermettség-arányos • Pár-verseny, stb. • Rekombináció fajtái • 1-pontos keresztezés • Egyenletes keresztezés • Sorrendi rekombináció, stb. Ágensek és multi-ágens rendszerek
EPM/Keresés • Elosztott keresés • Pl. Aszinkron Backtrack • Elosztott korlátozás-kielégítés (distributed constraint satisfaction) • N változó: x1, …, xN, N halmazból: D1, …, DN • Korlátozások (predikátumok) halmaza: pk(xk1, …, xkj) • Általánosságban NP-teljes • Elosztott CSP: a változók szét vannak osztva az ágensek között. • Általános elosztott problémamegoldás Ágensek és multi-ágens rendszerek
Elosztott Problémamegoldás I. • Motiváció • Párhuzamos végrehajtás • Jól párhuzamosítható probléma kell! • Elosztott szakértelem (ágensek részéről) • Pl. elosztott monitorozó rendszer. • Elosztott adatok • Az előző alesete. • Elosztott eredmény-felhasználás • Minden ágensnek kell. • Mindenhol más (része, aspektusa) kell. Ágensek és multi-ágens rendszerek
Feladat-kiosztás (task sharing) Feladat-dekompozíció Feladat-allokáció Feladatmegoldás Eredmény-szintézis (konfliktus-feloldás) GOTO 2. Keresés Probléma-gráf Régiók kiosztása Útválasztások kontrollálása Bejárás Eredmények begyűjtése Konfliktus-feloldás és GOTO 2 (3). Elosztott Problémamegoldás II. Ágensek és multi-ágens rendszerek
Elosztott Problémamegoldás III. • A konfliktusokat, illetve a kommunikációt csökkenti • Elkötelezettség (commitment) • Konvenciók (conventions) Ágensek és multi-ágens rendszerek
Feladat-allokáció / Régió-kiosztás • Terület-alapú • Statikus • Funkcionális (szakértelem-alapú) • Statikus vagy Dinamikus • Vállalkozási háló (contract net) • Dinamikus • Hirdetőtábla (blackboard) • Dinamikus Ágensek és multi-ágens rendszerek
Vállalkozási háló (contract net) 1. • A legsikeresebb interaktív kooperatív problémamegoldó módszer. • Piaci metafóra • Zárt rendszer esetén tipikusan nem piaci alapú. • Feladat-kiosztás „tendereztetéssel”. • A manager ágens kihirdeti a megoldandó feladatot. • A kompetens (és ráérő) ágensek ajánlatot tesznek. • Idő, a megoldás minősége, ellentételezés… • FONTOS: • Valami módon érdekeltté kell tenni az ágenseket. • Zárt rendszer (kooperáció) esetén ez nem probléma (eleve adott). • A manager választ. • Iteratív eljárás!! • Azaz, a „tender” nyertese maga is tovább „tendereztetheti” az egyes részfeladatokat. Ágensek és multi-ágens rendszerek
Manager A feladat kihirdetése Az ajánlatok vétele és kiértékelése A nyertes kihirdetése Az eredmény vétele és szintetizálása Más részfeladatokkal Alvállalkozó A hirdetmény vétele Képességek értékelése Válasz: Elutasítás Ajánlat Ha nyert A feladat elvégzése Az eredmény elküldése Vállalkozási háló (contract net) 2. Ágensek és multi-ágens rendszerek
Vállalkozási háló (contract net) 3. • A manager és az alvállalkozó szerepkörök nincsenek előre kiosztva!! • Dinamikus struktúra. • Iteratív megoldás: egy ágens lehet egyszerre, vagy egymás után manager és alvállalkozó is. Ágensek és multi-ágens rendszerek
Vállalkozási háló (contract net) 4. • A hirdetmény szerkezete: • Címzett • Alkalmasság (eligibility) • Specifikáció • Feladat kivonat • Hogy az alvállalkozók rangsorolhassák az egyidejű hirdetményeket. • Ajánlat specifikáció • Milyen információt (határidő, pontosság, minőség, etc.) kell megadni, s mi mennyire számít. • Érvényességi idő Ágensek és multi-ágens rendszerek
Vállalkozási háló (contract net) 5. • Finomítások: • Kommunikáció • Broadcast / szűkített • Ha nincs elég/elég jó ajánlat, a manager: • Újráz • Felülvizsgál • Feladatot • Alkalmassági kritériumokat • Alternatív feladat-dekompozíciót készít Ágensek és multi-ágens rendszerek
Hirdetőtábla (Blackboard) 1. • Egyben egy általános kommunikációs architektúra neve is. • Metafora: • Nagy faliújság, melyet körbeülnek a „specialisták”. • A faliújság kezdetben a feladatot és a kezdőadatokat tartalmazza. • Iteratív eljárás: a specialisták • Elolvassák a feladatot, és nekilátnak az egyes részfeladatoknak. • Az elkészült (rész)eredményeket a táblára rakják. Ágensek és multi-ágens rendszerek
Hirdetőtábla (Blackboard) 2. • Hasznos • A „szakértelmek” függetlensége esetén. • Eltérő megoldási módszerek integrálására. • Lehetővé teszi a rugalmas információ-reprezentációt (mindenki a sajátjával dolgozik) • Kell • Közös (feladat- és eredmény-leíró) nyelv. • Esemény-alapú ütemezés/aktiváció. • Központi (hirdetőtábla) kontroll. • A megoldás inkrementálisan áll elő. Ágensek és multi-ágens rendszerek
Koordináció • A kommunikáció alapvető szerepe. • Implicit / Explicit • Statikus / Dinamikus • Tervezett vagy Rögzített / Emergens • Az információ(megoldás, szándékok, etc.) reprezentálása: • Ad hoc • Formális • Értékalapú • Alkuhoz elengedhetetlen • Piaci megközelítések Ágensek és multi-ágens rendszerek
Megközelítések • Központosított, globális • Az alábbi speciális esete, de gyakorisága miatt külön kezelendő. • Hierarchia / Szervezet • Fix „kommunikációs utak” / parancsnoki lánc • Kompetencia-alapú • „Tudjuk” mihez ki ért. • Körkérdés, „blackboard”, „jelvények”, „szaknévsorok” • Ld. Jini, CORBA Broker-ek, Federated Directory-k, etc. • P2P (azaz, „szemtől szemben”) • Alku • Különösen fontos az információ (preferencia) reprezentációja. • Piaci alapú • Stigmergia Ágensek és multi-ágens rendszerek
„Szemtől szemben” • Közvetlen ágens-ágens interakció. • Kérés-válasz. • Feladat felajánlás/elvégzés • FIGYELEM: nem feladatosztás!! • Általában alkut(negotiation) igényel: • Kommunikációs folyamat kettő vagy több eltérő célú ágens között, melynek során kölcsönösen elfogadott döntésre jutnak. Ágensek és multi-ágens rendszerek
Alku (negotiation) 1. • Feltételezi az érdekek reprezentálását • Hasznosságok, preferenciák, stb. • Játékelméleti vagy piaci alapok. • Intenzív kutatások tárgya, sok-sok módszer. • Ld. következő órán! Ágensek és multi-ágens rendszerek
Alku (negotiation) 2. • Tulajdonságok / követelmények: • Hatékonyság • Mindent a legnagyobb (globális) haszonnal osztanak szét. • Stabilitás • A résztvevők egyikének sem érdeke felrúgni a megállapodást. • Egyszerűség • Maga az alkufolyamat nem pazarolja a (számítógépes) erőforrásokat. • Elosztottság • Lehetőleg nem egy központi erőforrás-allokációs programra akarjuk visszavezetni a feladatot. • Szimmetria • A résztvevők egyikének sem kedvez (indokolatlanul). Ágensek és multi-ágens rendszerek
Piaci alapú megközelítés • „Market-oriented programming” • Reprezentációs oldal • Univerzális, egydimenziós és metrikus információ-kód. • Kommunikációs oldal • Klasszikus feltételezés: azonnali és teljeskörű terjedés. (Indirekt kommunikáció) • Újabban már az ár terjedését is modellezik. • Több kommunikációs struktúrával is alkalmazható. • Elemei több másik megközelítésben visszaköszönnek • Pl. alku. • Részletesebben foglalkozunk vele a későbbi órákon. • Az MI és a közgazdaságtan kapcsolata • Herbert Simon (az MI egyik alapítója, közgazdaságtani Nobel-díjas). • Racionális szereplők – feltételezése versus alkotása. Ágensek és multi-ágens rendszerek
Stigmergia • Pierre-Paul Grassé terminusa (1959) • Stigma (jel) & ergon (munka) • „Munkaszervezés a munka (terméke) által.” • Indirekt kommunikáció • A környezet, illetve „érzékelés” által. • „Hangyaalgoritmusok” • Közelítő, robosztus, „önjavító” algoritmusok. • Például: • Rajban repülés (boids / schooling) • Élelemszerzés • Rendezés • Termeszvárak Ágensek és multi-ágens rendszerek
Termeszvárak Ágensek és multi-ágens rendszerek
Stigmergia • Demók… • Boids / Schooling • Ant Foraging (x2) • Ant Sorting • Termeszek Ágensek és multi-ágens rendszerek
Hangyák élelemkeresésének modellje • Jelenlegi tudásunk szerint / a modellben • nincs központi kontroll, • nincs direkt kommunikáció, • az egyedek egyszerűek (nem túl okosak). • Indirekt kommunikáció • 2 fajta feromon: „kereső”, illetve „hazatérő” • Gyakran csökkenő lépésenkénti feromon-mennyiség • A hangyák a megfelelő feromon gradiensét követik • „Hibázás” • Tehetetlenség • Diffúzió és párolgás • A működés elemzése • Különös tekintettel a „rövidebb” út megtalálására Ágensek és multi-ágens rendszerek
Stigmergia Alkalmazásai • Hétköznapi • Spontán dugó-elkerülés • „Ebben a sávban valami gáz van…” • Társadalmi • Wikipedia • ICT • Útvonalválasztás telekommunikációs hálózatokban. • Képfeldolgozásban Ágensek és multi-ágens rendszerek
Stigmergia ICT Alkalmazásai II. • Infrastruktúra: • Tuple-spaces (pl. TuCSoN) • Elosztott „blackboard” • Lokális információ-halmazok (TupleSpace-k) • N(a, b, c, d) TS-be • Ant-Colony Optimization (ACO) • Meta-heurisztika versus algoritmus • Az élelemkeresés algoritmusának formalizálása és általánosítása. Ágensek és multi-ágens rendszerek
Hangyák élelemkeresése • „Exploration versus Exploitation” • Kito et al. cikke: a korlátozott racionalitás/információ néha segít. • Az „ant-rópia” • projekt: Ágensek és multi-ágens rendszerek
„Ant-rópia” 2. Ágensek és multi-ágens rendszerek