28
Outline Path and Trajectory Planning EE 451 - Path and Trajectory Planning H.I. Bozma Electric Electronic Engineering Bogazici University November 26, 2018 H.I. Bozma EE 451 - Path and Trajectory Planning

EE 451 - Path and Trajectory Planning

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

EE 451 - Path and Trajectory Planning

H.I. Bozma

Electric Electronic Engineering

Bogazici University

November 26, 2018

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 2: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

Path and Trajectory PlanningIntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 3: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Getting robot to move

◮ So far - Kinematics: The map btw configuration space DOFand workspace position

◮ Velocity kinematics: The map btw configuration spacevelocities and workspace velocities

◮ How to get the robot move and do what we want it to do?

◮ Assume: Initial and final configurations of the robot is given.

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 4: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Getting robot to move - Motion planning

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 5: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Path vs Trajectory Planning

◮ Path: A sequence of points (either in configuration orworkspace)

◮ Trajectory: A sequence of points with timing

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 6: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Planning Considerations - Configuration (Joint) Space

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 7: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Planning Considerations - Workspace

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 8: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Obstacles

◮ No consideration of restrictions due to the workspace(Obstacles!)

◮ Path and Trajectory Planning: Collision free paths ortrajectories

◮ Computationally complex!

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 9: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Notation

◮ Configuration space Q

◮ Workspace W

◮ Obstacles in workspace Oi ⊂ W

◮ All obstacles O = ∪Oi

◮ Robot with q ∈ Q → A(q) ⊂ W

◮ Configuration space obstacles QO = {q ∈ Q | A(q) ∩ O 6= ∅}

◮ Free configuration space Qfree = Q \ QO

◮ Initial configuration qs ∈ Qfree , Final configuration qf ∈ Qfree

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 10: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Problem Statement:

Given qs , qf ∈ Qfree , find a collision-free path γ : [0, 1] → Qfree

such that γ(0) = qs and γ(1) = qf

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 11: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Approaches

◮ Not feasible to generate Qfree completely!

◮ Search algorithm – Incremental generation of Qfree

◮ Roadmap methods◮ Potential fields

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 12: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

RM - General Approach

◮ Generate a representation for Qfree

◮ Generate 1-D network of curves (time as varying parameter)where each arc → Collision-free path btw two points

◮ Generate a path in Qfree from qs to qa◮ Generate a path in Qfree from qf to qb◮ Generate a path in Qfree from qa to qb

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 13: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Probabilistic Roadmap Methods (PRM)

◮ Sampling the configuration space: A set of randomconfigurations are generated → Nodes

◮ Connect pairs of configurations: Plan trajectories betweennodes

◮ Enhancement: If trajectories are disconnected, generate newpaths to ensure connectivity

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 14: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Example - PRM Approach

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 15: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

◮ Advantages

◮ No problems of local minima!

◮ Problems

◮ Computational◮ Trajectory planning◮ Not reactive

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 16: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Why Trajectory Planning?

◮ In PRM’s, additional step of trajectory planning since we havea sequence of points along the path!

◮ Discrete time computation:◮ γ : [0, 1] → Qfree s.t. γ(0) = qs and γ(1) = qf◮ Map this to time taken to do the task tf − t0

◮ Convert to a sequence of joint configurations

◮ Inverse kinematics◮ Teach and playback

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 17: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Planning a Trajectory

◮ Point to point – From q(0) → q(tf )

◮ Velocity constraints q(0) = κ0 q(tf ) = κtf (Usually bothκ0 = κtf = 0

◮ Acceleration constraints q(0) = α0 q(tf ) = αtf (Usually bothα0 = αtf = 0

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 18: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Point to Point Trajectories

◮ Cubic polynomial trajectories q(t) =∑4

i=0 ai ti -

Discontinuties in jerk (Derivative of acceleration)

◮ Quintic polynomial trajectories q(t) =∑5

i=0 ai ti

◮ Linear segments with parabolic blends (LSPB)

◮ Minimum time trajectory - A special case of LSPB

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 19: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Cubic Polynomial Trajectory - Example

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 20: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Quintic Polynomial Trajectory - Example

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 21: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

LSPB Trajectory - Example

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 22: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Minimum Time Trajectory - Example

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 23: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Multi-Point Trajectories

◮ A sequence of points – Endpoints are taken appropriately!

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 24: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Potential Field

◮ Imagine a surface ϕ defined on workspace on which the robotis visualized to move down the gradient

◮ Robot at position b ∈ R3 with radius ρr

◮ Final configuration - Attractive (minimal point)

◮ Obstacle boundaries - Obstacles with locations oi and radiiρi > 0 Repelling

◮ Goal: One minimum (attractive) only with every other criticalpoint being nondegenerate!

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 25: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

APF Definition

ϕ : F → [0, 1] : Constructed as the composition:

ϕ(b) = σd ◦ σ ◦ ϕ(b) (1)

ϕ : F → [0,∞): Encodes goal point and obstacles

ϕ(b)△=

γk(b)

β(b)k ∈ Z+ (2)

Goal: γ : F → [0,∞) and β : F → [0,∞):

γ(b)△= (b − g)T (b − g)

Obstacles: The distances to other obstaclesβ(b)

△=

∏Nj=1 βj(b) where ∀j , βj(b) = (b − oj)− (ρr + ρj)

2 andThe parameter k : Balance between goal attraction & obstacles’repulsion!

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 26: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

APF Definition (cont)

Freespace boundary ∂F : Zero level set of β−1(0)

Since ϕ blows up on ∂F → Not admissible.

Remedy: It is squashed by the function σ : [0,∞] → [0, 1]:σ(x) = x

1+x.

The resulting function becomes admissible, but degenerate goalpoint gRemedy: Sharpening function σd : [0, 1] → [0, 1] is appliedσd(x) = x1/k .

ϕ becomes admissible and has non-degenerate minimum at b = g .

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 27: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

Application:

1. b = −∇bϕ(b) with b(0) = bs

2. Note that b = 0 if b = g (Stop condition)

3. Practical: Update control law at discrete instances k

• b(k + 1) = b(k)− τk∇bϕ(b(k)) (τk is step size)• k = k + 1• Check ‖b(k)− g‖ > ǫ

else return b

4. Go to (2)

H.I. Bozma EE 451 - Path and Trajectory Planning

Page 28: EE 451 - Path and Trajectory Planning

OutlinePath and Trajectory Planning

IntroductionPath Planning AlgorithmsProbabilistic Roadmap Methods (PRM)Trajectory PlanningPotential Fields

General Performance

◮ Advantages

◮ Generate the torque trajectory to reach the goal◮ Reactive - As obstacles changes, so does the trajectory

◮ Problems◮ Stuck in local minima◮ May be difficult to compute attactive & repulsive forces

H.I. Bozma EE 451 - Path and Trajectory Planning