140 Yi Han and Ingrid Zukerman
consideration due to the violation of a modality constraint, the agents in charge
of it must be removed. Space constraints restrict the size of a presentation com-
ponent in relation to the size of others. Hence, communication between agents is
also required for agents to satisfy space constraints cooperatively. In addition, if
these components are generated by different agents, each agent must ensure the
local consistency of constraints pertaining to its variables (Steps 8, 12 and 15).
Finally, upon completion of the plan generation process, an agent reports back
to the agent in charge of the presentation (Steps 9 and 13): an
OK-event
reports
the success of the plan generation process, and a
rejection-event
reports its fail-
ure. In the former case, the effect of the modified variables on the presentation
plan is determined by means of constraint propagation. Consequently, the agents
in charge can evaluate their constraints and modify their variables accordingly.
Each time an agent produces a presentation component either during the
initial planning stage or during the reactive planning stage, it saves the com-
ponent in the blackboard owned by its master agent. Thus, a master agent can
gather from the blackboard the components generated by its server agents, and
integrate them into a particular format. For instance, the initial presentation of
the text paragraph in Fig. 2 is generated at the same time as the table in a
format that fits the width of the window, and allows the text to be presented
either above or below the table. However, MAGPIE prefers to present the text
next to the table because our eyes naturally move from left to right (Holmes,
1984). Hence, upon completion of the generation of the table, the presentation
planning agent asks the text agent to re-format the text and place it next to
the table (Fig. 2). If time is restricted or there is not enough room next to the
table, the text is displayed below the table (Han and Zukerman, 1995).
As indicated in Section 4.1, the presentation planning procedure may be in-
terrupted at any stage by an urgent event or an announcement. A
remove-agent-
event
or a
time-up-announcement
brings this procedure to an end. In addition,
an agent may receive a
cancel-request-event
while it is handling a request, e.g.,
while it is modifying a plan variable during the reactive planning stage. When
this urgent event interrupts the planning process, the handler of this event aborts
any action that is being carried out, reinstates the previous presentation on the
blackboard, and restarts the process from Step 10 to wait for another event.
6 Presenting Atomic Information: Icon Agent
Agents presenting atomic information generate segments which specify parame-
ters such as the font, color and size of a modality-specific display. In this section,
we describe the planning process of the icon agents in MAGPIE.
An icon agent in MAGPIE generates an icon segment which specifies the
width and the height of an icon (in pixels), and the entry of its bitmap in the
icon library. At present, icons of different sizes are pre-stored in the icon library
and retrieved using an entry code (Han, 1996). For instance, the computer icon
in Fig. 2 is specified in the segment in Fig. 11, where name specifies the object
to be conveyed, i.e., the name of the icon to be retrieved from the icon library,