1 / 40

Modele arhitecturale de agenti

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. Structura conceptuala a agentilor Arhitecturi de agenti cognitivi

Download Presentation

Modele arhitecturale de agenti

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sisteme multi-agentCurs 2Universitatea “Politehnica” din Bucurestianul universitar 2007-2008Adina Magda Floreaadina@cs.pub.rohttp://turing.cs.pub.ro/blia_08curs.cs.pub.ro

  2. Modele arhitecturale de agenti • Structura conceptuala a agentilor • Arhitecturi de agenti cognitivi • Arhitecturi de agenti reactivi • Arhitecturi stratificate

  3. 1. Structura conceptuala a agentilor 1.1 Rationalitatea unui agent • Ce inseamna rationalitatea unui agent • Cum putem masura rationalitatea unui agent? • O masura a performantei 3

  4. 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

  5. Modelare agenti Modelare agent reactiv E={e1, .., e, ..} P ={p1, .., p, ..} A ={a1, .., a, ..} Agent reactiv see : E  P action : P  A env : E x A  E (env : E x A P(E)) Componenta decizie Agent action P A Componenta Componenta perceptie executie see action Mediu env (E) 5

  6. Modelare agenti reactivi A1,…, Ai,.. P1,…, Pi,.. (de obicei identice) Mai multi agenti reactivi seei : E  Pi actioni : Pi Ai env : E x A1 x … AnP(E) Agent (A1) Componenta decizie action Agent (A2) Componenta Componenta Agent (A3) executie perceptie action see Mediu env 6

  7. Modelare agent cognitiv E={e1, .., e, ..} P ={p1, .., p, ..} A ={a1, .., a, ..} S={s1, .., s, ..} Agent cu stare see : E  P next : S x P  S action : S  A env : E x A P(E) Componenta S decizie Agent action, next P A Componenta Componenta perceptie executie see action Mediu env (E) 7

  8. Componenta interactiune inter Modelare agenti cognitivi S1,…, Si,.. A1,…, Ai,.. P1,…, Pi,.. (nu intotdeauna identice) I = {i1, .., ik,…} Mai multi agenti cognitivi seei : E  Pi nexti : Si x P  Si actioni : Si x I  Ai interi : Si I env : E x A1 x … AnP(E) Agent (A1) Componenta decizie action, next Agent (A2) Componenta Componenta Agent (A3) executie perceptie action see Mediu 8 env

  9. 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

  10. 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

  11. Exemplu Cum modelam? • Curatirea unei camere • Agent reactiv • Agent cognitiv • Agent cognitiv cu utilitate 11

  12. 2. Arhitecturi de agenti cognitivi 2.1 Comportare rationala IA si Teoria deciziei • IA • Teoria deciziei • Problema 1 = deliberare/decizie vs. actiune/proactivitate • Problema 2 = limitarea resurselor 12

  13. Control Interactions Information about itself - 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 Communication General cognitive agent architecture Reasoner Other agents Planner Scheduler& Executor Output State Input Environment 13

  14. 2.2 Modele LPOI • Reprezentare simbolica + inferente – demonstrarea teoremelor pt a afla ce actiuni va face agentul • Abordare declarativa • (a)Reguli de deductie PredicateAt(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 At(0,3) 14

  15. Modele LPOI (b) Utilizarea calcului situational = descrie schimbari utilizand formalismul logic • Situatie = starea rezultata prin executarea unei actiuni Result(Action,State) = NewState 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

  16. Avantaje LPOI Dezavantaje Avem nevoie de un alt model 16

  17. 2.3 Arhitecturi BDI • 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

  18. BDI • Componenta filozofica – teoria rationamentului practic - Bratman, 1988 • Arhitectura software • IRMA - Intelligent Resource-bounded Machine Architecture • PRS - Procedural Reasoning System • Componenta logica • Rao & Georgeff, Wooldrige • (Int Ai )   (Bel Ai) 18

  19. percepts Arhitectura BDI Belief revision Beliefs Knowledge B = brf(B, p) Opportunity analyzer Deliberation process Desires D = options(B,D, I) Intentions Filter Means-end reasonner I = filter(B, D, I) Intentions structured in partial plans  = plan(B, I) Library of plans Plans Executor 19 actions

  20. Bucla de control a agentului B = B0 I = I0D = D0 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

  21. Strategii de angajare (Commitment strategies) • Optiune aleasa de agent ca intentie – agentul s-a angajat pentru acea optiune • Persistenta intentiilor Interbare: Cat timp se angajeaza un agent fata de o inetntie? • Angajare oarba (Blind commitment) • Angajare limitata (Single minded commitment) • Angajare deschisa (Open minded commitment) 21

  22. Bucla de control BDI angajare oarba B = B0 I = I0 D = D0 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) end while end while Reactivity, replan 22

  23. Bucla de control BDI angajare limitata B = B0 I = I0 D = D0 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) 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) end while end while Dropping intentions that are impossible or have succeeded Reactivity, replan 23

  24. Bucla de control BDI angajare deschisa B = B0 I = I0 D = D0 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) or impossible(I, B)) do  = head() execute()  = tail() get next perceipt p B = brf(B,p) D = options(B, D, I) I = filter(B, D, I)  = plan(B, I) end while end while ifreconsider(I,B) then Replan 24

  25. Nu exista o unica arhitectura BDI • PRS - Procedural Reasoning System (Georgeff) • dMARS • UMPRS si JAM – C++ (http://www.marcush.net/IRS/irs_downloads.html) • JACK – Java (http://www.agent-software.com.au/shared/home/) • JADEX – XML si Java, JADE (http://vsis-www.informatik.uni-hamburg.de/projects/jadex/) • JASON – Java (http://jason.sourceforge.net/) 25

  26. 3. Arhitecturi de agenti reactivi Arhitectura de subsumare - Brooks, 1986 • (1) Luarea deciziilor = {Task Accomplishing Behaviours} • Fiecare comportare (behaviour) = o functie ce realizeaza o actiune • TAB – automate finite • Implementare: situation action • (2) Mai multe comportari pot fi activate in paralel 26

  27. Arhitectura de subsumare • 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

  28. Competence Module (2) Explore environ Effectors Sensors Output (actions) Input (percepts) Competence Module (1) Move around Competence Module (0) Avoid obstacles M1 = move around while avoiding obstacles M0 M2 = explores the environment looking for distant objects of interests while moving around  M1 • 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

  29. Comportare (c, a) – conditie-actiune; descrie comportarea R = { (c, a) | c  P, a  A} - multimea reguli de comportare   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

  30. 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

  31. 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 atuncidepun boaba radioactivasi 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

  32. Layer n Layer n Layer n … … … Layer 2 Layer 2 Layer 2 Layer 1 Layer 1 Layer 1 4. Arhitecturi stratificate • Comportare reactiva si pro-activa • Cel putin 2 straturi • Horizontal layering - i/o horizontal • Vertical layering - i/o vertical Action output Action output Action output perceptual input Vertical Horizontal perceptual input perceptual input 32

  33. Horizontal layering • 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 • Interactiuni intre niveluri m2(n-1) • Nu sunt tolerante la defecte (daca un nivel se defecteaza) 33

  34. TouringMachine • Horizontal layering – 3 niveluri de realizare a actiunilor • Nivel reactiv - set de reguli situatie-actiune pt mediu • Nivel planificare - comportare pro-activa Nivel modelare - reprezinta mediul, agentul si ceilalti agenti • Sistem de control 34

  35. Nivel modelare perceptii Subsistem perceptie Nivel planificare Subsistem actiune Nivel reactiv actiuni Subsistem control 35

  36. InteRRaP • Arhitectura stratificata • BDI Principii • 2 niveluri • Atat controlul cat si BC sunt stratificate • Activare bottom-up si executie top-down • Fiecare nivel foloseste rezultatele nivelului inferior Fiecare nivel de control este format din: - modul recunoastere situatie / activare scop (SG) - modul planificare (PS) 36

  37. Local planning layer Cooperative planning layer Behavior based layer PS SG PS SG SG PS Social KB I n t e R R a P Planning KB World KB World interface Sensors Effectors Communication 37 actions percepts

  38. Options Operational primitive Intentions Situation Goals Beliefs Cooperative situation Joint plans Cooperative goals Cooperative intents Social model Cooperative option Local plans Local goals Local option Local planning situation Local intentions Mental model Routine/emergency sit. Reactions World model Response Behavior patterns Reaction BDI model in InteRRaP options Sensors filter SG Effectors plan PS 38

  39. 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. Decision-making 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: dMARS • [D'Inverno, 1997] M. D'INVERNO et al. A formal specification of dMARS, 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 12th International Joint Conference on Artificial Intelligence (IJCAI-91), 1991, p.569-595. 39

  40. TuringMachine • [Ferguson, 1992] I. A. FERGUSON. TuringMachines: An Architecture for Dynamic, Rational, Mobile Agents, Thèse de doctorat, University of Cambridge, UK, 1992. • InteRRaP • [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 • Third generation BDI agent system using a component based approached. Implemented in Java • http://www.agent-software.com.au/shared/home/ JASON • http://jason.sourceforge.net/ 40

More Related