2d4fe2fd0070ad8948603aa725001c85.ppt
- Количество слайдов: 40
Sisteme multi-agent Curs 2 Universitatea “Politehnica” din Bucuresti anul universitar 2007 -2008 Adina Magda Florea adina@cs. pub. ro http: //turing. cs. pub. ro/blia_08 curs. cs. pub. ro
Modele arhitecturale de agenti n n Structura conceptuala a agentilor Arhitecturi de agenti cognitivi Arhitecturi de agenti reactivi Arhitecturi stratificate
1. Structura conceptuala a agentilor 1. 1 Rationalitatea unui agent n n n Ce inseamna rationalitatea unui agent Cum putem masura rationalitatea unui agent? O masura a performantei 3
n n Un agent este situat in mediu Perpece mediul prin sensori si actioneaza asupra lui prin efectori Caracteristicile mediului trebuie luate in considerare Scop: proiectarea unui program – functie care realizeaza corespondenta sensori - efectori Agent = architectura + program 4
Modelare agenti Modelare agent reactiv Componenta decizie action P Componenta perceptie see Agent E = {e 1, . . , e, . . } P = {p 1, . . , p, . . } A = {a 1, . . , a, . . } A Componenta executie action Mediu Agent reactiv see : E P action : P A env : E x A E (env : E x A P(E)) env (E) 5
Modelare agenti reactivi Mai multi agenti reactivi seei : E Pi actioni : Pi Ai env : E x A 1 x … An P(E) A 1, …, Ai, . . P 1, …, Pi, . . (de obicei identice) Componenta decizie action Componenta perceptie see Agent (A 1) Agent (A 2) Componenta executie action Agent (A 3) Mediu env 6
Modelare agent cognitiv S Componenta decizie action, next P Componenta perceptie see Agent A Componenta executie action Mediu env (E) E = {e 1, . . , e, . . } P = {p 1, . . , p, . . } A = {a 1, . . , a, . . } S = {s 1, . . , s, . . } Agent cu stare see : E P next : S x P S action : S A env : E x A P(E) 7
Modelare agenti cognitivi Mai multi agenti cognitivi seei : E Pi nexti : Si x P Si actioni : Si x I Ai interi : Si I env : E x A 1 x … An P(E) S 1, …, Si, . . A 1, …, Ai, . . P 1, …, Pi, . . (nu intotdeauna identice) I = {i 1, . . , ik, …} Componenta decizie action, next Componenta perceptie see Agent (A 1) Componenta interactiune inter Componenta executie action Mediu env Agent (A 2) Agent (A 3) 8
Modelare agent cognitiv Agenti cu stare si scopuri goal : E {0, 1} Agenti cu utilitate utility : E R Mediu nedeterminist env : E x A P(E) Probabilitatea estimata de un agent ca rezultatul unei actiuni (a) executata in e sa fie noua stare e’ 9
Modelare agent cognitiv Agenti cu utilitate Utilitatea estimata (expected utility) a unei actiuni a intr-o stare e, dpv al agentului Principiul utilitatii estimate maxime Maximum Expected Utility (MEU) Masura a performantei 10
Exemplu Cum modelam? n Curatirea unei camere – Agent reactiv – Agent cognitiv cu utilitate 11
2. Arhitecturi de agenti cognitivi 2. 1 Comportare rationala IA si Teoria deciziei n IA n Teoria deciziei n Problema 1 = deliberare/decizie vs. actiune/proactivitate n Problema 2 = limitarea resurselor 12
Interactions Information about itself Communication Reasoner Other agents Planner Control Output Scheduler& Executor State - what it knows - what it believes - what is able to do - how it is able to do - what it wants environment and other agents - knowledge - beliefs Input Environment General cognitive agent architecture 13
2. 2 Modele LPOI n n Reprezentare simbolica + inferente – demonstrarea teoremelor pt a afla ce actiuni va face agentul Abordare declarativa (a)Reguli de deductie Predicate At(x, y), Free(x, y), Wall(x, y), Exit(dir), Do(action) Fapte si axiome despre mediu At(0, 0) Wall(1, 1) x y Wall(x, y) Free(x, y) Reguli de deductie At(x, y) Free(x, y+1) Exit(east) Do(move_east) Actualizare automata a starii curente si test pt starea scop 14 At(0, 3) n
Modele LPOI (b) Utilizarea calcului situational = descrie schimbari utilizand formalismul logic n Situatie = starea rezultata prin executarea unei actiuni Result(Action, State) = New. State At(location, situation) At((x, y), Si) Free(x, y+1) Exit(east) At((x, y+1), Result(move_east, Si)) Scop At((0, 3), _) + actiuni care au condus la scop means-end analysis 15
Avantaje LPOI Dezavantaje Avem nevoie de un alt model 16
2. 3 Arhitecturi BDI n n n Specificatii de nivel inalt Means-end analysis Beliefs (convingeri) = informatii pe care agentul le are despre lume Desires (dorinte) = stari pe care agentul ar vrea sa le vada realizate Intentions (intentii) = dorinte (sau actiuni) pe care agentul s-a angajat sa le indeplineasca Rolul intentiilor 17
BDI n Componenta filozofica – teoria rationamentului practic - Bratman, 1988 n Arhitectura software – IRMA - Intelligent Resource-bounded Machine Architecture – PRS - Procedural Reasoning System n Componenta logica – Rao & Georgeff, Wooldrige – (Int Ai ) (Bel Ai ) 18
percepts Arhitectura BDI Belief revision Beliefs Knowledge Opportunity analyzer B = brf(B, p) Deliberation process Desires D = options(B, D, I) Intentions Filter Means-end reasonner I = filter(B, D, I) Intentions structured in partial plans Library of plans = plan(B, I) Plans Executor actions 19
Bucla de control a agentului B = B 0 I = I 0 D = D 0 while true do get next perceipt p B = brf(B, p) D = options(B, D, I) I = filter(B, D, I) = plan(B, I) execute( ) end while 20
Strategii de angajare (Commitment strategies) Optiune aleasa de agent ca intentie – agentul s-a angajat pentru acea optiune o Persistenta intentiilor Interbare: Cat timp se angajeaza un agent fata de o inetntie? o Angajare oarba (Blind commitment) o Angajare limitata (Single minded commitment) o Angajare deschisa (Open minded commitment) o 21
B = B 0 Bucla de control BDI I = I 0 D = D 0 angajare oarba while true do get next perceipt p B = brf(B, p) D = options(B, D, I) I = filter(B, D, I) = plan(B, I) while not (empty( ) or succeeded (I, B)) do = head( ) execute( ) = tail( ) get next perceipt p B = brf(B, p) if not sound( , I, B) then = plan(B, I) Reactivity, replan end while 22
B = B 0 Bucla de control BDI I = I 0 D = D 0 angajare limitata while true do get next perceipt p B = brf(B, p) D = options(B, D, I) Dropping intentions that are impossible I = filter(B, D, I) or have succeeded = plan(B, I) while not (empty( ) or succeeded (I, B) or impossible(I, B)) do = head( ) execute( ) = tail( ) get next perceipt p B = brf(B, p) if not sound( , I, B) then = plan(B, I) Reactivity, replan end while 23
B = B 0 Bucla de control BDI I = I 0 D = D 0 while true do angajare deschisa get next perceipt p B = brf(B, p) D = options(B, D, I) I = filter(B, D, I) = plan(B, I) while not (empty( ) or succeeded (I, B) or impossible(I, B)) do = head( ) execute( ) = tail( ) get next perceipt p B = brf(B, p) if reconsider(I, B) then D = options(B, D, I) I = filter(B, D, I) = plan(B, I) Replan end while 24
o Nu exista o unica arhitectura BDI o PRS - Procedural Reasoning System (Georgeff) o d. MARS o UMPRS si JAM – C++ (http: //www. marcush. net/IRS/irs_downloads. html) o JACK – Java (http: //www. agentsoftware. com. au/shared/home/) o JADEX – XML si Java, JADE (http: //vsiswww. informatik. uni-hamburg. de/projects/jadex/) o JASON – Java (http: //jason. sourceforge. net/) 25
3. Arhitecturi de agenti reactivi Arhitectura de subsumare - Brooks, 1986 n (1) Luarea deciziilor = {Task Accomplishing Behaviours} – Fiecare comportare (behaviour) = o functie ce realizeaza o actiune – TAB – automate finite – Implementare: situation action n (2) Mai multe comportari pot fi activate in paralel 26
Arhitectura de subsumare n n n Un TAB este reprezentat de un modul de competenta (c. m. ) Fiecarte c. m. executa un task simplu c. m. opereaza in paralel Nivele inferioare au prioritate fata de cele superioare c. m. la nivel inferior monitorizeaza si influenteaza intrarile si iesirile c. m. la nivel superior subsumtion architecture 27
Competence Module (2) Explore environ Input (percepts) Sensors Competence Module (1) Move around Output (actions) Effectors Competence Module (0) Avoid obstacles M 1 = move around while avoiding obstacles M 0 M 2 = explores the environment looking for distant objects of interests while moving around M 1 § Incoroprarea functionalitatii unui c. m. subordonat de catre un c. m. superior se face prin noduri supresoare (modifica semnalul de intrare) si noduri inhibitoare (inhiba iesirea) Competence Module (1) Move around Supressor node Inhibitor node Competence Module (0) Avoid obstacles 28
Comportare (c, a) – conditie-actiune; descrie comportarea R = { (c, a) | c P, a A} comportare - multimea reguli de R x R – relatie binara totala de inhibare function action( p: P) var fired: P(R), selected: A begin fired = {(c, a) | (c, a) R and p c} for each (c, a) fired do if (c', a') fired such that (c', a') (c, a) then return a return null end 29
Ne aflam pe o planeta necunoscuta care contine aur. Mostre de teren trebuie aduse la nava. Nu se stie daca sunt aur sau nu. Exsita mai multi agenti autonomi care nu pot comunica intre ei. Nava transmite semnale radio: gradient al campului Comportare (1) Daca detectez obstacol atunci schimb directia (2) Daca am mostre si sunt la baza atunci depune mostre (3) Daca am mostre si nu sunt la baza atunci urmez campul de gradient (4) Daca gasesc mostre atunci le iau (5) Daca adevarat atunci ma misc in mediu (1) (2) (3) (4) (5) Care sunt premisele pt ca acest comportament sa functioneze? (distributie a aurului? ) 30
Agentii pot comunica indirect: - Depun si culeg boabe radiocative - Pot seziza aceste boabe radioactive (1) Daca detectez obstacol atunci schimb directia (2) Daca am mostre si sunt la baza atunci depune mostre (3) Daca am mostre si nu sunt la baza atunci depun boaba radioactiva si urmez campul de gradient (4) Daca gasesc mostre atunci le iau (5) Daca gasesc boabe radioactive atunci iau una si urmez campul de gradient (6) Daca adevarat atunci ma misc in mediu (1) (2) (3) (4) (5) (6) 31
4. Arhitecturi stratificate n n Comportare reactiva si pro-activa Cel putin 2 straturi Horizontal layering - i/o horizontal Vertical layering - i/o vertical Action output Layer n perceptual input … Layer 2 Layer 1 Horizontal Action output Layer n … … Layer 2 Layer 1 Vertical perceptual input 32
Horizontal layering n n n comportari, n niveluri Comportarea globala poate fi inconsistenta Interactiuni intre niveluri: mn (m = nr actiuni pe nivel) Necesita un sistem de control Vertical layering n n Interactiuni intre niveluri m 2(n-1) Nu sunt tolerante la defecte (daca un nivel se defecteaza) 33
Touring. Machine n Horizontal layering – 3 niveluri de realizare a actiunilor n Nivel reactiv - set de reguli situatie-actiune pt mediu Nivel planificare - comportare pro-activa Nivel modelare - reprezinta mediul, agentul si ceilalti agenti n n Sistem de control 34
perceptii Subsistem perceptie Nivel modelare Nivel planificare Nivel reactiv Subsistem actiune actiuni Subsistem control 35
Inte. RRa. P Arhitectura stratificata n BDI Principii n 2 niveluri n Atat controlul cat si BC sunt stratificate n Activare bottom-up si executie top-down n Fiecare nivel foloseste rezultatele nivelului inferior Fiecare nivel de control este format din: - modul recunoastere situatie / activare scop (SG) - modul planificare (PS) n 36
Cooperative planning layer I n t e R R a P Local planning layer Behavior based layer World interface actions SG SG SG Sensors Social KB PS Planning KB PS World KB PS Effectors Communication percepts 37
BDI model in Inte. RRa. P options Beliefs Goals Social model Cooperative situation Cooperative goals Mental model Local planning situation Local goals World model Sensors Situation Routine/emergency sit. Reactions filter Options Intentions Effectors SG Cooperative option Cooperative intents Local option Local intentions Reaction Response Operational primitive Joint plans PS Local plans Behavior patterns plan 38
§ § § § BDI Architectures § First implementation of a BDI architecture: IRMA [Bratman, Israel, Pollack, 1988] M. E. BRATMAN, D. J. ISRAEL et M. E. POLLACK. Plans and resource-bounded practical reasoning, Computational Intelligence, Vol. 4, No. 4, 1988, p. 349 -355. § PRS [Georgeff, Ingrand, 1989] M. P. GEORGEFF et F. F. INGRAND. Decisionmaking in an embedded reasoning system, dans Proceedings of the Eleventh International Joint Conference on Artificial Intelligence (IJCAI 89), 1989, p. 972 -978. § Successor of PRS: d. MARS [D'Inverno, 1997] M. D'INVERNO et al. A formal specification of d. MARS, dans Intelligent Agents IV, A. Rao, M. P. Singh et M. Wooldrige (eds), LNAI Volume 1365, Springer-Verlag, 1997, p. 155 -176. Subsumption architecture [Brooks, 1991] R. A. BROOKS. Intelligence without reasoning, dans Actes de 12 th International Joint Conference on Artificial Intelligence (IJCAI-91), 1991, p. 569 -595. 39
§ § Turing. Machine [Ferguson, 1992] I. A. FERGUSON. Turing. Machines: An Architecture for Dynamic, Rational, Mobile Agents, Thèse de doctorat, University of Cambridge, UK, 1992. Inte. RRa. P [Muller, 1997] J. MULLER. A cooperation model for autonomous agents, dans Intelligent Agents III, LNAI Volume 1193, J. P. Muller, M. Wooldrige et N. R. Jennings (eds), Springer-Verlag, 1997, p. 245 -260. BDI Implementations The Agent Oriented Software Group n Third generation BDI agent system using a component based approached. Implemented in Java n http: //www. agent-software. com. au/shared/home/ JASON n http: //jason. sourceforge. net/ 40
2d4fe2fd0070ad8948603aa725001c85.ppt