Pattie Maes...Interacting with Virtual Pets...Doors2

< < < Previous Page   |   Speakers   |   Conference Report   |   Doors 2   |   Mediamatic Index

D i f f e r e n t   T y p e s   o f   A g e n t s

The term agent has been mentioned a lot in the media recently, but there is still a great deal of confusion as to exactly what it means. This is partly because there are so many different types of agents in development. The first way to distinguish different kinds of agents is the nature of the task they perform. Some agents could be termed user agents, user robots or user softbots. Others may be called tasks agents. A user agent is an agent that belongs to a particular user and works for that user. It knows the user's habits, preferences, intentions and goals. It performs tasks on the user's behalf. For example, I have some personal news editor agents that I interact with on a daily basis. These systems know what kind of things I'm interested in and recommend newspaper and electronic news articles.

Similarly, one could imagine having a personal electronic shopper agent to look for you for particular objects, a VCR, for example. It would go out onto the network looking for notes where electronic equipment is being offered. It would know one's criteria for buying a VCR. And it could actually buy a VCR on my behalf if it found a good deal.

Another example of a user agent would be a virtual pet. I'll give some examples of these later.

Not all agents are necessarily useful or designed to perform useful tasks for you. Some agents entertain you. In contrast to the userbots, there will be a lot of taskbots or agents that don't belong to a particular user, but perform tasks useful to the whole community, for example, indexing services or load balancing on the Net.

Agents can also be distinguished according to the role they perform. People are trying to build many different kinds of agents to do many different things. There are agents that guide the user through complex information spaces. Others act as a personal memory or reminder. Others have the sole task of continually watching and rememorizing what the user is doing. So that if users afterwards try to figure out where they left a particular document or the name of a person they interacted with in that particular month on Saturday afternoon, the personal memory agent will be able to help.

Some agents provide abstraction for complexity of services and can receive and implement high-level commands. Some agents may act as monitors, for example, to watch the stocks I own and warn me whenever they fluctuate sharply in value. Yet other agents may act as teachers. Certainly, many agents will act on behalf of the user, for example, agents that perform transactions on your behalf or schedule meetings when you're not available. Agents can be entertainers, as well as collaborators and assistants. There will be a large need for agents that act as filters to help us deal with the wealth of available information by making recommendations as to what deserves our attention.

A third distinction is based on the nature of the agent's intelligence. For example, one of the user program agents commercially available today is called Beyond Mail, an electronic mail system that allows you to create agents to watch your incoming mail and perform certain actions when a particular type of message arrives. People have also been trying to build much smarter artificial intelligence agents that have more common-sense knowledge about the user, the application and the world in general. This kind of agent is not yet commercially available.

A fourth type of agent learns. They program themselves by noticing, for example, that the user usually performs tasks in a particular way. They then offer to automate these tasks for the user in a similar way.

A   L   I   V   E .

For the past four years at the media lab, my students and I have been building a whole range of software agents. We've been looking at the problem from two different points of view. One is the interface to agents. How will users communicate with agents? What will agents look like? Secondly, we've been concentrating on the problem of how to make agents do useful things? I want to give you some examples of the work we've been doing in these two areas.

I first want to talk about a novel kind of system we developed to allow a user to interact with agents. This system is a novel solution to the virtual reality problem--an environment that allows a user to interact with a virtual world that includes computer-animated software agents. It is called Artificially Live Interactive Video Environment or ALIVE.

One of the creatures we've been building is a virtual dog. For me, home is where the dog is. At least, that was my experience growing up. When you come home, your dog is there and meets you and starts playing with you. You can then make it perform all sorts of tricks. The user just walks into the virtual environment we built. You don't wear anything. It's completely wireless.

When you walk into the environment, you actually see yourself on a big, eight by ten foot screen wall. As you see, the real world is augmented by some computer-animated objects, many of which are virtual creatures. Here, the only virtual object is this virtual dog, but sometimes there is a whole virtual world and the only real thing is the image of the user. Everything else is artificial or computer-generated. So you can give commands to the dog, you can tell it to go away. It will come back to you. You can make it sit by putting your hand sideways. It gets sad when you leave. We put a little toy in its world. Here, it doesn't exactly know what to do, it wants to shake its hand. It wants to play with it. And eventually it gets bored.

The user is standing in front of this big screen and there is actually a camera on the top of the screen. That video camera is looking at the user and figuring out where the user's silhouette is. It is using that information to figure out the location of the user's hands, feet, centre of mass, head (all of this information at about ten hertz). Once we know where your hands, head and feet are, we can look for certain gestures such as waving, for example, which means that your hand goes back and forth horizontally. Or pointing, which means that your hand is very far away from your centre of mass and is kept still for a moment.

That is how it works. We compose your image with this computer-generated world. We can actually do this in two different ways. This is an example of what you could call enhanced reality: the table is real. The bricklike food objects on it are actually virtual. These computer graphic subjects are not there in the real world. The poster on the back wall is real but the buttons on the back wall are virtual. This is a complete blur between the real world and the virtual world.

We can also use the system in a complete virtual reality mode in which the only real thing in the scene is basically your image, while the whole scene around you, the objects and so on, are all computer-generated. We can even go further than that. We can replace your own video image with something else--a bear, for example. As you walk around, this computer-animated bear walks around and performs the same kind of gestures as you do.

You can switch between different worlds by pushing the middle button. In this next world, there is a little playmate who follows you around. If you tickle him, he jumps up. You can send him away, but he is rather stubborn and will shake his head no at first. Eventually, he'll go away. Oops-the user accidentally touched the button and is now cycling through the different worlds to bring himself back to the little playmate. Now he's trying to send him away again. Eventually, he'll go. This is a user who walked in without any knowledge about how the whole system worked. That's one reason why the interaction is slower. But the system is pretty natural to use, actually. You don't have to be wired up in any way because the only sensor that we use is the camera on top of the screen. It gets upset if you step on its toes. You can't see it on the video, but he shows this surprise face.

The only technology we need is a video camera. This means that five years from now, you can have one of these in your home. Using the television as the big screen, all you'll need is a computer and a video camera to interact with these virtual creatures. One of the ones that we're currently trying to build is a virtual Jane Fonda who actually teaches you aerobics. The big difference between a video Jane Fonda and this Jane Fonda is that the virtual one can actually give you feedback. She knows (or the computer knows) where your hands and feet are and what you are doing, so she can tell you: okay lift your legs a little bit higher now. She can create a personalised training scenario for you.

This is the environment we've been exploring to allow users to interact with software agents. As you can see, a lot of entertainment is involved. One of the reasons we chose this kind of interface rather than a small screen where agents aren't personified is that we're trying to build interfaces for the end consumer. We share Mr. Grosso's view that interaction with the digital world has to be made more fun and engaging. You have to combine information and entertainment. That is why we chose to immerse the user and have life-like characters embody the software agents.

Speakers   |   Conference Report   |   Doors 2   |   Mediamatic Index   |   Next Page > > >

Last Updated: 23 feb 1995