AAAI-90 Presidential Address… I focus
on issues ininteraction,
looking at
alternatives
to theisolation
assumptions.

AAAI-90 Presidential Address

Dimensions ofInteraction
Daniel G. Bobrow

Ten years ago, at the first AAAI conference,
Alan Newell (1982), in his pr esidential
address, focused on understanding the thendominant paradigm for artificial intelligence:
the writing of symbolic reasoning programs
for an agent that would act rationally toachieve a goal. He distinguished the “knowledge level” from the “symbol level” description of a system. The former encompasses theknowledge and conditions necessary for an
agent to solve a problem. It is only when theknowledge level is reduced to a symbol leveldescription that issues of implementation get
considered.
Newell’s analysis postulated a single agent,
with fixed knowledge and a specified goal.
The agent was disconnected from the world,with neither sensors nor effectors, and more
importantly with no connection toother intelligent
goal-driven
agents.
Research
results in AI
consistedprimarilyin the determination of

the principles of construction of such intelligent, but deaf, blind, and paraplegic agents.
The assumption was that a human agent
would formulate the problem in a previously
defined language understandable to theagent. The problem statement would include
background knowledge, a description of thestate of some world, operators to use in thatworld, and a description of a desired state (agoal). The agent would use (at the knowledge
level) logical reasoning to determine asequence of operations that could be performed to achieve the desired goal, and amore complete description of the resulting
desired state.
Although this style of building AI systems isstill both useful and prevalent, there has been
increasing recognition of the importance ofdesigning and analyzing systems that do notmake these isolation
assumptions. In this article, I want to focus on
systems consisting ofactive agents with multiple goals, communicating among
themselves, andinteracting

0738-4602/91/$4.00 ©1991 AAAI64

AI MAGAZINEAAAI-90 Presidential Address

with the world. These agents can be either
human or programmed machines, and caninteract directly with the world. In this article, I focus on issues in interaction, looking at
alternatives to the isolation assumptions. My
presentation uses examples from diverse fields
to illuminate issues along three dimensions ofinteraction: communication, coordinationand integration.
The first dimension of interaction is communication. For communication to exist
between two agents, there must be somecommon ground of mutual understanding.
Where does this come from, and how does it
develop? What techniques are used by people
and systems to build and extend this base forcommunication? Communication between aparticular pair of agents might not always beeasy, or even possible. In such cases, communication can be facilitated by interposing a
mediating agent.
The second dimension of interaction iscoordination. With multiple agents with multiple active goals, progress requires agents toshare resources and work toward somecommon goals. Various organizational structures, for example, based on markets andbusiness hierarchies have been used in the
resource-allocation process. But resources are
not the only thing that must be shared. For
independent agents to work together, theymust be able to predict other’s behavior, but
not necessarily in great detail. Joint commitments to future action are a useful way oforganizing this information.
The third dimension of interaction is integration—integration of AI systems with otherprogrammed solutions, and integration ofsolutions with human work practice. Systems
do not exist in isolation. Systems must solve
problems that have some payoff outside thesystem itself. For agents that we build to be
useful, they must fit in with the current work
practices of both people and other computer
systems. To understand how to help build
such systems, it is useful to appreciate how
our work relates to research efforts in suchdiverse fields as linguistics, psychology, computer-human interaction, ethnomethodology,
and organizational dynamics. Looking outside our narrow discipline allows us to develop appropriate criteria to evaluate the power
and limitations of AI, and to understand theplace of AI in the broader fields of humanendeavor.
This article is not intended to be a complete
or scholarly overview of issues involved ineach of the dimensions of interaction. I haveselected some prototypical examples from current research and development, where eachexample is intended to provide a lesson. I
want to encourage a shift of perspective thathas started (Gasser 1991; Malone 1987), fromsystems in isolation to systems in interaction.
The challenge for our field for the next decadeis to build AI systems that can interact productively with each other, with humans, andwith the physical world.

Communication
Communication is a critical ingredient in theinteraction of agents with the world and witheach other. Common ground for communication comes from common experience, leading
to a common terminology for concepts. For
computational systems to adapt to new communication needs, there must be mechanisms
for extending terminology and to learning
new ways some terminology can be used.
Some computational systems do not havethe capability of improving their communication abilities. In such cases mediating agentsplay a crucial role. Intermediaries can provide
the glue that holds systems of interacting
agents together. I examine multiple roles forsuch mediators.

Common Ground
Communication is based on an assumption ofcommon understanding of the language ofinterchange between participating agents. If
something is communicated, and a receiverdoesn’t know the terms, or what it means to
use them in certain constructions, or cannot
connect them to previous experience, communication fails through lack of appropriate
common ground. In traditional AI programming, meeting the requirement for common
ground is usually ensured trivially by having
all the computational agents use a common
built-in language and vocabulary. Humans inthe system are assumed to have appropriate
understanding of the symbols processible byand produced by agents in the system. Somesystems designers seem to believe either intheir omniscience—they can foresee all possible
uses and the background of all future interactors with the system—or their omnipotence—
their ability to change the system to meet any
contingencies. We see other examples of thisomniscience/omnipotence assumption later.
This subsection deals with examples of the
breakdown of this assumption, and how theresulting problems are handled.

Extending Common Ground. The needfor extension of common ground is often
anticipated in symbolic systems. For example,
in any knowledge representation system, pro-FALL 1991

65

AAAI-90 Presidential Address“Tighten right front”

Rule
Structured
KB
System“Good”...
ANALYSIS

“bad”

Rules
MECHANIC...

Neuralnet

EXPERT

Neural
net

Good
Bad

Figure 1. This Expert System Combines a Neural Network and a Rule-Based System to Support theCommon Ground for Communication to the Rule-Based System.

vision is made for defining new vocabulary
based on previous vocabulary. Extending
vocabulary in this way is a first step in extending common ground. Another necessary partof common ground is knowledge of how asystem uses the facts it has. This requires a
description of system process as well as content.
Consider the problem of sharing knowledge bases for knowledge-based systems. It isvery costly to build large knowledge bases.
Sharing requires more than sharing terminology. To use a set of facts from another KB
system, it is necessary to understand how
those facts were intended to be used in a reasoning process. For example, it is useful toshare the intended process of default reasoning. As a simple example, consider the problem of default reasoning. In the now classicalYale shooting problem, given the sentences“The gun is loaded” and “The gun is shot at
Bill,” the preferred default conclusion is “Billis dead,” rather than “The gun became
unloaded.” Many papers have been written
about why the latter conclusion follows fromsome but not all theories of nonmonotonic
reasoning. Communication must include
descriptions of how such defaults are chosen.
Guha (1990) describes how the Cyc systemdescribes different default reasoning processes
in the language of the system. It is based on
the notion of reified proofs in the logic. A rei-66

AI MAGAZINE

fied proof is a representation of the proofs thatmakes the structure explicit and manipulable.
Adding defeasible assumptions turns proofs
into arguments. Axioms that describe argument
structures and argument preferences can be
represented in the logic. Reasoning at themetalevel can determine which arguments
are more compelling. Such reasoning might
involve the assumptions in the argument, therelative lengths of arguments, the inference
rules used, or the quality of the supporting
evidence.The full reasoning engine can beused to reason about the reasoning processitself. Because the axioms of the reasoning
process can themselves be communicated,common ground can be extended for process
as well as terminology.
Cyc is only one example of a system that
extends system capabilities by using metalevelprocessing. The SOAR architecture (Laird,
Newell, and Rosenbloom 1987) is a problemsolving system based on a problem-spacemodel. Solving a problem is moving from an
initial state representing a problem statement
to a final state that meets some goal condition. Operators move the solver from one
state to another. In an impasse situation, forexample where there is ambiguity about
which operator to apply, a new problem
space is entered in which the problem to besolved is making a decision among operators.

AAAI-90 Presidential Address

Communication is a critical ingredient in the interaction of
agents with the world and with each other.

Another example of language extension
using a metalevel architecture is the Common
Lisp Object System (CLOS) (Kiczales, des Rivieres, and Bobrow 1991). The interpreter forthis object system is implemented in terms ofobjects and methods of CLOS itself. This supports introspection into the state of the object
system. In addition, it allows users to experiment with different extensions to the object
system itself without the danger of breaking
the basic system. For example, a relatively
simple and localized extension can make CLOS
support persistent objects located in a
database.
Lesson: System capabilities can be used forextending common ground by reifying thestate and actions of the system itself.

Grounding in Experience. Expert systems
are often constructed as rule-based systems
that reason using information provided by ahuman informant. The human is expected tounderstand the problem as it appears in theworld, and provide the system appropriate
symbolic descriptions as input. The human
can take the initiative in entering data that
seems important, or can be requested to provide information by the rule-based system—
either way acting as the system’s “sensory
input.” But consider a problem faced by the
Eaton Corporation (Smith 1991). Eaton provides a brake-balancing service for fleets oftrucks. With improper balance, 18 wheelers(very large trucks) can exhibit failures as
simple as excessive brake wear or as disastrous
as the jack-knifing of trucks on the road.
Brake balancing is usually done by mechanics at a fleet maintenance shop. Sophisticatedmeasurements have not been available. Eaton
developed a proprietary analysis system that
produces complex plots of the relationshipsof air pressure, temperature, braking force,and time. An expert using this system canbalance the brakes much more effectively
than most maintenance mechanics. The
expert with a knowledge engineer was evenable to program a fairly simple rule-based
system for brake balancing, given the interpretations of the analyzer graphs. However,what is “obvious” to the expert in these graphs
is opaque to the ordinary mechanic. Unfortunately, the time necessary to learn how tointerpret the graphs is long, and requires
apprenticing with the existing experts. This isan example of the breakdown of the presumption of common ground.
Eaton’s solution to this problem is one thathas potentially wide applicability. Eaton built
a system that linked the simple rule-based
system to a neural network that received theanalyzer output (figure 1). An expert trained
the neural network on the analyzer graphs to
produce descriptions to correspond to his own.
Because the data was inherently noisy andredundant, a training criterion of only 90 percent was sufficient to ensure appropriate communication. The fully trained neural net wasthen connected to the rule-based system. Input
to the rule-based system consists of two parts:
descriptions provided by the on-site mechanic, based on the usual vocabulary shared
between the expert and the mechanic; anddescriptions from the neural net, based on
the common ground developed in the neuralnet through training with the expert. With
this extended common ground, the combined neural net and rule-based system saves
the company an estimated $100,000 per year.
Lesson: It is sometimes necessary for systems to connect directly to the world to support common ground between people; using
a neural network as a front end to a symbolic
system is one way to achieve this.

Negotiating Common Ground. Psychological experiments provide us with someinsight into ways that humans develop andextend common ground. Clark and WilkesGibbs (1986) carried out an interesting experiment in which two people were required todevelop a new common vocabulary. Theirtask required describing pictures (geometricsilhouettes) that neither had seen before.
Each was given an identical deck of 12 silhouette cards in different shuffled orders. Theirtask was to arrange the two decks in the sameorder. The two people, one called the director
and the other the follower, are separated by a

FALL 1991

67

AAAI-90 Presidential Address

SET OF TANGRAMS

[A]

[B]

[C]

[D]

[E]

[F]

[G]

[H]

[I]

[J]

[K]

[L ]

LISTENERDIRECTOR

Problem: Order tangrams using descriptions for reference (Clark)
Figure 2. This Experiment Explores How People Develop and
Improve Common Ground in Conversation.

screen; they cannot see each other or eachother’s cards (figure 2). To obtain thecommon arrangement, the director must
communicate to the follower the order of thedirector’s cards. In identifying cards, thedirector and the follower negotiate descriptions to be used to refer to the different pictures. The following dialog is adapted from
one in the referenced paper:
Director:“Do you see the one thatlooks like a skater?”Follower:“On one leg?”Director:“Yes.”
Follower:“Put it first, please.”
Interchanges like this have a very different
character than someone following simple
written instructions. In the latter, a “literarymode” of communication, the author bears
full responsibility for creating phrases andsentences that a reader can comprehend. The
author must make assumptions about what is
known previously, and ensure that referencesin the text are unambiguous. In contrast, in aconversation both participants bear the
responsibility of assuring that what has been
said has been heard and understood before
the conversation goes on. Conversation consists of turn taking, where each contribution
both specifies some content and grounds it.
Negotiation about what is perceived can be

68

AI MAGAZINE

used as the basis for reference. For example,
one phrase “the one that looks like a skater”
can be responded to with a question, such as“On one leg?” or an acknowledgment “OK, I
got it.” Later references to the same cardmight use different phrases. A new phrase
can be a shortened form, for example, “theskater,” or can refer to the conversation “thefigure I called the skater last time.” The subjects perform the ordering task six times,
alternately playing the role of director andfollower. Clark and Wilkes-Gibbs found that
subjects got much more efficient in theircommunication over time, using fewer words
for each reference, and needing much lessnegotiation.
Lesson: Humans use many skills in conversation that should be designed into systems
with computational agents. These include
sharing of communication responsibility andimprovement of performance through practice.

Using Intermediaries
It is sometimes impossible for two agents tocommunicate together directly, in conflictwith the simple assumption of designer
omniscience/omnipotence. But we don’t
design all systems that we must interact with.
Some existing systems use only one fixed language: Database servers understand SQL; robot
arms understand commands to change joint
positions. Even if two agents can use thesame language, there can be semantic incongruence of the terms; one database on hotels
might have “Price” mean before tax, andanother after and with breakfast. Finally, evenwith common language and semantics, one
system might not be able to keep up with thecommunication rates of another, and anintermediary might be needed for buffering.
A mediator is an agent who helps bridgethese differences between two or more agents,
like a transformer that reduces the very highvoltage the power company uses to minimize
transmission power loss to the lower safer
voltage used in our homes. The neural network system used in the Eaton brake-balancing analyzer can be seen as a mediator
between a symbolic system and the Eaton
instrumentation. I look at examples of mediators that bridge a wide range of mismatches.

Supervisory Control. Sheridan (1984) of
MIT used a mediator to solve a language mismatch problem that arose in getting a person
to control a remote manipulator/vehicle that
I call “Robby.” The command language
understood by Robby is ver y low level(change-joint-angle-by x) and unnatural forhumans to generate. Robby was intended toAAAI-90 Presidential Address

be deployed remotely, for example, on themoon or on the sea bottom, making it impractical to use a simple direct manipulationinterface based on visual and force feedback.
The time delays for feedback signals were too
great.
Sheridan introduced a third agent to aid insupervisory control, telling Robby what to dowithout telling it how (figure 3). The mediating agent sat between the human and Robby,
translating goal-oriented language statements
by the person (for example, move-arm-toobject or close-hand) into appropriate lowlevel commands. It also took local feedback
from Robby and constructed a schematic display of Robby’s current state. The human did
the overall task of planning and monitoring.
The mediator, using a rule-based system,transforms goals into plans and commands
for direct action for Robby, and interprets sensory feedback from Robby as it does the actions.
Lesson: Mediating agents cannot only bridge
mismatches, but also allow more effective
partitioning of tasks in a human/machine
system.

Cognitive Coprocessor.

Humans process
different sensory inputs at different rates. We
can read at 600 words per minute or more,
but only process speech at best at 200 words
per minute. Humans do cognitive processing
slowly (seconds) compared to perceptual processing (tenths of seconds). Robertson, Card,and Mackinlay (1989) developed a generalarchitecture for interactive user interfaces
whose basic premise is that it is much easierfor people to process slowly changing visual
images (such as you get in a movie) than tomake cognitive shifts. They use a mediator,
which they call a cognitive coprocessor, tobridge mismatches between humans andmachine agents with respect to processing
rates, immediate memory capabilities, andrepresentational forms.
Their application domain is what they callinformation visualization. It uses two- andthree-dimensional animated objects to represent both structural relationships and thecontent of an artificial environment (forexample, a file system or a database), and aset of artificial active agents that can be sent
to retrieve information from the different
stores. For example, consider the problem ofunderstanding where certain people havetheir offices. Pictures of the people are retrieved
from an image store, organizational information from another database, plans of thebuilding from a third, and office assignmentsof people from yet another (figure 4). The
cognitive coprocessor constructs a composite
picture, with portraits of the individuals, a“move to”
“close”

set-joint (3,30)

joint angle (3,35)

DO TASK[Knowledge Based]

PLAN MONITOR[Rule Based]

FILTER SERVO[Skill Based]

Figure 3. This Mediating Agent Supports Language
Translation and Task Focusing.

three-dimensional image of the building, andlines leading from the labeled pictures to theoffices. Controls in the interface let you lookat the building image from different positions, with different colorings and labelings,
giving both overall views and detailed images
in context to connect a person with a location. This eliminates time-consuming cognitive steps, such as finding a person’s room
number, using it as a key to search a map, andthen understanding where it is in the context
of the actual building structure. The cognitive
coprocessor also uses visual animation to support easier changes of focus in an artificial
world; moving to viewing another part of anorganizational structure made by a smoothrotation of nested cones.
Lesson: Three-dimensional visual processing,which most people are very good at, cansometimes be used to replace cognitive processing, which seems harder and is more error
prone.

Distributed Knowledge Base Systems.
Gio Wiederhold (1991) proposes mediators
as a crucial part of the architecture of future
distributed information systems. He foresees
many databases on a network distributed
across the country and around the world.
Each database builds in certain assumptions
about the meanings of terms and the expected uses of the data. Mediators are explicit
active modules between the user’s applicationand the data resources. Because of the distributed nature of the system, some mediators
are used to bring together data from multiple
sources; some locate desired data; others
bridge semantic mismatches between needs
and stored information. Wiederhold provides
an interesting classification of mismatches
that can benefit from mediator intervention.
A reference mismatch occurs when the key
to access a database is not the one naturally
FALL 1991

69

AAAI-90 Presidential Address

A mediator isan agent who
helps bridgethese
differences
between two
or moreagents…

Figure 4. This Three-Dimensional View Allows Perceptual Processing to Replace
More Difficult Cognitive Processing.

available to the application. For example, theapplication might have only the name of aperson, and another database might use that
person’s social security number as a key. Scope
mismatch is exemplified by a product sales
database organized by sales person, when fora specified task what is wanted are sales organized by product types. A temporal mismatch
is where data is stored by calendar year rather
than financial year. It is an abstraction mismatch when income is associated only withan individual rather than being family based.
A domain semantics mismatch occurs where a
database is organized by postal codes, when atask requires sorting by town (there can beseveral towns in one postal code zone, andseveral postal codes in a single town).
Even when mediators cannot do appropriate
representation transformation, they might beable to flag mismatches. For example, consider the interpretation of the phrase “excessivepay.” For a personnel organization evaluating

70

AI MAGAZINE

performance this means one thing, and itmeans something quite different for the Internal Revenue Service, which does not allow
untaxed payments of expenses to exceed acertain amount. Wiederhold calls this a problem of context-dependent value semantics.
Lesson: Mediators can play a key role indistributed information systems by providingtask-dependent representation transformations, and ensuring that assumptions on theuse of data are met or flagged.

Real-Time Mediator.
The Consolidated
Edison Company of New York operates anelectric utility system that serves a 593 square
mile area. The operations control center logs
about 150–200 events a minute when everything is going well. When there are problems,
this can increase to roughly 6000 alarms per
minute. Human operators must process theseincoming signals and decide what to do. The
problem is compounded by there being redun-

AAAI-90 Presidential Address

dant alarms, alarms of different priorities, andalarms in 35 different categories; and different operators specialize in handling particular
types of alarms. Critical data can be lost in
the flurry of alarms.
A real-time expert system, SAA (Silverman1991), was installed in the center. SAA filters
out nuisance events (for example, multiple
reports or false togglings due to telephoneline noise). It also analyzes the system state todetermine which components are failing. SAA
integrates information from three models of
the system (physical, functional, and temporal)
to do the analysis and provide recommended
operator actions using a rule-based system
based on the ConEdison operating procedures. Use of this real-time system mediating
between incoming alarms and human operators has provided significant benefits to ConEdison’s operators: The sheer number of alarms
seen in an emergency situation has been
reduced by a factor of 10; this has increased
the operators’ confidence that they knowwhat is happening and what might be useful
to do. It has also helped in the standardization of the responses.
Lesson: Real-time mediation can transforma flood of data into a stream of information
more useful to human agents.

Coordination
The computational world of the near future
will contain multiple computational agents.
An agent might be tied to a particular task, ormight have several active goals. A computational agent might move from one machine
to another to perform a job and/or different
machines might be assigned as a resource fordifferent agents. To coordinate a set of agentsthat share common ground for communication still requires policies and procedures forresource management and goal coordination.
Resource management requires making effective use of a limited set of resources; coordinating goals among agents requires thatagents have knowledge of what others arecommitted to do in the future.

Resource Management
The simplest model for resource management
is the central planning model that has beenused in most AI systems. This is another versionof the omniscience/omnipotence assumption
in system design. The design postulates that aproblem-solving system can be based on acontroller that creates agents directed towardspecific subproblems. This controller provides
each agent with appropriate resources. Con-

flicts among agents are settled by the central
planner. In both world politics and large-scalecomputational systems this assumption has atendency to break down. As communication
costs become dominant, the central planner
becomes an information and action bottleneck. The system fails if it does not remain
connected with the controller in constantcommunication with all the subagents.
Recently, there has been work on developing
other models for resource allocation thatseem to be more robust. One is based on amarket model and the other on a hierarchicalorganizational model.
Resources are more than just the availability of computational cycles. Cycles can beused more effectively using knowledge of theworld to reduce the computational load. Animate vision systems, for example, can be significantly simpler if they can move in theworld instead of just observing it from a fixed
position. Another mechanism for making
effective use of resources is specialization offunction to adapt to changing demands ofthe world. Adaptive specialization is a featureof both natural and computational systems.

A Market Model.

In a market system, thevalue of a resource is dependent on the
demand for that resource. There is no centralized control. Sellers hawk their wares to thehighest bidder, and buyers make bids basedon the worth of the wares to them and theircurrent resources. This model has been adapted for controlling computational resources.
SPAWN (Waldspurger et al. 1989) is a computational control system that uses this “microeconomic” approach to resource management.
The sellers are users who wish to sell otherwise unused processing time on their workstations on a computer network. The buyers areusers who wish to purchase computational
cycles to accomplish some task.
Whenever a computer is going to havesome “free” time, it broadcasts this fact to all
potential buyers. An auction is held for the
next available time slice. Communication
costs need to be minimized. Therefore SPAWN
does not use a multi-round auction where allbids are heard and can be responded to by all
potential buyers. Instead, SPAWN uses a “sealed
bid second-price” (Dutch) auction in whichno competitor can see a bid, and the pricepaid by the highest bidder is that bid by thesecond highest bidder. This bidding mechanism has been shown to get approximately
the same prices at much lower communication cost. Note also that if there is no competition for a resource, the resource is “free.”Experimental results show this mechanism
leads to excellent use of available resources,
FALL 1991

71

AAAI-90 Presidential Address

a.

c.

.3

.3

1

2

.8

delay T

.8
3

1

4

b.

2

3

4

d.
1

1

.25

2

.25

2
3

3

4
4

0

20

40

0

15

30

Figure 5. Hierarchical Processing with Delays Can Be Improved by the Addition of Informal Links.
(a) Simple hierarchical communication model with delays. (b) Load distribution over time in the simple hierarchicalmodel. (c) Addition of an informal link to the hierarchical model. (d) Stability of load balancing with informal link.

with natural controls for supporting highpriority tasks and heterogenous computerresources. It also provides guidance for individual task managers about whether it pays tospawn parallel processes or focus their resources
because extra computational cycles are expensive at the moment.
Lesson: Centralized control is not necessary
to ensure good use of resources; a marketbased system using a broadcast medium
works well for resource distribution in smallto medium-size groups.

Hierarchical Communication Model.
The advantage of using a completely open
market approach is that there is no centralized control; buyers and sellers can appear
and disappear; and there is efficient use ofresources. However, even with the Dutch auction described above, communication costs
and interference grow proportionally to thenumber of potential buyers and sellers, anddelays in information propagation can destabilize the system. Experiments have shownthat fruitful use of resources grows linearly as
the number of buyers and sellers increases,
until it reaches a certain threshold. At thisboundary (roughly 20 processors in the SPAWN

72

AI MAGAZINE

experiments) effective utilization starts to fall
off dramatically because processors are spending so much time listening or responding tomarket messages from the larger number ofparticipants.
Lumer and Huberman (1990) show that ahierarchical communication model has muchbetter utilization characteristics (figure 5). In
this hierarchical system, a processor communicates frequently to a small peer group. Fora wider group, the communication rate is
reduced by a significant factor, and by another reduction for the next outer group. This iscomparable to a hierarchical business structure in which people talk mostly to their coworkers and their boss. The boss passes onsome small fraction of what they say, andreports a small fraction of what comes fromthe boss’s peers and boss. With this communication model, balancing of resources can bedone for a much larger organization, thoughwith significantly longer time delay for stabilization and load balancing when there areradical changes in processing demands orprocessor availability.
Suppose the boss introduces significant
delays in the communications. This canintroduce serious oscillations in resource uti-

AAAI-90 Presidential Address

lization when the delays exceed a criticalvalue. An interesting finding in these experiments was that these oscillations in resource
use can be stabilized by the establishment of a
few informal links in the organization, that is,communication links across disparate parts of
the organizational hierarchy. Lumer andHuberman (1990) draw parallels between
these results and social organizations, indicating the trade-offs between reducing the information-processing burden through the
installation of hierarchy and an increase inperformance by the use of direct lateral connections between participants of interdependent subsystems. Of course, adding all
possible lateral links brings the system back to
the full market organization and its problemsof scale.
Lesson: Hierarchical communication structures reduce communication load for a marketbased resource-allocation model. A few extra
non-hierarchical links reduce instabilities andincrease the system’s ability to rebalanceloads quickly under changing demand.

The World as a Resource.

Reasoning
about the world is a difficult task, but it canbe made close to impossible by insisting on
the assumption that a system have a complete model of the world to get the job done.
If the world is reasonably stable, just using
this stability without representing it can makesome reasoning tasks much easier. For example, in remembering a path one takes throughthe woods, one need not remember the shapeof every tree or bush. One need only remember critical features at choice points. Manipulations of the world are also an alternative to
massive computation. If there is no easily distinguishing feature at a choice point, one canchange the world (break a twig) to ease later
decision processing.
Integrating a model of how one can andwill interact with the world can lead to more
efficient processing. When we put a paper
down on the desk, we never remember its
exact coordinates. Based on knowledge of ourown perceptual abilities, we believe that wewill be able to locate the article later, given arough description of where it is and what it
looks like. Of course, there are things that canhappen in the world that can make this untrue(as happens too often for papers on my desk).
But, by and large, it is an effective way of
dealing with what would otherwise be an
impossible representational task.
The ability to be active and mobile in theworld is an important resource, particularly
for perceptual processing. Ballard (1991)
demonstrates this in his analysis for what hecalls an animate vision system. Ballard rejects

The simplest model for resource management
is the central planning model…

the idea of a vision system as a passive device
whose job is to construct a detailed representation of a scene from a position. Rather, theanimate vision system has positional andgaze control mechanisms that support active
seeking of information. By moving the pointof vision while staying focused on a particularspot, it becomes much easier to isolate a “picture” of an individual object. All and justthose spots that don’t have relative motion
with respect to the point of focus are part ofthe same object (roughly speaking). In thisway, a high virtual resolution can be achieved
with a low-resolution device if the system cancontrol the direction of gaze.
Lesson: Knowledge about and the ability
to interact with the world can be traded off
against computational resources.

Adaptive Agent Specialization.

Systemsare often made up of agents with different
capabilities. A crucial issue in making gooduse of resources is the adaptability of the mixof agent types. Nature makes good use of this.
For example, in a honey bee hive, a variety ofworker bees serve in specific roles (Wilson
1971). Some forage for nectar, some unload
the nectar from the foragers, some build thehive, some take out the garbage, and so on.
Although it looks like a genetic adaptation
with fixed numbers of bees in different genetic castes, this is not the case. When a queen
bee goes off to start a new hive with anumber of workers, all the workers do all thetasks. It is only gradually that workers takefixed roles. As the season changes, and foragers have to go farther afield to find flowers,
they take longer to get back. If an unloader
has to wait too long for a forager to return,the unloader shifts task and becomes a forager, thereby shifting the balance between
foragers and unloaders. Several similar simple
adaptive mechanisms help to maintain theoverall worker balance.
A similar adaptation was a characteristic of
the Enterprise system (Malone et al. 1988).
Enterprise is a system similar to SPAWN. However, sellers of services rather than buyers did
the bidding. A Lisp processor needing a service, such as compiling or printing a file,

FALL 1991

73

AAAI-90 Presidential Address

With Component
Selection Advisor
EngineerEngineer

Manufacturing
DesignEngineer 1

Engineering
DesignProcurement
Engineer 2

Manufacturing
DesignComponent
Selection
Advisor
Vendors

Procurement

Vendors
Service

Problem: Select components to minimize cost

Figure 6. Design and Manufacturing Cost Modeler (DMCM).
A sequential design process is often used. DMCM supports communication, breaking the sequential nature of designand development.

broadcast this need. Servers on the network
bid to fulfill the service requests. There weredifferent speed servers, and communication
could take different amounts of time depending on network connections. A bid consistedof an expected time till completion of therequested job. A service requester waited toget a set of bids and then chose the server
promising earliest completion. Queue balancing was achieved without servers having tocommunicate because ser vers with fullqueues would not bid. In addition, there wasan increased ability for a server to do a job
fast if it had already been doing it. Software
to do a task was loaded on demand (sometimes from files, sometimes just by paging in
the working set); so having done a task
recently reduced the overhead for doing thesame kind of task again soon. Some processors became specialized in printing after they
had all the fonts loaded, and so on. And likethe bees, when the environment changed,
the balance of processors tuned to particulartasks could shift. Adaptation is a crucial issue
in maintaining good resource use.
As the Internet evolves from a communication resource to a knowledge resource, with74

AI MAGAZINE

many useful agents available for certain tasks,
it will probably start to look like a knowledge
market (Stefik 1988). Integrators will put
together services composed of agents foundon the net, and offer these combinations forsale. Stefik points out that a useful addition
to the network as knowledge medium will beagents specializing in metaservices. By “meta”
here, I mean those that deal with the finding
and manipulating of knowledge agents rather
than providing knowledge for some task in
the world. For example, one might find certifiers and testers of knowledge services (theNational Bureau of Standards or the Consumer
Reports of the knowledge market). It will benecessary to have agents that fill a role playedby current publishers: filtering, formatting,and distributing knowledge. There will beagents that serve as contract negotiators andbankers will deal with issues of making
appropriate payments for use of individual
packages. These metaresources amplify theeffects of being in a highly connected, knowledge-rich world.
Lesson: Specialization of agents, by design
or adaptation, can increase the effective useof resources.

AAAI-90 Presidential Address

Goal Coordination
A simple computational model of multi-agent
problem solving postulates a single agent incontrol, directed toward a single goal. This
central planner creates or initializes otheragents, and gives them their individual subtasks and evaluation criteria for determining
successful completion. Agents work on theirassigned subtask until they are finished (theymight fail); agents are then reassigned by thecentral planner. If we think of a businessorganization as the paradigmatic multi-agent
system, we see this simple model is violated
in a number of ways. First, each agent has
multiple goals and will work to satisfy anumber of them simultaneously. Some standing goals are related to the agent’s role in theorganization, some to his(her) nature as ahuman being, and others to particular task
assignments. Second, varying goal set andagent types can lead to different trade-offs inperforming a task and determining its successful completion. Finally, there is no necessary
guarantee that an agent will work directly
and completely on one given task.
For a system of agents of this type toachieve a common goal, agreement on future
action must be reached. This requires communication among the participants to consider
trade-offs that span multiple agents and theirgoals, and developing ongoing joint commitments to action. Knowledge-based systems
can facilitate this person-to-person communication.

Component Adviser.

In Xerox, likemany companies, the traditional process ofdesign starts with a specification given toengineers. Engineers then try to design adevice with the specified functionality andwith minimal cost. But engineers often take avery narrow view of relevant costs, usually
restricting themselves to the unit manufacturing cost of the device. Every penny counts.
After the engineers complete their design, it isevaluated and possibly modified by manufacturing engineers who want to minimize manufacturing costs, especially tool setup costs,
which the design engineer usually hasn’t considered (figure 6). Finally the design can end
up being modified in the field when service
problems arise, although this should be
avoided because of the high cost. This waterfall model of design (one stage following only
after all considerations from a previous stage
have been accounted for) leads to long timeto-market because of the serial dependencies.
It also often results in overly expensive systems cost if one counts both manufacturing
and service costs.

To improve the design process within Xerox,
the Knowledge Based System Competency
Center (KBSCC) has built a system to help
coordinate many different trade-offs in theearly stages of copier part design (Hatfield
and Crowfoot 1990). The Design and Manufacturing Cost Modeler (DMCM) is a rule-based
system linked to company databases that
describe standard parts, material costs, and soon. The system is usable by an engineer assoon as a preliminary design is completed.
The engineer wants to use DMCM because it
does automatic cost estimating of a part. Costestimating can be painful because it is bothtime consuming and detailed, and might
require not easily accessible current knowledgeof Xerox processes and material procurements.
DMCM supports communication of information from one part of the organization toanother and makes the design engineer’s job
easier. It allows an engineer to make costcomparisons of two partially completed
designs. It provides advice to make a partmore manufacturable, allowing the engineer
to avoid the delays inherent in getting a finished design back for redesign because it
cannot be manufactured easily. Further, DMCM
can estimate service costs for particular purchased parts (for example, a 24 volt motor
versus an 18 volt motor), feeding back analyses to the engineer, and feeding forward
advance information to the purchasing
department for long lead-time items.
Lesson: A system representing goals andtrade-offs of different kinds of agents can be
an effective tool for communication andcoordination.

Conversation-Based Coordination.
The Coordinator (Winograd 1988) illustrates
how even a partial formalization of knowledge of human processes can be helpful incoordination; based on the premise thatpeople act through language, it uses a formalization of speech acts to structure communication. The Coordinator is an augmentationof a standard electronic mail system. Electronic messages in a business setting can be categorized as moves in a conversation. For
example, one message can be a request, andanother commits a person to a future action.
Most speech acts can be thought of as a kindof commitment: An assertion commits aperson to backing the truth of what is said; apromise commits a person to some future
course of action. By viewing messages as
moves in a conversation, one can put constraints on responses. Certain moves set up
the expectation for others in return. For
example, a request is usually followed by apromise, a refusal, or a counter offer.

FALL 1991

75

AAAI-90 Presidential Address

AI… must connect with the real tasks that give rise to theintellectual puzzles on which we spend much of our time.

The Coordinator is a semiformal system—
one that has a formal representation of only
part of the information available in the electronic mail. The Coordinator knows about
the structure of conversations, and the categories of speech acts. Dates for promises, theidentities of the senders and recipients ofmessages, and the state of each conversation
are understood and manipulated. The English
text contained in the body of the message isinterpreted only by the human users. The
Coordinator organizes and reports the
progress of conversations in which a user isinvolved; it highlights such things as requests
that have not been responded to, commitments the user has that are pending, and due
dates for each commitment.
In addition to such conversations for action,
Winograd’s language/action perspective distinguishes three other kinds of conversations.
Characterized by different moods and purposes of the participants, there are conversations
for orientation (creating shared background),clarification (checking background assumptions), and the exploration of possibilities(speculating on alternatives). Each is supported by a formalized theory of the moves in thelanguage game. Partial formalizations such asthese, combined with appropriate viewing
tools, can support work groups in coordinating their multiple goals and activities.
Missing is a formal model of what it means
to have a commitment. Cohen and Levesque(Cohen and Levesque 1990; Levesque, Cohen,
and Nunes 1990) have studied the commonsense relationships that exist among terms
such as belief, commitment, goal, plan, andaction. They developed a formalization that
captures many of our intuitions about theseterms and how they relate to each other.
Although not yet used as the basis for a cooperative system, their analysis is an important
step in understanding the requirements forsuch a system, and understanding the rela-76

AI MAGAZINE

tion of communication requirements andjoint action.
Lesson: Formalization need not be complete
to be useful in aiding human coordination.

Integration with Work Practice
If we look at the papers in AI conferences andjournals, very few make explicit reference toreal-world problems. For AI to be successful asa science and in engineering, it must connect
with the real tasks that give rise to the intellectual puzzles on which we spend much of
our time. When we ignore this grounding, weconstruct for ourselves two traps: the NP-hardtrap—the need to do well on problems thatnever arise in practice—and the AI-hard trap—
the need to solve all problems from scratchusing the tools and techniques from artificial
intelligence programming practice.

NP-Hard Trap
A common and often useful technique in science is to find an abstraction of a problem,
and work to find a general solution to thatclass of problems. The problem-space difficulty is often thought to be characterized by thecomplexity of the hardest problem in thespace. Sometimes people realize that thismight be an untypical measure, and move tothe average time to solve problems over theentire space. Both of these can be inappropriate measures though.
Let us look at a simple example where thefallacy of the worst case can be easily seen.
Consider the problem of factoring a number.
To guarantee that you can find a factor for
any number is thought to be NP-hard, andthis difficulty is the basis for the use of thisproblem in various cryptographic techniques.
But consider the problem in practice. Half ofthe numbers you might pick at random aredivisible by 2; a third by 3; and so on. In fact

AAAI-90 Presidential Address

almost all numbers are easily factorable. Thusin ordinary practice, finding a factor for anumber is easy, and the only hard problem isfinding a number for which simple algorithms
don’t work. Worrying about the worst-caseanalysis can sometimes lead to pretty mathematics, but poor science and engineering.
But what about using average case results.
Suppose N is the measure of problem size.
Suppose a small fraction of the problems ofany size are really hard, with difficulty growing exponentially, say as 2N. But suppose thefraction of hard problems goes down with thesize of the space—say only 1/N of them aredifficult. Suppose the remaining problems(most of them) can be solved in some constant time. The average time for solution forthis “almost always easy” problem is dominated by 2N/N, which is exponential. On theother hand, if you asked for the proportion ofproblems solved in a time proportional to N,
it would be getting closer and closer to 1. So
worst-case and average times are not necessarily good measures of how well algorithms cando. Unfortunately, almost all the analyses in
AI papers are of this form.
AI-Hard Trap

A great deal of interesting software technology has been driven by needs of the AI community. Automatic storage management systems,
symbolic computation, backtracking anddependency-directed backtracking, and reflective systems and even time sharing were
inventions of AI researchers. AI languages arevery well developed; Common Lisp is one of
the world’s great program libraries. This successas we see it has sometimes led to ignoring systems that can be made up of pieces built indifferent languages and in different styles.
Simplifications are often ignored, especiallywhen choosing the right part of the problem
for the machine, and the right part for a
person. Given that tasks are part of a wider
human context, it is useful to remember that
we need not live by AI alone.

Programming System Integration
An interesting exception to the rule that AI
systems are written completely in an AI programming language is the Ford Motor Company ESCAPE system (Di Santas and Smith
1990). A central computer is connected to all
the Ford dealers within the United States andCanada. Each night a large Cobol program
collects information and requests from allthese dealers. Some requests are for refunds
for services performed under warranty. Warranty rules are complicated, particularly overthe broad range of vehicles under consideration, and change over time. Whenever achange was made in the set of warranty rules,
it was necessary to implement the change as amodification to the Cobol program thatchecked compliance of requests with the rules.
This led to a couple of serious problems. First,
the translation of a rule to a Cobol program
to check that rule took significant time to getright. So the system’s rules were usually not
up to date. Second, there was no way for the
warranty administrators to check whether
their intentions were accurately translated
because they did not read Cobol. This sometimes led to disagreements with dealers when
there was a discrepancy between what was implemented and the rules the dealers were told.
The solution adopted by Ford was to build arule-based program to check the warranties’
regulations. However, rather than having to
replace the entire Cobol program, this module,
written in ART-IM, was embedded in the Cobol
program. By defining suitable interfaces, thisstandard expert system technology could be
used in the context of the working Cobol program that embodied knowledge about communication, data storage and retrieval, and soon. The results were remarkable from Ford’s
point of view. Although there was a small performance penalty for using the rule-based
system, the time for updating shrank by anorder of magnitude, and their confidence inhaving the correct translation rose dramatically. They reported that the Warranty
Administrator now was willing to participate
in the checking and formalization of the rules
as written in the rule language.
Lesson: AI technology can provide a bridge
between programming and standard work
practice, and play a key role in the overallsystem architecture.

… it is usefulto rememberthat we need
not live by AI
alone.

Business Practice Integration
A somewhat different notion of integration of
AI into work practice has been adopted by theMrs. Fields Cookie Company. Founded in theheart of Silicon Valley, Mrs. Fields has been auser of sophisticated computing from theopening of their first store. A repertoire ofcomputer-based tools ranging from electronic
mail to online databases is provided to theirmore than 200 franchises. Some tools use AI
technology, and integrate information from anumber of sources. For example, there is a rulebased adviser for planning the amount ofcookies to be baked tomorrow. It can use sales
information from the database for last year at
this time, for the past days and weeks, as well
as local information such as the current

FALL 1991

77

AAAI-90 Presidential Address

weather, holidays, and scheduled special events.
A real-time adviser using sales information
makes recommendations about whether togive away free samples. It considers how
many cookies of what kinds have sold, howlong it will be before the next batch will beout, and how long different cookies havebeen around; Mrs. Fields cookies are always
served fresh—within two hours or so after
baking. Another program provides guidancefor office managers in interviewing potential
employees, suggesting questions to ask andevaluation criteria. All these expert systems
programs can operate as a “glass box” rather
than just giving directions about what to do.
This means that as people use the programs,
they can “see” what is going on inside if theywish, and hence learn why things are done
instead of just what to do.
Lesson: AI technology helps integrate traditional programs with expert advisers. These
can improve people’s skills and adaptability
in the context of the company work practice.

Information Integration
Information is only useful when presented at
the right time. The JANUS etc. system (Fischer,
Lemke, and McCall 1990) is an interesting
integration of two systems that didn’t work as
well as expected separately, but work muchbetter together. Both systems are intended asmodels for teaching and information-providing services. Their example domain is designed
to teach people about architectural designprinciples for kitchens.
The JANUS - VIEWPOINTS system provided a
hypertext-based system, allowing a user toexplore the space of alternatives and theirtrade-offs in kitchen design. Users participating in an experiment took guided tours of thehypertext, or did free exploration that allowed
them to focus on areas of particular personal
interest. After they felt comfortable, they
were asked to design a kitchen for themselves,using a computer-based construction kit that
simplified making the drawings for the design.
There was a palette with drawings of tables,
stoves, refrigerators, and so on. These could
be picked up and placed in the diagram. The
construction kit program was on the same
computer as the hypertext and could be easily
consulted. However, when doing the design,
subjects seldom used the hypertext to check
what they had learned (and hence often madesuboptimal decisions). When asked, they said
it took too long to find what they wanted in
the hypertext, and they were unsure of where
to look or what issues were at stake.
As an alternative approach, Fischer and hiscolleagues built an expert adviser that would
78

AI MAGAZINE

monitor work with the construction kit. Anytime the user added or moved something in
the kitchen, the JANUS-CRACK rule-based critics
evaluated the changed situation. When it
detected a problem, a critic immediately
pointed this out to the user with a brief comment. For example, if the stove were put rightnext to a door, the critic might comment:“this stove placement could be a fire andburn hazard to passers-by (such as small children).” Users had the option of responding to
the advice by changing the design. In changing their design in response to the comment,
users might make another mistake. For example, they might place the stove too far away,
hence making the work triangle larger than
the recommended size. In this experiment,
the users learned only from trial and error,
and had nothing but the pointed commentsof the critic to guide them; hence, it wasquite understandable that they might make aseries of mistakes placing the same appliance.
When CRACK and VIEWPOINTS were connected, users exhibited interestingly different
behavior. When a critic commented on a user
action, a user could click in the visual interface to get directly to the related argument
structures in the VIEWPOINT hypertext. They
did this often and at that point they weremore disposed to read about trade-offs andheuristics for the appliance they were working with. They learned more than what their
mistake was, and produced better resulting
designs. This program illustrates providing
appropriately contextualized information forproper learning.
Lesson: Integrating action and informationworlds makes learning more effective. AI technology can provide the bridge between these.

Multidiscipline/Work PracticeIntegration
As a final example, I want to look at a systemthat is putting it all together. LMS (Sullivan,
Fordyce, and LMS Team 1989) is a real-time,transaction-based, integrated knowledgebased decision support system. It is installed
in an IBM semiconductor manufacturing
facility where it is helping to improve thetool utilization and cycle time in the plant by
supporting short-term and tactical decision
making. Before the system was put in place
there was a complex of other systems: Someof these were ultrareliable data systems thatrecorded transactions on particular machines;
others were paper-based systems that contained information such as process specifications, machine and operator evaluations, andlot locations. Each individual system wasstate of the art at the time it was installed.

AAAI-90 Presidential Address

The challenge for AI for the decade is to deal with the issues ofinteraction.

Because they were purchased separately, there
was independent ownership by different
groups. These factors presented several social
and technical barriers to linking up the different systems. The total system was runningaround 240,000 transactions a day. Without
the tools to integrate this flow, the IBM MIS
group felt that they were “data rich and information poor.”
IBM did the implementation of the integrated system in stages. First, they made realtime connections to the existing technology,
and provided various users and managers
personalized views and selections from theongoing stream. Then they empowered themto make online decisions. With buy-in fromthese users, rules for proactive interventions
by a knowledge-based system could be added
to the transaction recording and viewing
system. Scheduling, decision making, andreporting tools employed AI technology, but
only as one of a wide variety of resources,
both computational and human. The end
results were quite astonishing. Not only did
IBM save lots of money with improved
throughput at the plant, they improved their
human resources as well. “We started withsome knowledge engineers who in the courseof this work became expert in our systems
operations; we also have expert users who
now do their own knowledge engineering.
There is no single expert who can do what isdone by LMS.”
Lesson: AI can be the glue to empower
people close to the work to make good realtime decisions. Systems must embrace manytechnologies, and be brought in with a senseof ownership at all levels of the work force.

The Challenge
The challenge for AI for the decade is to deal
with the issues of interaction. The interaction
between agents requires establishing, maintaining, and extending common ground.
Common ground between human and computational systems can be aided by mediatorsthat link to the capabilities and natural properties of task agents, people, and the world welive in. We need systems that are open andcan grow; that allocate resources fairly to getjobs done without requiring either centralizedplanning or excessive communication. With
agents with multiple goals, coordination ofactions must proceed through mutual commitments. Finally, we must realize that not all
problems of interest are AI problems, nor are
results relevant to our research always to befound just in journals of our fields.
In working with intelligent agents, it isuseful to explore what is happening in suchfields as cognitive psychology, anthropology,
economics, neural modeling, and in the restof computer science. The natural tendency of
any science is to isolate itself as a community,and develop its own practices. But AI mustcross the boundaries; to be intelligent is to be
intelligent about something; success mustcome in the context of tasks from outside thefield. People who are part of the systems must
be moved as high as possible in the intellectual food chain, so that participation in thesystem helps them to be better in ways thatthey care about. We must not just look tobuild intelligent systems to solve specificproblems; we need to learn how to help corporations and nations build intelligent organizations that support human values, andenhance the world we live in.

Acknowledgments
This article and the lecture it was based on
greatly benefited from suggestions by Johande Kleer, Jim des Rivieres, Brian Falkenhainer,
Olivier Raiman, Mark Shirley, Mark Stefik,
and Brian Williams.

References
Ballard, D. 1991. Animate Vision. Artificial Intelligence 48(1): 57–86.

FALL 1991

79

AAAI-90 Presidential Address
Clark, H., and Wilkes-Gibbs, D. 1986. Referring as a
Collaborative Process. Cognition 22:1–39.
Cohen, P., and Levesque, H.1990. Intention Is
Choice with Commitment. Artificial Intelligence
42(3): 213–262.
Di Santas, J, and Smith, R. 1990. The Ford ESCAPE
system for Claims Authorization Processing. In
Innovative Applications of Artificial Intelligence 1, eds.
A. Rappaport and R. Smith, 203–216. Menlo Park,
Calif.: AAAI Press.
Fischer, G.; Lemke, A.; and McCall, R. 1990.
Towards a System Architecture Supporting Contextualized Learning. In Proceedings of the Eighth
National Conference on Artificial Intelligence,
420–425. Menlo Park, Calif.: American Association
for Artificial Intelligence.
Gasser, L. 1991. Social Conceptions of Knowledge
and Action: DAI Foundations and Open Systems
Semantics. Artificial Intelligence 47(1–3): 107–138.
Guha, R. 1990. The Representation of Defaults in
Cyc. In Proceedings of the Eighth National Conference on Artificial Intelligence, 608–614. Menlo
Park, Calif.: American Association for Artificial
Intelligence.
Hatfield, S., and Crowfoot, N. 1990. KnowledgeBased Systems in Cost Estimating and Design. Autofact `90, November 12–15, 21-1–21-10.

Sheridan, T. B. 1984. Supervisory Control of
Remote Manipulators, Vehicles, and Dynamic Processes: Experiments in Command and Display
Aiding. In Advances in Man-Machine System Research
1, 49–137. Greenwich, Conn.: JAI Press.
Silverman, S.; Dixon, J.; Fink, T.; Kotas, P.; Shoop,
A.; Ramesh, B.; Klahr, P.; and Abche, A. 1991. A
Real-Time Alarm Analysis Adviser. In Innovative
Applications of Artificial Intelligence 2, eds. A. Rappaport and R. Smith, 101–116. Menlo Park, Calif.:
AAAI Press.
Smith, M. L. 1991. Cooperating Artificial Neuraland Knowledge-Based Systems in a Truck Fleet
Brake-Balance Application. In Innovative Applications of Artificial Intelligence 2, eds. A. Rappaportand R. Smith, 264–280. Menlo Park, Calif.: AAAI
Press.
Stefik, M. 1988. The Next Knowledge Medium. In
The Ecology of Computation, ed. B. Huberman,
315–342. Amsterdam: North Holland.
Sullivan, G.; Fordyce, K.; and LMS Team. 1989.
Logistics Management System: Implementing theTechnology of Logistics with Knowledge-BasedExpert Systems. In Innovative Applications of Artificial Intelligence 1, eds. H. Schorr and A. Rappaport,
183–200. Menlo Park, Calif.: AAAI Press.

Huberman, B., ed. 1988. The Ecology of Computation. Amsterdam: North Holland.

Waldspurger, C.; Hogg, T.; Huberman, B.; Kephart,J.; and Stornetta, S. 1989. SPAWN : A Distributed
Computational Economy, SSL-89-18, Xerox PARC,
Palo Alto, California.

Kiczales, G.; des Rivieres, J.; and Bobrow, D. G.
1991. The Art of the Metaobject Protocol. Cambridge,
Mass.: MIT Press.

Wiederhold, G. 1991. Mediators in the Architectureof Future Information Systems. Washington, D.C.:
IEEE Computer Society. Forthcoming.

Laird, J. E.; Newell, A.; and Rosenbloom, P. S. 1987.
SOAR: An Architecture for General Intelligence. Artificial Intelligence 33(1): 1–64.

Wilson, E. O. 1971. The Insect Societies. Cambridge,
Mass.: Harvard University Press.

Levesque, H.; Cohen, P.; and Nunes, J. 1990. On
Acting Together. In Proceedings of the Eighth
National Conference on Artificial Intelligence,
94–99. Menlo Park, Calif.: American Association for
Artificial Intelligence.

Winograd, T. 1988. A Language Perspective on the
Design of Cooperative Work. In Computer-Supported
Cooperative Work: A Book of Readings, ed. I. Greif,
623–653. San Mateo, Calif.: Morgan Kaufmann.

Lumer. E., and Huberman, B. A. 1990. Dynamics ofResource Allocation in Distributed Systems, SSL-9005, Xerox PARC, Palo Alto, California.
Malone, T. 1987. Modeling Coordination in Organizations and Markets. Management Science 33(1):
1–19.
Malone, T.; Fikes, R.; Grant, K.; and Howard, M.
1988. Enterprise: A Market-Like Task Scheduler forDistributed Computing Environments. In The Ecology of Computation, ed. B. Huberman, 177–205.
Amsterdam: North Holland.
Newell, A. 1982. The Knowledge Level. Artificial
Intelligence 18(1): 87–127.
Rappaport, A., and Smith, R., eds. 1991. Innovative
Applications of Artificial Intelligence 2. Menlo Park,
Calif.: AAAI Press.
Robertson, G.; Card, S.; and Mackinlay, J. 1989. The
Cognitive Coprocessor Architecture for Interactive
User Interfaces. In Proceedings of UIST, 10-18. New
York: Association of Computing Machinery.

80

AI MAGAZINE

Daniel Bobrow is a research
fellow at Xerox Palo Alto
Research Center in the scientific and engineering reasoning area in the Systems
Sciences Laboratory. He is apast president of the American Association for Artificial
Intelligence and a past chairof the Cognitive Science Society. He has done research in
AI , particularly knowledge representation andexpert systems, cognitive science, programming
languages, and operating systems and is interested
in the integration of these ideas to improve ourknowledge of human thinking and make better thehuman condition.