The Economist, May 14, 1994
HIGHLIGHT: Autonomous programs could make computer networks weirder and more wonderful. We look at how they could help, and how they might evolve
Julia has a helpful disposition. When people using a particular computer system need advice, Julia is there to offer it. Such kindness is attractive; some of those whom Julia helps would like to express their gratitude in person, perhaps with roses and fine wines. To this, though, as to much else, Julia is not well placed to respond. She is not programmed for dates. She is not available off-line. Julia is an agent, a program used to do a somewhat human task without taking up a human's time. Most agents are too simple to beguile any but the most fetishistic nerd. But they are becoming more sophisticated. In a decade or so, you may be as likely to meet a "person" like Julia in your computer network as you are a person like yourself.
Agents are familiar figures in myth and fairy tale. Magicians have the power to get inanimate objects to do their bidding: those are their agents. Nowadays technology provides agents aplenty. Your thermostat keeps the temperature the way you like it; your video recorder watches the time to record "Roseanne"; your answering machine takes telephone calls. They all sense the environment and respond to it in the way you, their magical master, would wish -- you hope.
Software agents do the same sort of thing in computer networks -- work for you while you do something else. They sort electronic mail, select articles for personalised newspapers, or even -- at least in principle -- go shopping in a virtual marketplace. Nor need they help only their masters; like Julia, they can help other people too. Computer networks such as the Internet, which links more than 15m machines around the world, have opened up lots of new ways to help yourself and to be helped: increasingly, it is hard to track all the opportunities down in the sprawling tangle that the networks' ad-hoc growth has created. Technology is just beginning to catch up with the demands that this expansion is creating.
A software company in California, General Magic, has pushed agent technology as far as any company to date. Over the past three years it has developed a commercial standard for software agents. It calls these agents "intelligent", and anything in the computer world called intelligent is by definition not. But they may prove extremely capable.
General Magic provides programmers with a language that Patie Maes, at the Massachusetts Institute of Technology's Media Lab, calls the most sophisticated agent-programming language available. Traditional software agents have shunted information around, sometimes thus activating a program already present elsewhere. General Magic's agents will run as fully fledged programs on any computer that has the company's Telescript system running on it, and can move between such computers as the see fit.
That sounds good if you want capable agents, bad if you are worried about security. An agent looks disconcertingly like a computer virus, doing things on other people's computers they may not want done. General Magic promises that Telescript stops its agents from doing any harm by isolating them. A Telescript agent is a program only when Telescript says so. Drop it into the network at a place where another operating system, such as Unix or Windows-NT, is in charge, and it is just meaningless data, no more alive than the transcript of a gene. That, anyway, is the plan; whether the world's less-public spirited hackers will let it all go that smoothly remains to be seen.
Do as I do, do as I say
Agent technology requires two things to flourish: effective agents, and an environment friendly to them. Most agent aficionados imagine a world in which agents buy things. That means entrusting them with money or credit, and some kind of power of attorney so they can make contracts. That requires a secure system. General Magic, using technology licensed from RSA Data Security, an encryption specialist in California, hopes to provide this. Using unforgeable digital fingerprints, agents could vouch for their masters' identity, and prove that they had not been corrupted.
Telephone companies are interested in giving agents room to work. AT&T has developed a network called Personalink, mainly for electronic mail, which also lets Telescript agents "visit" shops and service providers. NTT is planning something similar in Japan. Such systems may have their uses; but seekers after pure information may prefer the Internet, where knowledge is free. What sort of agents should inhabit these worlds? How can they best serve their masters? Dr Maes at MIT favours agents that can program themselves. In the Media Lab everyone has an agent continuously looking over his shoulder, observing which electronic mail he reads, when he arranges meetings and what news he finds interesting. After a while the agent picks up patterns and starts to automate tasks on the user's behalf. It will compare notes with other users' agents, and offer its master new ways of doing things; over time, it works out which other agents are worth learning from.
There is a problem. Even in the Media Lab, some things happen off-line. People have conversations, and write notes on paper that their agents will never read. And you never know what your agent might do following an example. That is why others prefer a system in which people tell agents quite specifically what they want done, and the agents do nothing else. This is the approach General Magic is taking.
In the long term the most intriguing relationships may not be between agents and masters, but between agents and agents. The more agents there are, the more likely it is that they will deal with other agents. Although it is possible for all the agents to operate in isolation, it sounds wasteful. If thousands of agents are doing roughly the same sort of thing for their masters, why not pool resources? In the General Magic system, resources are measured in "teleclicks"; each agent has a fixed number, and when it runs out, it dies. The agent's master must pay for the teleclicks; the agent spends them on the processing power it uses and for any services it buys. The Telescript system keeps score. In principle, General Magic allows agents to trade teleclicks with each other. To keep things simple, though, this capacity is not yet being used.
As more agents start to roam the network in search of cheap airline tickets, telecoms stocks and what have you, the pressure for efficiency will push them to share resources: a regiment of agents can watch AT&T's share price together, parting company only at the point when their instructions about when to buy or sell differ. A system that allows agents this sort of freedom will be neither simple nor predictable, however straightforward the instructions the agents set out with. But it might be immensely fruitful. It may be that the true value of computer networks