14
RRT MP ECE/CS498 Pulkit Katdare 8 th April, 2019

Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

RRT MPECE/CS498

Pulkit Katdare8th April, 2019

Page 2: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

Outline

• Introduction

• Rapidly-Exploring Random Tree

• Controller Design

• Putting it all together

Page 3: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

What is Planning?

Page 4: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

Motion PlanningGiven initial state !"#"$ and a goal %& , what is the path or sequence ofcontrol inputs that will lead us from start to goal?Possible Issues:• Obstacle avoidance• Nonholonomic systems• Computationally intensive• Nonconvex optimization• Large number of samples required in real-time

Two approaches: optimization-based & sampling-based techniques

Page 5: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

Rapidly exploring Random Tree (RRT)Build tree by generating next states through the dynamics by randomly selecting inputs

Page 6: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

Rapidly exploring Random Tree (RRT)Build tree by generating next states through the dynamics by randomly selecting inputsGenerate_RRT(!"#"$, &, Δ()).init(!"#"$)for k = 1 to K

!*+#, ß RANDOM_STATE()!#-+* ß NEAREST_NEIGHBOR(!*+#,, )).ß SELECT_INPUT(!*+#,, !#-+*)!#-/ß NEW_STATE(!#-+*, ., Δ()).add_vertex(!#-/)).add_edge(!#-+*, !#-/, .)

Return )

Page 7: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

Rapidly exploring Random Tree (RRT)Build tree by generating next states through the dynamics by randomly selecting inputsGenerate_RRT(!"#"$, &, Δ()).init(!"#"$)for k = 1 to K

!*+#, ß RANDOM_STATE()!#-+* ß NEAREST_NEIGHBOR(!*+#,, )).ß SELECT_INPUT(!*+#,, !#-+*)!#-/ß NEW_STATE(!#-+*, ., Δ()).add_vertex(!#-/)).add_edge(!#-+*, !#-/, .)

Return )

How???

Page 8: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

Controller Design?

• How to move a robot from point A to point B• We need a model first

Page 9: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

• VR : speed of the car• ! : steering of the car

How to figure out this VR and !?

X

Y

x

y

θ

Page 10: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

A

BController algorithm

• VR= 0• ! = K(arctan("#) - %)

Page 11: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

A

BController algorithm

• VR= Constant• ! = 0.0

Page 12: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

A

BController algorithm

• VR= Constant• ! = 0.0

Page 13: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

A

BController algorithm

• VR= Constant• ! = 0.0

Page 14: Lecture18 planningandverify tutorialpublish.illinois.edu/safe-autonomy/files/2019/04/Lecture... · 2019-04-16 · Motion Planning Giveninitialstate! ... Rapidly exploring Random Tree

This MP