Manipulators
P
R R
R R
Robotics
Chapter 25
Configuration of robot specified by 6 numbers
⇒ 6 degrees of freedom (DOF)
6 is the minimum number required to position end-effector arbitrarily.
For dynamical systems, add velocity for each DOF.
Chapter 25 1 Chapter 25 4
Outline Non-holonomic robots
Robots, Effectors, and Sensors
Localization and Mapping
θ
Motion Planning
(x, y)
Motor Control
A car has more DOF (3) than controls (2), so is non-holonomic;
cannot generally transition between two infinitesimally close configurations
Chapter 25 2 Chapter 25 5
Mobile Robots Sensors
Range finders: sonar (land, underwater), laser range finder, radar (aircraft),
tactile sensors, GPS
Imaging sensors: cameras (visual, infrared)
Proprioceptive sensors: shaft decoders (joints, wheels), inertial sensors,
force sensors, torque sensors
Chapter 25 3 Chapter 25 6
Localization—Where Am I? Localization contd.
Compute current location and orientation (pose) given observations: Can also use extended Kalman filter for simple cases:
robot
At−2 At−1 At
Xt−1 Xt Xt+1
landmark
Assumes that landmarks are identifiable—otherwise, posterior is multimodal
Zt−1 Zt Zt+1
Chapter 25 7 Chapter 25 10
Localization contd. Mapping
Localization: given map and observed landmarks, update pose distribution
ω t ∆t
xi, yi
Mapping: given pose and observed landmarks, update map distribution
θt+1
h(xt) SLAM: given observed landmarks, update pose and map distribution
vt ∆t Z1 Z2 Z3 Z4
xt+1 Probabilistic formulation of SLAM:
θt
add landmark locations L1, . . . , Lk to the state vector,
proceed as for localization
xt
Assume Gaussian noise in motion prediction, sensor range measurements
Chapter 25 8 Chapter 25 11
Localization contd. Mapping contd.
Can use particle filtering to produce approximate position estimate
Robot position
Robot position
Robot position
Chapter 25 9 Chapter 25 12
3D Mapping example Cell decomposition example
goal
start
goal
start
Problem: may be no path in pure freespace cells
Solution: recursive decomposition of mixed (free+obstacle) cells
Chapter 25 13 Chapter 25 16
Motion Planning Skeletonization: Voronoi diagram
Idea: plan in configuration space defined by the robot’s DOFs Voronoi diagram: locus of points equidistant from obstacles
conf-2
conf-1
conf-3
conf-3
conf-1
conf-2
w elb
w shou
Solution is a point trajectory in free C-space
Problem: doesn’t scale well to higher dimensions
Chapter 25 14 Chapter 25 17
Configuration space planning Skeletonization: Probabilistic Roadmap
Basic problem: ∞d states! Convert to finite state space. A probabilistic roadmap is generated by generating random points in C-space
and keeping those in freespace; create graph by joining pairs by straight lines
Cell decomposition:
divide up space into simple cells,
each of which can be traversed “easily” (e.g., convex)
Skeletonization:
identify finite number of easily connected points/lines
that form a graph such that any two points are connected
by a path on the graph
Problem: need to generate enough points to ensure that every start/goal
pair is connected through the graph
Chapter 25 15 Chapter 25 18
Motor control Simple learning algorithm: Stochastic gradient
Can view the motor control problem as a search problem Minimize Eθ [y 2] by gradient descent:
in the dynamic rather than kinematic state space: Z
– state space defined by x1, x2, . . . , x˙1, x˙2, . . . ∇θ0 Eθ [y 2] = ∇θ0 Pθ0 (θ)F (θ)2dθ
Z ∇ P (θ)
– continuous, high-dimensional (Sarcos humanoid: 162 dimensions) =
θ0 θ0
F (θ)2Pθ0 (θ)dθ
Pθ0 (θ)
Deterministic control: many problems are exactly solvable ∇θ Pθ (θ)
esp. if linear, low-dimensional, exactly known, observable = Eθ [ 0 0 y 2 ]
Pθ0 (θ)
Simple regulatory control laws are effective for specified motions Given samples (θj , yj ), j = 1, . . . , N , we have
Stochastic optimal control: very few problems exactly solvable 1 N ∇θ0 Pθ0 (θj ) 2
∇θ0 Eˆθ [y 2] =
X
⇒ approximate/adaptive methods y
N j=1 Pθ0 (θj ) j
For Gaussian noise with covariance Σ, i.e., Pθ0 (θ) = N (θ0, Σ), we obtain
1 N
∇θ0 Eˆθ [y 2] =
X
Σ−1(θj − θ0)yj2
N j=1
Chapter 25 19 Chapter 25 22
Biological motor control What the algorithm is doing
Motor control systems are characterized by massive redundancy x
x
Infinitely many trajectories achieve any given task x x
x x x x x
x x x
E.g., 3-link arm moving in plane throwing at a target x x x xx x x
x x x
simple 12-parameter controller, one degree of freedom at target x x xx x
x
xx x x
11-dimensional continuous space of optimal controllers x x x x x
x x x
x x x
Idea: if the arm is noisy, only “one” optimal policy minimizes error at target
I.e., noise-tolerance might explain actual motor behaviour
Harris & Wolpert (Nature, 1998): signal-dependent noise
explains eye saccade velocity profile perfectly
Chapter 25 20 Chapter 25 23
Setup Results for 2–D controller
Suppose a controller has “intended” control parameters θ0
10
which are corrupted by noise, giving θ drawn from Pθ0
Output (e.g., distance from target) y = F (θ); 9
y
8
Velocity v
4
0.2 0.4 0.6 0.8 1 1.2
Angle phi
Chapter 25 21 Chapter 25 24
Results for 2–D controller
4.61
4.6
4.59
4.58
Velocity v
4.57
4.56
4.55
4.54
4.53
4.52
4.51
0.6 0.61 0.62 0.63 0.64 0.65
Angle phi
Chapter 25 25
Results for 2–D controller
0.0095
0.009
0.0085
0.008
E(y^2)
0.0075
0.007
0.0065
0.006
0.0055
0 2000 4000 6000 8000 10000
Step
Chapter 25 26
Summary
The rubber hits the road
Mobile robots and manipulators
Degrees of freedom to define robot configuration
Localization and mapping as probabilistic inference problems
(require good sensor and motion models)
Motion planning in configuration space
requires some method for finitization
Chapter 25 27