Next: A Framework For Up: Collaborative Interface Agents Previous: Introduction

A Single User's Agent

This paper describes experiments conducted with implemented interface agents for the electronic mail domain for a commercial email application, Eudora [Dorner1992]. This section describes an individual email agent.

Each user's interface agent learns by continuously ``looking over the shoulder'' of the user as the user is performing actions. The interface agent monitors the actions of the user over long periods of time, finds recurrent patterns and offers to automate them. For example, if an agent notices that a user almost always stores messages sent to the mailing-list ``genetic-algorithms'' in the folder AI Mailing Lists, then it can offer to automate this action next time a message sent to that mailing list is encountered. The agent can also automate reading, printing, replying, and forwarding as well as assign priority to messages.

We have chosen Memory Based Reasoning [Stanfill &Waltz1986] as the algorithm which attempts to capture user patterns. Our implementation of MBR is based upon the concepts of situations and actions. In the electronic mail domain, we choose mail messages along with some context information to represent situations and the user's handling of the messages as actions. At any particular point in time, the user may be presented with a number of messages. When the user takes an action, it is paired with the corresponding situation and the situation-action pair is recorded in the agent's memory. For example, if the user reads a message [IMAGE tex2html_wrap], the pair [IMAGE tex2html_wrap], read-action> is memorized, where [IMAGE tex2html_wrap] contains details about the message [IMAGE tex2html_wrap] and relevant context information (for example that [IMAGE tex2html_wrap] was read [IMAGE tex2html_wrap] out of a total of [IMAGE tex2html_wrap] unread messages). When new situations occur, they are compared to the situations previously encountered. After gathering the closest matching situations in memory, the agent can calculate a prediction for an action in the new situation. In addition, the agent can calculate a confidence in its prediction by considering such factors as the number of situations in its memory and the proximity of the culled situations to the new situation. For a more detailed description, see [Kozierok &Maes1993].

A situation is specified in terms of a set of fields. MBR measures situation proximity by applying a weighted sum of the distance between the corresponding fields of two situations. In the e-mail domain, appropriate fields would be the originator of the message, the subject, etc. The values of fields may be of any type. In previous systems, these fields were mainly strings or other static values. In our implementation, field values can also be objects. These objects can in turn have fields, which may be used in predicting actions. For example, the originator of a message is a Person object, which contains fields such as that person's position in an organization and their relation to the user. Object-based MBR is much less brittle than traditional MBR systems and can also use extra knowledge present in the objects if it finds it to be useful. For example, let's say that Mary always reads all messages from her boss Kay. If Mary were to suddenly receive a message from Kay's boss (therefore also Mary's boss), the system will correctly suggest that Mary read the message, since it uses the knowledge that Mary reads everything from her boss (and therefore probably her boss's boss too) although it has never previously received a message from Kay's boss. Thus object-based MBR allows the same situation to be viewed differently depending on what information is available. In contrast, a string-based MBR system does not possess the same flexibility since we cannot extract more features from the string.

After predicting an action for a given situation, the agent must decide how to use that prediction. For each possible action, the user can set two confidence thresholds: the tell-me threshold and the do-it threshold. If the confidence in a prediction is above the tell-me threshold, the email agent displays the suggestion in the message summary line. If the confidence is above the do-it threshold, the agent autonomously takes the action.

The agent's confidence in its predictions grows with experience, which gives the user time to learn to trust the agent. During this period, it is especially useful to give the user the opportunity to see exactly what the agent is doing. This feedback is accomplished in three ways: an activity monitor, an explanation facility, and an interface to browse and edit the agent's memory. The activity monitor presents a small caricature to the user at all times. The caricature depicts states such as alert, thinking, and working, similar to [Kozierok &Maes1993]. An explanation facility provides English descriptions of why the agent suggested an action.

An agent starts out with no experience. As messages arrive and its user takes action, its memory grows. Only after a sufficient number of situation-action pairs have been generated, is the agent able to start predicting patterns of behavior confidently and accurately. However, when it encounters a new situation that is unlike anything it has in its memory, it is still unsure of what to do. This is because the machine learning algorithm used requires the training examples to cover most of the example space to work effectively.



Next: A Framework For Up: Collaborative Interface Agents Previous: Introduction


MIT Media Lab - Autonomous Agents Group - agentmaster@media.mit.edu