Title: A Performance Evaluation of ACORN (Agent-based Community Oriented Retrieval Network) Architecture Virendra C. Bhavsar* Ali A. Ghorbani Faculty of Computer Science University of New Brunswick Fredericton, NB, E3B 5A3 Canada Steve Marsh Institute for
1A Performance Evaluation of ACORN (Agent-based
Community Oriented Retrieval Network)
ArchitectureVirendra C. BhavsarAli A.
GhorbaniFaculty of Computer ScienceUniversity
of New BrunswickFredericton, NB, E3B
5A3CanadaSteve MarshInstitute for Information
TechnologyNational Research Council, Ottawa
Canada
2Outline
- Introduction
- ACORN Multi-Agent System
- Multiple Autonomous Virtual Users
- Adaptation of ACORN for Testbed
- Experimental Results
- Future Work
- Conclusions and Future Work
3IntroductionACORN Agent-Based
Community-Oriented Retrieval Routing Network
- ACORN is a multi-agent based system for
information diffusion and (limited) search in
networks - In ACORN, all pieces of information
- searches
- documents
- images, etc.
- are represented by semi-autonomous
agents... - Intended to allow human users to collaborate
closely (while providing automated message
forwarding, search, etc., but keeping user
control)
4Degrees of Separation
- In the 1960s, Stanley Milgram showed that
everyone in the US was personally removed from
everyone else by at most six degrees of
separation - In communities, such as a research community,
this is clear to all members - if you want to know something, you ask someone.
- If they dont know, they may know someone else to
ask... - and so on
- This also works when you have something to tell
people... - if you want someone relevant to know, you tell
people you know will be interested... - and they forward the information to people they
know will be interested.. - and so on
5Relation to Other Work
- Search Engines
- Alta Vista, Excite, Yahoo, InfoSeek, Lycos,
etc... - We dont aim to search the Web
- If the user has to search, its because the
information diffusion is - not fast enough
- not accurate enough
- Recommender Systems
- Firefly (Maes), Fab (Balabanovic)
- Content-based or Collaborative
- ACORNs agents are a radical new approach, and a
mixture of both... - ACORN is distributed
- ACORN levers direct human-human contact knowledge
- Matchmakers
- Yenta (Foner)
- Very close to the ACORN spirit, lacking in
flexibility of ACORN
6Other Work, continued
- Web Page Watchers and Push Technologies
- Tierra, Marimba, Channels
- ACORN is a means of pushing new data, reducing
the need to watch for changes - it does not require explicit user input to
forward information to relevant users... - Filtering Systems
- The filtering in ACORN is implicit in what is
recommended by humans - If a document is judged unsuitable by a human, it
will not be forwarded - In addition, the owner of the document can
control who sees it (via the migration process) - Knowbots
- Softbots (Washington, Etzioni, Weld), Nobots
(Stanford, Shoham) - mobile agents for internet search
- ACORN provides diffusion also
- if search is necessary on existing information,
these are of use - ACORN does not (as yet) aim to search existing
information...
7ACORN
- Using communication between agents representing
pieces of information, ACORN automates some of
the processes - Anyone can create agents, and direct them to
parties they know will be interested - in addition, an agent carries other information,
such as a list of owner interests (which may be
different from the documents subject) - The agents proceed to the suggested readers, who
in turn can recommend others (notice this is
human recommendation) - In addition, agents can communicate with each
other regarding owner interests and individual
agent topics, and if matches are found, can
direct each other to relevant humans (this is
agent recommendation) - Clearly, agent recommendation can relieve humans
of much of the process of finding/directing
agents to interested parties, although it may not
be as precise
8The ACORN Mobile Agent
- represents a unit of information
- structure
Mobile Agent Name (Unique ID, timestamp) Owner
Address Dublin Core Metadata Visited Recommende
d Known
Lists of users (humans) and/or cafés the agent
has visited, is due to visit, or knows of
9The Dublin Core
- The Dublin Core is a Metadata element set, first
developed at a workshop in Dublin, Ohio - Includes author, title, date
- Also includes
- keywords
- publisher
- type (e.g. home page, novel, poem)
- format (of data)
- and others
- The Dublin Core presents a powerful structured
medium for distributing human (and machine)
readable metadata - It also presents an interesting query formulation
tool - The DC home page can be found at http//purl.org
/metadata/dublin_core
10Agent Lifecycle
- A mobile agent in ACORN (one which represents
information) undergoes several stages in its
lifecycle - Creation
- Distribution
- Visiting a user
- Mingling with other agents
- Going to next site
- Return
11Creation
- Creation
- similar to creation of electronic mail messages
- other information is requested and can be
suggested - the system needs keywords for the
information/query - it also uses (as with email) a list of addresses
to approach - Once created, the agent is free to go on its own
way - migration to other sites
- approaching relevant users to distribute
information - and to expand list of users to approach
- mingling with other agents
- to expand the list of users to approach
12Migration
- Agent migration makes use of the ACORN Servers
located at each site - similar to a web server or a mail server
- each server constantly listens for communication
from others - Migration
- agent informs local server (where it now resides)
of need to migrate - local server contacts agents home server, sends
a copy of agent core - home server (via contact with agent owner/client)
authorizes migration - authorization is necessary before migration can
be carried out - If authorized
- home server passes back agent state copy
- local server contacts remote server (where the
agent wishes to go) - local server gives reference version of agent
state to remote server - remote server instantiates agent at its site,
agent continues - local server removes agent from its site
13Visiting Users
- The purpose of an agent is to distribute
information - To do this, it visits users and presents them
with that information - This process, for ease of integration with users
workflow, is akin to mail being sent and arriving - The users interface to ACORN (the Client) can
filter incoming agents according to predefined
user requirements/interests - Users can
- file agent details
- fetch files represented by agents (if any)
- ascertain who the agent has visited (if any)
- give feedback to the agent (explicit relevance
feedback) - forward the agent to other users (implicit
relevance feedback?)
14Getting User Recommendations
- Automatically
- When an agent arrives, the users Client can
automatically - examine the agent
- determine if it knows of any other relevant users
- these are obtained via user interaction, and from
data gathered by agents arriving at this Client - share that data with the agent
- send the agent on its way, retaining a copy for
the user to examine - Personally
- When the user examines the agent, they can
- recommend other users to visit (forward)
- recommend cafés to visit
- send the agent on its way
15The Café - Agent Recommendations
- User recommendations are not the only way an
agent can expand its list of people to visit - Each site can have (between zero and many) cafés
- A café is simply a meeting place for agents
- Cafés can be generic or have specific topics
(agents can be filtered before entering)
16Cafés revisited
- In a café, at set intervals, agents present are
compared, and relevant information exchanged - at present, all information is public
- if you dont want to share, dont enter the café
- there is no provision for caching agent data as
yet (so that agents can arrive, give data, and
leave) - this may be added at a later date
- agents reside at cafés for set lengths of time
(currently we have a default, but intend to make
the length of time owner selectable) - The café represents a unique method of automating
community based information sharing
17tom_at_ucsd.edu
ucsd.edu
ymasrour_at_ai.it.nrc.ca
ai.it.nrc.ca
S e r v e r
bob_at_ai.it.nrc.ca
dick_at_ucsd.edu
steve_at_ai.it.nrc.ca
anwhere.else
foo_at_anywhere.else
cs.stir.ac.uk
meto.gov.uk
joan_at_meto.gov.uk
Clients
jane_at_meto.gov.uk
wibble_at_cs.stir.ac.uk
graham_at_cs.stir.ac.uk
anne_at_cs.stir.ac.uk
18Security
- The system requires agent migration to other
sites - where there are interested parties
- At all times, the information agents are under
the control of their owners - Owners can deny an agents migration to another
site, or a specific person, since agents can be
instructed to ask their owners permission to
migrate - Also, we achieve persistence by having agents
send copies of themselves back to their owners at
each migration - In future, we will be adding some encryption
capability to agents
19Testing and Deployment
- A working implementation of ACORN in Suns Java
language - Stress testing the architecture using large
numbers of real users - problems - Multiple artificial users on a simulated network
20Multiple Autonomous Virtual Users
- Test-bed Several Autonomous Servers, each
serving autonomous virtual users - Virtual User - capable of creating agents
- - picks up a topic from
a client cores interest - - migrates to other
servers - - potential destinations
21Adaptation of ACORN
- ACORN gt100 Java classes
- Adaptation
- Removal of user interaction classes
- Removal of client behavior clases
- Removal of other extraneous classes
- Simulation of multiple client-server
architecture run more than one server on a
single machine - Possibility of using multiple processor machines
- Addition of a SiteController Class
22Adaptation of ACORN (cont.)
- SiteController Class
- handles all communication between servers on a
single machine - resolves agent migration requests
- handles communication between different machines
- Streamer Class
- provides transport of agents across IP
- Benefits
- Removal of the need for continuous user
interaction - Batch mode runs
- Only 30 Java classes
23Experimental Results
- Virtual User
- two key phrases for user interests
- four key phrases about the document or search
area - two recommended user address in an agent
- four key phrases for specifying interests of
each recommended user - Porting of ACORN to many machine architectures
- O(n2) agent interactions in a Café, n - number of
agents
24Experimental Results (cont.)
25Conclusion and Future Work
- ACORN- multi-agent system for intranet/internet
- Allows the creation and distribution of any form
of information (images, text, etc.) - Performance Evaluation of ACORN on single and
multiple servers - Novel Idea Autonomous Virtual Users
- Adaptation of ACORN
- Porting to different machines
- Further work Adaptation to Multi-processor
machines at a single as well as multiple sites to
exploit CANETIII