Motion Planning for Articulated Robots 2 Jane Li Assistant - - PowerPoint PPT Presentation

motion planning for articulated robots 2
SMART_READER_LITE
LIVE PREVIEW

Motion Planning for Articulated Robots 2 Jane Li Assistant - - PowerPoint PPT Presentation

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON S RBE 550 Motion Planning for Articulated Robots 2 Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11 RBE 550 MOTION PLANNING BASED


slide-1
SLIDE 1

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11

Motion Planning for Articulated Robots 2

slide-2
SLIDE 2

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

The Null-space of Jacobian Pseudo-inverse

 We can try to satisfy secondary tasks in the null-space of the Jacobian pseudo-

inverse

 In linear algebra, the null-space of a matrix A is the set of vectors V such that,

for any v in V, 0 = ATv.  why?

 You can prove that V is orthogonal to the range of A 

range of A V y x 2D example

slide-3
SLIDE 3

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Null-space and Redundant Direction

 Setup

 x1 and x2 – two

independent variables  Task

 x1+x2 = target

 Redundant direction

 x1 – x2 = constant  Null space

slide-4
SLIDE 4

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

The Null-space of Jacobian

 For our purposes, this means that the secondary task will not disturb the

primary task

 The null-space projection matrix for the Jacobian pseudo-inverse is:  To project a vector into the null-space, just multiply it by the above

matrix

)) ( ) ( ( ) ( q J q J I q N

 

range of J(q)+ x

) (q N

range of secondary task v

v q N ) (

e.g. tasks in terms of joint velocity constraints

slide-5
SLIDE 5

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Example of Pseudoinverse

Not identity

slide-6
SLIDE 6

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Primary Task and Secondary Task

 Stiffness of constraint

 Primary task (guaranteed) > secondary task (accomplish as much as possible)

 The null-space projection matrix for the Jacobian is:

)) ( ) ( ( ) ( q J q J I q N

 

Not identity dt dq q J q J I dt dx q J dt dq

2 1

)) ( ) ( ( ) (

 

    A constraint for 𝑟

slide-7
SLIDE 7

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Why does this work?

 First, decompose v into two orthogonal parts:

range of A v r n

v A v r v n ˆ    

Need to find this

n r v  

Part of v that is in the left null-space of A Part of v that is in the range of A

v A A A v v A v A A v A v A n A

T T T T T T 1

) ( ˆ ˆ ) ˆ (

    

 ) (q J A

  • Different. Why?

) (q J A 

Skinny matrix

slide-8
SLIDE 8

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Why does this work?

 Use this relationship to get r  Now we can find n, the part of v that is in the left null-space of A

range of A v r n

v A A A v

T T 1

) ( ˆ

 v AA r v A A A A r v A r

T T  

  

1

) ( ˆ v AA I v AA v n ) (

 

   

This is the left null-space projection matrix

slide-9
SLIDE 9

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Why does this work?

 Now we plug in the Jacobian pseudo-inverse v q J q J I n q J A v AA I n )) ( ) ( ( ) ( ) (

  

    

This is N(q) range of J(q)+ q2 q1

) (q N

range of secondary task v

v q N n ) ( 

r

slide-10
SLIDE 10

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Combining tasks using the null-space

 Combining the primary task dx1/dt and the secondary task dq2/dt :  Guaranteeing that the projection of q2 is orthogonal to J(q)+(dx1/dt)

 Assuming the system is linear

dt dq q J q J I dt dx q J dt dq

2 1

)) ( ) ( ( ) (

 

   

slide-11
SLIDE 11

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Using the Null-space

 The null-space is often used to “push” IK solvers away from

 Joint limits  Obstacles

 How do we define the secondary task for the two constraints

above?

dt dq q J q J I dt dx q J dt dq

2 1

)) ( ) ( ( ) (

 

   

slide-12
SLIDE 12

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Using the Null-space

dt dq q J q J I dt dx q J dt dq

2 1

)) ( ) ( ( ) (

 

   

Why do we need this?

What guarantees do we have about accomplishing the secondary task?

slide-13
SLIDE 13

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Recursive Null-space Projection

 What if you have three or more tasks?  The ith task is:  The ith null-space is:  The recursive null-space formula is then:

))) ( ( (

) 1 ( 4 3 3 2 2 1 1 n n T

N T N T N T N T dt dq

      dt dx q J T

i i i 

 ) (

)) ( ) ( ( q J q J I N

i i i i 

  

slide-14
SLIDE 14

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11

Motion Planning for Articulated Robots 2

slide-15
SLIDE 15

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Recap

 We learned about the Jacobian and how it could be used for IK

xtarget xcurrent

slide-16
SLIDE 16

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Inverting the Jacobian

 If N=M,

 Jacobian is square  Standard matrix inverse

 If N>M ,

 Pseudo-Inverse  redundant manipulator  Weighted Pseudo-Inverse  e.g. weighting for different joint limits  Damped least squares  singularity

slide-17
SLIDE 17

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Iterative Jacobian Pseudo-Inverse Inverse Kinematics

 But this is not a substitute for motion planning

 Trapped by local minima  Difficult to handle obstacles

F

Xcurrent Xtarget

Configuration qcurrent

While true

Xcurrent = FK(qcurrent) 𝒚 = (xtarget - xcurrent) error = || 𝒚 || If error < threshold return Success 𝒓 = 𝑲 𝒓 + 𝒚 If(||𝒓 || > a) 𝒓 = a(𝒓 / ||𝒓 || ) qcurrent = qcurrent - 𝒓

end

slide-18
SLIDE 18

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Recap

 Sampling-based motion planning is more general, but …

 Largely ignorant of task-space constraints and targets

 Today – How do we integrate Jacobian-based methods with

sampling-based motion planning?

slide-19
SLIDE 19

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Outline

 Motivation and Previous Work  Defining Task-space Constraints as Task Space Regions (TSRs)  Planning with TSRs using CBiRRT

slide-20
SLIDE 20

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

slide-21
SLIDE 21

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Related Work

Task-Constrained RRT (TCRRT) Stilman, 2007 Hybrid C-Space/Task Space Search (ATACE) Yao and Gupta, 2005 Following End-Effector Paths Oriolo and Mongillo, 2005 Compliance/Force Control Mason, 1981 Closed-chain Kinematics Cortes and Simeon, 2004 Operational Space Control Khatib, 1987

slide-22
SLIDE 22

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Operational Space Control

 Goal

 Satisfy task space trajectory while optimize some performance  Inverse kinematics / dynamics  Optimization toward uniform force control capability

 Maximize the minimum available isotropic acceleration available for the end-

effector pose

 Provide the largest and uniform bound on the end-effector acceleration

Compliance/Force Control Mason, 1981 Operational Space Control Khatib, 1987

slide-23
SLIDE 23

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Following End-Effector Paths Oriolo and Mongillo, 2005 Closed-chain Kinematics Cortes and Simeon, 2004

Integrate Sampling-based Methods

 Motivation - Closed chain problem

 Breaks a closed chain and then imposes a closure constraint at the “break point”

 Problem with RRT

 Sampling strategies do not consider bias that account for constraints  The probability of randomly choosing configurations that satisfy the constraints is not

significant or zero.  Solution – Randomized Gradient Descent (RGD)

 Randomly shifts sampled configurations in directions that minimize constraint error  Deal with arbitrary constraint 

slide-24
SLIDE 24

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Map a Path Planned in Task Space to Joint Space

 Motivation

 RGD is configuration space motion planning  More efficient to address the task space constraints in task space

 Method

 Plan a task space path that satisfies the given task space constraints (RRT)  Trajectory tracking technique(s) as a local planner(s) to track these paths in

the configuration space

Hybrid C-Space/Task Space Search (ATACE) Yao and Gupta, 2005

slide-25
SLIDE 25

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Go Back to Configuration Space Constraints

 Motivation – Sampling matters

 Minimize deviation from the constraints  Tangent Space Sampling (TS)

 Connect the tree to the projection of the new sample onto the null space of task

constraints

 First-Order Retraction (FR).

 Iteratively displace the sample directly toward the constraint manifold

Task-Constrained RRT (TCRRT) Stilman, 2007

slide-26
SLIDE 26

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Handey

The most significant lesson we have drawn from our experience so far with Handey is the need for a systematic and efficient way of dealing with the number of options available while constructing a plan…In earlier work, we have considered the use of constraints as a mechanism for making these decisions. Constraint propagation and satisfaction, however, can be extremely difficult and computationally expensive. This area requires a great deal of further work.

  • Lozano-Perez et al. ICRA 1987
slide-27
SLIDE 27

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Planning motion with constraints

goal start

  • bstacle

task constraint

How should we represent constraints? How should we plan with those representations?

slide-28
SLIDE 28

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

slide-29
SLIDE 29

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Hand Pose

slide-30
SLIDE 30

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Torque

slide-31
SLIDE 31

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Balance

slide-32
SLIDE 32

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Closed Chains

slide-33
SLIDE 33

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Goal Sets

slide-34
SLIDE 34

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

How do we plan motion with constraints? How do we represent constraints?

slide-35
SLIDE 35

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Constraint representation

Define a constraint as a pair:

constraint-evaluation function domain

which part of the path are we constraining?

A configuration of the robot q satisfies the constraint when

slide-36
SLIDE 36

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Constraint domain

Start Goal Entire Path

slide-37
SLIDE 37

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Pose Constraints

Path Constraints Goal Constraints For efficient planning the representation must be

Easy to specify Fast to sample Fast to measure distance to

Task Space Regions (TSRs)

slide-38
SLIDE 38

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Task Space Regions (TSRs)

 A TSR consists of

 : reference transform  : offset transform  : bounds on each dimension

 Can have multiple TSRs for a given task

slide-39
SLIDE 39

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Path constraint example: no-tilting

Free translation No roll No pitch Free yaw

slide-40
SLIDE 40

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Goal Constraint Example: Grasping

slide-41
SLIDE 41

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

How do we plan motion with constraints? How do we represent constraints?

slide-42
SLIDE 42

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

How do we plan motion with constraints? How do we represent constraints?

slide-43
SLIDE 43

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Motion Planning with Constraints

Arm with three joints Heavy Object (Torque Constraint) Sliding Surfaces (Pose Constraint)

slide-44
SLIDE 44

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Joint 1 Joint 2 Joint 3 Configuration Space (C-space)

slide-45
SLIDE 45

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

c e b a d a b c d e

slide-46
SLIDE 46

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Rapidly-exploring Random Tree (RRT)

Start

  • bstacle

Goal

slide-47
SLIDE 47

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Rejection Sampling

    

Can only sample on a manifold of the same dimension as the space

slide-48
SLIDE 48

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Rejection Sampling and Pose Constraints

Full Dimensional Lower Dimensional

C-space C-space

I generate a random sample in full configuration space, what is the next to do?

slide-49
SLIDE 49

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Projection Sampling

    

Can sample on manifold of any dimension

  

slide-50
SLIDE 50

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Constrained BiDirectional RRT (CBiRRT)

qrand

Start

slide-51
SLIDE 51

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Projection Sampling

Start

Gradient descent on distance metric to reach manifold

slide-52
SLIDE 52

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Or, Projection to the Null Space of Task Constraint

slide-53
SLIDE 53

RBE 550 MOTION PLANNING BASED ON DR. DMITRY BERENSON’S RBE 550

Summary

 Combining Jacobian-based constraint satisfaction and sampling-based

motion planning allows efficient planning for many real-world tasks

 Represent constraints as TSRs or TSR Chains

 Straightforward to represent  Fast sampling  Fast distance checking

 Planning with TSRs using CBiRRT

 Probabilistically complete  Works for real-world problems for high-DOF robots

slide-54
SLIDE 54

End