st
nd
Chapter 17 - 1
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
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
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 3
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
Many agents and agent-based programs are available here.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 5
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
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.
2.
Supplier-driven agency, which are “push” technologies.
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
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 8
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
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
Mobility
Risk and Trust Graceful degradation
Cooperation Anthropomorphism
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 10
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
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
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
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 14
1.
2.
3.
4.
Efficiency – use fewer resources since they move computation to the data.
Fault tolerance – do not require continuous connection to a machine.
Convenient paradigm – hide the channels of communication but not the location of the computation.
Customization – allow clients and servers to extend each other’s functionality.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 15
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 16
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
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 18
A three-way categorization
Classification Description
Regulation Agent Reacts to each sensory input and always knows what to do.
Planning Agent
Adaptive Agent
Performs planning functions using randomizing or case-based algorithms. Cannot learn.
Can learn while simultaneously performing planning.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 19
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
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
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
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
1.
2.
3.
Customer help desk – an agent listens to the user and makes suggestions before involving the help technician.
Web browser agent – tracks what sites were visited and keeps a bookmark list. Can also show the sequences of pages followed.
Shopping assistant – after learning the user’s preferences, looks at online malls for items of interest.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 25
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
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
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
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
Agent-Oriented Software Engineering
High-Level Methodologies Design Methods
Design
Patterns
Graph
Theory
GAIA MaSE AOR UML
Components
AIP
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
AUML
Chapter 17 - 30
This alternative to Gaia goes further in supporting automatic code creation through the
MaSE tool. The MaSE methodology is divided into seven phases:
1.
Capturing goals
2.
Applying use cases
5.
Constructing conversations
3.
Refining roles
Assembling agent classes
4.
Creating agent classes
6.
7.
System design
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 31
Initial System
Context
Goal
Hierarchy
Illustration of
MaSE Phased
Agent
Development
Methodology
Concurrent
Tasks
Conversations
Agent
Architecture
Deployment
Diagrams
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall
Use
Cases
Sequence
Diagrams
Roles
Agent
Classes
Capturing
Goals
Applying
Use Cases
Refining
Roles
Creating
Agent Classes
Ana lysi s
Constructing
Conversations
Des ign
Assembling
Agent Classes
System
Design
Chapter 17 - 32
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 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
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
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
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
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
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter 17 - 39
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