Presentation is loading. Please wait.

Presentation is loading. Please wait.

The LARKS Project Katia Sycara, Matthias Klusch, Jianguo Lu,

Similar presentations


Presentation on theme: "The LARKS Project Katia Sycara, Matthias Klusch, Jianguo Lu,"— Presentation transcript:

1 The LARKS Project Katia Sycara, Matthias Klusch, Jianguo Lu,
Interoperability among Heterogeneous Agents in the Internet Katia Sycara, Matthias Klusch, Jianguo Lu, Zhendong Niu, Seth Widoff

2 Language for Advertisement and Requests for Knowledge Sharing
What is LARKS about? Frame-based specification of ads and requests of agent capabilities. Optional use of a domain ontology. Automated processing of LARKS specifications. Compatibility with XML. Matchmaking Services via Matchmaker Agents using LARKS to ‘match’ requests with relevant provider agents in heterogeneous and dynamic agent societies.

3 Matchmaking Using LARKS
Matchmaker Agent x AdvertisementDB OntologyDB AuxiliaryDB Matching Result-of-Matching Capability Descriptions in LARKS Requester Agent Provider Agent 1 Service Request in LARKS LARKS Protocol for providing the service Provider Agent n Local Ontology 1 ? IS IS Process Request on Local IS IS Local Ontology n

4 Specification in LARKS
Context Context of Specification Type Data Types Used in Variable Declarations Input Input/Output Variable Declarations Output InConstraints OutConstraints Logical Constraints on Variables (Pre-/Post-Conditions) ConcDescriptions Ontological Description of Used Words TextDescription Textual Description of Specification Constraints: set of definite program clauses/goals (Horn clauses) Concepts: ontological description of words in concept language ITL

5 Example for Ontology (1) An Ontology written in the Concept Language ITL (Terminology): AirMission  (and Mission (atleast 1 had-airplane) (all has-airplane Airplane) (all has-MissionType aset(AWAC,BARCAP,CAP,DCA,HVAA))… ) AWAC-AirMission  (and AirMission (atleast 1 has-airplane) (atmost 1 has-airplane) (all has-airplane aset(E-2)) …) DCA-AirMission  (and AirMission (all has-MissionType aset(DCA)) (all has-F14 plane-F14D) (all has-F18 plane-F18) (atleast 2 has-F14) (atmost 2 has-F14) (atleast 2 has-F18) (atmost 2 has-F18) (atleast 2 has-E2) (atmost 2 has-E2) …) . . . (2) Concept Subsumption Hierarchy: AirMission . . . AWAC-AirMission DCA-AirMission HVAA-AirMission

6 Examples for Specification in LARKS
Agent Advertisement: “I can provide information about air combat missions in general.” AirCombatMissions Context Attack, Air, Combat, Mission*AirMission Types Date = (mm: Int, dd: Int, yy: Int); Input Output missionTypes: SetOf(String); missionAirplanes: SetOf(String); missions: ListOf(mType: String, mID:String|Int, mStart: Date, mEnd: Date); InConstraints OutConstraints mStart <= mEnd ConcDescriptions [AirMission] TextDescription information about air combat missions in general

7 Combat, Mission*AWAC-AirMission
Agent Advertisement: “I can provide information about deployed and launched AWAC air combat missions. ” AWAC-CombatMissions Context Combat, Mission*AWAC-AirMission Types Date = (mm: Int, dd: Int, yy: Int); DeployedMission = ListOf(mType: String, mID:String|Int, mStart: Date, mEnd: Date); Input Output missions: DeployedMission; InConstraints OutConstraints deployed(mID), mType = AWAC, launched_after(mID,mStart), launched_before(mID,mEnd). ConcDescriptions [AWAC-AirMission] TextDescription information about deployed and launched AWAC air combat missions

8 Combat, Mission*DCA-AirMission
Agent Advertisement: “I can provide information about deployed and launched DCA air combat missions.” DCA-CombatMissions Context Combat, Mission*DCA-AirMission Types Date = (mm: Int, dd: Int, yy: Int); DeployedMission = ListOf(mType: String, mID:String|Int, mStart: Date, mEnd: Date); Input Output missions: DeployedMission; InConstraints deployed(mID), mType = DCA, launched_after(mID,mStart), launched_before(mID,mEnd). OutConstraints ConcDescriptions [DCA-AirMission] TextDescription information about deployed and launched DCA air combat missions

9 “Find an agent who can provide information on
Request: “Find an agent who can provide information on deployed air combat missions launched in a given time interval.” Req-AirCombatMissions Context Attack, Mission*AirMission Types Date = (mm: Int, dd: Int, yy: Int); Mission = ListOf(mType: String, mID:String|Int, mStart: Date, mEnd: Date); Input sd: Date, ed: Date; Output missions: Mission; InConstraints sd <= ed. OutConstraints deployed(mID), launched_after(mID,sd), launched_before(mID,ed), sd >= mStart, ed <= mEnd. ConcDescriptions [AirMission] TextDescription information on deployed air combat missions launched in a given time interval

10 “Find an agent who can provide information on
Request: “Find an agent who can provide information on deployed and launched air combat missions that contain F-14 airplanes.” Req-DeployedF14CombatMissions Context Combat, Mission*F14-Mission Types Date = (mm: Int, dd: Int, yy: Int); Mission = ListOf(mType: String, mID:String|Int, mStart: Date, mEnd: Date); Input Output missions: Mission; InConstraints OutConstraints deployed(mID), launched_after(mID,mStart), launched_before(mID,mEnd). ConcDescriptions F14-Mission  (and AirMission (atleast 1 has-F14)) TextDescription information on deployed and launched air combat missions that contain F-14 airplanes

11 An Example of Matchmaking Using LARKS
“Find agents that can inform about air combat missions” Requester Agent Ranked Set of Agents capable to inform about air combat missions AirCombatMissions Matchmaker Agent AuxiliaryDB OntologyDB AdvertisementDB AWAC-AirCombatMissions Context Matching Profile Matching Similarity Matching Signature Matching Semantical Matching

12 Matchmaking Process Main Steps: Context Matching Word Distances
(pairwise matching of specifications in LARKS) Context Matching Word Distances Subsumption or Equality of attached Concepts Syntactical Matching Comparison of Profiles (TF-IDF) Similarity Matching of Declarations and Constraints Word Distances Distances in the Ontology (Weighted Associative Network) Full Signature Matching of Declarations Subsumption of Data Types Semantical Matching Logical Implication of Constraints

13 Different Matching Modes
 “Complete Matching”: All filters.  “Relaxed Matching”: No signature matching.  “Profile Matching” : Comparison of profiles (TF-IDF) only.  “Plug-In Matching”: Signature and semantical matching only. Any combination of filters may be chosen by the user.

14 Matchmaking Process: Simple Example
 Request for Agent Capability in ‘Req-AirCombatMissions’ Advertisement of Agent Capability in ‘AWAC-AirCombatMissions’ Mode  Complete Matching Context Matching  Look-up/compute word distances for (Attack, Combat), (mission, Mission); All value exceeds given threshold. Attached concepts (AirMission,AirMission) are terminologically equal. Syntactical Matching Comparison of Profiles (TF-IDF)  Profile similarity value of documents exceeds given threshold. Thus, proceed with

15 Matchmaking Process: Simple Example (cont’d)
Syntactical Matching (ff.) Full Signature Matching of Declarations  Input declarations - A: D21 = sd: Date, ed: Date; Output declarations - R: D12 = missions: ListOf(mType: String, mID:String|Int, mStart: Date, mEnd: Date); A: D22 = missions: ListOf(mType: String, mID:String|Int, A: D23 = missionTypes: ListOf(String); A: D24 = missionAirplanes: ListOf(String); Apply Type Inference Rules for Computing Type Subsumption. Result: (TRUE) & (signature(A: D22) › signature(R: D12)) Thus, proceed with

16 Matchmaking Process: Simple Example (cont’d)
Similarity Matching  Conceptual Attachment to words Check word distances in declarations and constraints Similarity value of two specifications: Average of sum of similarity computations among all pairs of declarations and constraints. Similarity of AirCombatMissions and Req-AirCombatMissions = 0.75 (Note: Value strongly depends on the used word distance database) Similarity value exceeds given threshold. Thus, proceed with

17 Matchmaking Process: Simple Example (cont’d)
Constraint Matching fails InConstraints  InConstraints in Req-AirCombatMissions in AirCombatMissions  sd <= ed. OutConstraints  OutConstraints NOT  in AirCombatMissions in Req-AirCombatMissions mStart <= mEnd deployed(mID), launched_after(mID,sd), launched_before(mID,ed), sd >= mStart, ed <= mEnd.

18 Matchmaking Process: Simple Example (2)
 Request = Req-DeployedF14CombatMissions, Ad = DCA-CombatMissions Context Matching  (Ad:) DCA-AirMission < (Req:) F14-Mission Syntactical Matching Comparison of Profiles (TF-IDF)  Full Signature Matching of Declarations  Similarity Matching  Sim(Req,Ad) = 0.62 Constraint Matching InConstraints in Req  InConstraints in Ad  OutConstraints in Ad  OutConstraints in Req  deployed(mID), mType=DCA, launched_after(mID,sd), launched_before(mID,ed), deployed(mID), launched_after(mID,sd), launched_before(mID,ed),

19 Current Implementations of LARKS Project
Web-based Interface for Specification of Requests in LARKS Matchmaker module Knowledge management module (Concept classifier, KB)

20 Graphical User Interface to the Matchmaker

21 TSC: Concept Classifier for Knowledge Base

22 Matchmaking Using LARKS and XML
Translation of LARKS specification into XML document Automated Processing of LARKS/XML Specs Translation of ITL concept definitions into XML statements e.g. use of XML-Data Schemas, W3C Note 05 Jan 1998 Proposal by Microsoft; Translated ITL ontologies in XML used as XML-namespaces

23 Some Future Work of the LARKS Project
Complete Implementation in Java Multi-Agent Test Environment Using RETSINA Communicator Natural Language Interface for Human-Agent Interaction Extensive Real-World Testing


Download ppt "The LARKS Project Katia Sycara, Matthias Klusch, Jianguo Lu,"

Similar presentations


Ads by Google