Mobile Robot Agents
Report Goals
A study of the specifics of robotic agents.
Goals:
What makes robot agents different than
agents in other domains, such as
the web?
An investigation of collaboration
mechanisms for teams of robots.
Today’s Outline
Collaboration
“Collaborative Mobile Robotics:
Antecedents & Directions,”
1998 by Uny Cao et al.
Agent Perception
Mapping
Navigation
Planning
“Sensor-Based Real-World
Mapping & Navigation,” 1987
by Elfes.
“Using Occupancy Grid for Mobile
Robot Perception &
Navigation,” 1989 by Elfes.
“A Probabilistic Approach to
Concurrent Mapping and
Localization for Mobile
Robots,” 1998 by Thrun.
Multiple-Robot Systems
The motivations for the intense interest in
designing systems of multiple robots:
Tasks may be complex.
A robot is limited in the space
it covers and perceives.
Limited
Perception
The efficiency of scale. Building
simple robots is easier, cheaper
and more flexible.
Replace
Faulty
Robot
Cooperative Behavior
Given a task, a multiple-robot
system displays cooperative
behavior when:
The underlying collaboration
mechanism makes the total
utility increase.
That is, the system’s
performance is higher when
robot agents collaborate.
Same work,
but less effort
Non-cooperative
Cooperative
Cooperative Behavior
Observation:
Most of the research has focused
on cooperation mechanisms.
The design
problem:
Given a) a team of robots,
b) an environment, and
c) a task,
Find a cooperation mechanism.
Research:
Along the axes, or elements,
of the design space
Environment
Robots
The Axes of the Design Space
Architecture
Organization
Centralized/Decentralized
Differentiation
Homogeneous/Heterog
Model Other Ags.
Resource Conflicts
Space Sharing
Restricted /Multiple Paths
Autonomous /Centralized
CooperationOrigin
Innate (Insects)
Motivated (Utility)
Learning
Find control parameters
Sensing (Vision, Radar)
Communications
Explicit (Wireless Net)
Two Relevant Points
1.) Does the scaling property of decentralization offset
the coordinative advantage of centralized systems?
Neither empirical, nor theoretical, work that addresses
this question in mobile robotics has been published yet.
2.) Agent perception and localization are usually
taken for granted in the software domain?
In Robotics, perception and localization define
research sub-fields.
Distinguishing
characteristic of
robot agents
Simulated results may be inconclusive without
adequate modeling of error and uncertainty
in perception and location.
Perception & Location In Robot Agents
To accomplish its task,
Where am I?
the autonomous robot must plan.
To conceive a plan,
the autonomous robot needs a description of
the “world” and should know its location.
How does the robot agent represent its world?
How does the agent map the unknown environment, while
accounting for uncertainty in perception & location?
The questions define:
The Mapping Problem.
Representing the World
y
Occupancy Grid
The grid stores the
probability p(x,y) that
cell c(x,y) is occupied.
x
p(x,y)
Applications:
Given the occupancy grid and landmarks, the
agent can come up with a plan to accomplish
its tasks. (e.g., drop cans into a garbage bin)
Features of the Occupancy Grid
Traditional approaches, to representing the world,
rely on recovery and manipulation of geometric models.
No need of prior knowledge of the
environment.
Advantages of the
occupancy grid:
Incremental discovery procedure.
Explicit handling of uncertainties.
Ease to combine data from multiple
sensors.
Sensing the Surroundings
Sensing Procedure:
The robot agent
a) senses its surroundings,
b) process the signals, and
c) computes the occupancy estimate r(i),
{OCC, EMP, UNK}, of cell i.
Sensing Action:
Obstacle
Pe is the probability that
the cell is empty.
Po is the probability that
the cell is occupied.
1
Pe
Po
Distance R
Updating the Occupancy Grid
OCC - occupied
The robot computes the
occupancy estimate of cell i, r(i),
at time t.
EMP - empty
UNK - unknown
We want to compute the probability that cell i is occupied at time t,
p[C(i)=OCC | r(i)], given the observation r(i).
Assuming that the process is markovian in space and time,
p[C(i)=OCC | r(i)] can be computed with Bayes rule as follows:
p[C(i)=OCC| r(i)] = p[r(i) | C(i)=OCC].p[C(i)=OCC]/p[r(i)]
p[C(i)=OCC| r(i)] =
p[r(i) | C(i)=OCC].p[C(i)=OCC]
s)p[r(i) | C(i)=s].p[C(i)=s]
An Instance of Occupancy Grid
The probabilities
The occupancy
estimates
Weakness of the Updating Procedure
Reminder:
Map building is the problem of
determining the location of the entities of interest,
relative to a global frame of reference.
Example:
Determine obstacles relative to the cartesian frame.
To determine the location
of these entities
Weaknesses of
the previous
approach:
The robot agent needs to
know its location
Sensitive to error/uncertainty in the agent’s location.
It does not account for past sensor readings.
Improving Quality of Occupancy Grids
New Approach:
Formulate the mapping problem (updating) as a
maximum-likelihood estimation problem such that:
a) The location of the landmarks are estimated,
b) The robot’s position is estimated, and
c) All past sensor readings are considered
Robot Motion
Given the current position
and control input,
what is the next position?
Elementary Models:
Robot Perception
Given the current map and
robot’s position,
what are the observations?
Elementary Models
Robot Motion
Robot Perception
X
denotes the robot’s location
in space.
O
denotes the landmark
observation (e.g., obstacle).
U
denotes the control action.
M
denotes the map of the
environment (occup. grid).
P(X’ | X,U)
The probability that the robot is at
position X’, if it executed actionU
at location X.
P(O | X,M)
The probability of making
observation O, given that the
robot is at location X and M is
the map.
The Data
The data is a sequence of control actions, u(t), and observations, o(t).
d ={o(1),u(1),…,o(n-1),u(n-1),o(n)}
The model is a HMM (Hidden Markov Model)
Hidden
Variables
1) The agent does not know the location at time t, x(t).
2) It does not know the map m either.
Finding the Most Likely Map
P(m|d) be the likelihood of map m given data d.
Let:
P(d|m) be the likelihood of data d given map m.
P(d) be the probability of observing data d.
P(m) be the prior probability of map m.
P(d|m) . P(m)
The most likely map:
m* = ArgMax P(m|d)
=
Problem Solution:
The Expectation-Maximization Alg (EM)
for HMMs, together with some tricks,
can compute m* efficiently.
P(d)
The Outline of the EM Algorithm
Step 1.
Set t=0 and guess a map m(0).
Step 2. (E-step)
Fix the model m(t) and estimate the
probabilities.
Step 3. (M-step)
Find model m(t+1) of maximum
likelihood.
Step 4.
Make t=t+1 and go to step 2.
It works like a
steepest decent
algorithm:
Estimate the
gradient
Take a step
Experiments
Map from raw data
Max likelihood map
Occupancy grid from sonar data
Max likelihood occupancy grid
© Copyright 2025 Paperzz