comp1001 computer hardware and softwareyiannisr/774/2014/lectures/08-coverage.pdf•boustrophedon...

87
Ioannis Rekleitis Coverage

Upload: others

Post on 05-Nov-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Ioannis Rekleitis

Coverage

Page 2: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Coverage

• A task performed quite often in everyday life:

– Cleaning

– Painting

– Plowing/Sowing

– Tile setting

– etc.

CSCE 774: Robotic Systems 2

Page 3: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Motivation

Humanitarian Demining

3CSCE 774: Robotic Systems

Page 4: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

MotivationLawn Mowing

4CSCE 774: Robotic Systems

Page 5: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

MotivationVacuum Cleaning

5CSCE 774: Robotic Systems

Page 6: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Robotic Coverage

• More than 5 million Roombas sold!

• Automated Car Painting

6CSCE 774: Robotic Systems

Page 7: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Roomba Costumes

CSCE 774: Robotic Systems 7From: http://www.myroombud.com/

Page 8: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Coverage

• First Distinction– Deterministic

– Random

• Second Distinction– Complete

– No Guarantee

• Third Distinction– Known Environment

– Unknown Environment

Demining

Vacuum Cleaning

8CSCE 774: Robotic Systems

Page 9: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Non-Deterministic Coverage

• Complete Random Walk

• Ant Robotics

– Leave trail

– Bias the behavior towards or away from the trails

S. Koenig Ant Robotics, terrain coverage

Ant Robotics: I. Wagner, IBM & Technion

Andrew Russell, Monash University, Australia

9CSCE 774: Robotic Systems

Page 10: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Deterministic Coverage

• Complete Algorithm

• Guarantees Complete Coverage

10CSCE 774: Robotic Systems

Page 11: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Cell-Decomposition Methods

Two families of methods:

Exact cell decompositionThe free space F is represented by a collection of non-overlapping cells whose union is exactly FExamples: trapezoidal and cylindrical decompositions

11CSCE 774: Robotic Systems

Page 12: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Ioannis Rekleitis

The way of the Ox!

Page 13: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Single Robot Coverage

• Deterministic algorithm

• Guarantee of completeness

• Sensor based

• Unknown Environment

•Seed spreader algorithm: Lumelsky et al, “Dynamic path planning in sensor-based terrain acquisition”, IEEE Transactions on Robotics and Automation, August 1990. •Boustrophedon algorithm: Choset and Pignon, “Coverage path planning: The boustrophedon cellular decomposition”, International Conference on Field and Service Robotics,1997.

13CSCE 774: Robotic Systems

Page 14: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Single Robot Coverage

Direction of CoverageReeb graph

Vertices: Critical Points

Edges: CellsCellular Decomposition

Cell 0

Critical Point

14CSCE 774: Robotic Systems

Page 15: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Critical Points• There are four types of critical points:

– Forward Concave critical point

– Reverse Concave critical point

– Reverse Convex critical point

– Forward Convex critical point

Direction of Coverage15CSCE 774: Robotic Systems

Page 16: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Optimal Coverage

• Find an order for traversing the Reeb graph such that the robot would not go through a cell more times than necessary

Solution

• Use the Chinese Postman Problem

16CSCE 774: Robotic Systems

Page 17: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Chinese Postman Problem

• The Chinese postman problem (CPP), is to find ashortest closed path that visits every edge of a(connected) undirected graph. When the graphhas an Eulerian circuit (a closed walk thatcovers every edge once), that circuit is anoptimal solution.

CSCE 774: Robotic Systems 17

See: J. Edmonds and E.L. Johnson, Matching Euler tours and the Chinese postman problem, Math. Program. (1973).

Page 18: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Offline Analysis Algorithm

Online Trajectory ControlOffline Analysis

Cellular Decomp.

Chinese Postman Problem

Direction Alignment(Optional)

Per-CellPlanner

Non-Holonomic Controller

CSCE 774: Robotic Systems 18

Page 19: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Offline Analysis Algorithm

• Input: binary map separating obstacle from free space

• Boustrophedon Cellular Decomposition (BCD)

Online Trajectory ControlOffline Analysis

Cellular Decomp.

Chinese Postman Problem

Direction Alignment(Optional)

Per-CellPlanner

Non-Holonomic Controller

: intersections = vertices

: cells = edges

CSCE 774: Robotic Systems 19

Page 20: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Offline Analysis Algorithm (cont.)

• Chinese Postman Problem

– Eulerian circuit, i.e. single traversal through all cells (edges)

Online Trajectory ControlOffline Analysis

Cellular Decomp.

Chinese Postman Problem

Direction Alignment(Optional)

Per-CellPlanner

Non-Holonomic Controller

CSCE 774: Robotic Systems 20

Page 21: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Per-Cell Coverage Planner

• Seed Spreader: piecewise linear sweep lines

• Footprint width

Online Trajectory ControlOffline Analysis

Cellular Decomp.

Chinese Postman Problem

Direction Alignment(Optional)

Per-CellPlanner

Non-Holonomic Controller

CSCE 774: Robotic Systems 21

Page 22: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

• Static alignment methods

• Alignment with average wind heading (pre-flight)

Coverage Direction Alignment

Online Trajectory ControlOffline Analysis

Cellular Decomp.

Chinese Postman Problem

Direction Alignment(Optional)

Per-CellPlanner

Non-Holonomic Controller

Default Obstacle Boundaries Free Space Distribution

CSCE 774: Robotic Systems 22

Page 23: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

• Turning strategies

Non-Holonomic Robot Controller

Online Trajectory ControlOffline Analysis

Cellular Decomp.

Chinese Postman Problem

Direction Alignment(Optional)

Per-CellPlanner

Non-Holonomic Controller

Greedy WaypointController

Curlicue Controller

CSCE 774: Robotic Systems 23

Page 24: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Chinese Postman Problem

• The solution of the CPP guarantees that no edge isdoubled more than once

• That means some cells have to be traversed twice

• Cells that have to be traversed/covered are divided inhalf

CSCE 774: Robotic Systems 24

Page 25: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Double Coverage of a Single Cell

• By dividing the cell diagonally we control the beginningand end of the coverage

CSCE 774: Robotic Systems 25

Page 26: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Double Coverage of a Single Cell

• By dividing the cell diagonally we control the beginningand end of the coverage

CSCE 774: Robotic Systems 26

Page 27: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Optimal Coverage Algorithm

• Given a known environment:

– Calculate the Boustrophedon decomposition

– Construct the Reeb graph

– Use the Reeb graph as input to the Chinese Postman Problem (CPP)

– Use the solution of the CPP to find a minimum cost cycle traversing every edge of the Reeb graph

– For every doubled edge divide the corresponding cell in half

– Traverse the Reeb graph by covering each cell in order

27CSCE 774: Robotic Systems

Page 28: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Traversal order of the Reeb graph

28CSCE 774: Robotic Systems

Page 29: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 29

Page 30: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example: Boustrophedon Decomposition

CSCE 774: Robotic Systems 30

Page 31: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example: Reeb Graph

CSCE 774: Robotic Systems 31

Page 32: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example: CPP solution

CSCE 774: Robotic Systems 32

Page 33: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 33

Page 34: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 34

Page 35: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 35

Page 36: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 36

Page 37: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 37

Page 38: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 38

Page 39: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 39

Page 40: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 40

Page 41: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 41

Page 42: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 42

Page 43: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example

CSCE 774: Robotic Systems 43

Page 44: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 44

Page 45: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2 Boustrophedon Decomp.

CSCE 774: Robotic Systems 45

Page 46: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 46

Page 47: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 47

Page 48: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 48

Page 49: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 49

Page 50: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 50

Page 51: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 51

Page 52: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 52

Page 53: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 53

Page 54: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 54

Page 55: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 55

Page 56: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 56

Page 57: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 57

Page 58: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 58

Page 59: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 59

Page 60: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 60

Page 61: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 61

Page 62: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 62

Page 63: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 63

Page 64: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 64

Page 65: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 65

Page 66: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Example 2

CSCE 774: Robotic Systems 66

Page 67: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

UAV-Optimal Coverage

CSCE 774: Robotic Systems 67

Page 68: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

UAV-Optimal Coverage

CSCE 774: Robotic Systems 68

•UAVs non-holonomic constraints require special trajectory planning

•120 Km of flight during coverage

Page 69: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Image Mosaic

CSCE 774: Robotic Systems 69

Page 70: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Multi-UAV

CSCE 774: Robotic Systems 70

Page 71: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Video at ICRA 2011

CSCE 774: Robotic Systems 71

Page 72: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Coverage of Known Worlds

From: X. Zheng and S. Koenig. Robot Coverage of Terrain with Non-Uniform Traversability. In Proc. of the IEEE Int. Conf. on Intelligent Robots and Systems (IROS), pg. 3757-3764, 2007

72CSCE 774: Robotic Systems

Page 73: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Decompose the free space into simple cells and represent the connectivity of the free space by the adjacency graph of these cells

Cell decomposition for Path Planning

73CSCE 774: Robotic Systems

Page 74: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Trapezoidal decomposition

74CSCE 774: Robotic Systems

Page 75: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

start

end

Spatial decompositions

• Dividing free space into pieces and using those...

CSCE 774: Robotic Systems 75

Page 76: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Exact cell decompositionRunning time?

sweepline algorithm

Spatial decompositions

• Dividing free space into pieces and using those...

CSCE 774: Robotic Systems 76

start

end

Page 77: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Exact cell decompositionRunning time?

O( N log(N) )

Path?

sweepline algorithm

Spatial decompositions

• Dividing free space into pieces and using those...

CSCE 774: Robotic Systems 77

start

end

Page 78: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Exact cell decompositionRunning time?

O( N log(N) )

Path?

via centroidssweepline algorithm

Spatial decompositions

• Dividing free space into pieces and using those...

CSCE 774: Robotic Systems 78

start

end

centroids

Page 79: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Exact cell decompositionRunning time?

O( N log(N) )

Path?

via centroidssweepline algorithm+ edge midpoints

Spatial decompositions

• Dividing free space into pieces and using those...

CSCE 774: Robotic Systems 79

start

end

centroids+ midpoints

Page 80: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Exact cell decompositionRunning time?

O( N log(N) )

Path?

via centroidssweepline algorithm+ edge midpoints+ graph search

Why?

why else?

Spatial decompositions

• Dividing free space into pieces and using those...

CSCE 774: Robotic Systems 80

start

end

centroids+ midpoints

Page 81: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

there may be more detail in the world than the task needs to worry about...

Trapezoidal decomposition is exact and

complete, but not optimal -- even

among convex subdivisions.

Optimality

• Obtaining the minimum number of convex cells is NP-complete.

15 cells 9 cells

81CSCE 774: Robotic Systems

Page 82: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Cell-Decomposition Methods

Two families of methods:

Exact cell decomposition

Approximate cell decompositionF is represented by a collection of non-overlapping cells whose union is contained in FExamples: quadtree, octree, 2n-tree

82CSCE 774: Robotic Systems

Page 83: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

recursively subdivides each mixed obstacle/free

(sub)region into four quarters...Quadtree:

further decomposing...

• Approximate cell decomposition

83CSCE 774: Robotic Systems

Page 84: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

recursively subdivides each mixed obstacle/free

(sub)region into four quarters...Quadtree:

further decomposing...

• Approximate cell decomposition

84CSCE 774: Robotic Systems

Page 85: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

recursively subdivides each mixed obstacle/free

(sub)region into four quarters...Quadtree:

further decomposing...

• Approximate cell decomposition

85CSCE 774: Robotic Systems

Page 86: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Again, use a graph-search algorithm to find

a path from the start to goal

Quadtree

is this a complete path-planning algorithm?

i.e., does it find a path when one exists ?

further decomposing...

• Approximate cell decomposition

86CSCE 774: Robotic Systems

Page 87: COMP1001 Computer Hardware and Softwareyiannisr/774/2014/Lectures/08-Coverage.pdf•Boustrophedon algorithm: Choset and Pignon, Coverage path planning: The boustrophedon cellular decomposition

Octree Decomposition

CSCE 774: Robotic Systems 87