algorithmic robotics and motion...

34
Algorithmic Robotics and Motion Planning Spring 2011 Motion planning and arrangements Motion planning and arrangements Dan Halperin School of Computer Science Tel Aviv University

Upload: others

Post on 19-Aug-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Algorithmic Roboticsand Motion Planning

Spring 2011Motion planning and arrangementsMotion planning and arrangements

Dan HalperinSchool of Computer Science

Tel Aviv University

Page 2: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Today’s lesson

� we will learn a general framework for complete modeling of motion planning (and other) problems

� we will then apply it to solve two systems with two degrees of freedom in the plane: we will then apply it to solve two systems with two degrees of freedom in the plane: � a disc moving among disc obstacles� an L-shaped robot translating among

polygonal obstacles� we will review general complexity results

Page 3: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Motion planning:the basic problem (reminder)Let B be a system (the robot) with k degrees of

freedom moving in a known environment cluttered with obstacles. Given free start and goal placements for B decide whether there goal placements for B decide whether there is a collision free motion for B from start to goal and if so plan such a motion.

3Algorithmic Robotics and Motion Planning

Page 4: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Configuration spaceof a robot system with k degrees of freedom

� the space of parametric representation of all possible robot configurations

� C-obstacles: the expanded obstaclesC-obstacles: the expanded obstacles� the robot -> a point� k dimensional space� point in configuration space: free,

forbidden, semi-free� path -> curve

4Algorithmic Robotics and Motion Planning

Page 5: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Point robot

5Algorithmic Robotics and Motion Planning

Page 6: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Trapezoidal decomposition

cc2

c4 c5c8

c7

c14

c15

6Algorithmic Robotics and Motion Planning

c11c1

c3

c6

c10

c9c12

c13

Page 7: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Connectivity graph

c11c1

c2

c4 c5c8

c7

c10

c14

c15

Algorithmic Robotics and Motion Planning 7

c1 c10

c2

c3

c4 c5

c6

c7

c8

c9

c11

c12

c13

c14

c15

c3

c6c9

c12

c13

Page 8: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

What is the number of DoF’s?

� a polygon robot translating in the plane� a polygon robot translating and rotating� a spherical robot moving in space

a spatial robot translating and rotating� a spatial robot translating and rotating� a snake robot in the plane with 3 links

8Algorithmic Robotics and Motion Planning

Page 9: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Two major planning frameworks

� cell decomposition� road map

motion planning methods differ along � motion planning methods differ along additional parameters

9Algorithmic Robotics and Motion Planning

Page 10: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Hardness

� the problem is hard when k is part of the input [Reif 79], [Hopcroft et al. 84], …

� [Reif 79]: planning a free path for a robot made of an arbitrary number of polyhedral bodies connected together at some joint made of an arbitrary number of polyhedral bodies connected together at some joint vertices, among a finite set of polyhedral obstacles, between any two given configurations, is a PSPACE-hard problem

� translating rectangles, planar linkages

10Algorithmic Robotics and Motion Planning

Page 11: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Complete solutions, I

the Piano Movers series [Schwartz-Sharir 83],cell decomposition: a doubly-exponentialsolution, �((��)3^�)expected time

� ��

assuming the robot complexity is constant, � is the complexity of the obstacles and � is the algebraic complexity of the problem

11Algorithmic Robotics and Motion Planning

Page 12: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Complete solutions, II

roadmap [Canny 87]:a singly exponential solution, ��(log �)��(�^2) expected time

12Algorithmic Robotics and Motion Planning

Page 13: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

And now to something completely different

(temporarily different)

Algorithmic Robotics and Motion Planning 13

Page 14: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

What are arrangements?

Example: an arrangement of lines

vertexedgeface

14Algorithmic Robotics and Motion Planning

Page 15: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

What are arrangements, cont’d� an arrangement of a set S of geometric objects is

the subdivision of space where the objects reside induced by S

� possibly non-linear objects (parabolas), bounded objects (segments, circles), higher dimensional (planes, simplices)(planes, simplices)

� numerous applications in robotics, molecular biology, vision, graphics, CAD/CAM, statistics, GIS

� have been studied for decades, originally mostly combinatoricsnowadays mainly studied in combinatorial and computational geometry

15Algorithmic Robotics and Motion Planning

Page 16: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Arrangements of lines: Combinatorics

the complexity of an arrangement is the overall the complexity of an arrangement is the overall number of cells of all dimensions comprising the arrangementfor planar arrangements we count: vertices, edges, and facesthe general position assumption: two lines meet in a single point, three lines have no point in common

16Algorithmic Robotics and Motion Planning

Page 17: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

In an arrangements of � lines

number of vertices: �(� − 1)/2

number of edges: �2

number of faces:|�|−|�|+|�|= 2

number of faces:using Euler’s formula |�|−|�|+|�|= 2

we get �2 + �2 /2 + 1

17Algorithmic Robotics and Motion Planning

Page 18: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Basic theorem of arrangement complexitythe maximum combinatorial complexity of an arrangement of � well-behaved curves in the plane is �(�2); there are such arrangements whose complexity is Ω(�2).

� �

whose complexity is Ω(�2).

more generallythe maximum combinatorial complexity of an arrangement of � well-behaved (hyper)surfaces in ℝ� is �(��); there are such arrangements whose complexity is Ω(��)

18Algorithmic Robotics and Motion Planning

Page 19: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Constructing the arrangement

� representation (data structure)� DCEL - the doubly connected edge list

� algorithm� incremental

� computational model� the real RAM

� the general position assumption19Algorithmic Robotics and Motion Planning

Page 20: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Incremental construction

� computing a bounding box� inserting the �th line

Algorithmic Robotics and Motion Planning 20

Page 21: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

How much time does it take?the steps:

� computing the bounding boxnaively �(�2); can be done in �(� log �), exercise

� �

� � � � log �

� finding where to insert line �simple, �(�)

� inserting line ��(zone complexity)

21Algorithmic Robotics and Motion Planning

Page 22: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

The zone of a curvethe zone of a curve γ in an arrangement � is the collection of faces of � intersected by γ

the complexity of the zone is the overall complexity of cells of various dimensions in the closure of the zone we need: the complexity of the zone of a line in an arrangement of � lines

22Algorithmic Robotics and Motion Planning

Page 23: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Zone theoremtheorem: the complexity of the zone of a line in an arrangement of � lines is �(�)

proof [omitted]

23Algorithmic Robotics and Motion Planning

Page 24: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Overall running time of the algorithm

� computing the bounding boxnaively �(�2); can be done in �(� log �)

� finding where to insert line �simple, �(�)

simple, �(�)

� inserting line ��(zone complexity) = �(�)

overall �(�2) time

24Algorithmic Robotics and Motion Planning

Page 25: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Basics of arrangements, summary

� the combinatorial complexity of an arrangement

� incremental construction� the zone of an(other) object in an � the zone of an(other) object in an

arrangement� the basic theorem of arrangement complexity� the real RAM model, the general position

assumption

25Algorithmic Robotics and Motion Planning

Page 26: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Configuration spaces� arrangements �(�) are used for exact discretization

of continuous problems� a point � in configuration space � has a property

П(�)� if a neighborhood of � is not intersected by an

object in �, the same property П(!) holds for every !∊

П �

object in �, the same property П(!) holds for every point !∊ (the same holds when we restrict the configuration space to an object in �)

� the objects in � are critical� the property is invariant in each cell of the

arrangement26Algorithmic Robotics and Motion Planning

Page 27: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Configuration space for translationalmotion planningthe rod is translating in the room

� the reference point: the lower end-point of the rod � the configuration space is 2 dimensional

27Algorithmic Robotics and Motion Planning

Page 28: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Configuration space obstacles

the robot has shrunk to a point⇒

the obstacles are accordingly expanded

28Algorithmic Robotics and Motion Planning

Page 29: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Critical curves in configuration space

the locus of semi-free placements

29Algorithmic Robotics and Motion Planning

Page 30: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Making the connection:The arrangement of critical curves inconfiguration space

30Algorithmic Robotics and Motion Planning

Page 31: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Solving a motion-planning problema general framework� what are the critical curves� how complex is the arrangement of the

critical curves� constructing the arrangement and filtering out � constructing the arrangement and filtering out

the forbidden cells� what is the complexity of the free space� can we compute the free space efficiently� do we need to compute the entire free

space?31Algorithmic Robotics and Motion Planning

Page 32: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Example: a disc moving among discs

� the critical curves are circles� how complex is the arrangement of the

circles?� what is the complexity of the free space?� what is the complexity of the free space?� can we compute the free space efficiently?� do we need to compute the entire free

space? does it matter?

32Algorithmic Robotics and Motion Planning

?

Page 33: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

Example: an L-shaped robot movingamong points� what are the critical curves?� how complex is the arrangement of the

critical curves?� what is the complexity of the free space?� what is the complexity of the free space?� how to compute the free space efficiently?� do we need to compute the entire free

space? does it matter?

33Algorithmic Robotics and Motion Planning

Page 34: Algorithmic Robotics and Motion Planningacg.cs.tau.ac.il/courses/algorithmic-robotics/spring-2011/slides/2mo… · Algorithmic Robotics and Motion Planning 10. Complete solutions,

THE ENDTHE END

34Algorithmic Robotics and Motion Planning