|
In order for heterogeneous
agents to coordinate effectively across distributed networks
of information, they must be able to communicate with each
other using a common language. To address the problem of agent
interoperability, we are developing an agent capability description
language called LARKS ( L anguage for A
dvertisement and R equest for K nowledge
S haring). This common language is used by middle
or matchmaking agents to pair service-requesting agents with
service-providing agents that meet the requesting agents'
requirements.
When a service-providing
agent registers a description of its capabilities with a middle
agent, it is stored as an "advertisement" and added to the
middle agent's database. Thus, when an agent inputs a request
for services, the middle agent searches its database of advertisements
for a service-providing agent that can fill such a request.
Requests are filled when the provider's advertisement is sufficiently
similar to the description of the requested service.
LARKS is expressive,
easy to use, and capable of supporting inferences. It also
incorporates application domain knowledge in agent advertisements
and requests. Domain-specific knowledge is specified as local
ontologies in the concept language ITL.
An advertisement
or request in LARKS comprises the following sections:
Context |
Keywords identifying the domain |
TypeDefinitions |
User-defined data types |
InputDeclarations and OutputDeclarations
|
Input and output parameter declarations |
InConstraints and OutConstraints
|
Logical constraints on input and output parameters
|
ConceptDefinitions |
Local ontological description of words used in the
advertisement |
TextDefinition |
A text description of the agent's capabilities |
The LARKS matchmaking
process employs techniques from information retrieval, AI,
and software engineering to compute the syntactical and semantic
similarity among agent capability descriptions. The matching
engine of the matchmaker agent contains five different filters
for context matching, word frequency profile comparison, similarity
matching, signature matching, and constraint matching. The
user configures these filters to achieve the desired tradeoff
between performance and matching quality.
We have implemented
a matchmaking agent and a visually expressive user interface
that traces the path of a service request through the matchmaker's
five filters.
Robotics
Institute Project Page
Larks Applications
Larks is used in the following applications:
Publications
For more information on the LARKS project, see the following
publications:
- Katia
Sycara, Seth Widoff, Matthias Klusch and Jianguo Lu, "LARKS:
Dynamic Matchmaking Among Heterogeneous Software Agents
in Cyberspace." Autonomous Agents and Multi-Agent
Systems, 5, 173–203, 2002.
- K. Sycara, J.
Lu, M. Klusch, and S. Widoff.
Dynamic Service Matchmaking among Agents in Open Information
Environments . Journal ACM SIGMOD Record, Special
Issue on Semantic Interoperability in Global Information
Systems, A. Ouksel, A. Sheth (Eds.), 1999.
- K. Sycara,
J. Lu, M. Klusch, and S. Widoff.
Matchmaking Among Heterogeneous Agents in the Internet
. Proceedings AAAI Spring Symposium on Intelligent Agents
in Cyberspace, Stanford, USA, 1999.
- K. Sycara,
J. Lu, and M. Klusch. Interoperability
among Heterogeneous Software Agents on the Internet
. Technical Report CMU-RI-TR-98-22 , CMU Pittsburgh,
USA, October 1998.
|
|