peer-to-peer and agent-based computing agents & multi-agent systems: introduction (contd)
TRANSCRIPT
peer-to-peer and agent-based computing
Agents & Multi-Agent Systems: Introduction (Cont’d)
peer-to-peer and agent-based computing 2
Objection: agents are just objects!• Objects:
– Encapsulate state– Communicate via message-passing– Have methods corresponding to operations performed
on its state
Agents: some objections
peer-to-peer and agent-based computing 3
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 4
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…
Agents: some objections (Cont’d)
peer-to-peer and agent-based computing 5
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 6
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…
Agents: some objections (Cont’d)
peer-to-peer and agent-based computing 7
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).
Characteristics of environments
peer-to-peer and agent-based computing 8
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.
Environments (Cont’d)
peer-to-peer and agent-based computing 9
• Agents are systems/programs that– Perceive their environment through sensors– Act upon the environment through actuators
– Sensors:• Cameras, keystrokes, streams arriving in sockets, etc.
– Actuators:• Variable, web page, database entry, robot arm, etc.
Inside agents
Enviro
nment
Agent Sensors
Actuators
?
Percepts
Actions
peer-to-peer and agent-based computing 10
• 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:
– We can provide the same effect with a program!
Inside agents (Cont’d)
f(p1,…,pn) = action1
f(q1,…,qm) = action2
…
peer-to-peer and agent-based computing 11
• Simple reflex agent– Takes action based on current percept
Agent programs
Enviro
nment
Percepts
Actions
Agent Sensors
Actuators
What the world is like now
What action I should do now
Condition-action rules
peer-to-peer and agent-based computing 12
• Model-based reflex agent– Uses model of the world to make up for incomplete info
Agent programs (Cont’d)
Enviro
nment
Percepts
Actions
Agent Sensors
Actuators
What the world is like now
What action I should do now
Condition-action rules
State
How the world evolves
What my actions do
peer-to-peer and agent-based computing 13
• Model-based utility-based agent– Uses utility function to choose among possible actions
Agent programs (Cont’d)Enviro
nment
Percepts
Actions
Agent Sensors
Actuators
What the world is like now
What action I should do now
Utility
State
How the world evolves
What my actions do What it will belike if I do action A
How happy I willbe in such a state
peer-to-peer and agent-based computing 14
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 15
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 16
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 17
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 18
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 19
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 20
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 athttp://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, Addison-Wesley, 1999