RETSINA

Information Agents
RETSINA &
WebMate
Name Matters
Retsina: the wine of
Greek Gods
RETSINA: Reusable Environment for
Task-Structured Intelligent
Networked Agents
2
Outline
RETSINA
The Functional Architecture
The Agent Architecture
The MAS Architecture
WebMate
Conclusion
3
What is RETSINA
 RETSINA is a domain-independent and reusable
infrastructure on which MAS systems, services, and
components live, communicate, and interact.
 RETSINA is an architecture for developing
distributed intelligent software agents that
cooperate asynchronously to perform goal-directed
information retrieval and information integration in
support of a variety of decision making tasks.
 RETSINA is project done in the Robotics Institute,
CMU
4
The Functional Architecture
5
The Functional Architecture
(cont.)
 Interface agents -- interact with users, receive user input, and
display results.
 Task agents -- help users perform tasks, formulate problemsolving plans and carry out these plans by coordinating and
exchanging information with other software agents.
 Information agents -- provide intelligent access to a
heterogeneous collection of information sources.
 Middle agents -- help match agents that request services with
agents that provide services.
6
Another Functional Architecture
to compare with
Descriptor
Match-Maker
Info. Req.
Facilitator
Info Prov.
Facilitator
Info. Site
Info Prov.
Facilitator
Info. Site
Info. Site
Info. Site
Source
Source
Source
Source
Agent
Agent
Agent
Agent
Extractor
Extractor
Extractor
Extractor
Use Agent
7
The Agent Architecture
8
Reusable Modules
Inside an Agent
 The Communication and Coordination module accepts and
interprets messages and requests from other agents.
 The Planning module takes as input a set of goals and
produces a plan that satisfies the goals.
 The Scheduling module uses the task structure created by
the planning module to order the tasks.
 The Execution module monitors this process and ensures
that actions are carried out in accordance with
computational and other constraints.
9
The MAS Architecture
10
Operating Environment
Platform independent:
any platform that runs Windows, Linux, or
Sun OS
PalmPilots
Multiple language support: Java, C/C++,
Python, LISP, and Perl
Network support: TCP/IP, wireless,
infrared, and serial connections
11
Communication Infrastructure
Peer to Peer: Message Transfer (A2A)
synchronous or asynchronous
multithreaded communication
Multicast: Discovery Process (finding the
infrastructure components)
infrastructure components announce the presence
agents register themselves
12
Agent Communication Language
KQML based
The envelop
The content
Shared Dictionary: Ontology
domain-specific taxonomies of concepts from the
WordNet
term similarity measurement
13
MAS Management Services
Monitor
Logger: records the activity of the agents (e.g.
entering/exiting, agent states, transitions, etc)
Logger Module: voluntarily provided by the agent
Debug
 Activity Visualizer
Launch
Launcher: configures and starts infrastructure
components and agents (enable single point control)
14
Performance Services
No performance services support yet
(only failure monitoring)
but agents can do it by themselves :
self-monitoring
clone: task sharing
15
Security
Functionality
Agent authentication
Communication security
Component integrity
Mechanism
SSL (public/ private keys)
unique Agent Id as the private key
16
Name to Location Mapping
RETSINA ANS (Agent Naming Services)
Agent Id --> Address mapping
multiple and redundant ANS for robustness
17
Middle agents
(the matchmakers)
Provide a registry of services
advertisement
request
Service matching using the LARKS
matching engine
both syntactic and semantic analysis
both exact and partial matches
18
MAS Inter-operation
There are more than one agent architectures
different communication languages
different MAS architectures
OOA-RETSINA inter-operation support only
(RETSINA-OOA InterOperator)
help finding each other
help talking to each other
19
The Applications
Based on RETSINA
Show up!
20
WebMate
an information agent example
WebMate is a personal agent for WorldWide Web browsing that enhances
searches and learns user interests.
21
The Missions
 Provides URL recommendations based on a continuously
updated user profile
 Offers ever more relevant web documents based on the
"Trigger Pairs Model" approach to keyword refinement
 Responds to user feedback by selecting features from
documents the user finds relevant and incorporating these
features into the context of new queries
 Compiles a daily personal newspaper with links to
documents of interest to the user (“pull”)
22
The Architecture
23
Learning User Preference
 TF-IDF Value
TF (Term Frequency): measures how many times a word
appears in a document.
IDF (Inverse Document Frequency): measures the number of
documents containing a word
 Vector Space Model
represent each document as a vector in a vector space so
that documents with similar content have similar vectors.
each dimension of the vector space represents a word and
its weight, which is a TF-IDF value.
 Multiple TF-IDF Vector Model
use multiple vectors to capture user’s multiple preferences
24
Refining the User Query
Trigger Pairs Model
find the word pairs that occur together
one word in the pair trigger the other (enlarging the
user query)
Using the user feedback
user may give a “relevant” rating to a page
the system will analyze the page using the context of
keyword (i.e. the words near by)
the system finds out the relevant keywords
enlarge the user query using the relevant keywords
25
Pulling Relevant Contents
Use spider agents to grab data from
different sites
Use Vector Space Model to measure
relevance (using the user profile)
Return only the relevant pages
26
Conclusion
A good MAS infrastructure should support
agents for different tasks, from different
domains, and with different originalities.
There are lots we can do beyond web
search engines:
user preference learning
user query refinement
27
Reference
 Katia Sycara, Massimo Paolucci, Joseph Giampapa; “The
RETSINA MAS Infrastructure”; TechReport CMU-RI-TR-0105; 2001
 Kiren Chen, Katia Sycaca; “WebMate: A Personal Agent for
Browsing and Searching”; The Robotics Institute, Carnegie
Mellon University; 1998
 K. L. Clarc, V.S. Lazarou; “A Multiagent System for Distributed
Information Retrieval on the World Wide Web”; 1997
28
Questions to Ask for a
MAS Infrastructure
 What constitutes a MAS infrastructure
 What functionality it supports
 What characteristics it should have to enable valueadded abilities
 What its possible relation with and requirements it
may impose on the design and structure of single
agents
29
The Principle in mind
There are more than one MAS
systems in the world (seems trivial, but…)
Agents of different kinds should be able to enter
the system
Agents’ internal structure should be transparent to
the system
Agents’ business should be left alone ( the ways to
coordinate, negotiate, etc)
30