7.0  Agent Technology

      
[ Previous ]        [ Next ]        [ Home ]

Within the Information Superhighway supported IDE, the entire network becomes a gigantic repository. While this provides a tremendous opportunity and a compelling reason to all join the IDE, it also posts a series of questions and challenges. What is the best way to find the information within the IDE? Why is this retrieved information not related to what was asked for? Can someone or something help perform these searches so that one can get the information needed without a plethora of irrelevant data?

 

All of the above questions suggest that there has to be a better way to support information gathering, sifting, and other tasks while using the IDE. Basically, the supporting technology will need to provide these things to users:

 

 

7.1  Definition

This supporting technology is usually recognized as agent technology that originated in the mid-1950s with the artificial intelligence movement. In general, agents are software entities or servants that carry out specific and repetitive tasks on behalf of the user, business process, or another software application with some degrees of independence or autonomy. In so doing, agents employ some knowledge or representation of the user’s goals and combine the job execution properties of a scripting language with the communication capabilities of objects. Notice that an agent not only communicates with the user, but also interacts with other agents if it is necessary to carry out its given task.

 

Agents can then be further described by the following three characteristics: agency, intelligence, and mobility.

 

Agency is the degree of autonomy and authority vested in an agent. Therefore, agency is a measurement that can be judged by the nature of interaction between an agent and other software entities, but not necessarily by the frequency of such interaction. The degree of agency ranges from an asynchronous agent, to an agent that can interact with data and other software applications, and to the most advanced agents that negotiate and cooperate with other agents.

 

Intelligence is the degree of reasoning and learned behavior: an agent’s ability to accept the user’s statement of goals and carry out the task delegated to it. The simplest agents are predefined sets of functions or preferences that can be slightly customized by the user. For example, an electronic mail reader that will check the E-Mail inbox at specified intervals and notify the user of incoming messages. Intelligent agents may also be directed toward a single goal, but they possess more knowledge about reasoning within the space of their activity. Another attribute of intelligent agents is knowing when to use other agents and the preference of the user, then learning and adapting to their environment.

 

The basic distinctions between simple agents and intelligent agents are behavior and environment. Intelligence in an agent implies that there exists knowledge about the context of the environment in which an agent will perform its task. The knowledge of the user’s wishes also is present. Simple agents can contain knowledge of how to accomplish their task, but they cannot modify their behavior based on the changing environment. An intelligent agent is what is actually needed within the IDE.

 

Mobility is the degree to which agents operate across the network. Some agents can be static, either residing on a client machine or instantiated at the server. On the other hand, some agents can operate across public and private environments, and can function on one’s desktop as well as on the desktop of anyone in the workgroup or enterprise. This type of agent can also access information in another enterprise and from a public on-line service. For example, an agent could collect data from different members of a group, analyze that data, and prepare the data for presentation.

 

7.2  Agent Technology Applications

The potential for agent technology is vast. Some of the agents that will have greater impact on the IDE are discussed below along with an introduction of several enabling products.

 

7.2.1  Information Access and Management

Because the IDE consists of a tremendous amount of data available to users, by necessity information access and management become areas of great activity. Users need to find the right information or object, and they need the information organized in a way that is easy to understand. This application can be further broken down into the following sub-areas:

 

The role of the filtering agent is to bring back to the user information that meets the user’s searching criteria. There are many drawbacks. The regular keyword(s) searching, for example, generates non-related information and misses related information because of the nature of synonymy and polysemy in a language. Therefore, a good filtering agent has to have better searching/retrieval mechanism deploying techniques such as fuzzy logic, context-based, etc.

 

A brokering agent is especially important in the distributed and object-oriented IDE. It responds to application requests for repository objects, and it also examines resource utilization level in order to route tasks to the best available resources. In a distributed computing environment, the objects required to complete a task usually reside on different locations around the network. A brokering agent is responsible for searching the object repositories for the missing objects on behalf of an application.

 

This is a simple agent that performs a typical librarian’s duty of the IDE. It reacts to other data events to create, update, or destroy information in other repositories.

 

Verity’s Topic (Mountain View, CA)

Topic is a series of modules including Topic Client, Topic Agent Server, Topic Info Server, etc. Each module may be deployed either as a stand-alone solution or in conjunction with other modules to provide a client/server configuration. For the purpose of discussion, the main focus in this section will be on the Topic Client.

 

Topic Client provides intelligent agents that act on the user’s behalf to search and retrieve specific types of information. The term "topic" is chosen to describe how the software agents are "briefed" with their missions. Each topic is a rich description of the information and rules that the agent needs to carry out its task. There are three types of agents in the Topic Client: searcher agents actively sift through historic data and consolidate information based on a given topic; watcher agents look for relevant information and present it to the user as it arrives; and analyst agents analyze, synthesize, and categorize a collection of data to deliver relevance-ranked results to the user. These agents are designed primarily for managing unstructured, high-volume information residing in on-line databases similar to the IDE.

 

Verity’s agent technology is also embedded in products from Lotus, Adobe System Inc., Frame Technology Inc., and others. Developers can also make their applications agent-enabled through Verity’s InfoAgent Developer Kit.

 

InTEXT’s Object Router (San Francisco, CA)

Object Router is designed to search for specific textual data in documents, text streams, or databases, and dynamically route it to users. Information retrieval is content-based to ensure that recipients see only the information they want. Relevancy to the user-defined content is used as a yardstick for improving the agent’s handling of information collection and letting the agent "learn" additional criteria to enable it to search more effectively into the future.

 

7.2.2  System and Network Management

Agents have existed in the system and network management area for some time. For example, a quota agent inspects disk space usage of users, taking action when a free-space threshold is about to be exceeded (over quota limit); a network traffic agent monitors network conflicts and issues a warning when the conflicts reach a threshold. However, these agents are generally fixed function and simple rather than intelligent agents.

 

The rising popularity of the Information Superhighway increases the complexity of the system and network management. It also raises concerns on the security issue such as unauthorized data access. Intelligent agents can be used not only to enhance system management software to alleviate some burden of network and system administrators, but also to attack the security issue. They can detect and react to patterns in system behavior, take automatic action at a higher level of abstraction, and even manage large and complicated system/network configuration dynamically.

 

Novell’s ManageWise (Orem, UT)

ManageWise is a network management tool that assists system administrators in dealing with various network issues such as printing delay, slow network response time, and incomplete system backups. ManageWise agents monitor network traffic trends such that the system administrator can make better decisions to optimize network traffic. They can also alert system administrators to potential problems, such as network overload or network errors. In addition, agents can look into each system on the network and determine whether it has outdated software that needs to be updated.

 

IBM’s NetView for AIX Systems Monitor (Raleigh, NC)

NetView is another agent-enabling product that allows network/system events to be intercepted, analyzed according to simple rules, and then handled automatically. Derived events, such as combinations of events, may propagate through a hierarchy of system monitor events on systems throughout the network.

 

7.2.3  Collaboration

Group-enabled applications have existed for some time. However, they focused on group communications through either electronic mail or discussion groups. Collaboration is a fast-growing area and remains crucial to the IDE in which collaboration not only happens at the communication level, but also requires the sharing of information and concurrent cooperation. In addition, IDE needs other functions to help users actually build and manage collaborative teams of people, and manage their designs and products.

 

Collaboration is a natural area for agent-to-agent interaction and communication, and because of the heterogeneity of IDE, it further complicates the design of collaboration agents. A collection of agents might be able to communicate among them in a homogenous environment, but they may not be able to understand each other in a heterogeneous environment such as IDE. Therefore, this issue remains to be resolved.

 

Lotus Notes (Cambridge, MA)

Agent technology has been implemented in Lotus Notes in many different areas. One of the areas is in the information access as mentioned earlier. Another essential area is the task automation. Notes agents operate in the background to perform routine tasks automatically for users, such as filing documents, answering or forwarding E-Mail, or archiving older documents. Notes agents can be either private or public agents used by anyone who has access to the application or database. Furthermore, they can be run manually by the user, run automatically when certain events occur such as mail arriving, or scheduled to run at certain intervals.

 

7.2.4  Workflow Management

In the workflow management area, users need not only to make processes more efficient, but also to reduce the cost of human agents. The role of workflow agents is similar to the rubber-stamp process that routes documents through an organization. Intelligent agents can be used to ascertain and then automate user wishes or business processes. With the access to knowledge base, these agents assist or replace the decision-making process that is required to route workflow.

 

The basic goal of a workflow agent is to understand the nature of the data it is managing, as well as the events associated with that data. An agent must know how to respond to specific events in a workflow process predictably and reliably, and it must be able to deal with exception events without compromising application integrity. Finally, a workflow agent must be able to deliver the data in a meaningful way to a recipient. Therefore, workflow agents have a place in any business process where an agent is briefed with the routing conditions between point A and point B.

 

Edify’s Electronic Workforce (Santa Clara, CA)

The Edify’s Electronic Workforce has three main components: the Edify software agent, the Agent Trainer development environment, and the Agent Supervisor run-time environment. Together, these components form an integrated software platform for interactive service solutions. Agent Trainer is used to define, customize, and train software agents to enable them to manage and route voice or text messages with the organization and provide interactive service on behalf of an organization. Agent Supervisor is a run-time environment that schedules software agents and assigns them to service applications.

 

7.2.5  Electronic Commerce

Electronic Commerce (EC) is one of the major services provided by the IDE. The entire IDE becomes a huge marketplace with no boundary. Consumers need to find suppliers of products and services that can solve their problems. They also need to obtain any advice and recommendation prior to the commitments. On the other hand, suppliers need a way to identify potential consumers and then pursue the opportunity. Finally, the actual transaction will need to take place automatically and safely.

 

Agent technology can assist in this scenario in a number of ways. For consumers, an agent accepts a set of preferences and specifications, and then goes shopping around the IDE, returning with a list of recommendations and even making the deal. Similarly, a sales agent by giving a goal and criteria can find consumers with the need of products and services provided by the supplier. In the extreme, the shopping agent and the sales agent can negotiate and reach a mutual agreement without the interference of users. Naturally, security agents will need to be deployed to assure legitimate transactions.

 

Most of the agent software in this area is still in the research prototyping stage, not because of technology difficulties, but because of the requirement and culture issue. Companies such as Anderson Consulting and IBM are still trying to figure out things like what functionality users are looking for in the world of electronic commerce and how they will react to the use of an intelligent agent.

 

7.2.6  Others

Finally, agent technology can be beneficial to the following application areas:

 

As computing becomes more pervasive, the more important mobile communication becomes. Users need to access not only network resources from any location, but also resources despite the bandwidth limitation of mobile communication. For example, an agent can process data at the office network and send compressed or concise answers to the user, rather than overwhelming the limited bandwidth with unnecessary data.

 

This is the area that creates concerns and even fears for the IDE. Although efforts have been carried on, how to construct a secure IDE to protect all participants still requires continuous effort.

 

General Magic’s Telescript (Sunnyvale, CA)

The best-known agents of security are those based on Telescript, an object-oriented, remote programming language from General Magic. These agents operate as objects to achieve some measure of security. Each agent has a unique, cryptographically authenticated identity and operates in an encrypted form. Both functions are based upon RSA algorithms and have the potential to respond to digital signatures. The Telescript allows means of agent interaction and is designed to run untrusted code in which each call to another object or agent involves a security check and, thus, provides inherent security at every step.

 

7.3  Issues

Before IDE can take full advantage of the promise of agent technology, several issues must be resolved and actions must be taken:

 

A catastrophe could easily happen when there are no standards. The work to create standards for defining agents and the processing facilities required to operate those agents is the most critical issue ahead. This work should be pursued by both government/standard organizations and commercial sectors.

 

As mentioned earlier, for the heterogeneous IDE to fully benefit from agent technology, multi-agent interoperability is also an important issue. The more an agent can interact with other agents, the greater advantages it can provide. Syntactic differences can easily occur because of the use of different knowledge representation formalism and, thus, prevent agents’ cross-platform interoperability.

 

Several efforts have been carried on: the construction of Cyc -- a common sense knowledge base; the proposed Agent Communication Language (ACL) such as Knowledge Query Manipulation Language (KQML); and the framework to support interoperability by the utilization of agent facilitators. Nevertheless, this issue still needs continuous research efforts.

 

There are many crash recovery mechanisms for a typical database system. Similar plans should be in place for agent technology to maintain agents’ consistent states in the case of unexpected system behavior. Furthermore, if the crash results from agents, who is responsible for the acts of agents?

 

Agents sometimes operate in an environment without any human involvement. Should agents be allowed to automatically execute financial transactions on their own behalf, which they certainly are capable of and are considered legitimate? Does an organization have the right to use agent technology to monitor employee productivity? Will agents do away with the need for certain types of workers? These non-technical issues and more should be resolved as quickly as possible before agents become more deeply ingrained in corporate information systems and IDE.

 

7.4  Conclusions

As the computing environment grows increasingly complex and the amount of information each of the users handles continues to grow, agent technology can help users navigate, organize, manage, and distribute information. Agent technology can simplify our use of computers and allow users to move away from the complexity of command language or the tedium of direct manipulation toward intelligent and agent-guided interaction. Agent technology further offers the possibility of providing smooth and friendly assistance. Furthermore, agent technology can enhance human intelligence by adding more tools to help us finish our tasks more easily and efficiently.

 

Along with all the promise and advantages come concerns and potential risks. Agents occupy a strange place in the realm of technology -- generating fear, fiction, and extravagant claims. The concept of agents, especially when modified by the term "intelligent," brings forth images of human-like automatons, working without supervision on tasks thought to be for the user’s benefit, but not necessarily to the user’s liking. The potential for the loss of the sense of control and for a loss of privacy is worthy of concern.

 

However, none of these negative aspects of agent technology is inevitable. With better user recognition of agent technology and the cooperation between vendors and government to set up standards and design of agents, there will be more advantages than drawbacks that agents can bring to IDE. It is a challenge, but one that can be overcome to further enhance the benefits of the IDE.

 

 

 

      
[ Previous ]        [ Next ]        [ Home ]

This page is hosted on a ManTech West Virginia Technology Applications Operations Center server.
by Alex Gabel/jpb 
Copyright ©1997 CALS IDE Virtual Enterprise