Algorithmic Robotics and Motion...
Transcript of Algorithmic Robotics and Motion...
![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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/1.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/2.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/3.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/4.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/5.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/6.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/7.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/8.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/9.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/10.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/11.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/12.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/13.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/14.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/15.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/16.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/17.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/18.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/19.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/20.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/21.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/22.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/23.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/24.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/25.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/26.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/27.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/28.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/29.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/30.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/31.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/32.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/33.jpg)
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,](https://reader036.fdocuments.us/reader036/viewer/2022071006/5fc3d01fdd741b743512b76b/html5/thumbnails/34.jpg)
THE ENDTHE END
34Algorithmic Robotics and Motion Planning