A software agent (also called agent software) comprises
|“||small independent pieces of software whose role is to act on behalf of a client in a software environment to find, supply and use information and to resolve problems. An example is product ordering, where software agents conduct negotiations between suppliers, installers, billing systems, and so on, to produce an optimum solution, e.g., to when a product can actually be passed to the customer. In community networks, software agents might allow individuals or groups to track and participate in a range of activities such as large and complex regeneration initiatives.||”|
|“||[a] software component that performs one or more common tasks by acting in a preset manner. Agents may be classified as to characteristics (mobility — stationary or mobile); response method (deliberative or reactive); autonomy; learning; and specific task to be performed (e.g., interface).||”|
|“||a program that can exercise an individual's or organization's authority, work autonomously toward a goal, and meet and interact with other agents.||”|
A software agent is a computer program designed to search regularly and automatically across the Internet to look for things, such as information or products or services desired by its "owner," and perhaps even be able to execute contracts for the purchase of goods and services on behalf of its owner. Software agents differ from conventional software in that they are intended to be assistants to the user in contrast to conventional software tools that are simply reactive.
These "agent" programs can take different forms. One would be a computer program that resides on, and is run on, a user's own computer. The agent program would therefore not physically "travel" on the Internet, but rather would send queries and requests across the Internet; the results would, however, appear to be the same as though the program had literally traveled across the network. Other forms of agent programs might more literally travel. It is possible to create a network within which programs actually are communicated — more or less like e-mail messages — to other locations, perhaps many such locations. Once being delivered to a particular computer, the agent program would then run on that computer to initiate requests for information, or deliver information, or negotiate contracts, and the like. At the completion of that task, the agent program might return to its home computer, or perhaps continue its journey to other computers, as initially arranged by the program's owner.
|“||Software agents are becoming more intelligent and capable of taking over tasks traditionally done by humans.||”|
There is mixed opinion on the desirability and feasibility of these agents. Many in the computer science community see them as an inevitable, exciting, and powerful wave of the future. Many in the commercial community are much less certain of this outcome, and point to a variety of perhaps less exotic alternatives that they argue can do more with less. One alternative is powerful search engines and large databases, for example. The notion is that database and search engine technologies are becoming extremely powerful and sophisticated. A search site that was devoted to tracking prices of certain goods might yield faster answers to a price search than one that was done by an individual agent sent to “crawl” around the Web.
- ↑ The Net Result: Social Inclusion in the Information Society, at 68.
- ↑ Consolidated List of Glossary Terms.
- ↑ Survey of DHS Data Mining Activities, at 5 n.6.
- ↑ Guidelines on Regulating Robotics, at 19.