1 / 25

Bo Wang Wenpin Jiao Qijia Tian Zhongzhi Shi

Multi-Agent Description Language in MAGE. Bo Wang Wenpin Jiao Qijia Tian Zhongzhi Shi Lab of Intelligent Information Processing Institute of Computing Technology Chinese Academy of Sciences, China. Agenda. 1. MAGE Architecture 2. Agent Description Language

kelii
Download Presentation

Bo Wang Wenpin Jiao Qijia Tian Zhongzhi Shi

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. Multi-Agent Description Language in MAGE Bo Wang Wenpin Jiao Qijia Tian Zhongzhi Shi Lab of Intelligent Information Processing Institute of Computing Technology Chinese Academy of Sciences, China

  2. Agenda • 1. MAGE Architecture • 2. Agent Description Language • 3. Agent Development based-on MAGE • 4. Conclusions

  3. Agent Research in ICT-IIP • KISE (1994-96) • AOSDE (1996-1998) • MAGE(1998-2000) • AGECOP (2001-)

  4. End Users GUI Agent Running Frame ADL MAS Function Modules MAGE

  5. MAGE • an integrator to integrate • (1) agent running frame • (2) function modules • into agents with specific purpose or function which is described by ADL.

  6. Agent Running Frame Agent ADL Parser Agent Kernel Function 1 Scheduler Function Module Interface Data ┇ ACL Parser Function n ACL Msg Communicator Msg-In Msg-Out

  7. Function Modules • Build-in: java sentences in ADL session • Accessory: *.exe • Dynamic linking: *.dll

  8. Agent Development MAGE--ADL <Agent> ::= <Definition> <Local Address> <Acquaintance Addresses> <Extra Classes> <Capabilities> <Environment Variables> <Sessions>

  9. ADL [Environment Variables] BEGIN int a = 1 END [Sessions] BEGIN Session buy2; End Session Session if a <> 1 test; END [Acquaintance Addresses] BEGIN Facilitator=192.168.0.162:1666 END [Extra Classes] BEGIN Instance=buying2 Constructor=BuyerAgent(agent, "Seller1") END [Capabilities] BEGIN Name=buy2 Type=0 CommandLine= Source=buying2 Name=test Type=1 CommandLine=c:\windows\notepad.exe Source= END

  10. ADL Session … if (performative.equals(“negotiating”)) { double price = calculate_price( ); msg.setPara(“performative”, “negotiation_result”); msg.setPara(“sender”, receiver); msg.setPara(“receiver”, sender); msg.setPara(“price”, price); sendMessage(msg); } … End session

  11. ADL Building Tools

  12. ADL Building Tools

  13. MAGE Working Mechanism • Agent Initialization Stage • Load ADL script • Load function modules; • Initialize communication module; • Send registration information facilitator • Regular Working Stage • REPEAT • Receiving Thread; • Sending Thread; • ENDREPEAT

  14. Applications • Information / Knowledge Acquisition • Automated Negotiation • Group intelligence / swarm • Coordination in Organizational Decision Making (R&D project selection)

  15. Internet Facilitator Spider1 Spider2 Spider Database Knowledge Acquisition

  16. Knowledge Acquisition

  17. Knowledge Acquisition

  18. Knowledge Acquisition

  19. ApplicationsKnowledge Acquisition

  20. ApplicationsAgent-Based Bargaining

  21. Internet/ Intranet ApplicationsGroup Intelligence

  22. Services Agent Base Knowledge Management AGECOP Infrastructure Future Research

  23. Thank you!

  24. <Agent> ::= <Definition> <Local Address> <Acquaintance Addresses> <Extra Classes> <Capabilities> <Environment Variables> <Sessions> <Definition> ::= <Name Section> <Description Section> <Name Section> ::= "[Name]" <agent> = <agent_name> <Description Section> ::= "[Description]" BEGIN <description> END <Local Address> ::= "[Local Address]" <agent> = <host_name>:<port> <Acquaintance Addresses> ::= "[Acquaintance Address]" BEGIN {<acquaintance> = <host_name>:<port>}* END <Extra Classes> ::= "[Extra Classes]" BEGIN {<Class>}* END <Class> ::= Instance = <instance name> CONSTRUCTOR = <constructor> <Capabilities> ::= "[Capabilities]" BEGIN {<Capability>}* END

  25. <Capability> ::= NAME = <capability_name> TYPE = <capability_type> CMDLINE = <capability_command_line> SOURCE = <capability_source> <Environment Variables> ::= "[Environment Variables]" BEGIN {<Variable>}* END <Variable> ::= <Variable Type> <variable_name>[ = <initial_value>] <Variable Type> ::= int|boolean|char|string|float <Sessions> ::= "[SESSIONS]" BEGIN {<Session>}* END <Session> ::= SESSION <Actions>; |<If-Then-Else-Sentence>; |<While-Sentence>; |<Convention>; END SESSION <Actions> ::= <capability_command_line>; |"{" <capability_command_line>; <Actions> "}" |<Session> <If-Then-Else-Sentence> ::= IF (<condition>) <Actions> ELSE <Actions> <While-Sentence> ::= WHILE (<condition>) <Actions> <Convention> ::= (<condition>)=><Actions> |(<acl_message>)=><Actions>

More Related