Transcript PPT
peer-to-peer and
agent-based computing
Agents & Multi-Agent Systems:
Introduction (Cont’d)
Agents: some objections
Objection: agents are just objects!
• Objects:
– Encapsulate state
– Communicate via message-passing
– Have methods corresponding to operations performed
on its state
peer-to-peer and agent-based computing
2
Agents: some objections (Cont’d)
Agents, however, have unique characteristics:
– They embody a stronger notion of autonomy than
objects
– They decide for themselves how to respond to a
message
– They are capable of flexible behaviour
• reactive,
• goal-directed
• social
The standard object model has nothing to say about
these types of behaviour
– They are active
• A MAS is inherently multi-threaded – each agent is assumed to
have at least one thread of control
peer-to-peer and agent-based computing
3
Agents: some objections (Cont’d)
Agents vs. objects
• Agents initiate actions on their own, objects don’t
• Agents are aware of their environment, objects
aren’t
• If requested,
– Objects do it because they have to,
– Agents do it if they decide to…
peer-to-peer and agent-based computing
4
Agents: some objections (Cont’d)
• Objection: agents are just a re-branding of expert
systems.
• Expert systems encapsulate disembodied expertise
about some domain
• Agents are:
– Situated in an environment, and
– Act on that environment.
• However, some real-time (e.g. process control)
expert systems are agents…
peer-to-peer and agent-based computing
5
Agents: some objections (Cont’d)
Is it all AI, then?
• Agents have enjoyed a close relationship with AI,
but they are different (intersecting) fields
• Distributed AI:
– Intelligence emerging from teams of experts
– Distributed problem-solving
• Agents embody and integrate different kinds of
intelligence:
– Planning, reasoning, search, learning, etc.
• No need to solve all of AI to program agents:
– A little intelligence goes a long way…
peer-to-peer and agent-based computing
6
Characteristics of environments
Environments can be:
• Accessible
– agents can obtain complete, accurate and up-to-date
information about the state of the environment.
– The more accessible an environment is, the simpler it is to build
agents to operate in it.
– As an environment becomes more complex, it becomes less
accessible
• Deterministic
– Actions have guaranteed and predictable effects.
– In other words, there is no uncertainty about the state of the
world that will result from performing an action.
– Non-deterministic environments pose greater challenge to
agents’ design
– The physical world can be regarded as non-deterministic (even if
we assume that the physics of the environment can be reliably
modeled).
peer-to-peer and agent-based computing
7
Environments (Cont’d)
Environments can be:
• Static:
– Change only due to the agent’s actions and the effects
of the actions are stable.
• Dynamic:
– Other agents’ actions or entropy may change it.
• Discrete:
– There are a fixed and finite number of possible states.
• Continuous:
– There are infinite possible states.
– A chess game is a discrete environment and taxi
driving is a continuous environment.
peer-to-peer and agent-based computing
8
Inside agents
• Agents are systems/programs that
– Perceive their environment through sensors
– Act upon the environment through actuators
Agent
Sensors
Percepts
?
Actions
Actuators
– Sensors:
• Cameras, keystrokes, streams arriving in sockets, etc.
– Actuators:
• Variable, web page, database entry, robot arm, etc.
peer-to-peer and agent-based computing
9
Inside agents (Cont’d)
• Percept:
– The agent’s perceptual inputs at a given instant
– What the agent makes of the environment
– Percept sequence is the history of what the agent has
perceived so far.
– An agent’s choice of action can depend on the entire
percept sequence observed to date.
• An agent function uniquely defines the behaviour:
f(p1,…,pn) = action1
f(q1,…,qm) = action2
…
– We can provide the same effect with a program!
peer-to-peer and agent-based computing
10
Agent programs
• Simple reflex agent
– Takes action based on current percept
Agent
Sensors
Percepts
What the world
is like now
Condition-action rules
What action I
should do now
Actions
Actuators
peer-to-peer and agent-based computing
11
Agent programs (Cont’d)
• Model-based reflex agent
– Uses model of the world to make up for incomplete
info
Agent
Sensors
State
How the world evolves
Percepts
What the world
is like now
What my actions do
Condition-action rules
What action I
should do now
Actions
Actuators
peer-to-peer and agent-based computing
12
Agent programs (Cont’d)
• Model-based utility-based agent
– Uses utility function to choose among possible actions
Agent
Sensors
State
How the world evolves
What my actions do
Utility
Percepts
What the world
is like now
What it will be
like if I do action A
How happy I will
be in such a state
What action I
should do now
Actuators
peer-to-peer and agent-based computing
Actions
13
The Intentional Stance
• Daniel Dennett coined the term intentional
system to describe entities:
– “whose behaviour can be predicted by the method of
attributing belief, desires and rational acumen”
• When explaining human behaviour, it is
useful to make statements such as:
– John enrolled in the course because he believed
that a degree would help him get a better job
– Sue worked hard because she wanted to
graduate
Daniel Dennett
peer-to-peer and agent-based computing
14
Intentions for Machines?
“To ascribe beliefs, free will, intentions, consciousness, abilities or wants to a
machine is legitimate when such an ascription expresses the same information
about the machine that it expresses about a person
It is useful when the ascription helps us to understand the structure of the machine,
its past or future behaviour, or how to repair or improve it.
It is perhaps never logically required even for humans, but expressing reasonably
briefly what is actually known about the state of the machine in a particular
situation may require mental qualities or qualities isomorphic to them.
Theories of belief, knowledge and wanting can be constructed
for machines in a simpler setting than for humans. Ascription
of mental qualities is most straightforward for machines of
known structure such as thermostats and computer
operating systems, but is most useful when applied to
entities whose structure is incompletely known.”
John McCarthy
peer-to-peer and agent-based computing
15
The Intentional Stance (cont.)
• What objects can be described by the intentional
stance?
“It is perfectly coherent to treat a light switch as a (very
co-operative) agent with the capability of transmitting
current at will, who invariably transmits current when it
believes that we want it transmitted and not otherwise;
flicking the switch is simply our way of communicating
our desires” — Yoav Shoham
• This is absurd, but why?
“… it does not buy us anything, as we understand the
mechanism sufficiently to have a simpler, mechanistic
description of its behaviour.”
peer-to-peer and agent-based computing
16
Intentional Stance as an Abstraction
• A mechanistic explanation of the behaviour of a
very complex system may not be practical
• As computer systems become more complex, we
need more powerful abstractions and metaphors to
explain their behaviour
• In computing, abstractions are important:
–
–
–
–
The procedural abstraction
Abstract data types
Objects
Agents as intentional systems
peer-to-peer and agent-based computing
17
Intentional Stance: Advantages
• It provides us with a familiar, non-technical way of
understanding and explaining agents without the
need to understand the underlying mechanism.
• It gives us the potential to specify systems that
include representations of other systems.
• It allows us to give a very abstract specification and
leave it to the control mechanism, based on a
theory of agency, to determine what to do.
peer-to-peer and agent-based computing
18
Intentional Stance: Limitations
• When modelling communication:
– If Bob says “Computers are the root of all evil”
– What can we say about Bob’s psychological state as a
result of him saying this?
– Can we say Bob believes it? Can we say that we believe
that Bob believes it?
• When modelling organisations:
– Compare
“every lecturer intends to attend the staff meeting”
with
“every lecturer ought to attend the staff meeting”
peer-to-peer and agent-based computing
19
Reading List
• An Introduction to Multi-Agent Systems, M.
Wooldridge, John Wiley & Sons, 2008
• Is it an agent or just a program? S. Franklin and A.
Graesser, available on-line at
http://www.msci.memphis.edu/~franklin/AgentProg.html
• Artificial Intelligence: A Modern Approach (2nd Ed.),
S. Russell and P. Norvig, Prentice-Hall, 2003
• Multi-Agent Systems: A Modern Approach to
Distributed Artificial Intelligence, G. Weiss (editor),
MIT Press, 1999
• Multi-Agent Systems: An Introduction to
Distributed Artificial Intelligence, J. Ferber, AddisonWesley, 1999
peer-to-peer and agent-based computing
20