Manipulators P
R R
R R
Robotics R
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
Outline
Chapter 25
4
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
Chapter 25
2
5
Sensors
Mobile Robots
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: At−2
At−1
Can also use extended Kalman filter for simple cases: robot
At
Xt−1
Xt
Xt+1 landmark
Assumes that landmarks are identifiable—otherwise, posterior is multimodal Zt−1
Zt
Zt+1
Chapter 25
7
Localization contd.
10
Mapping Localization: given map and observed landmarks, update pose distribution
ω t ∆t
xi, yi
Chapter 25
Mapping: given pose and observed landmarks, update map distribution θt+1
h(xt)
vt ∆t
SLAM: given observed landmarks, update pose and map distribution Z1
Z2
Z3
Z4
Probabilistic formulation of SLAM: add landmark locations L1, . . . , Lk to the state vector, proceed as for localization
xt+1 θt
xt
Assume Gaussian noise in motion prediction, sensor range measurements
Chapter 25
8
Localization contd.
Chapter 25
11
Chapter 25
12
Mapping contd.
Can use particle filtering to produce approximate position estimate
Robot position
Robot position Robot position
Chapter 25
9
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
Motion Planning
Chapter 25
16
Chapter 25
17
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-2
conf-1 w elb
w shou
Solution is a point trajectory in free C-space Problem: doesn’t scale well to higher dimensions
Chapter 25
14
Configuration space planning
Skeletonization: Probabilistic Roadmap 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
Basic problem: ∞d states! Convert to finite state space. 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 in the dynamic rather than kinematic state space: – state space defined by x1, x2, . . . , x˙1, x˙2, . . . – continuous, high-dimensional (Sarcos humanoid: 162 dimensions)
Minimize Eθ [y 2] by gradient descent: Z
∇θ0 Eθ [y 2] = ∇θ0 Pθ0 (θ)F (θ)2dθ Z ∇ P (θ) θ0 θ0 F (θ)2Pθ0 (θ)dθ = Pθ0 (θ) ∇θ Pθ (θ) = Eθ [ 0 0 y 2 ] Pθ0 (θ)
Deterministic control: many problems are exactly solvable esp. if linear, low-dimensional, exactly known, observable 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 ⇒ approximate/adaptive methods
1 N
∇θ0 Eˆθ [y 2] =
N X
j=1
∇θ0 Pθ0 (θj ) 2 y Pθ0 (θj ) j
For Gaussian noise with covariance Σ, i.e., Pθ0 (θ) = N (θ0, Σ), we obtain 1 N
∇θ0 Eˆθ [y 2] =
Chapter 25
N X
j=1
Σ−1(θj − θ0)yj2
19
Biological motor control
Chapter 25
22
Chapter 25
23
Chapter 25
24
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 xx x x x x xx x x x x x x x
E.g., 3-link arm moving in plane throwing at a target simple 12-parameter controller, one degree of freedom at target 11-dimensional continuous space of optimal controllers
x
x
x x
x x x x xx 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
Setup
Results for 2–D controller
Suppose a controller has “intended” control parameters θ0 which are corrupted by noise, giving θ drawn from Pθ0
10 9
Output (e.g., distance from target) y = F (θ); Velocity v
y
8 7 6 5 4 0.2
Chapter 25
21
0.4
0.6 0.8 Angle phi
1
1.2
Results for 2–D controller 4.61 4.6 4.59 Velocity v
4.58 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
Chapter 25
26
Chapter 25
27
Results for 2–D controller 0.0095 0.009 0.0085 E(y^2)
0.008 0.0075 0.007 0.0065 0.006 0.0055 0
2000
4000
6000
8000
10000
Step
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