Post on 19-Dec-2015
Carnegie Mellon
Mobile Robot Agents
Eduardo Camponogara
18-879, Special Topics in Systems and Control: Agents
Electrical & Computer Engineering
Carnegie Mellon
Report Goals
A study of the specifics of robotic agents.
An investigation of collaboration mechanisms for teams of robots.
What makes robot agents different than agents in other domains, such as the web?Goals:
Carnegie Mellon
Today’s Outline
CollaborationAgent Perception
“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.
PlanningNavigation
Mapping
Carnegie Mellon
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.
The efficiency of scale. Building simple robots is easier, cheaper and more flexible.
LimitedPerception
ReplaceFaultyRobot
Carnegie Mellon
Cooperative Behavior
The underlying collaboration mechanism makes the total utility increase.
Given a task, a multiple-robotsystem displays cooperativebehavior when:
That is, the system’s performance is higher when robot agents collaborate.
Non-cooperative
Cooperative
Same work, but less effort
Carnegie Mellon
Cooperative Behavior
Most of the research has focused on cooperation mechanisms.
Observation:
The design problem:
Given a) a team of robots, b) an environment, and c) a task,Find a cooperation mechanism.
Robots
Environment
Research: Along the axes, or elements, of the design space
Carnegie Mellon
The Axes of the Design Space
Explicit (Wireless Net)
Sensing (Vision, Radar)
Find control parameters
Architecture
Restricted /Multiple Paths
Homogeneous/Heterog
Centralized/DecentralizedOrganization
Differentiation
Model Other Ags.
Space Sharing
Autonomous /Centralized
Innate (Insects)
Motivated (Utility)
Learning
Communications
Resource Conflicts
CooperationOrigin
Carnegie Mellon
Two Relevant Points
1.) Does the scaling property of decentralization offset the coordinative advantage of centralized systems?
2.) Agent perception and localization are usually taken for granted in the software domain?
Neither empirical, nor theoretical, work that addresses this question in mobile robotics has been published yet.
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
Carnegie Mellon
Perception & Location In Robot Agents
To accomplish its task,
the autonomous robot needs a description of the “world” and should know its location.
To conceive a plan,
the autonomous robot must plan.
How does the robot agent represent its world?
How does the agent map the unknown environment, while accounting for uncertainty in perception & location?
Where am I?
The questions define: The Mapping Problem.
Carnegie Mellon
Representing the World
x
y
Occupancy Grid
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)
p(x,y)
Applications:
The grid stores the probability p(x,y) that cell c(x,y) is occupied.
Carnegie Mellon
Features of the Occupancy Grid
Traditional approaches, to representing the world, rely on recovery and manipulation of geometric models.
Advantages of theoccupancy grid:
No need of prior knowledge of the environment.
Incremental discovery procedure.
Explicit handling of uncertainties.
Ease to combine data from multiple sensors.
Carnegie Mellon
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.
Po is the probability that the cell is occupied.
1 Pe Po
Distance R
ObstacleSensing Action:
Pe is the probability that the cell is empty.
Carnegie Mellon
Updating the Occupancy Grid
The robot computes the occupancy estimate of cell i, r(i), at time t.
OCC - occupied
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[r(i) | C(i)=OCC].p[C(i)=OCC]/p[r(i)]
p[r(i) | C(i)=OCC].p[C(i)=OCC]
p[C(i)=OCC| r(i)]
sp[r(i) | C(i)=s].p[C(i)=s]
p[C(i)=OCC| r(i)]
=
=
Carnegie Mellon
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
The robot agent needs to know its location
Weaknesses of the previous approach:
Sensitive to error/uncertainty in the agent’s location.
It does not account for past sensor readings.
Carnegie Mellon
Given the current position and control input, what is the next position?
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
Elementary Models:
Robot Motion
Robot PerceptionGiven the current map and robot’s position,what are the observations?
Carnegie Mellon
The probability that the robot is at position X’, if it executed actionU at location X.
P(X’ | X,U)
U denotes the control action.
denotes the robot’s location in space.
X O denotes the landmark observation (e.g., obstacle).
denotes the map of the environment (occup. grid).
M
P(O | X,M)
The probability of making observation O, given that the robot is at location X and M isthe map.
Elementary Models
Robot Motion Robot Perception
Carnegie Mellon
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)
1) The agent does not know the location at time t, x(t).2) It does not know the map m either.
Hidden Variables
Carnegie Mellon
Finding the Most Likely Map
Let:
P(m|d) be the likelihood of map m given data d.
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.
The most likely map:P(d|m) . P(m)
P(d)m* = ArgMax P(m|d) =
Problem Solution:The Expectation-Maximization Alg (EM) for HMMs, together with some tricks, can compute m* efficiently.
Carnegie Mellon
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