Transcript Intelligent Agent Technology and Application
Agent Technology
©Intelligent Agent Technology and Application, 2008, Ai Lab NJU Course overview and what is intelligent agent
Before we start
2
Software Agent: Prof. Tao Xianping
Intelligent Agent: A. Prof., Dr. Gao Yang
Email: [email protected]
83686586(O)
Ai Lab, CS Dept., NJU
Room 403-A, Mengminwei Building
Http://cs.nju.edu.cn/gaoy
Courseware could be found from my homepage.
©Gao Yang, Ai Lab NJU
Sept. 2008
Motivation
Agents, the next paradigm for software?
Agent-Oriented taking over for Object-Oriented?
Agents is crucial for open distributed systems?
Agents the most natural entity in e-business and other e-***?
Agent and peer-to-peer, sensor network technologies inseparable?
Which is the killer application using the agent technology?
3
©Gao Yang, Ai Lab NJU
Sept. 2008
What will you learn from this course?
Upon completed this course a student should
•
Know what an agent and an agent system is.
•
Have a good overview of important agent issues:
•
Agent Negotiation, Coordination and Communication.
•
Micro and macro agent Architectures.
•
Agent Learning.
•
Agent Model and Theory.
•
Agent-oriented Software Engineering.
•
Get valuable hands-on experience in developing agent system.
4
©Gao Yang, Ai Lab NJU
Sept. 2008
Lectures: Part A
1 st Week
Course overview and what is intelligent agent
2 nd 3 rd Week
Negotiation in MAS(i)
Week
Negotiation in MAS(ii)
4 th 5 th 6 th 7 th Week Week Week Week
Agent learning (i) Agent learning (ii) Agent communication language Application: RoboCup, Trading Agent Competition & Intelligent Game
8 th Week
Agent architectures
9 th Week
Agent model and theory
5
©Gao Yang, Ai Lab NJU
Sept. 2008
Other Issues
Other issues:
– –
Architectures of multi-agent system(Macro) Coordination in MAS
–
Agent oriented software engineering
–
Agent oriented programming
–
Agent and p2p computing
–
Agent and Grid computing
–
Classification of agents and its application 6
©Gao Yang, Ai Lab NJU
Sept. 2008
Recommended books
Michael Wooldridge. “An Introduction to MultiAgent Systems”, 2002 Shi Zhong-zhi. “Intelligent Agent and Its Application” (in Chinese). Science press, 2000.
G.Weiss, editor. "Multiagent Systems". MIT Press, 1999. J. Ferber. "Multi-Agent Systems". Addison-Wesley, 1999. G. M. P. O'Hare and N. R. Jennings, editors. "Foundations of Distributed AI". Wiley Interscience, 1996.
M. Singh and M. Huhns. "Readings in Agents". Morgan-Kaufmann Publishers, 1997.
And other choiced papers and websites.
7
©Gao Yang, Ai Lab NJU
Sept. 2008
Assessment
Lecturee 10%
Experiments 30%
Final Exam(open) 60% 8
©Gao Yang, Ai Lab NJU
Sept. 2008
What is intelligent agent
9
Field that inspired the agent fields?
–
Artificial Intelligence
Agent intelligence and micro-agent
–
Software Engineering
Agent as an abstract entity
–
Distributed System and Computer Network
Agent architecture, MAS, Coordination
–
Game Theory and Economics
Negotiation There are two kinds definition of agent
–
Often quite narrow
–
Extremely general ?
Agent
©Gao Yang, Ai Lab NJU
Sept. 2008
General definitions
10
American Heritage Dictionary
–
”... One that acts or has the power or authority to
act
... or
represent
another”
Russel and Norvig
–
”An agent is anything that can be viewed as
perceiving
its environment through sensors and
acting
upon that environment through effectors.”
Maes, Parrie
–
”Autonomous agents are computational systems that
inhabit
some complex dynamic environment,
sense
and
act
autonomously in this environment, and by doing so
realize
a set of goals or tasks for which they are designed”.
©Gao Yang, Ai Lab NJU
Sept. 2008
Agent: more specific definitions
Smith, Cypher and Spohrer
–
”Let us define an agent as a persistent software entity dedicated to a specific purpose.
’Persistent’
distinguishes agents from subroutines; agents have their own ideas about how to accomplish tasks, their own agendas.
’Special purpose’
distinguishes them from multifunction applications; agents are typically much smaller.
Hayes-Roth
–
”Intelligent Agents continuously perform three functions:
perception
of dynamic conditions in the environment;
action
to affect conditions in the environment; and
reasoning
to interpret perceptions, solve problems, draw inferences, and determine actions.
11
©Gao Yang, Ai Lab NJU
Sept. 2008
Agent: industrial definitions
IBM
–
”Intelligent agents are software entities that carry out some set of operations on behalf of a user or another program with some degree of independence or autonomy , and in doing so, employ some knowledge or representations of the user’s goals or desires ” 12
©Gao Yang, Ai Lab NJU
Sept. 2008
Agent: weak notions
Wooldridge and Jennings
– An Agent is a piece of hardware or (more commonly) software based computer system that enjoys the following properties
Autonomy : agents operate without the direct intervention of humans or others, and have some kind of control over their actions and internal state;
Pro-activeness : agents do not simply act in response to their environment, they are able to exhibit goal-directed behavior by taking the initiative.
Reactivity : agents perceive their environment and respond to it in timely fashion to changes that occur in it.
Social Ability : agents interact with other agents (and possibly humans) via some kind of agent communication language.” 13
©Gao Yang, Ai Lab NJU
Sept. 2008
Agent: strong notions
Wooldridge and Jennings
–
Weak notion in addition to
Mobility : the ability of an agent to move around a network
Veracity : agent will not knowingly communicate false information
Benevolence : agents do not have conflicting goals and always try to do what is asked of it.
Rationality : an agent will act in order to achieve its goals and will not act in such a way as to prevent its goals being achieved 14
©Gao Yang, Ai Lab NJU
Sept. 2008
Summary of agent definitions
An agent act on behalf user or another entity.
An agent has the weak agent characteristics . (Autonomy, Pro activeness, Reactivity, Social ability)
An agent may have the strong agent characteristics . (Mobility, Veracity, Benevolence, Rationality) 15
©Gao Yang, Ai Lab NJU
Sept. 2008
Dear child gets many names…
Many synonyms of the term “Intelligent agent”
–
Robots
–
Software agent or softbots
–
Knowbots
–
Taskbots
–
Userbots
–
…… 16
©Gao Yang, Ai Lab NJU
Sept. 2008
Why the buzz around the agents?
Lack of programming paradigm for distributed systems.
Tries to meet problems of the “ closed world ” assumption in object-orientation.
Agents is a frequently used term to describe software in general (due to vague definition) .
Massive media hype in the era of the dot-coms.
17
©Gao Yang, Ai Lab NJU
Sept. 2008
Autonomy is the key feature of agent
Examples
–
Thermostat
Control / Regulator
Any control system
–
Software Daemon
Print server
Http server
Most software daemons
Sensor Input
18
©Gao Yang, Ai Lab NJU Agent Environment Action Input
Sept. 2008
Thinking…
Give other examples of agents (not necessarily intelligent) that you know of. For each, define as precisely as possible:
–
(a). the environment that the agent occupies, the states that this environment can be in, and the type of environment.
– –
(b). The action repertoire available to the agent, and any pre-conditions associated with these actions; (c). The goal, or design objectives of the agent – what it is intended to achieve.
19
©Gao Yang, Ai Lab NJU
Sept. 2008
Thinking again…
If a traffic light (together with its control system) is considered as intelligent agent, which of agent’s properties should be employ? Illustrate your answer by examples.
20
©Gao Yang, Ai Lab NJU
Sept. 2008
Type of environment
An agent will not have complete control over its environment, but have partial control, in that it can influence it.
–
Scientific computing or MIS in traditonal computing.
Classification of environment properties [Russell 1995, p49]
–
Accessible vs. inaccessible
–
Deterministic vs. non-deterministic
–
Episodic vs. non-episodic
–
Static vs. dynamic
–
Discrete vs. continuous 21
©Gao Yang, Ai Lab NJU
Sept. 2008
Accessible vs. inaccessible
Accessible vs. inaccessible
–
An accessible environment is one in which the agent can obtain complete, accurate, up-to-date information about the environment’s state. (also complete observable vs. partial observable)
–
Accessible: sensor give complete state of the environment.
–
In an accessible environment, agent needn’t keep track of the world through its internal state.
22
©Gao Yang, Ai Lab NJU
Sept. 2008
Deterministic vs. non-deterministic
Deterministic vs. non-deterministic
–
A deterministic environment is one in which any action has a single guaranteed effect , there is no uncertainty about the state that will result from performing an action.
–
That is, next state of the environment is completely determined by the current state and the action select by the agent.
–
Non-deterministic: a probabilistic model could be available.
23
©Gao Yang, Ai Lab NJU
Sept. 2008
Episodic vs. non-episodic
Episodic vs. non-episodic
–
In an episodic environment, the performance of an agent is dependent on a number of discrete episodes, with no link between the performance of an agent in different scenarios. It need not reason about the interaction between this and future episodes. (such as a game of chess)
–
In an episodic environment, agent doesn’t need to remember the past, and doesn’t have to think the next episodic ahead. 24
©Gao Yang, Ai Lab NJU
Sept. 2008
Static vs. dynamic
Static vs. dynamic
–
A static environment is one that can assumed to remain unchanged expect by the performance of actions by the agents.
–
A dynamic environment is one that has other processes operating on it which hence changes in ways beyond the agent’s control.
25
©Gao Yang, Ai Lab NJU
Sept. 2008
Discrete vs. continuous
Discrete vs. continuous
–
An environment is discrete if there are a fixed, finite number of actions and percepts in it.
26
©Gao Yang, Ai Lab NJU
Sept. 2008
Why classify environments
The type of environment largely determines the design of agent.
Classifying environment can help guide the agent’s design process (like system analysis in software engineering).
Most complex general class of environments
–
Are inaccessible, non-deterministic, non-episodic, dynamic, and continuous.
27
©Gao Yang, Ai Lab NJU
Sept. 2008
Discuss about environment: Gripper
Gripper is a standard example for probabilistic planning model
–
Robot has three possible actions:
paint (P)
,
dry (W)
and
pickup (U)
–
State has four binary features:
block painted
,
gripper dry
,
holding block
, gripper clean
–
Initial state:
–
Goal state: 28
©Gao Yang, Ai Lab NJU
Sept. 2008
Discuss about environment: Gripper
(P,1,1) s8 s12 (U,0.95,1) (P,1,-1) s7 (W,0.8,-0.1) s4 (U,0.95,-0.1) (P,0.1,-1) s6 (U,0.05,-0.1) s10 (P,0.9,-0.1) (W,0.8,-0.1) (W,0.2,-0.1) s3 (U,0.5,-0.1) (U,0.05,-0.1) s2 (W,0.8,-0.1) (U,0.5,-0.1) s9 (W,0.2,-0.1) (P,0.9,-0.1) (P,0.1,-1) s5 s1 (U,0.5,-0.1) (W,0.2,-0.1) s11 (U,0.5,-1) Gripper
29
©Gao Yang, Ai Lab NJU
Sept. 2008
Thinking…
Please determine the environment’s type.
Chess Poker Mine sweeper E shopping Accessible??
Deterministic ??
Episodic??
Static??
Discrete??
30
©Gao Yang, Ai Lab NJU
Sept. 2008
Intelligent agent vs. agent
An intelligent agent is one that is capable of flexible autonomous action in order to meet its design objectives, where flexibility means three things:
–
Pro-activeness : the ability of exhibit goal-directed behavior by taking the initiative.
–
Reactivity : the ability of percept the environment, and respond in a timely fashion to changes that occur in it.
–
Social ability : the ability of interaction with other agents (include human).
31
©Gao Yang, Ai Lab NJU
Sept. 2008
Pro-activeness
Pro-activeness
–
In functional system (goal must remain valid at least until the action complete.), apply pre-condition and post condition to realize goal directed behavior.
–
But for non-functional system (dynamic system), agent blindly executing a procedure without regard to whether the assumptions underpinning the procedure are valid is a poor strategy.
Observe incompletely
Environment is non-deterministic
Other agent can affect the environment 32
©Gao Yang, Ai Lab NJU
Sept. 2008
Reactivity
Reactivity
–
Agent must be responsive to events that occur in its environment.
–
Building a system that achieves an effective balance between goal-directed and reactive behavior is hard.
33
©Gao Yang, Ai Lab NJU
Sept. 2008
Social ability
Social ability
–
Must
negotiate
and
cooperate
with others.
34
©Gao Yang, Ai Lab NJU
Sept. 2008
Agent vs. object
Object
–
Are defined as computational entities that
encapsulate
some
state
, are able to perform
actions
, or
methods
on this state, and
communicate
by message passing.
Are computational entities.
Encapsulate some internal state.
Are able to perform actions, or methods, to change this state.
Communicate by message passing.
35
©Gao Yang, Ai Lab NJU
Sept. 2008
Agent and object
Differences between agent and object
–
An object can be thought of as exhibiting autonomy over its state: it has control over it.
But an object does not exhibit control over it’s behavior.
–
Other objects
invoke
their public method. Agent can only
request
other agents to perform actions.
–
“
Objects do it for free, agents do it for money.”
–
(implement agents using object-oriented technology)……
Thinking it.
36
©Gao Yang, Ai Lab NJU
Sept. 2008
Agent and object
–
In standard object model has nothing whatsoever to say about
how to build systems that integrate reactive, pro-active, social behavior
.
–
Each has their own thread of control. In the standard object model, there is a
single thread
of control in the system.
–
(agent is similar with
an active object
.)
–
Summary,
Agent embody stronger notion of autonomy than object
Agent are capable of flexible behavior
Multi-agent system is inherently multi-threaded 37
©Gao Yang, Ai Lab NJU
Sept. 2008
Agent and expert system
Expert system
–
Is one that is capable of solving problems or giving advice in some knowledge-rich domain.
The most important distinction
–
Expert system is
disembodied
, rather than being situated.
–
It do not interact with any environment. Give feedback or advice to a third part.
–
Are not required to interact with other agents.
38
©Gao Yang, Ai Lab NJU
Sept. 2008
Example of agents
Mobile Customer
Agent (Peer) Mobile Customer
39
©Gao Yang, Ai Lab NJU Agent (Peer) Agent (Peer) Mobile Customer Agent (Peer) Mobile Customer
Sept. 2008
Distributed Artificial Intelligence (DAI)
40
DAI is a sub-field of AI
DAI is concerned with problem solving where agents solve (sub-) tasks (macro level)
Main area of DAI
–
Distributed problem solving ( DPS )
Centralized Control and Distributed Data (Massively Parallel Processing)
–
Multi-agent system ( MAS )
Distributed Control and Distributed Data (coordination crucial) Some histories
©Gao Yang, Ai Lab NJU
Sept. 2008
DAI is concerned with……
Agent granularity (agent size) Heterogeneity agent (agent type) Methods of distributing control (among agents) Communication possibilities
Distributed AI
MAS
–
Coarse agent granularity
Distributed Computing –
And high-level communication
Artificial Intelligence
41
©Gao Yang, Ai Lab NJU Distributed Problem Solving Multi-Agent Systems
Sept. 2008
DAI is not concerned with……
Issues of coordination of concurrent processes at the problem solving and representational level.
Parallel computer architecture, parallel programming languages or distributed operation system.
No semaphores, monitors or threads etc.
Higher semantics of communication (speech-act level) 42
©Gao Yang, Ai Lab NJU
Sept. 2008
Motivation behind MAS
To solve problems too large for a centralized agent
–
E.g. Financial system
To allow interconnection and interoperation of multiple legacy system
–
E.g. Web crawling
To provide a solution to inherently distributed system
To provide a solution where expertise is distributed
To provide conceptual clarity and simplicity of design 43
©Gao Yang, Ai Lab NJU
Sept. 2008
Benefits of MAS
Faster problem solving
Decreasing communication
–
Higher semantics of communication (speech-act level)
Flexibility
Increasing reliability 44
©Gao Yang, Ai Lab NJU
Sept. 2008
Heterogeneity degrees in MAS
Low
–
Identical agents, different resources
Medium
–
Different agent expertise
High
–
Share only interaction protocol (e.g. FIPA or KQML) 45
©Gao Yang, Ai Lab NJU
Sept. 2008
Cooperative and self-interested MAS
Cooperative
–
Agents are designed by interdependent designers
–
Agents act for increased good of the system (i.e. MAS)
–
Concerned with increasing the systems performance and not the individual agents
Self-interested
–
Agents are designed by independent designer
– –
Agents have their own agenda and motivation Concerned with the benefit of each agent (’individualistic’)
–
The latter more realistic in an Internet-setting?
46
©Gao Yang, Ai Lab NJU
Sept. 2008
Our categories about MAS
Cooperation
–
Both has a common object
Competitive
–
Each have different objects which are contradictory.
Semi-competitive
–
Each have different objects which are conflictive, but the total system has one explicit (or implicit) object The first now is known as TEAMWORK.
47
©Gao Yang, Ai Lab NJU
Sept. 2008
Distributed AI perspectives
Distributed AI Reactive Delibe rative Hyb rid Theory Ar ch it ec tu re La ng ua ge Agent Group Specific Approaches Designer Coopera tion Coor dina tion Ne go ti at io n in nn la Cohe rent Ap pl ic at io ns Testb eds Methods To ol s An al ys is Des ign
48
©Gao Yang, Ai Lab NJU
Sept. 2008
Our Thinking in MAS
Single benefit vs. collective benefit
No need central control
Social intelligence vs. single intelligence
Self-organize system
–
Self-form, self-evolve
Intelligence is emergence, not innative
…..
49
©Gao Yang, Ai Lab NJU
Sept. 2008
Conclusions of lecture
Agent has general definition, weak definition and strong definition
Classification of the environment
Differences between agent and intelligent agent, agent and object, agent and expert system
Multi-agent system is macro issues of agent systems 50
©Gao Yang, Ai Lab NJU
Sept. 2008
References
[Russell 1995] S. Russell and P. Norvig. Artificial Intelligence: A Modern Approach. Prentice-Hall, 1995.
51
©Gao Yang, Ai Lab NJU
Sept. 2008