8. Content

In this section we describe the underlying scientific problem our project is concerned with, and we will further detail the method(s) we will employ, and the expected results. In addition we will explain the relevance of our contribution for the scientific community and we will assess our project with respect to its scientific merits.

Agents

The notion of agents has become a powerful metaphor for designating autonomous intelligent processes that aid the user in managing the complexity of a variety of tasks, including information retrieval, activity scheduling and process monitoring.

Our project aims at providing insight in and solutions for

In effect, agents have been characterized as the dominant human-computer interface of the future Negro. The aspects of our research as indicated above address the problems involved in defining and realizing the potential of the agent metaphor as a human-computer interface in the distributed information system domain, in particular the Web.

Modeling agent behavior

The ability to model the behavior of solipsistic and cooperative agents is a prerequisite for (a) managing the complexity of defining agent behavior, and (b) for adapting the behavior of agents to user preferences or circumstantial conditions.

Realizing agents

We choose for aiming our project at realizing agents in a Web-aware context (a) because the Web provides a rich reservoir of information, and (b) the Web offers a suitable infrastructure for defining an actual graphical user interface for employing agents. In particular, agents may be integrated with standard means for accessing the Web by means of applets. Further we wish to supply a language that allows us to program the behavior of agents in a straightforward way, adequate with respect to the models described at a more abstract level.

Architectural support

The architectural requirements for realizing agents in a Web-aware context consists of (a) high-level support for distribution to allow for notification and the communication between agents, (b) access to the Web both in terms of server-side and client-side computation, and (c) support for information retrieval and data management.

Discussion

Currently agents are in the focus of interest of numerous research groups Internet,Softbots,Software,Architecture,Survey. However, one may observe a divergence between purely formal approaches and purely pragmatical approaches, that provide an operational realization of agents lacking a solid foundation.

Although many of the ideas and concepts underlying agents have been a topic of research for decades, notably issues concerning distributed systems and programming language design, the notion of agents itself hase become a major research topic only recently. A survey of agent theories, architectures and languages is given in  [Survey]. As concerns agent theories, the main focus of attention lies on a logical analysis of intentional notions underlying the behavior of single agents, whereas for agent architectures issues of communication and cooperation between agents have been addressed in more detail. In  [Survey], concurrent logic programming languages are considered to be the ancestors of agent languages. Of immediate relevance for our own work is the Oasis programming language described in  [Oasis], which bears a close resemblance to the distributed logic programming language DLP  [DLP].

Recently, commercial agent systems have been developed for the Web. For example, General Magic has launched its Telescript Agent System, a system that employs mobile agents defined in General Magic's Telescript language. Also in  [Internet], a number of agent-like programs are described. We are reluctant to qualify these systems as 'agents', however, since they are defined in a purely operational way. We find, for complex agents anyway, a more explicit representation of the intentional aspects desirable.

In a recent issue of the CACM( 37(7), July 1994), some current trends and applications of agent research are presented. From our perspective we consider as important representatives of ongoing research:  [Software], that describes the agent communication language KQML (Knowledge Query and Manipulation Language);  [Architecture], which describes the complexity of of integrating collections of agents; and  [Softbots], which describes a number of simple agents for facilitating access to the Web.

Realization

For each of the levels or facets indicated, that is modeling, realization and architecture, we will briefly describe the way we plan to tackle the problems involved.

Modeling the behavior of cooperative agents

Our approach will be based on the work already done in the context of DESIRE  [Desire,KAW95,Multiagents,Compositional]. In effect, DESIRE provides a compositional modeling framework in which the cooperation between multiple components can be expressed in a declarative manner (with temporal semantics  [KAW96,JELIA94,ECAI94,META94]). In particular, DESIRE has been employed for describing cooperative multi-agent systems for project coordination, negotiation and monitoring processes  [Modeling,ModelAge96,ModelAge97,ATAL96,ICMAS96,Cooperation]. Research in this area will be focussed on defining cooperation in information-retrieval tasks and on expressing user-preferences and information-needs in an adequate way. Other topics of interest include modeling users as agents and the verification of agent specifications.

Realizing Web-aware agents

The development of Web-aware applications has been addressed in the DejaVu project  [Applications,Music]. The approach taken there was to employ object-oriented design technology for realizing a component-based approach to integrating multimedia in Web-based hypermedia applications. The development of generic components for realizing agent-based systems will be addressed in the same fashion, in order to allow for the integration of adequate multimedia and graphical user interface support.

It is our intention to employ the distributed logic programming language DLP  [DLP] as a high-level vehicle for programming the behavior of agents. We strive on the one hand for a close integration of the DESIRE framework and DLP and on the other hand to extend DLP with the primitives needed to access the Web and to create adequate graphical and multimedia user interfaces.

Architectural support

To support cooperating agents over a network we need to provide point-to-point communication as well as event-based notification. We intend to use the Orbix/CORBA Object Request Broker as an object-level mediator for the communication between agents and the communication of agents with Web server and client applications.

Currently, we are actively employing Orbix/CORBA to develop an workbench for groupware task analysis and a distributed architecture for visualisation (DIVA).

To allow for managing the information retrieval and management tasks involved in dealing with the Web, helper applications must be developed which employ the native HTTP protocol of the Web, and which perform automatic Web navigation. Such tools are often called robots or spiders. An information retrieval tool  [Bra,Fish,Search] has been developed at the TUE. Two implementations of this tool exist: one which is integrated in a WWW browser, and one which is a CGI-script for use on servers. The latter implementation now exists in a multi-threaded version, using multiple search-agents operating in parallel. Current Web developments make it possible to integrate such agents into browsers in a flexible way by means of applets or plug-ins. For server-based applications servlets or server plug-ins can be used to avoid the overhead generated by the CGI protocol and by invoking individual instantiations of CGI-scripts.

A method for improving the use of the internal structure of documents has been defined and implemented by means of object-oriented databases. An intelligent retrieval helper application needs to be aware of the internal structure of documents, and needs to be able to store the information it finds using a similar structure. Also, it needs to have direct access to the links between documents; this information is embedded within the text of the documents. A Web-server based on the object-oriented database Ode has been developed for this purpose  [OODB]

Pamela

First of all, it must be remarked that the target system Pamela is explicitly intended to stimulate and regulate the cooperation between the participating research groups.

As concerns its functionality, the final version of Pamela should include

A more detailed specification of its functionality, however, must be considered as one of the tasks of the project.

Discussion

As concerns technology, the realization of WASP (and in particular Pamela) is based on the programming language DLP (extended with Internet capability), and the facilities provided by the hush library and its extensions (both developed by SE/VU, see refs [17,19,20]).

In addition, at the level of design, we exploit DESIRE (developed by AI/VU, see refs [1,2,16,22] of the proposal). In effect, the integration these technologies (DESIRE and DLP) contributes to the originality of our approach.

From an architectural point of view our approach is basically a client-server architecture, with agents as user-dedicated clients. For the communication and Internet capabilities we exploit existing technology (TCP/IP, HTTP, CORBA).

Needless to say that we wish to maintain a close integration between the efforts involved in the research concerning the aspects mentioned. In particular, we intend to develop a prototype agent application Pamela (Personal Assistent for Managing Electronic Archives) as a point of reference and as a means of coordinating the research done by the parties involved. In addition, the Pamela application will serve as means to demonstrate the power of our approach to the scientific community and the rest of the world.

A framework for Web-aware agents

The WASP project is aimed to result in a framework (in its extended meaning) for the development of agent-based Web-aware applications. Such a framework includes: In addition we wish our work to result in a generic agent application Pamela that demonstrates the capabilities of our approach. The intended results, divided over the various aspects of our project, are summarized below.

Modeling the behavior of cooperative agents

Realizing Web-aware agents

Architectural support

Pamela

The Pamela application is intended as a vehicle to demonstrate the various aspects of our project. For a selected domain, which will be chosen in the course of the project, we will produce a Personal Agent for Maintaining an Electronic Archives that assists the human user in gathering material for which a preference has been indicated. Gathering information will be done in cooperation with personal assistants defined for other human users. Pamela will be able to notify the human user about the discovery of any relevant material and will provide for multimedia facilities to present the material and to browse related information.

d. Significance

Scientifically, our work is of significance for the areas of In particular, because we propose to take an integrated approach to the problem of providing agent support for Web-aware applications, the efforts coming from the different areas of expertise of the participants results, hopefully, in a more encompassing theoretical and practical framework than would have been possible for each of the participants individually, or more in general in a more mono-disciplinary approach.

Clearly our project covers both fundamental and pragmatic aspects. It is application-oriented in the sense that it is aimed at satisfying the conditions for developing actual agent-based applications. However, it is fundamental to the extent that it is based on well-founded principles of modeling and software engineering. In the area of information retrieval, moreover, we hope to come up with a substantially new approach for the discovery of new (recent) interesting and relevant information in a large distributed hypermedia information system such as the Web.