Tải bản đầy đủ (.pdf) (10 trang)

Electronic Business: Concepts, Methodologies, Tools, and Applications (4-Volumes) P245 ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (377.25 KB, 10 trang )

2374
Patterns for Designing Agent-Based E-Business Systems
DJHQWVFDQEHFODVVL¿HGDVdelegates, representing
a single user and acting on his behalf, or mediators
or intermediaries acting on behalf of a group of
users, facilitating between them.
It is important to point out that objects cannot
achieve these goals directly. A differentiating
characteristic between agents and objects is their
autonomy. Autonomy is here used in an extended
sense. It not only comprises the notion that agents
operate in their own thread of control, but also
implies that agents are long-lived (they execute
unattended for long periods), take initiative (they
do not simply act in response to their environ-
ment), react to stimuli from the environment as
guided by their goals (the receiving agent decides
whether and how to respond to a stimulus), and
i n t e r a c t w i t h o t h e r a g e n t s t o l e v e r a g e t h e i r a b i l i t i e s
in support of their own as well as collective goals.
Active objects, on the other hand, are autonomous
RQO\LQWKH¿UVWRIWKHVHVHQVHV
A society of agents can be viewed from two
dual perspectives: either a society of agents
emerges as a result of the interaction of agents,
or the society imposes constraints and policies on
its component agents. Both perspectives, which
we can refer to as micro and macro view of the
society, respectively, mutually reinforce each
other, as shown in Figure 3. For example, emer-
gent behaviors such as specialization of agents


leads to the notion of roles that agents play, which
allow us to codify expectations about an agent.
Roles, in turn, impose restrictions on the possible
behaviors of agents (Ferber, 1999).
This suggests two approaches to systematically
GHVLJQLQJDJHQWVRFLHWLHV,QWKH¿UVWDSSURDFK
we identify top-level goals for the system and
decompose them recursively, until we can assign
t h e m t o i n d i v i d u a l a g e n t s . I n t h e s e c o n d a p p r o a c h ,
we construct an agent society incrementally from
a catalog of interaction patterns (Kendall et al.,
1999). These interaction patterns are described
in terms of roles that agents can play and their
interactions and may also specify any societal
FRQVWUDLQWVRUSROLFLHVWKDWQHHGWREHVDWLV¿HG
Roles are abstract loci of control (Ferber, 1999;
Kendall, 1999; Riehle & Gross, 1998). Protocols
(or patterns of interaction) describe the way the
UROHVLQWHUDFW3ROLFLHVGH¿QHFRQVWUDLQWVLPSRVHG
by the society on these roles (Weiss, Gray, & Diaz,
1997; Zambonelli, Jennings, et al., 2001). As an
example of a policy, consider an agent-mediated
DXFWLRQZKLFKVSHFL¿HVFRQYHQWLRQVVSHFL¿F
to its auction type (for example, regarding the
order of bids; ascending in an English auction,
descending in a Dutch auction) that participating
agents must comply with in order for the auction
to function correctly.
Many types of applications, including elec-
tronic commerce systems, can be modeled using

User, Task, Service, and Resource roles, and their
subtypes. Figure 4 depicts these roles and their
subtypes used in this chapter in a role diagram,
using the notation introduced in Kendall (1999).
Role diagrams are more abstract than class
GLDJUDPV (DFK UROH LQ WKH GLDJUDP GH¿QHV D
Figure 2. Role diagram for the
USER AGENT pattern
2375
Patterns for Designing Agent-Based E-Business Systems
position and a set of responsibilities. A role has
collaborators—other roles that it interacts with.
Arrows between roles indicate dynamic interac-
tions between roles; their direction represents the
direction in which messages are sent. The triangle
indicates a subtyping relationship between roles;
subtypes inherit the responsibilities of their parent
roles and add responsibilities of their own (e.g.,
Buyer from Trader).
The User role encapsulates the behavior
of managing a user’s task agents, providing a
presentation interface to the user and collecting
SUR¿OHLQIRUPDWLRQDERXWWKHXVHUDPRQJRWKHU
responsibilities. A Task role represents users
LQDVSHFL¿FWDVNW\SLFDOO\DORQJOLYHGUDWKHU
than one-shot transaction. In this context, we
only consider Trader agents, which can either
represent the user as a Buyer or Seller. The com-
mon functionality of both roles (for example,
they represent the negotiation strategies of their

users) is represented in the trader role. Another
example of a Task role would be a search role
that encapsulates the behavior of making queries
WRWKH:HERQWKHXVHU¶VEHKDOIDQG¿OWHULQJWKH
results. One could also model transactions as a
separate Transaction role as proposed by Ulmer
(2004), representing the transactions a Task agent
engages in.
A Mediator role typically provides a service
to a group of users. It mediates the interaction
between two or more agents through this service.
One example is a directory agent that provides a
reference to an agent given its name (white pages
agent), or references to agents that can provide a
certain product or service (yellow pages agent).
More advanced services facilitate more complex
Figure 3. Micro-macro view of an agent society
Figure 4. Top-level roles and their subtypes in this pattern language
2376
Patterns for Designing Agent-Based E-Business Systems
interactions between agents, for example, enforc-
ing an auction protocol. For example, see the
recommender agents described in Weiss (2004)
or the direction and auction agents in Fonseca,
Griss, and Letsinger (2001).
The Resource role abstracts information
sources. These can be legacy data sources wrapped
E\³JOXH´FRGHWKDWFRQYHUWVJHQHULFUHTXHVWVIURP
other agents to the API of the data source. These
can be agents that process more complex queries

E\¿UVWEUHDNLQJWKHPGRZQLQWRVXETXHULHVDQG
then collating the results. Resource agents are
a form of Indirection Layer (Avgeriou & Zdun,
  1R W L ¿H U DJH Q W VD O VR E HO RQ JLQW K L VFD WHJRU \
they can be instructed to generate an alert when
a certain condition in a data source is being met.
For example, the Amazon Deliver’s agent sends e-
PDLOVWRXVHUVZKHQDERRNPHHWLQJXVHUVSHFL¿HG
criteria (such as author) is added to a catalog.
Resulting Context
For members of an agent society to understand
each other, they need to agree on common ex-
change formats, as described in
COMMON VOCABU-
LARY. For agents that act on behalf of a single user,
which is what e-business front-end system are
concerned with, consult
AGENT AS DELEGATE. For
agents that facilitate between a group of users and
their agents, refer to
AGENT AS MEDIATOR described
in more detail in Weiss (2004).
AGENT AS DELEGATE
Context
You are designing your system as a society of
autonomous agents (
AGENT SOCIETY) and want to
delegate a user’s time-consuming, peripheral tasks
to software assistants.
Problem

How do you instruct assistants? How much dis-
cretion should you give to assistants? How do
you manage the assistants that perform tasks on
your behalf?
Forces
• Information overload
• Search costs
Solution
Use agents to act on behalf of the user. They are
the system’s interface to the user and manage
WDVNVSHFL¿FDJHQWVVXFKDVEX\HURUVHOOHUDJHQWV
on the user’s behalf. User agents can also learn
about the needs of the user by building a user
SUR¿OHIURPDKLVWRU\RILQWHUDFWLRQV7KLVXVHU
SUR¿OHDOORZVVHOOHUVWRFXVWRPL]HWKHLURIIHULQJV
W RVS H FL ¿ FX VHU W D VWH V ZK L OH W KH X V HU D JH QWVF RQW U RO 
ZKDWSDUWRIDSUR¿OHVHOOHUVFDQDFFHVV
The structure of this pattern is shown in Figure
5. This role diagram shows the roles agents need
WR ¿OO LQ WKH SDWWHUQ 1RWH WKDW ZH LQWURGXFHG
the role of a Trader agent, as discussed in
AGENT
SOCIETY
, which contains the beliefs and behavior
common to both Buyer and Seller agents. For
example, both Buyer and Seller agents have a
belief for the desired price and make offers and
counter-offers to other agents.
Resulting Context
For the interaction with the user to gather their

requirements and feedback on the quality of the
service received by a seller and for managing
Task agents, consult
USER AGENT. Also consult
USER AGENT for measures to control access to user
SUR¿OHV)RUWKHGHVLJQRI7UDGHUDJHQWVVHH
BUYER
AGENT
and SELLER AGENT.
2377
Patterns for Designing Agent-Based E-Business Systems
COMMON VOCABULARY
Context
When agents in an AGENT SOCIETY interact, they
need to agree on common exchange formats. One
scenario is that you are using agents to represent
customers and sellers in individual transac-
tions—
BUYER AGENT and SELLER AGENT. Buyer and
s e l l e r a g e n t s n e e d t o u n d e r s t a n d e a c h o t h e r i n o r d e r
to exchange messages with one other. Another
VFHQDULRLVWKDW\RXQHHGWRGHULYHDXVHUSUR¿OH
from user interactions —
USER PROFILING—and you
require your information sources such as product
catalogs to be well structured.
Problem
How do you enable agents (for example, buyer and
seller agents) to interact? How can you make it
easier for a comparison-shopping agent to extract

data from a catalog?
Forces
• Multiple interfaces
Solution
In the example, for buyer and seller agents to
understand each other, they need to agree on a
common message format that is grounded in a
FRPPRQRQWRORJ\7KHRQWRORJ\GH¿QHVSURGXFW
related concepts that each party must use during
interaction, their attributes, and valid value ranges.
On receiving a message, the seller agent translates
WKHUHTXHVWWRDVHOOHUVSHFL¿FIRUPDWDQGIHWFKHV
the contents of the product database.
,WLVJHQHUDOO\LPSUDFWLFDOWRGH¿QHDJHQHUDO
purpose ontology for agent interaction. These are
unlikely to include the intricacies of all possible
domains. Instead, the common ontology will be
DSSOLFDWLRQVSHFL¿F*LYHQVXFKDVKDUHGRQWRO-
ogy, the communicating agents need to map their
internal representations to the shared ontology.
Much progress has been made on XML-based
ontologies for electronic commerce, for example,
xCBL, cXML, and RosettaNet, in recent years.
Given that buyer and seller agents adopt one of
these standards as their internal representation
of domain concepts, the problem remains of
building inter-ontology translators. One prag-
matic approach to ontology mapping using XSLT
(XML stylesheet language transformation) is
described in Carlson (2001). However, refer to

the references in the Resulting Context for more
complex mappings.
The structure of this pattern is shown in Fig-
XUH7KLV¿JXUHZDVDGDSWHGIURP&ROOLVDQG
Lee (1999).
Resulting Context
T h i s p a t t e r n d o e s n o t i t s e l f l e a d t o o t h e r p a t t e r n s i n
this pattern language. But patterns for ontologies
have been documented elsewhere (Aranguren,
2005; Reich, 2000). A current overview on tech-
Figure 5. Role diagram for
AGENT AS DELEGATE
2378
Patterns for Designing Agent-Based E-Business Systems
niques for ontology mapping, which could be
mined for further ontology mapping patterns, can
be found in Staab and Stuckenschmidt (2006).
USER AGENT
Context
You are delegating tasks to an agent—AGENT AS
DELEGATE
—which autonomously performs the
task on behalf of the user. Now you want to cre-
ate a locus of control through which the users can
interact with the agents created on their behalf.
Problem
+RZGR\RXPDQDJHWKHXVHU¶VSUR¿OHDQGFRQWURO
access to it and the various (concurrent) transac-
tions in which the user participates?
Forces

• Privacy concerns
• Ensuring quality
Solution
User agents form the interface between the user
and the system receive the user’s queries and
feedback, and present information tailored to
users. A user agent delegates the user’s queries or
orders (offers to buy/sell an item) to a trader agent
and manages the various buyer and seller agents
on behalf of its user. The user agent manages the
XVHU¶VSUR¿OHDQGFRQWUROVZKRFDQDFFHVVLW7KH
2 S HQ3 U R¿ O L QJ6 W DQG D U G : &   ZD V D QH D UO \
example of employing user agents in this way. In
WKLVSURSRVDOSUR¿OHLQIRUPDWLRQIRUGLIIHUHQW
VHOOHUVZDVVWRUHGLQDSHUVRQDOSUR¿OHUHSRVLWRU\
6HFWLRQVRI WKH SUR¿OH FRXOG EHUHVWULFWHG WRD
subset of the sellers. In the SOaP system (Voss &
Kreifelts, 1997), user agents track all task agents
for tasks in which a user is engaged.
The structure of this pattern is shown in
Figure 7.
Resulting Context
A user can subscribe to the progress of a query
or an order by instructing a
NOTIFICATION AGENT
to monitor its status. For more on modeling the
user that requires explicit user input is kept at a
minimum; consult
USER PROFILING.
BUYER AGENT

Context
You are delegating tasks to an agent—AGENT AS
DELEGATE
—and provide a locus of control where
users can interact with their agents—
USER AGENT.
You need an agent to represent a user as a cus-
tomer in a transaction with sellers in an electronic
marketplace.
Figure 6. Role diagram for
COMMON VOCABULARY
2379
Patterns for Designing Agent-Based E-Business Systems
Problem
How do you communicate your goals and buying
strategy?
Forces
• Autonomy
Solution
A buyer agent can tailor the selection and presenta-
tion of products to the needs of its user. It locates
seller agents that offer the requested product or
service and negotiates with them about price and
other terms of sale (e.g., shipping). Kasbah and
Tete-a-Tete (Guttman & Maes, 1999) are systems
that use this approach. In these systems, each buyer
agent is given such information as the desired
price, the maximum price to pay, and the time
by which a purchase needs to be completed. In
Tete-a-Tete, the agents are negotiating about other

criteria than just price such as shipping terms or
extended warranties. The virtual marketplace
architecture in Greengrass, Sud, and Moore (1999)
uses mobile buyer agents to represent the user in
a particular transaction. A further consideration
LVZKHWKHUDEX\HUDJHQWQHHGV¿QDODSSURYDOWR
complete a transaction.
7KHEX\HUUROHLVGH¿QHGDVDVXEUROHRIWKH
trader role in Figure 7 above.
Resulting Context
For buyer and seller agents to understand each
other, they need to agree on a
COMMON VOCABULARY
for exchanging messages during the negotiation.
%X\HUDQGVHOOHUDJHQWV¿QGHDFKRWKHUWKURXJK
AGENTS AS MEDIATORS (Weiss, 2004). In Greengrass
et al. (1999) and Fonseca et al. (2001), a directory
facilitator plays the role of a mediator.
SELLER AGENT
Context
You are delegating tasks to an agent—AGENT AS
DELEGATE
—and provide a locus of control where
users can interact with their agents—
USER AGENT.
You now need an agent to represent a seller in
a transaction with customers in an electronic
marketplace.
Problem
How do you communicate your selling strategy

to an agent?
Forces
• Autonomy
Figure 7. Role diagram for USER AGENT
2380
Patterns for Designing Agent-Based E-Business Systems
Solution
A seller agent offers products and services to
buyer agents (directly or through a market). It
answers queries for information about its owner’s
products or services, responds to RFPs, and enters
into negotiation with buyer agents. A seller agent
encapsulates its execution state and the seller’s
selling strategy (e.g., a function for setting bids).
In Kasbah (Guttman & Maes, 1999) seller agents
p e r i o d i c a l l y s e n d o f f e r s t o b u y e r a g e n t s , e a c h t i m e
adjusting their offers according to a concession
strategy. In the virtual marketplace by Greengrass
et al. (1999) stationary seller agents negotiate
with mobile buyer agents. In the mobile shopper
scenario in Fonseca et al. (2001), seller agents bid
in competition with one another to satisfy a buyer
agent’s call for proposal.
7KHVHOOHUUROHLVGH¿QHGDVDVXEUROHRIWKH
trader role in Figure 7.
Resulting Context
For buyer and seller agents to understand each
other, they need to agree on a common exchange
format, as described in a
COMMON VOCABULARY.

%X\HUDQGVHOOHUDJHQWV¿QGHDFKRWKHUWKURXJK
AGENTS AS MEDIATORS (Weiss, 2004). If you wish to
make different offers to different buyers, creating
a custom catalog for each buyer by tailoring the
FRQWHQWVRIDJHQHULFFDWDORJWRWKHEX\HU¶VSUR¿OH
consult
CATALOGING.
USER PROFILING
Context
You provide a locus of control—USER AGENT—
where users can interact with their agents. You
receive instructions and feedback from the user.
<RXZDQWWRGHULYHDSUR¿OHWKDWGHVFULEHVWKHXVHU
from these interactions. Once you have deduced
DXVHUSUR¿OH\RXFDQSURYLGHLWWRVHOOHUVZKR
want to personalize the customer’s experience, for
example, by creating a custom catalog based on
the user’s preferences and buying pattern.
Problem
+RZFDQ\RXFDSWXUHWKHXVHUV¶SUR¿OHVZLWKRXW
requiring too much explicit input? This can be-
FRPHLQYROYHGLI\RXZDQWWRWUDFNXVHUV¶SUR¿OHV
as their interest changes.
Forces
• Adaptability
Solution
During the interaction with a user, the system
EXLOGV D XVHU SUR¿OH E\ VWDWLF XVHU PRGHOLQJ
FODVVLI\LQJWKHXVHULQWRSUHGH¿QHGXVHUFODVVHV
(stereotypes), or dynamic user modeling (monitor-

LQJXVHUDFWLYLW\DQGFKDQJLQJWKHSUR¿OHG\QDPL-
cally). For example, in Ardissono et al. (1999),
XVHUSUR¿OHVFRQWDLQDFROOHFWLRQRILQWHUHVWVLQ
addition to generic information about the user.
Interests contain descriptions of the topics the
user is interested in. Interests may also contain
ZHLJKWVHJIX]]\ORJLFTXDQWL¿HUVWKDWGH¿QH
the degree of interest the user has in a topic. The
agent may also tailor its interaction style, provid-
ing more or less detail depending on the user’s
receptivity.
It is desirable to limit the amount of explicit
input required from the user, for example, in
the form of rules. Although manual setting of
WKHXVHUSUR¿OHUHVXOWVLQDYHU\SUHFLVHSUR¿OH
WKLVLVGLI¿FXOWWR SHUIRUPFRUUHFWO\H[FHSWIRU
an advanced user (Brenner et al., 1998). On the
other hand, it is advantageous to know as much
as possible about the user to start with in order to
keep the learning phase short. The user agent can
request the user to provide demographic informa-
tion such as sex, age, and profession, which allow
us to group the user into a class. The interests of
2381
Patterns for Designing Agent-Based E-Business Systems
the user are then initialized to those typical for
this class of users.
From the point of view of limiting user input,
LQLWLDOL]LQJWKHXVHUSUR¿OHE\REVHUYLQJWKHXVHU¶V
behavior over time is most desirable (Brenner,

Zarnekow, & Wittig, 1998). The user’s personal
preferences can then be deduced using cluster
analysis. This has the added advantage that it is
HDV\WRDGDSWWKHXVHUSUR¿OHWRFKDQJHVLQWKHLU
LQWHUHVWV2QFHWKHXVHUSUR¿OHVKDYHEHHQLQL-
WLDOL]HGWKHXVHUDJHQWFDQXSGDWHWKHSUR¿OHE\
soliciting feedback on query results from the user,
or to rate a seller on her quality of service after
WKHRUGHUKDVEHHQIXO¿OOHG$W\SLFDOH[DPSOHIRU
OHDUQLQJDXVHUSUR¿OHIURPXVHUIHHGEDFNLVWKH
Letizia user agent (Lieberman, 1998). The Sporas
system for reputation management (Zacharia et
al., 1999) ranks sellers on their past performance
as assessed by user feedback.
,Q)LJXUHWKHDUURZODEHOHG³IHHGEDFN´
indicates how the user agent receives feedback
from the user after evaluating the quality of the
result returned.
Resulting Context
7RFRQVW UXFWFRPSOH[XVHUSUR¿OHVHJEDVHGRQ
user navigation patterns), the information sources
such as product catalogs must be well struc-
tured—
COMMON VOCABULARY—and comparable
on the basis of their content. If the items in an
information source cannot be compared in terms
RIDWWULEXWHVFROODERUDWLYH¿OWHULQJFDQVWLOOKHOS
\RXFUHDWHXVHIXOVLPSOHUXVHUSUR¿OHV²
RECOM-
MENDER (Weiss, 2004).

CATALOGING
Context
<RX DUH GHULYLQJ D XVHU SUR¿OH IURP XVHU LQ-
teractions—
USER PROFILING. You are using an
agent to represent a seller in a transaction in a
marketplace—
SELLER AGENT. You wish to tailor
the contents of your catalog to individual buyers
EDVHGRQWKHLUXVHUSUR¿OHV
Problem
How do you customize a catalog?
Forces
• Information overload
• Multiple interfaces
Solution
A product extractor dynamically creates a cus-
tomized view on the catalog. It selects the prod-
ucts that best match the customer’s preferences
by comparing the product features with those
FRQWDLQHGLQWKHSUR¿OH$XVHUSUR¿OHFRQWDLQV
predictive information about the user’s preferences
WRZDUGSURGXFWIHDWXUHVDVGH¿QHGE\WKHSURGXFW
categories. The view may also be customized
regarding generic traits of the user (e.g., his level
of expertise, job, or age).
Tailoring the product catalog to the user re-
solves the force of information overload. A large
electronics parts catalog, for example, may contain
50,000 parts, of which only a small subset are

relevant to the needs of an individual customer.
By extracting a customized view of the catalog
w e s h ow o n l y t h o s e p a r t s m a t c h i n g f e a t u r e s s p e c i -
¿HGLQWKHXVHUSUR¿OH$QH[DPSOHRIXVLQJWKLV
pattern is the personalized Web store architecture
presented in Ardissono et al. (1999).
Existing product catalogs can be integrated
with the agent-based subsystem through catalog
agents. Each catalog agent is a
WRAPPER (Weiss,
WKDW³DJHQWL¿HV´DQH[LVWLQJFDWDORJFRQ-
YHUWLQJDFDWDORJVSHFL¿FVFKHPDWRDFRPPRQ
schema used by the product extractor. In addition
WR¿OWHULQJWKHFRQWHQWVRIWKHFDWDORJDJDLQVWWKH
EX\HU¶VSUR¿OHGLVFRXQWVFDQDOVREHRIIHUHGWR
individual customers to entice existing custom-
2382
Patterns for Designing Agent-Based E-Business Systems
ers to remain loyal to the business, as well as to
attract new customers.
The structure of the pattern is shown in Fig-
ure 8.
Resulting Context
To control what information is disclosed to the
VHOOHUWKHXVHUSUR¿OHVKRXOGEHPDLQWDLQHGE\
the user agent, and supplied to the seller agent on
request. For addressing privacy concerns when
DFFHVVLQJXVHUSUR¿OHVFRQVXOW
USER AGENT. For a
G L VF X V VL RQ RQR EW D L Q L Q JW K HXV H US UR ¿ OH V IR UW D L OR U-

ing the content of a generic catalog to a buyer’s
SUR¿OHFRQVXOW
USER PROFILING. Consult NOTIFICA-
TION AGENT, if you want to notify the customer
about changes to the catalog (e.g., the addition
RIDQHZZLGJHWWKDWPDWFKHVWKHXVHU¶VSUR¿OH
(DFKFDWDORJDJHQWLVDZUDSSHUWKDWDJHQWL¿HV
DQH[LVWLQJFDWDORJFRQYHUWLQJDFDWDORJVSHFL¿F
schema to a common schema—
WRAPPER (Weiss,
2004).
NOTIFICATION AGENT
Context
You provide a locus of control—USER AGENT—
where users can interact with their agents, and
want to subscribe to the progress of a transaction.
You want to notify the customer about changes to
the catalog—
CATALOGING. In both cases, you need
to monitor a data source (e.g., a product catalog)
for changes or the progress of a transaction.
Problem
How to keep users informed about changes of
interest to them.
Forces
• Information overload
Solution
7KH VROXWLRQ LQYROYHV D QRWL¿FDWLRQ DJHQW WKDW
resides close to the information source. It moni-
tors the information source for changes of interest

by registering with the information source or by
FRQWLQXRXVO\SROOLQJLW1RWL¿FDWLRQDJHQWVFDQ
be considered a special type of mobile agent that
RQ O\PRYHWRDVLQJOHUHPRWHORFDWLRQ$QRWL ¿FD-
tion agent is created with a condition, typically
comprising an event (such as the posting of a
product for sale) and a boolean expression on
the event data (such as the name of a product).
:KHQHYHULWGHWHFWVDQHYHQWRIWKHVSHFL¿HGW\SH
at the remote location, it evaluates this condition.
,IWKHFRQGLWLRQLVVDWLV¿HGWKHDJHQWQRWL¿HVWKH
user agent.
Figure 8. Role diagram for
CATALOGING
2383
Patterns for Designing Agent-Based E-Business Systems
7KHEHQH¿WVRIXVLQJWKLVSDWWHUQDUHVLPLODUWR
those of sending a mobile agent to another host and
letting it interact remotely. It reduces the number
of messages between the user agent and the in-
formation source. The example of a meta-auction
e n g i n e s u c h a s Au c t i o nWa t c h e r (2 0 0 2) m a k e s t h i s
c l e a r : i t c r e a t e s a n a g e n t t h a t m o n i t o r s t h e p r o g r e s s
RIDQDXFWLRQRQWKHXVHU¶VEHKDOIDQGQRWL¿HVWKH
user about events of relevance, for example, when
the user has been outbid and when the user should
increase her maximum bid. Without a meta-auc-
tion engine, the user agent would have to poll the
state of the auction periodically.
The structure of this pattern is shown in

Figure 9.
Resulting Context
<RXZDQWWRXVHWKHVDPHQRWL¿FDWLRQDJHQWZLWK
multiple sellers. Therefore, you decide to employ
WRAPPER (Weiss, 2004) agents that translate from
WKHIRUPDWRIVHOOHUVSHFL¿FLQIRUPDWLRQVRXUFHV
WRWKDWXQGHUVWRRGE\WKHQRWL¿FDWLRQDJHQW
Examples
The following examples illustrate some uses of
WKHSDWWHUQVGHVFULEHGLQWKLVFKDSWHU7KH¿UVW
example, an online auction, demonstrates how
agents can be used in the negotiation phase (Gutt-
man & Maes, 1999) of an e-business transaction,
in which buyers and sellers negotiate the terms
of a transaction (such as price and warranty).
The second and third examples show agents in
operation during the information phase (Guttman
& Maes, 1999), in which buyers navigate product
catalogs and use mediators to locate sellers that
offer a certain product or establish their actual
needs.
Online Auction
In this example, in an online auction, users post
items for sale, while other users place bids on
those items. A user may be represented—
AGENT
AS DELEGATE
—by multiple BUYER and SELLER
AGENTS
in concurrent transactions. These agents

are all managed by a
USER AGENT that provides a
single interface to the user. In our example, the
user Bob is represented in the auction by a seller
agent, while the users Alice and Mary act as
buyers via their buyer agents, as shown in Figure
10. The auction mechanism is implemented by a
mediator agent—
AGENT AS MEDIATOR. This agent
provides a
MEETING PLACE (Deugo et al., 2001) for
buyers and sellers. It maintains a catalog of items
for sale and a list of auctions with administrative
information for each one (highest bid, reserve
price, and remaining duration of the auction).
The mediator receives requests from sellers to
create an auction, bids from buyers, and, if the
type of auction allows it (e.g., in an English auc-
tion), informs each buyer agent about a new bid,
as well as the outcome.
Buyer agents implement the bidding strategies
of their users (characterized by parameters such
as starting price, maximum price, and rate of
increase). They also inform them about important
Figure 9. Role diagram for
NOTIFICATION AGENT

×