1 / 11

Advertisement and Query Language Aardvark

Matchmaking in RETSINA Multi-Agent Systems. RETSINA Multi-Agent System Architecture provides. Advertisement and Query Language Aardvark. to specify agent capabilities, services (advertisement). to request for particular services of provider agents.

coye
Download Presentation

Advertisement and Query Language Aardvark

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. Matchmaking in RETSINA Multi-Agent Systems • RETSINA Multi-Agent System Architecture provides • Advertisement and Query Language Aardvark • to specify agent capabilities, services (advertisement) • to request for particular services of provider agents • Matchmaking Services via Matchmaker Agents • to ‘match’ requests with relevant provider agents in heterogeneous and dynamic agent societies. • Enables efficient information gathering in the Internet/WWW http://www.cs.cmu.edu/~softagents/interop/matchmaking.html

  2. Information Brokering vs. Matchmaking in Multi-Agent Systems • Information Brokering Request-for-Service Requester Matchmaker Reply-Result-of-Service Request-for-Service Provider Advertise/Unadverise-Services • Information Matchmaking Request-for-Service Requester Matchmaker Reply-Provider-Agents-Names Reply-Result-of-Service Provider Advertise/Unadvertise-Services Request-for-Service

  3. Matchmaking in RETSINA: The Advertisement and Query Language Aardvark • Frame-based Specification of Agent Capabilities and Requests • Use of Description Logic (Concept Language) • Optional extension of describing the meaning of used words • by the use of a given local terminology (Ontology). • Automated classification of descriptions. • Pre- and Post Conditions of Specification for ‘plug-in matches’ Overall Frame Structure of Specification in Aardvark • Context of Specification Context Input • Input/Output Variables Output • Logical Constraints on Variables InConstraints OutConstraints (Pre-/Post-Conditions)

  4. Example for Specification in Aardvark findComputerInfo Context Computer*Computer; Input brands: SetOf Brand*Brand; areas: SetOf State*State; processor: SetOf CPU; priceLow*LowPrices: Integer; priceHigh*HighPrices: Integer; Output Info: ListOf(model: Model*ComputerModels, brand: Brand*Brand, price: Price*Prices, color: Color*Colors); InConstraints OutConstraints • Word*ConceptName: Meaning of Word is described by a Concept which is defined in terms of Concept Language ITL and stored in the Local Terminology (Ontology)

  5. Example (continued) Terminology Product  (and (all is-manufactured-by Brand) (atleast 1 is-manufactured-by) (all has-price Prices)) Computer  (and Product (exists has-processor CPU) (all has-memory Memory) (all is-model ComputerModel)) Notebook  (and Computer (all has-price (and (ge 2000) (all in-currency aset(USD)) (all has-weight (and kg (le 5)) (all is-manufactured-by aset(HP,IBM,Apple,DEC,Dell) ) . . . Concept Subsumption Hierarchy (Ontology) Product • Term Subsumption in ITL is NP-complete • Use of Polynomial Concept Classification Service Computer . . . Notebook

  6. Examples IntegerSort GenericSort Context Sorting Context Sorting xs: ListOfInteger; Input Input xs: ListOfReal|String; Output ys: ListOfInteger; Output ys: ListOfReal|String; InConstraints InConstraints le(length(xs),100); OutConstraints before(x,y,ys) :- ge(x,y); before(x,y,ys) :- preceeds(x,y); in(x,ys) :- in(x,xs); OutConstraints before(x,y,ys) :- ge(x,y); before(x,y,ys) :- preceeds(x,y); in(x,ys) :- in(x,xs); • Constraints: set of definite program clauses/goals (Horn clauses)

  7. Matchmaking Process (1) Matchmaker Agent x AdvertisementDB ConceptDB AuxiliaryDB Matching Result-of-Matching Capability Descriptions in Aardvark Requester Agent Request in Aardvark Provider Agent 1 Request in Aaardvark/ Get Data ? IS IS Provider Agent n LConceptDB 1 LConceptDB n Process Request on Local IS IS

  8. Matchmaking Process (2) Matchmaker Agent AuxiliaryDB (WordDistance, Type Hierarchy) AdvertisementDB ConceptDB (Ontology) GenericSort Context Matching Syntactical Matching Semantical Matching IntegerSort Ranked Set of Matches: {(ProviderAgent, Capability)} Requester Agent

  9. Matchmaking Process (3) Main Steps: (pairwise matching of specifications in Aardvark) • Context Matching • Word distance, Concept Subsumption/Equality • Syntactical Matching • Comparison of Profiles (TFIR) • Full Signature Matching of Declarations • Type Subsumption • Similarity Matching of Declarations • distances in Type Hierarchy • distances in Concept Subsumption Hierarchy • Semantical Matching • Logical Implication of Constraints: Pre: InConstraints1  InConstraints2, Post: OutConstraints2  OutConstraints2 (‘plug-in match’ of Specification 2 with Specification 1)

  10. Matchmaking Process: Simple Example Consider  Advertisement of Service/Capability ‘GenericSort’  Request for Service ‘IntegerSort’ • Context Matching  • Syntactical Matching • Comparison of Profiles (TFIR)  • Full Signature Matching of Declarations ListOf Integer  ListOf Real|String • Type Subsumption  sig(D3) › sig(D1), sig(D4) › sig(D2)  • Similarity Matching of Declarations D1 = xs: ListOf Integer D3 = xs: ListOf Real|String D2 = ys: ListOf Integer D4 = ys: ListOf Real|String Sim(D1,D3) = 0.875, Sim(D2,D4) = 0.875 D1 ~ D3, D2 ~ D4  No Concepts are attached. Sim(D,D’)= (d(v1,v2) +  d(w1,w2)/min{|T1|,|T2|})/2 • Semantical Matching  InConstraints1  InConstraints2 OutConstraints2 OutConstraints1

  11. Matchmaking in RETSINA: Some Future Work • Full Implementation in Java • Multi-Agent Test Environment Using RETSINA Communicator • Adapt Matching Process to heuristics due to Real-World Testing

More Related