Download presentation
Presentation is loading. Please wait.
Published byFrederick Owens Modified over 8 years ago
1
Advertisement and Query Language Aardvark Matchmaking in RETSINA Multi-Agent Systems * RETSINA Multi-Agent System Architecture provides in heterogeneous and dynamic agent societies. í to specify agent capabilities, services (advertisement) í to request for particular services of provider agents q Matchmaking Services via Matchmaker Agents í to ‘match’ requests with relevant provider agents * 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 Requester Provider Matchmaker Request-for-Service Advertise/Unadverise-Services Reply-Result-of-Service Request-for-Service Requester * Information Matchmaking Provider Matchmaker Request-for-Service Advertise/Unadvertise-Services Request-for-Service Reply-Provider-Agents-Names Reply-Result-of-Service
3
Matchmaking in RETSINA: The Advertisement and Query Language Aardvark q Frame-based Specification of Agent Capabilities and Requests í Context of Specification Overall Frame Structure of Specification in Aardvark Context Input Output InConstraints OutConstraints í Input/Output Variables í Logical Constraints on Variables (Pre-/Post-Conditions) q Use of Description Logic (Concept Language) q Pre- and Post Conditions of Specification for ‘plug-in matches’ + Optional extension of describing the meaning of used words by the use of a given local terminology (Ontology). + Automated classification of descriptions.
4
Example for Specification in Aardvark Context Input Output OutConstraints InConstraints Computer*Computer; brands: SetOf Brand*Brand; areas: SetOf State*State; processor: SetOf CPU; priceLow*LowPrices: Integer ; priceHigh*HighPrices: Integer ; findComputerInfo Info: ListOf (model: Model*ComputerModels, brand: Brand*Brand, price: Price*Prices, color: Color*Colors); í 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
Computer (and Product (exists has-processor CPU) (all has-memory Memory) (all is-model ComputerModel)) Product (and (all is-manufactured-by Brand) (atleast 1 is-manufactured-by) (all has-price Prices)) 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) )... Terminology Example (continued) Concept Subsumption Hierarchy (Ontology) + Term Subsumption in ITL is NP-complete + Use of Polynomial Concept Classification Service Product Computer Notebook...
6
Context Input Output OutConstraints InConstraints Sorting xs: ListOf Integer ; IntegerSort ys: ListOf Integer ; Examples le(length(xs),100); before(x,y,ys) :- ge(x,y); before(x,y,ys) :- preceeds(x,y); in(x,ys) :- in(x,xs); Context Input Output OutConstraints InConstraints Sorting xs: ListOf Real|String ; GenericSort ys: ListOf Real|String ; 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
Request in Aaardvark / Get Data Matchmaking Process (1) Matchmaker Agent x AdvertisementDB ConceptDB AuxiliaryDB Requester Agent Provider Agent 1 Provider Agent nLConceptDB 1 LConceptDB n Matching Request in Aardvark Result-of-Matching Process Request on Local IS IS ? Capability Descriptions in Aardvark
8
Matchmaking Process (2) AuxiliaryDB (WordDistance, Type Hierarchy) ConceptDB (Ontology) Context Matching Syntactical Matching Semantical Matching AdvertisementDB Matchmaker Agent Requester Agent Ranked Set of Matches: {(ProviderAgent, Capability)} IntegerSort GenericSort
9
Matchmaking Process (3) q Syntactical Matching q Context Matching m Comparison of Profiles (TFIR) + distances in Type Hierarchy + distances in Concept Subsumption Hierarchy m Full Signature Matching of Declarations + Type Subsumption q Semantical Matching m Logical Implication of Constraints: Main Steps: + Word distance, Concept Subsumption/Equality Pre: InConstraints1 InConstraints2, Post: OutConstraints2 OutConstraints2 (‘plug-in match’ of Specification 2 with Specification 1) (pairwise matching of specifications in Aardvark ) m Similarity Matching of Declarations
10
Matchmaking Process: Simple Example q Syntactical Matching q Context Matching m Comparison of Profiles (TFIR) m Full Signature Matching of Declarations + Type Subsumption q Semantical Matching Consider Advertisement of Service/Capability ‘GenericSort’ Request for Service ‘IntegerSort’ Sim(D1,D3) = 0.875, Sim(D2,D4) = 0.875 D1 = xs: ListOf Integer D3 = xs: ListOf Real|String D2 = ys: ListOf Integer D4 = ys: ListOf Real|String Sim(D,D’)= (d(v1,v2) + d(w1,w2)/min{|T1|,|T2|})/2 D1 ~ D3, D2 ~ D4 ListOf Integer ListOf Real|String sig(D3) › sig(D1), sig(D4) › sig(D2) No Concepts are attached. InConstraints1 InConstraints2 OutConstraints2 OutConstraints1 m Similarity Matching of Declarations
11
Matchmaking in RETSINA: Some Future Work o Full Implementation in Java o Multi-Agent Test Environment Using RETSINA Communicator o Adapt Matching Process to heuristics due to Real-World Testing
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.