What is an Intelligent Software Agent?

Chapter 17:
Intelligent Software Agents
Decision Support Systems in the
21st Century, 2nd Edition
by George M. Marakas
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 1
17-1: A World of Delegation and Agency
As in life, we delegate many computer tasks
to “agents” that act in our behalf.
Intelligent software agents allow untrained
consumers to access systems and networks
they would otherwise be kept from.
Many of these run in the background like this
task scheduler.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 2
Some Characters Used to Represent Agents
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 3
There are all Kinds of Agents
The previous slide showed a number of
characters that have been used to represent
software-based agents developed through
Microsoft Agent.
Many agent-based programs are available on
the Internet. The next slide shows one of the
large collection of agents available at The
Agentry (www.agentry.net)
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 4
The Home
Page of The
Agentry
Many agents
and
agent-based
programs are
available here.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 5
Agency Diversification and
Personalization
Long-term developments in the area of
information exchange are moving toward
increasing diversification.
This, in turn, allows for personalization of
information exchange through use of an
agent.
Once tuned to personal wishes, the agent will
allow the user to save the time and money
ordinarily required to search for the
information.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 6
Types of Agency
We can think of agency as the techniques
and applications to personalize processes in
the online marketplace.
The three types of agents that are currently
or will be needed in the future are:
1. Supplier-driven agency, which are “push”
technologies.
2. User-driven agency, which are “pull”
technologies.
3.
An agency that makes the two converge
is an intermediary service.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 7
Predicted Structure of the Online
Marketplace
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 8
17-2: What is an Intelligent Software Agent?
To assist in organizing the characteristics of
agents, we can conceptualize them as
members of three primary divisions:
1. Agent theory – answers the question of
what an agent is as well as the
mathematics for representing them.
2. Agent architecture – conceptualizes the
software engineering models.
3. Agent languages – focuses on the
development and deployment of software
languages for programming and
experimenting with agents.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 9
Characteristics of an ISA
Table 17-1 summarizes the current range of
definitions for intelligent agents and their
basic assumptions.
Common identifying characteristics of these
are:
Autonomy
Reactivity
Personalizability
Discourse
Risk and Trust
Graceful degradation
Mobility
Cooperation
Anthropomorphism
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 10
Identifying Characteristics of Agents
Autonomy – once initiated must exercise
control over its own actions.
Reactivity – must sense changes in
environment and respond in timely fashion.
Personalizability – must be educable in the
task at hand.
Discourse and cooperation – some form of
two-way feedback is required. Also, an agent
may need to invoke another agent to
complete a task.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 11
Identifying Characteristics of Agents
(cont.)
Risk, trust, and domain – must trust the agent
to do its task, which has some risk. To
minimize this, the user needs to know just
where to apply the agent.
Graceful degradation – if the agent has some
difficulty communicating with the user, it
should be able to do some of the tasks.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 12
Identifying Characteristics of Agents
(cont.)
Anthropomorphism – the “humanlike”
properties of the agent. One example (next
slide) is the concept of an avatar, which
represents a principle or view of life.
Mobility – some agents can move from
machine to machine or platform to platform.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 13
On-Screen View of an ActiveWorld
Virtual Community
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 14
Advantages of Transportable Agents
Efficiency – use fewer resources since they
move computation to the data.
2. Fault tolerance – do not require continuous
connection to a machine.
3. Convenient paradigm – hide the channels of
communication but not the location of the
computation.
4. Customization – allow clients and servers to
extend each other’s functionality.
1.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 15
Illustration of a Transportable
Mail Agent
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 16
17-3: Classification of Intelligent
Software Agents
In addition to the identifying characteristics,
there are other ways to classify agents:
Hierarchical classification – Franklin and
Graesser proposed a treelike structure,
illustrated on the next slide.
Categorical classification – classification as
organizational versus personal. Personal
agents are more widespread, but
collaborative technologies such as Lotus
Notes are becoming more popular.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 17
Franklin and Graesser Hierarchical
Classification
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 18
Brustoloni Taxonomy of Software Agents
A three-way categorization
Classification
Description
Regulation Agent
Reacts to each sensory input and
always knows what to do.
Planning Agent
Performs planning functions using
randomizing or case-based
algorithms. Cannot learn.
Adaptive Agent
Can learn while simultaneously
performing planning.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 19
A Taxonomy by Level of Intelligence
Lee, et al, developed a classification based on
the level of intelligence.
 Level 0 – retrieve documents under
straight orders, given the exact location.
 Level 1 – conduct a user-initiated search
activity that can use key words.
 Level 2 – maintain profiles on user. Can
monitor information sources and notify
users.
 Level 3 – agents learn and deduce from
user-specified profiles.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 20
The Types of Problems ISAs Can Solve
Agents can be used to monitor information
sources and report back whenever a keyword
list is “hit”.
News releases can be examined for new
developments in key product markets.
An agent at a help desk can record basic
information on a problem and use it to
retrieve documents from a database.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 21
Classification of ISA Tasks and
Applications
Watcher agents – searches for the emergence of
specific information.
Learning agents – learns from the user’s past or
current behavior.
Shopping agents – searches the Internet for
vendors of a product and returns best prices.
Information retrieval agents – generally, key word
search engines (example on next slide).
Helper agents – perform tasks on the behalf of
their users but without human intervention.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 22
Retrieval
Results
for a Yahoo!
Query on
“George
Marakas”
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 23
Information Overload and Filtering
The typical decision maker is limited in his
cognitive ability to process large volumes of
information.
Having too much data can be bad as having
too little or none, so information filters can be
valuable tools.
One popular type of filter is for e-mail. These
can learn to prioritize, sort, or even block
future messages after monitoring the user.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 24
Three Application Examples
Customer help desk – an agent listens to the
user and makes suggestions before
involving the help technician.
2. Web browser agent – tracks what sites were
visited and keeps a bookmark list. Can also
show the sequences of pages followed.
3. Shopping assistant – after learning the
user’s preferences, looks at online malls for
items of interest.
1.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 25
17-4: Intelligent Software Agents in
e-Business
In their early days, e-commerce agents did not
do well because people were hesitant to turn
them loose. That is not so now.
One application is the automated collaborated
filtering used at sites such as Amazon
Another is the merchant brokering agent which
compares prices for a user-specified product.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 26
Future e-Commerce Applications
Whether agents appear in an evolutionary or
revolutionary manner depends on the future
architect of the Internet.
One argument is about whether agents will
become competitive or cooperative.
A future shift towards more open systems will
also affect the legal treatment of automated
electronic commerce.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 27
Agent Deceit and Malfunction
As programmers become more adept, it will
become possible for them to design malicious
agents.
This would, in turn, create a need for agents
that counter the deceit.
It is also possible for agent technology to
malfunction or, in some other way, not carry
out decision processes correctly.
We might then need agents to monitor other
agents and correct them when they go wrong.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 28
17-5: Designing and Deploying Intelligent
Software Agents
Because this area is still in its infancy,
strategies for design and implementation of
agents are still being developed.
Some of these approaches are displayed in
the next slide.
One is the Gaia methodology, which first tries
to find roles for agents. These roles have
four attributes: responsibilities, permissions,
activities and protocols.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 29
Proposed Approaches to Agent Development
Agent-Oriented Software Engineering
High-Level Methodologies
Design Methods
Design
Patterns
GAIA
MaSE
AOR
Graph
Theory
UML
Components
AIP
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
AUML
Chapter 17 - 30
Multiagent Systems Engineering
Methodology
This alternative to Gaia goes further in
supporting automatic code creation through the
MaSE tool. The MaSE methodology is divided
into seven phases:
1.
2.
3.
4.
Capturing goals
Applying use cases
Refining roles
Creating agent classes
Constructing
conversations
6. Assembling agent
classes
7. System design
5.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 31
Initial System
Context
Goal
Hierarchy
Illustration of
MaSE Phased
Agent
Development
Methodology
Capturing
Goals
Use
Cases
Applying
Use Cases
Sequence
Diagrams
Refining
Roles
Roles
Creating
Agent Classes
Concurrent
Tasks
Ana
lysi
s
Agent
Classes
Constructing
Conversations
Conversations
Agent
Architecture
Deployment
Diagrams
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Des
ign
Assembling
Agent Classes
System
Design
Chapter 17 - 32
The Agent-Object Relationship Method
The AOR approach is inspired by two widely
applied models of databases: the entityrelationship (ER) metamodel and the
relational database (RDB) model.
The AOR model extends the ER model by
providing the ability to model relations
between agents.
Six types of entities exist: agents, events,
actions, commitments, claims, and objects
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 33
UML
UML is the foundation for an architecturecentric design method for multiagent systems.
Building on this, agent-interaction protocols
have a three-layer representation: first
communication, then interaction, and internal
agent processing.
This “Agent UML” has been proposed for
inclusion in the next UML standard and four
new diagrams (ontology, architecture,
protocol and role) have been suggested.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 34
Other Approaches
Design pattern approaches – reoccurring
patterns of program code are classified into
one of three categories (traveling class, task
class, and interaction class). This approach
encourages code reuse.
Components approach – logical groups of
related objects are organized into three tiers
(interaction tier, local information tier, and
information-content tier).
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 35
Agent Accessibility Guidelines
While there is not yet a de facto standard for
design and deployment of agents, this set of
guidelines has been suggested:
1.
2.
3.
4.
5.
Support input and output device independence.
Ensure user access to all content.
Allow configuration not to render some content that
may reduce accessibility.
Ensure user control of rendering.
Ensure user control of user interface behavior.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 36
Agent Accessibility Guidelines (cont.)
6.
7.
8.
9.
10.
11.
12.
Implement interoperable application programming
interfaces.
Observe operating environment conventions.
Implement specifications that benefit accessibility.
Provide navigational mechanisms.
Orient the user.
Allow configuration and customization.
Provide accessible agent documentation and help.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 37
Agent Design Platforms
Most design platforms are marketed as
integrated software development tools.
A typical set of features would include:
 Tools for defining the agents
 Tools for defining interagent conversations
 Tools for associating agent protocols with
individual agents
 Tools for generating behavioral rules.
The next slide illustrates one popular platform
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 38
A Screen Shot from the
AgentBuilder Platform
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 39
17-6:
The Future of Intelligent Software Agents
Software agents may be one of the most
important advancements in the DSS realm
over the next decade.
One reason for this is that sources of
information keep expanding, thus requiring
more data mining tools.
Another reason is that the biggest bandwidth
limitation we have today is the one from the
computer screen to the user’s brain.
Also, both academic and commercial
research are beyond the point of mere theory.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Chapter 17 - 40