Where Do I Go From Here: A Multiagent System To Support Collaborative Web Browsing
Samhaa El-Beltagy, David De Roure and Wendy Hall
Multimedia Research Group
Department of Electronics and Computer Science
University of Southampton
Southampton SO17 1BJ, UK
+44 23 8059 2418
Keywords: Software agents, Open Hypermedia, information
finding, navigation assistance, proxies.
1. IntroductionThe work presented was motivated by the need to find an effective engineering paradigm with which open hypermedia, an information management and navigation model with considerable potential for readers and authors alike, could be applied to real distributed multimedia information. The work recognizes the value of sharing human knowledge and experience. Supporting navigation, searching, commenting, and annotation of information created, has been a long-standing goal of hypermedia. However, the WWW has yet to explore the concept of human collaboration to its fullest. The sheer size of the WWW is easily a hurdle in the achievement of such a goal. The work presented therefore addresses this issue on the level of groups or organizations where such collaboration would result in maximum benefits. The goals of the proposed system can be summarized as follows:
- Making maximum use of what users do normally while browsing/searching the Web.
- Allowing users to augment documents or aspects of documents, with useful data for their private use or for sharing with other users.
2. System Overview And ArchitectureA collaborative multiagent framework that can support agents working towards distributed information management in the context of open hypermedia, was implemented. Details of the architecture and its implementation can be found in (El-Beltagy et al., 1999) . Agents in the presented system can be viewed as information producers and consumers. The most important agents in the system are:
- The facilitator agent (the agent server): supports routing of information, discovery of information, delayed and persistent notification of messages and communication management.
- The User Interface (UI) Agent: in the presented framework, each user is associated with such an agent that acts on his/her behalf. This agent is implemented as a Java desktop application with a proxy component, which is crucial for its operation. It allows for the sharing of information among users and the utilization of such information via communication with agents in the system. It is basically capable of providing other agents with information about the user and his/her browsing, bookmarking, document rating, link creation and annotating activities (only when permitted by the user to make this information public).
- The Organizational Memory: this agent serves as a memory for the browsing, rating, commenting and bookmarking activities of users within the system. This information is processed and used for document recommendation, search support, rating and comment information propagation, among other things.
- The Link Service Agent: inspired by the Distributed Link Service(DLS) (Carr et al., 1995), this agent allows links from linkbases to be applied to WWW documents. It is interested in links created by users of the system.
- The Image Annotation Service: stores users' annotations of image regions. The agent accepts these annotations in the form of metadata and utilizes them in answering queries about images.
Interaction between agents in this framework exists on two levels. The first level involves sharing of information. The second level involves exchange of services. In this particular framework, two types of services prevail: query answering and document alteration services.
User queries prompt the UI agent to contact appropriate agents. A user query could be very generic entered using keywords in which case agents or wrappers around search resources are consulted. A user query can also be made in relation to his/her current context defined by a given document. "Recommend related documents" is an example of such a query.
Document alteration services, are performed by any agent that can somehow
change the appearance of a document. The agents that perform such a service
are called document modifiers. When document modifiers register with the
system, they have to provide a description of the kind of alteration they
are capable of performing. The user interface agent makes the user aware
of the existence of such a service and its description, but it is up to
the user to choose which of those (if any), to employ. The proxy server
component of the user interface allows for incremental services that influence
the display of a requested URL, to be added. This process can currently
take place in one of two ways according to the user preference and the
number of document modifiers that exist in the system. In the first method,
the proxy fetches a requested URL, but rather than sending it back to the
browser, streams it across the different document modifiers while piping
the output of one agent as an input to another. As the number of document
modifiers in the system increases, the response time for displaying a requested
URL may not be acceptable using this cascading approach. The second method
relies on the concept of server push (Netscape,
1999) . In this scenario, the proxy server sends the document to the
browser as soon as it is fetched. It then sends the content of the URL
to the different document modifiers. When the last of the agents finishes,
the proxy server "pushes" the final modified document to the browser.
Where do I go from here?
Based on these interactions, users can obtain recommendations to resources related to pages they encounter while browsing the Web and which are derived from the bookmarking activities of other users. They can immediately see a group average rating which has been added on the fly beside a link in a document they are viewing and which can give them an indication of what the general view seems to be on that link. If a link has been commented on, then a user can view those comments. If other users have created links relevant to the document a user is viewing, then this link is shown in the document, possibly saving valuable search time. Personal ratings are also utilized in warning users off from re-visiting pages they have already expressed a disliking for. Collectively, these factors make for an enhanced browsing experience.
4. SummaryPrevious work has addressed the usefulness of adding annotations(LaLiberte and Braverman, 1995), and links(Carr et al., 1995) on the fly. This work however makes use of a multiagent architecture to bring together recommendation services, and document modification services into one integrated architecture that better serves users in their browsing activities. Among the advantages of such an approach is its openness and extensibility. Within such a system, the dynamic addition and retraction of agents and services is supported. Document modifiers, or more advanced recommendation facilities can easily extend this system to make it even more useful.
5. AcknowledgmentsThe work presented in this paper has been supported by ESPRC grants GR/K73060 and GR/M77086.
- Carr, L. A., DeRoure, D. C., Hall, W. and Hill, G. J. (1995) The Distributed Link Service: A Tool for Publishers, Authors and Readers, In Proceedings of Fourth International World Wide Web Conference: The Web Revolution O'Reilly & Associates, Boston, Massachusetts, USA, pp. 647-656.
- El-Beltagy, S., DeRoure, D. and Hall, W. (1999) A Multiagent system for Navigation Assistance and Information Finding, In Proceedings of The Fourth International Conference on the Practical Application of Intelligent Agents and Multi-Agent Technology The Practical Applications Company Ltd, London, UK.
- LaLiberte, D. and Braverman, A. (1995) A Protocol for Scalable Group and Public Annotations, In Proceedings of Third International World-Wide Web Conference,, Vol. 27 omputer Networks and ISDN Systems, pp. 911-918.
- Netscape (1999). An Exploration of Dynamic Documents. http://www1.netscape.com/assist/net_sites/pushpull.html