Title: Mobile Robot Agents
1Mobile Robot Agents
- Eduardo Camponogara
- 18-879, Special Topics in Systems and Control
Agents - Electrical Computer Engineering
2Report Goals
A study of the specifics of robotic agents.
What makes robot agents different than agents in
other domains, such as the web?
Goals
An investigation of collaboration mechanisms for
teams of robots.
3Todays Outline
Collaboration
Agent Perception
Mapping
Planning
Navigation
Collaborative Mobile Robotics Antecedents
Directions, 1998 by Uny Cao et al.
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.
4Multiple-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.
The efficiency of scale. Building simple robots
is easier, cheaper and more flexible.
Replace Faulty Robot
Limited Perception
5Cooperative Behavior
Non-cooperative
Given a task, a multiple-robot system displays
cooperative behavior when
The underlying collaboration mechanism makes the
total utility increase.
Cooperative
That is, the systems performance is higher when
robot agents collaborate.
Same work, but less effort
6Cooperative Behavior
Most of the research has focused on
cooperation mechanisms.
Observation
Environment
The design problem
Given a) a team of robots, b) an
environment, and c) a task, Find a
cooperation mechanism.
Robots
Research
Along the axes, or elements, of the design space
7The Axes of the Design Space
Centralized/Decentralized
Organization
Architecture
Homogeneous/Heterog
Differentiation
Model Other Ags.
Restricted /Multiple Paths
Space Sharing
Resource Conflicts
Autonomous /Centralized
Innate (Insects)
CooperationOrigin
Motivated (Utility)
Find control parameters
Learning
Sensing (Vision, Radar)
Communications
Explicit (Wireless Net)
8Two 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.
Simulated results may be inconclusive without
adequate modeling of error and uncertainty in
perception and location.
Distinguishing characteristic of robot agents
9Perception 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.
10Representing the World
Occupancy Grid
The grid stores the probability p(x,y) that
cell c(x,y) is occupied.
p(x,y)
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)
Applications
11Features 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.
Incremental discovery procedure.
Advantages of the occupancy grid
Explicit handling of uncertainties.
Ease to combine data from multiple sensors.
12Sensing 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.
1
Pe
Po
Po is the probability that the cell is
occupied.
Distance R
13Updating 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, pC(i)OCC r(i),
given the observation r(i).
Assuming that the process is markovian in space
and time, pC(i)OCC r(i) can be
computed with Bayes rule as follows
pr(i) C(i)OCC.pC(i)OCC/pr(i)
pC(i)OCC r(i)
pr(i) C(i)OCC.pC(i)OCC
pC(i)OCC r(i)
å ("s) pr(i) C(i)s.pC(i)s
14An Instance of Occupancy Grid
The probabilities
The occupancy estimates
15Weakness 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
The robot agent needs to know its location
Weaknesses of the previous approach
Sensitive to error/uncertainty in the agents
location.
It does not account for past sensor readings.
16Improving 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 robots position is estimated, and
c) All past sensor readings are considered
Given the current position and control input,
what is the next position?
Robot Motion
Elementary Models
Given the current map and robots
position, what are the observations?
Robot Perception
17Elementary Models
Robot Motion
Robot Perception
denotes the robots location in space.
X
O
denotes the landmark observation (e.g., obstacle).
U
denotes the control action.
denotes the map of the environment (occup. grid).
M
P(O X,M)
P(X X,U)
The probability of making observation O, given
that the robot is at location X and M is the map.
The probability that the robot is at position X,
if it executed actionU at location X.
18The 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)
1) The agent does not know the location at time
t, x(t).
Hidden Variables
2) It does not know the map m either.
19Finding the Most Likely Map
P(md) be the likelihood of map m given data d.
P(dm) be the likelihood of data d given map m.
Let
P(d) be the probability of observing data d.
P(m) be the prior probability of map m.
P(dm) . P(m)
The most likely map
m ArgMax P(md)
P(d)
The Expectation-Maximization Alg (EM) for
HMMs, together with some tricks, can compute
m efficiently.
Problem Solution
20The Outline of the EM Algorithm
Step 1.
Set t0 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(t1) of maximum likelihood.
Step 4.
Make tt1 and go to step 2.
It works like a steepest decent algorithm
Estimate the gradient
Take a step
21Experiments
Occupancy grid from sonar data
Map from raw data
Max likelihood occupancy grid
Max likelihood map