1 / 8

(Imperative and) Declarative Programming Languages for Multi-Agent Systems

(Imperative and) Declarative Programming Languages for Multi-Agent Systems. João Alexandre Leite. CENTRIA - New University of Lisbon http://centria.di.fct.unl.pt/~jleite/. PROMAS@AL3-TF2. Ljubljana, March 1st, 2005. Declarative description

jag
Download Presentation

(Imperative and) Declarative Programming Languages for Multi-Agent Systems

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. (Imperative and) Declarative Programming Languages for Multi-Agent Systems João Alexandre Leite CENTRIA - New University of Lisbon http://centria.di.fct.unl.pt/~jleite/ PROMAS@AL3-TF2 Ljubljana, March 1st, 2005

  2. Declarative description A grandchild to x is a child of one of x’s children. Imperative description I To find a grandchild of x, first find a child of x. Then find a child of that child. Imperative description II To find a grandchild of x, first find a parent-child pair and then check if the parent is a child of x. Imperative description III To find a grandchild of x, compute the factorial of 123, then find a child of x. Then find a child of that child. Imperative implementation read(person); for i := 1 to maxp do if p[i;1] = person then for j := 1 to maxp do if p[j;1] = p[i;2] then write(p[j;2]); fi od fi od Declarative implementation gc(X,Z) :- c(X,Y), c(Y,Z). Declarative vs Imperative Ljubljana, March 1st, 2005

  3. Declarative vs Imperative Ljubljana, March 1st, 2005

  4. ConGolog [De Giacomo et al.] 3APL [Dastani et al.] IMPACT [Subrahmanian et al.] Conc. MetateM [Fisher et al.] AgentSpeak(L) [Rao et al.] DyLog [Baldoni et al.] hhf[Delzanno et al.] AGENT 0[Shoham] FLUX [Thielscher et al.] JASON [Bordini et al.] DALI [Costantini et al.] KARO [van Linder et al.] PROSOCS [Stathis et al.] MINERVA [Leite et al.] ALIAS [Ciampolini et al.] ... Logic Based MAS Ljubljana, March 1st, 2005

  5. CLIMA & DALT • Constantly increasing number of submitted papers (35 papers each in last editions) • Covering most topics seen in current MAS research: • Negotiaton • Planning • Protocols • Learning • Adaptation • Cooperation • Communication • Verification • Reasoning • Institutions • Social Norms • Architectures and Environments • Trust • Belief Revision and Update • Programming Languages • Software Engineering Ljubljana, March 1st, 2005

  6. PROLOG ConGolog Conc. MetateM DyLog hhf FLUX DALI MINERVA ALIAS JAVA & PROLOG 3APL PROSOCS Implementations How are these systems implemented? Common LISP • AGENT 0 JAVA • IMPACT • JASON Ljubljana, March 1st, 2005

  7. Some thoughts... • On the opportunities MAS provides to DLs... • The high (and increasing) complexity of MAS calls for DLs Declarative Languages are guilty until proven innocent!! • On speed of DLs... • Drop the “it’s only for prototyping” excuse • Tackle “proper” implementations • Work together with major DL implementation groups (e.g. XSB...) • On ease of programming DLs and training costs... • Train students at undergraduate level Ljubljana, March 1st, 2005

  8. Proposed Questions... • Generic DLs (not developed ad-hoc for MAS development) such as PROLOG, Oz, Haskell, Scheme, ... could be used to develop such systems, but is it really more helpful? • Pure declarative implementations or hybrid? • How can DLs be used together with imperative ones? • How can DLs facilitate the MAS development? • It seems that DLs can be applied to define the high-level behavior of an agent. Where else? Ljubljana, March 1st, 2005

More Related