1 / 11

Open Agent Architecture (OAA) - Part II

Open Agent Architecture (OAA) - Part II. -Murali Krishnan. Interagent Communication Language (ICL). Interface, communication & task coordination language shared by all agents Used by agents to perform queries, execute actions, exchange information, set triggers & manipulate data

gilead
Download Presentation

Open Agent Architecture (OAA) - Part II

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. Open Agent Architecture (OAA)- Part II -Murali Krishnan

  2. Interagent Communication Language (ICL) • Interface, communication & task coordination language shared by all agents • Used by agents to perform queries, execute actions, exchange information, set triggers & manipulate data • Includes a conversational layer protocol (events, parameters) & content layer (goals, triggers & data elements) • ICL – Unified way of expressing agent functionalities! • Register capability specifications • -Request services of agents in community PROLOG is used!

  3. ICL contd… • Platform independent – supports C, C++, VB, Delphi, Java, Prolog, LISP • Interagent communication – through events & message passing • ev_post_solve (Goals, Params) ->typical event • Agents use ICL to define and publish their capabilities and services provided, to the facilitator • Agents capabilities declarations - SOLVABLES

  4. Solvables: • Procedure solvables • Data solvables • perform a test or action • must have a handler declared • and defined • Provides access to collection • of data • -associated with dynamic collection • of facts Specification of solvables: solvable ( Goal, Parameters, Permissions ) Examples: solvable (send_message (email, +ToPerson, +Params), [type(procedure), callback (send_mail)], [] ) solvable (last_message (email, -MessageId), [type(data), single_value(true)], [write(true)] )

  5. Agent library: • Provides infrastructure for building new agent-based system • Single, unified point of entry for requesting services – library procedure oaa_Solve() • Contains many other procedures like: • oaa_declare, oaa_undeclare, oaa_redeclare – regn. with facilitator • oaa_adddata, oaa_removedata, oaa_replacedata – updates to data solvables • oaa_addtrigger, oaa_removetrigger, oaa_replacetrigger – procedures for trigger-related operations • Inter-agent and Intra-agent communication

  6. OAA Triggers: • Action fired, when condition met • Types: communication, data, task & time • When trigger fires, execution of action is delegated to the facilitator oaa_AddTrigger(Type, conditions, action, params) • Communication triggers: monitor incoming / outgoing events • Data triggers: monitor the state of a data repository • Task triggers: test arbitrary conditions after processing event or timeout • Time triggers: monitor time related conditions

  7. Multimodal User Interfaces: • User is special member of agent community • Agents compete to recognize and act on user actions • Natural Language (NL) translation to & from ICL Multiagent cooperation for ambiguity resolution • Pen: gesture or handwriting? • Reference resolution: “photo of the hotel” - NL Agent: hotel in language context - Gesture Agent: hotel being pointed at - UI Agent: only one hotel visible - Database Agent: “hotel on Smith Street” - Discourse Agent: “the other hotel” • Human User: if still ambiguous, can clarify • Cross-modality ambiguities

  8. Multimodal map --- Example OAA application: Sample Interaction: 2.1 [Speaking] Where is downtown? Map scrolls to appropriate area. 2.2 [Speaking and drawing region] Show me all hotels near here. Icons representing hotels appear. 2.3 [Writes on a hotel] Info? A textual description (price, attributes, etc.) appears. 2.4 [Speaking] I only want hotels with a pool. Some hotels disappear. Natural interface to distributed (web) data Synergistic combination of handwriting, drawing, speech, direct manipulation and so on…

  9. Facilitator Plan + Exe Facilitator Facilitator OAA and Scalability Current Limitations: Facilitator is single point of failure Facilitator is bottleneck for communication Possible Solutions: Multi-Facilitator topologies Replicated Distribution of planning & execution functions of Facilitator + peer-to-peer communication Registry & Planner Agent E CMM2

  10. OAA Characteristics: agents can be created in many languages and interface with existing systems agents can be added or replaced dynamically agents are spread across many computers Parallel execution of subtasks Lightweight interfaces on phone and/or PDA hides software and hardware dependencies handwriting, speech, gestures, and direct manipulation can be combined together Open: Extensible: Distributed: Parallel: Mobile: High-level: Multimodal: CMM2

  11. References: • [CMM1] The Open Agent Architecture: A Framework for Building Distributed Software Systems – David L.Martin, Adam J. Cheyer, Douglas B. Moran, (AI center, SRI International) (Technical paper) • [CMM2] The Open Agent Architecture, by the same authors. (PowerPoint presentation) • Open Agent Architecture: Technical white paper. See website http://ai.sri.com/~oaa • An Open Agent Architecture, Philip Cohen, Adam Cheyer, Michelle Wang, Soon Cheol Baeg. (See website http://ai.sri.com/~oaa

More Related