Transcript PPT
Introduction to Multiagent Systems
Mohsen Afsharchi
An Agent
An agent is anything that can perceive its environment
through sensors and act upon that environment through
actuators
An agent that always tries to optimize an appropriate
performance measure is called a ‘rational agent’.
Human agents (eyes as sensors, hands as actuators)
Robotic agents (cameras as sensors, wheels as actuators)
Software agents (a graphical user interface as sensor and as actuator)
Multiagent Systems
A system that consists of a group of agents that can
potentially interact with each other.
The corresponding subfield of AI that deals with
principles and design of multiagent systems is called
distributed AI.
Software agents on the Internet
Soccer playing robots
Characteristics of MASs
Agent Design
Heterogeneous, different hardware or implement different
behaviors.
Homogeneous, designed in an identical way and have a priori
the same capabilities.
Environment
Static, easier to handle and allow for a more rigorous
mathematical treatment.
Dynamic, presence of multiple agents makes the environment
appear dynamic
Characteristics…
Deterministic vs. Non-deterministic, Do actions have
guaranteed effect?
Discrete vs Continuous, Is the number of actions and
percepts finite? (Does it matter?)
Perception
Distributed, Spatially ; Temporally; Semantically
Observable, Partially or Full
Sensor fusion
Characteristics…
Control
Typically Decentralized.
General problem of multiagent decision making is the subject
of Game theory
Collaborative or Team MAS where the agents share the same
interests
Distributed decision making needs appropriate Coordination
mechanisms
Characteristics…
Communication
for coordination among cooperative agents
for negotiation among self-interested agents
Ontology
Language
Knowledge
Cooperative agents
Competitive agents
Common knowledge
Application
Speedup and efficiency, due to the asynchronous and parallel
computation.
Robustness and reliability, in the sense that the whole
system can undergo a ‘graceful degradation’ when one or more
agents fail.
Scalability and flexibility, since it is easy to add new agents to
the system.
Cost, assuming that an agent is a low-cost unit compared to the
whole system.
Development and reusability, since it is easier to develop
and maintain a modular system than a monolithic one.
Applications
The Semantic Web; Web services are just the start.
Automated manufacturing. [Baker et al., 1999] [Huhns et al.,
2002]
Distributed sensor fusion. [Vidal, 2003] [Scerri et al., 2002] [Ortiz
and Rauenbusch, 2002]
Dynamic resource allocation (who does what). [Mailler et al.,
2003]
Supply-chain automation. [Singh and Huhns, 1999]
Coordination of robots: Mars colonization. [Pirjanian et al., 2000]
Any application where independent localized units must coordinate to
achieve some desired system behavior.
Challenging Issues
How to decompose a problem, allocate subtasks to agents, and
synthesize partial results.
How to handle the distributed perceptual information.
How to enable agents to maintain consistent shared models of
the world.
How to implement decentralized control and build efficient
coordination mechanisms among agents.
How to design efficient multiagent planning and learning
algorithms.
Challenging Issues
How to represent knowledge. How to enable agents to reason
about the actions, plans, and knowledge of other agents.
How to enable agents to communicate. What communication
languages and protocols to use. What, when, and with whom
should an agent communicate.
How to enable agents to negotiate and resolve conflicts.
How to enable agents to form organizational structures like
teams or coalitions. How to assign roles to agents.
How to ensure coherent and stable system behavior.
An Agent: Abstract Architecture
c
Agent Model
I
Perception
a
Agents with State
a
Rational Decision Making
Assuming a discrete set of time t 0,1,2,..., in each of which the
agent must choose an action a t from a set of actions A
To optimally choose an action at time t , it must use its complete
history of observation and action a for t
Mapping function is called the Policy of the agent
(0 , a0 ,1 , a0 ,...,t ) at
An agent that is simply ignoring the past is called a reflect agent
and its policy is called reactive or memory-less (t ) at
in a Markov world an agent can safely use the memory-less
policy for its decision making, in place of the memoryexpensive policy.
State and Observability
The collective information that is contained in the world at any
time step t , is called a state of the world and denoted by
Discrete world : characterized by a finite number of states,
Continuous world
Observable world
Partially Observable world
(stochastic observation model)
Stochastic World…
More on Observability
Noise : e.g. Sensor malfunction
Perceptual Aliasing : different states may produce identical
observations to the agent at different time steps. In other
words, two states may ‘look’ the same to an agent, although the
states are different from each other.
Deterministic world :
Stochastic world :
Utility Maximizing Agents
A goal is just a preference over certain states.
Utility function U(s) is the utility of state for the agent.
The agent in should take the action which maximizes its
expected utility
The function that implements this choice is the policy. In this
case
Optimal Action-Value function
Example
A toy world
Unlike path planning in a deterministic world that can be
described as graph search, decision making in stochastic
domains requires computing a complete policy that maps
states to actions. (Reinforcement Learning)
Deductive Reasoning Agent
Counterpoint: Rodney Brooks believes that the world should be its
own model
Agents as Theorem Prover
w
Action Selection Function
Pragmatics
Building a purely logical agent is impractical.
Proving theorems in first-order predicate logic is slow.
Late actions are based on old information.
But, webservice description languages are built to be used by
logical agents. There might be a new renaissance of logical
approaches.
For example, OWL-S uses service profiles which define services
in terms of their Inputs, Outputs, Pre-conditions.
Agent Oriented Programming
Program agents in terms of mentalistic notions. Pre-cursor to a
lot of important work in agent research.
The hope is that using these abstractions would simplify the
programming of agents.
Introduced by Yoav Shoham in 1990.
The idea was then implemented as AGENT0 [Shoham, 1991]. Not
used anymore.
AOP Primitives
An agent has
Capabilities things it can do.
Beliefs
Commitments things it means to do.
Commitment rules that tell it when to create or drop a
commitment.
The commitment rules have a message condition and a
mental condition (both in the conditional part).
An agent can take a private action which amounts to running
a subroutine, or a communicative action which amounts to
sending a message.
Messages are limited to: requests, unrequests, and inform
messages.
Agent0 Example
I
If I receive a message from agent which requests for me to do action at
time and I believe that
agent is a friend.
I can do action at time,
I am not committed to doing any other action.
then commit to doing action at time.
Going the Wrong Direction?
Deduction is slow.
Deduction is complicated.
Maybe, rationality requires an environment!
Maybe, intelligent behavior emerges from the interaction of
simple behaviors [Minsky, 1988].
Elephants Do not Play Chess !! But?
What is Intelligence?
Is a house fly intelligent?
A house fly is much simpler than most of our attempts at
artificial intelligence
For example…
It is unlikely that a house fly:
Forms 3D surface descriptions of objects
Reasons about the threat of a human with a fly swatter, in
particular about the human’s beliefs, goals, or plans
Makes analogies concerning the suitability for egg laying
between dead pigs
Constructs naïve physics theories of how to land on the ceiling
Real Intelligence!!!
It is much more likely that a house fly:
Has close connection of sensors to actuators
Has pre-wired patterns of behavior
Has simple navigation techniques
Functions almost as a deterministic machine
And yet a house fly is much more successful in the real
world than our attempts at AI
Hey Rodney!
Proposed by Brooks in [Brooks,
1986]: for robots.
Extended it into a new view of
AI,[Brooks, 1991a, Brooks, 1991b].
Key ideas:
Intelligent behavior does not require
explicit representations.
Intelligent behavior does not require
abstract (symbolic) reasoning.
Intelligence is an emergent property of
certain complex systems.
A New Architecture
Follow the evolutionary path of intelligence
Start with simple intelligence
After a successful design, extend to higher levels of
intelligence
Easier to implement than human intelligence
Robust design as higher intelligence levels can fail but the lower levels
will still work
After all, there are plenty of examples of successful
intelligence in nature that are much simpler than
many AI research areas (the house fly example)
The Subsumption Architecture
The Subsumption Architecture is:
A layering methodology for robot control systems
A parallel and distributed method for connecting sensors
and actuators in robots
An Example: Allen
Brooks’ first Subsumption robot
Level 0: Runs away if approached, avoids objects
Allen…
Levels 1 and 0: Adds wandering
Subsumption Implementation
The agent has a set of behaviors which are purely reactive
(action: S A).
Many of them can fire at the same time.
We choose an action using the subsumption hierarchy.
Behaviors are arranged into layers, so that lower layers inhibit
higher one. The lower layers have the higher priority.
Formally,
a
Action Selection
Limitations
Agents must have enough information in local environment to
determine which action to take.
How to take into account old or non-local information?
How do reactive! agents learn?
Emergence (between agent and environment) is hard to engineer.
We don’t have a methodology.
It is very hard to build agents that have many behaviors.
On the plus side, it has been a very
successful method for building robots,
such as Roomba.