1 / 24

Dynamic Matchmaking between Messages and Services in Multi-Agent Systems

Dynamic Matchmaking between Messages and Services in Multi-Agent Systems. Muhammed Al-Muhammed May 3, 2004. Support in part by NSF. Motivations. Agents cooperate to achieve goals Cooperation needs communication Communication possible if agents: share ontologies, speak the same language,

santo
Download Presentation

Dynamic Matchmaking between Messages and Services in 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. Dynamic Matchmaking between Messages and Services inMulti-Agent Systems Muhammed Al-Muhammed May 3, 2004 Support in part by NSF

  2. Motivations • Agents cooperate to achieve goals • Cooperation needs communication • Communication possible if agents: • share ontologies, • speak the same language, • pre-agree on a message format.

  3. Agents must: The Problem 1- share ontologies, 2- speak the same language, 3- pre-agree on message format. • Requiring these assumptions precludes agents from interoperating on the fly “The holy grail of semantic integration in architectures” is to “allow two agents to generate needed mappings between them on the fly without a priori agreement and without them having built-in knowledge of any common ontology.” [Uschold 02]

  4. This requires: - Translating (developing mutual understanding) Agents must: Solution 1- share ontologies, 2- speak the same language, 3- pre-agree on message format. • Eliminate all assumptions -Dynamically capturing a message’s semantics - Matching a message with a service

  5. Matchmaking System MatchMaking System (MMS) Message-Service Matching Message Handling Response Handling Global Domain Ontology Services (Agent- Independent Representation) Translation Repository Service Analysis Mapping Translation An Agent Local Ontology Services

  6. Global Ontology Creation MatchMaking System (MMS) Message-Service Matching Message Handling Response Handling Concept Recognizers: ProcessorType: (Processor)(Type|Class) ProcessorSpeed: (Processor)(Speed)|(Processor)(Clock)(Speed) … Unit of Measurement Recognizers: ProcessorSpeed Unit: (GHz|MHz) … Global Domain Ontology Services (Agent- Independent Representation) Translation Repository Service Analysis Mapping Translation An Agent

  7. Local-Global Mappings (Initialization) MatchMaking System (MMS) Message-Service Matching Message Handling Response Handling Global Domain Ontology Services (Agent- Independent Representation) Translation Repository Concepts: (Local, Global) ------------------------------------ (ProcessorClockSpeed, ProcessorSpeed) (ProcessorClass, ProcessorType) … Units: ProcessorSpeed: GHz Service Analysis Mapping Translation An Agent … double ProcessorClockSpeed; //GHz String ProcessorClass; …

  8. Service Analysis (Initialization) MatchMaking System (MMS) Message-Service Matching Message Handling Response Handling Global Domain Ontology Services (Agent- Independent Representation) Translation Repository Service Analysis Mapping Translation An Agent … public PcInfo getPcInfo (double RAM){…} public int getPrice (String ProcessorClass , double ProcessorClockSpeed ) {…} //output: Price public int getAmt(String Processor ) {…} //type definition class PcInfo {String ProcessorClockSpeed; //GHz String ProcessorClass; …;} An Agent … public PcInfo getPcInfo (double RAM){…} public int getPrice (String ProcessorClass , double ProcessorClockSpeed ) {…} //output: Price public int getAmt(String Processor ) {…} //type definition class PcInfo {String ProcessorClockSpeed; //GHz String ProcessorClass; …;}

  9. MMS.sendString (“ProcessorClockSpeed = 2.6 GHz” ); MMS.sendString,(“ProcessorClass = Pentium 4”); double Price = MMS.sendDouble(“getPrice”); Requests Rewriting (Initialization) MatchMaking System (MMS) Message-Service Matching Message Handling Response Handling Global Domain Ontology Services (Agent- Independent Representation) Translation Repository Service Analysis Mapping Translation An Agent … String ProcessorClockSpeed; //GHz String ProcessorClass; double Price; //US$ Price = getPrice(“ProcessorClockSpeed = 2.6 GHz”, “ProcessorClass = Pentium 4”);

  10. KQML String ProcessorClockSpeed; //GHz String ProcessorClass; double Price; //US$ MMS.sendString(“ProcessorClockSpeed = 2.6 GHz”); MMS.sendString(“ProcessorClass = Pentium 4”); Price = MMS.sendDouble(“getPrice”); Price = $1000 Matchmaking System (Operation) MMS MMS Message-Service Matching Message-Service Matching Message Handling Message Handling Global Ontology Global Ontology Response Handling Response Handling Services (Agent- Independent Representation) Services (Agent- Independent Representation) Translation Repository Translation Repository Mapping Mapping Translation Translation Service Analysis Service Analysis Agent 2 Agent 1 ?

  11. Test Cases • Real-World Test Cases • Computer Shopping • Book Shopping • Meeting Scheduling • Agents Coded w.r.t. • Each web site (for shopping applications) • Each individual’s worksheet (for scheduling)

  12. …; ProcessorType; ProcessorSpeed; //GHz …; Agent Creation (Concepts & Units)

  13. getPcInfo Agent Creation (Services) class PcInfo { …; String ProcessorClass; String ProcessorSpeed; //GHz …; } String ReturnType? Name?( Type? InstalledMemory) ReturnInformation?

  14. Results (Computer Shopping, 9 Agents) Tested Processes Concept Recognition Concept Recognition Unit Recognition Data Format Recognition

  15. Results (Computer Shopping) Tested Processes Concept Recognition Unit Recognition Unit Recognition Data Format Recognition

  16. Results (Computer Shopping) Tested Processes Concept Recognition Unit Recognition Data Format Recognition Data Format Recognition

  17. Results (Book Shopping, 4 Agents) Tested Processes Concept Recognition Concept Recognition Unit Recognition Data Format Recognition

  18. Results (Book Shopping) Tested Processes Concept Recognition Unit Recognition Unit Recognition Data Format Recognition

  19. Results (Book Shopping) Tested Processes Concept Recognition Unit Recognition Data Format Recognition Data Format Recognition

  20. Results (Meeting Scheduling, 4 Agents) Tested Processes Concept Recognition Concept Recognition Unit Recognition Data Format Recognition

  21. Results (Meeting Scheduling) Tested Processes Concept Recognition Unit Recognition Unit Recognition Data Format Recognition

  22. Results (Meeting Scheduling) Tested Processes Concept Recognition Unit Recognition Data Format Recognition Data Format Recognition

  23. Contributions • Built an MMS that lets agents communicate with no need to • Share ontologies • Use a common language • Pre-agree on a message format • Tested the MMS on three applications • Concept mappings (~90% accurate) • Mappings for units and data formats (~98% accurate)

  24. Future Work • Generalize the recognizers and adding some reasoning rules • Extend the matchmaking capability to cover partial matching • Handle all types of knowledge sharing among agents.

More Related