81
Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering Chonbuk National Univerisity Presented by: Ram Kaji Budhathoki Student ID: 201155431 Ansu Man Singh Student ID:201150875

Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Embed Size (px)

Citation preview

Page 1: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Cell DecompositionCourse: Introduction to Autonomous Mobile Robotics

Prof. Jaebyung ParkIntelligent Systems & Robotics Lab.Division of Electronic Engineering

Chonbuk National Univerisity

Presented by:Ram Kaji Budhathoki

Student ID: 201155431Ansu Man Singh

Student ID:201150875

Page 2: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Outline

• Exact Cell Decomposition• Trapezoidal Decomposition• Boustrophedon Decomposition• Morse Decomposition• Visibility based Decomposition

Page 3: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Exact Cell Decomposition

• Definition– Free space is the union of simple sub spaces called

cell– If two cell shares common boundary, then they

are called adjacent cell

Adjacent cells

Page 4: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Exact Cell Decomposition

• Adjacency graph– A graph where a node represent cell, and an edge

is used to connect two nodes

Page 5: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Path planning using cell decomposition

• Steps– First cells containing start and goal points are

determined.– Nodes connecting initial nodes and goal nodes is

searched using adjacency graph– Path in each cell is determined

Page 6: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Path planning using cell decomposition

Cell

Adjacency graph

Node with grey color represent cell covered during the path of robot

start goal

Page 7: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Cell Decomposition method

• Trapezoidal decomposition• Boustrophedon decomposition• Morse cell decomposition• Visibility based decomposition

Page 8: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

• Shape of the cells after decomposition is trapezoidal

• Cell can also be triangular in shape• For the trapezoidal decomposition obstacles

should be in polygon

Page 9: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

• The trapezoidal decomposition is formed by extending a vertical line at each vertex up, down, or both ways until it intersects an obstacle boundary

Page 10: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

Formation of cells after Trapezoidal decomposition

Page 11: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Steps in Trapezoidal decomposition

1. In order to decompose, First list of polygons with the list of vertices are given as input to the algorithms

2. Sort all the vertices according to the value of X-coordinate of each vertex. This steps require O(n*log(n)) time and O(n) memory

3. Determination of intersection of those vertices with edges. This requires O(n^2) time

Page 12: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

• However computational time in step3 can be reduced if we use sweeping line and maintain an efficient list.

• The list should contain the edges that will intersect with line extended from current vertex

• When a sweeping line touches a vertex it is called Event

Page 13: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

• Some Terminology

Vertex where event took place

Y – coordinates of e(upper) is always greater that e(lower)

Scan line

Page 14: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

• There are four types of event

Page 15: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

Page 16: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

• Example

Page 17: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

• Example

Page 18: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

• Example

Page 19: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

• Example

Page 20: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Trapezoidal Decomposition

• This method requires total O(nlog(n)) time maintaining the list

• By the help of this we can determine the intersection point of the vertices with boundary of other obstacle

Page 21: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Path planning using Trapezoidal decomposition

• Steps1. First cells containing start and goal points are

determined.2. Adjacency graph is created with node is used to

represent a cell, 3. Path is searched on adjacency graph, i.e, nodes

connecting start point to goal point is searched

Page 22: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Path planning using Trapezoidal decomposition

• ExamplesMid point

Adjacency graph

Page 23: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Path planning for coverage application

• Coverage application includes autonomous lawn mowing, floor cleaning and snow removal

• This type of application requires robot to move through each and every points on free spaces

• Performance is measured in terms of area covered vs path length.

• For this type of application cell Decomposition is very essential.

Page 24: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Boustrophedon Decomposition

• Boustrophedon Decomposition is similar to Trapezoidal decomposition, however in Boustrophedon vertical lines are formed both upward and down ward of vertex.

Cell decomposition using Boustrophedon decomposition

Page 25: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Boustrophedon Decomposition

Boustrophedon decomposition Trapezoidal decomposition

This figure proves that when there are more Number cells, then robot have to cover more Distance.

Page 26: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Coverage using Boustrophedon Decomposition

• Steps in the coverage using Boustrophedon Decomposition– Step1: Decomposition of free space into cells– Step2: Creation of Adjacency graph– Step3: Visit of each node in the graph, known as

exhaustive walk– Step4 : at each node, cell is covered using back

and forth motions

Page 27: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Coverage using Boustrophedon Decomposition

Step 1

Step 2 and 3

Step 4

Page 28: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Boustrophedon Decomposition

• Exhaustive Walk along the graph can be achieved using depth-first search algorithm

Page 29: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• In this algorithms Each node is given 3 states.– Node that is not visited – Node that is in progress or process– Node where processing is finishedLet the three states be defined by three colors (grey,

white and black)

Page 30: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• Initially all nodes are white

Page 31: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• Start with node one, i.e. visit node 1

Page 32: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• Node one has connection with node 4, so visit node 4

Page 33: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• Node 4 has connection with node 2 and 5 , choose one node and visit that node, e.g 2

Page 34: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• Node 2 has connection with node 4 and5 , since 4 is already visited, Node 5

Page 35: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• Similarly visit node 3

Page 36: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• Since no new node are connected with node 3, so mark node 3 with black color, i.e. processing finished status

Page 37: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• Now node has connection with 5, since 5 is already visited, Mark Node 5 with black color

Page 38: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• Similarly, same applies to node 2

Page 39: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Depth-First search Algorithm(DFS)

• same applies to node 4 and 1

Page 40: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Coverage using Boustrophedon Decomposition

• Example

Robot

Obstacles

Page 41: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based Decomposition

• Visibility based decomposition is based on line of sight

• This decomposition is used for pursuit/evasion problem

• Let there is one evader(bad guy) and many pursuers (police)

• The evader is caught in a space, if both evader and pursuer lies in line of sight, i.e.

Page 42: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based decomposition

• Some Terminology– H(Wfree):Number of pursuer required to capture an

evader at a given time– Contaminated space: Region in workspace where

there may be evader– Clear space: Region in free space where there are no

evader– Re-contaminated space : Region that may be re-

contaminated– Edge gap: edge of the visible polygon on free space

Page 43: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based decomposition

• Example

Edge gap

Each edge graph contains binary information, B(x) is the binary vector related to x

Page 44: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based decomposition

• In visibility based decomposition cells are decomposed by the help of conservative region.

• Adjacency graph is created for all cells• Binary information is stored in each node of

Adjacency graph

Page 45: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based decomposition

• Conservative region is created by following ways:– Lines are extended from convex vertex until they

intersect other walls– If two vertex are in line of sight, rays are extended

from each vertex to other vertex.– E.g.

Page 46: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based decomposition

• Example

Conservative region with adjacency graph

Page 47: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based algorithms to solve pursuit/evasion problem

• Construction of Adjacency graph and conservative region is not enough to solve pursuit evasion problem

• For that Information graph is required

Page 48: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based algorithms to solve pursuit/evasion problem

• Information graph: In this graph all possible binary information of edge-gap is stored for cell. Which actually becomes the nodes of information graph

Page 49: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based algorithms to solve pursuit/evasion problem

• Example

Adjacency graph with visible edge-gap

Page 50: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based algorithms to solve pursuit/evasion problem

• Example

Information graph

1

0

1

0

00

01

10

111

0

0

1

Page 51: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Visibility based algorithms to solve pursuit/evasion problem

• Example

1

0

1

0

00

01

10

111

0

0

1

Searching: Start with any node with all 1 and stop at any node with all 0

Page 52: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Complexity

• In order to find the evader in simply connected spaces with n edge,O(log(n)) pursuers are required,

• In order to find evader in spaces with ‘h’ holes O(sqrt(h)+log(n)) pursuers are required

Page 53: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Morse Cell DecompositionsDrawbacks of Trapezoidal Decomposition

• Simple back-and-forth motions. No efficient paths for coverage.

• Cells formed can be aggregated with neighboring cells to form more efficient coverage paths.

• A polygonal workspace is required, not realistic for every applications.

Morse Function

• Cells have simple structure and can be defined in nonpolygonal spaces.

• Critical points are nondegenerate i.e. critical points are isolated. • The boustrophedon decomposition is a Morse decomposition.

Page 54: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Morse Decomposition Definition• A slice is a codimension one manifold denoted by . • The slices are parameterized by λ (varying λ sweeps a slice through

the space). • The portion of the slice in the free configuration space, , is

denoted by , i.e.

• The connectivity changes that occur at critical points are used to define cells in a cell decomposition.

• changes connectivity at critical points. Slices that contain critical points are termed critical slices.

• is the jth open connected slice interval such that

freeQ

freeQ

free freeQ Q Q

Q

freeQ

jfreeQ

jfree j freeQ Q

Page 55: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Morse Decomposition Definition Contd….It is an exact cell decomposition whose cells are the connected

components of Qfree\I*.*I Is the slice intervals that contain a critical point.

Consider the boustrophedon decomposition of a nonpolygonal environment.

• As a straight line slice is swept from left to right, its connectivity in the free space changes first from one to two, then two to one and so forth.• At the points where connectivity changes occur, the cell boundaries in the free Space are located.

Page 56: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Morse Decomposition in terms of Critical Points

∇h

∇m

• Slice function: h(x,y)= x• At a critical point x of h |M , h ( x ) = m ( x )∇ ∇

Page 57: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Connectedness

1- Connected 2 -Connected

1-Connected 2 -Connected

Connectivity of the slice in the free space changes at the critical points.

Page 58: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Robot Motion and Reeb Graph

Each cell can be covered by back and forth motions

Reeb graph represents the topology of the cellular decomposition

Page 59: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Examples of Morse Decomposition

• The slice may be defined as the preimage of a general real-valued function .

• Varying the function that defines the shape of the slice that results in different decompositions.

• For the boustrophedon decomposition in the plane, h(x, y) = x.

:h Q R

Page 60: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Morse Decomposition

1. h(x ,y)= 2 2x y

Fig. Cell Decomposition for h(x,y)= and its associated spiral coverage pattern.

• The slices are the circles that are the preimages of h. • At the critical points, the circle-shaped slices become tangent to the obstacles.• The robot follows a spiral pattern until it encounters critical points.• It maximizes the area covered per unit distance travelled in regions sparsely populated with obstacles.

2 2x y

Page 61: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Morse Decomposition2. h(x, y)= tan

y

x

Fig. Decomposition for h(x, y)= and a spiked pattern.tany

x

• The free space is sliced like a pie.• At critical points, the slices are tangent to the obstacles.• This type of pattern covers densely the region closest to the centre of the pattern.

Page 62: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Morse Decomposition3. h(x, y) = |x| + |y|

Fig. Decomposition for h(x ,y) = |x| + |y| and a coverage pattern.

• Squares are the slices.• At the critical points the corner of a square touches an obstacle or the side of it becomes tangent to an obstacle.• This pattern can be used to to approximate the spiral pattern as it is easier to move the robots along the straight line rather than circles.

Page 63: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Brushfire Decomposition• Imaginary wave fronts emanate from each obstacle and collide at

points on the GVD. • The decomposition models the topology of the wave fronts as they

initially collide with each other and form or destroy new wave fronts.

• The wave fronts collide with each other at the points located on the GVD.

Fig. GVD of an environment

Page 64: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Brushfire Decompostion

Fig. Incremental construction of the cells of the brushfire decomposition.

Page 65: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Brushfire DecompositionCoverage Path

Fig. Coverage pattern for the brushfire decomposition

• To generate this pattern, the robot follows the boundaries of obstacles.• It has a continuous robust reference for localization.• The robot relies heavily on long-range sensors.

Page 66: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Wave-Front Decompostion• Let h(x, y) be the length of the shortest path between a point

(x, y) and a fixed location. • The level sets h−1(λ) foliate the free space where for a given λ.

• Wave front starts at qstart and expanding into the free space.

• The value λ parameterizes each wave front (or level set of h). Once the wave front crosses qgoal, the planner can backtrack a path from qgoal to qstart .

• The shortest path-length function induces a cell decomposition, as well.

• Critical points of this function occur when wave fronts becomes tangent to obstacles and when wave fronts collide.

• Once the waves collide, they propagate as one wave with a nonsmooth point that originated at the critical point.

Page 67: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Wave-Front Decomposition

Fig. Wave-front decomposition defined on a continuous domain.

• The wave front emanates from a point in the lower-left portion of the figure.

• The non smooth point traces the set of points of equal path length to the goal for two classes of paths, one to the right of the obstacle and one to the left. • This decomposition is especially useful for coverage by a tethered robot

Page 68: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Sensor Based Coverage

• If the the robot is placed in an unknown environment, but assume it has the standard range sensor ring.

• The task is to simultaneously cover and explore the unknown space.

• This can be reduced to concurrently and incrementally covering each cell while constructing the adjacency graph.

• For sensor-based coverage, a Reeb graph is constructed . • This Reeb graph is dual i.e. the nodes of the graph are the

critical points and the edges connect neighboring critical points, i.e., correspond to cells.

.

Page 69: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

(Detect Critical Points)

Sensor Based Coverage

Fig. A boustrophedon decomposition and its Reeb graph. At the critical points, the surface normals and sweep direction are parallel.

Page 70: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Sensor Based Coverage

Fig. Incremental construction of the graph while the robot is covering the space.

While covering the space, look for critical pointsAlgorithm• Cover a cell until the closing critical point is detected• If the closing critical point has “uncleaned” cells associated with it, chose one and cover, repeat• If the closing critical point has no uncleaned cells,– search reeb graph for a critical point with an uncleaned cell– Plan a path to critical point– Cover cell, repeat• Else coverage is complete

Page 71: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Sensing Critical Points• How does the robot sense a critical point?

The robot looks for points where the surface normals are parallel to the sweep direction.

• How does the robot find all of the critical points?

While covering the cell, the robot looks for the other critical point that indicates complete coverage of the cell and the next node in the Reeb graph called the closing critical point.

It is to be guaranted for the Reeb Graph that the robot finds the closing critical point of each cell.

The robot perform boundary-following along the ceiling in the reverse direction so that it will sense the critical points related to the ceiling. This motion is reverse boundary following.

Page 72: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Missing Closing Critical Point

Fig. Critical Points in the ceiling are missed with conventional coverage algorithms

The algorithm uses a raster scan type of motion: move along a slice or lap to an obstacle, follow the obstacle boundary for a lateral distance equal to interlap spacing, and repeat. • This alternates boundary-following between the "ceiling" and "floor" of the cell. • It can miss the closing critical point of a cell. • The robot did not follow the boundary of the ceiling, it cannot sense the critical points in the ceiling using the critical point sensing method.

Page 73: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Cycle AlgorithmForward phase: The robot first follows the path between points Si and 2.

Reverse phase: It follows the path between points 2 and 3.

Closing phase: The robot follows the path between points 3 and Si.

• This algorithm is the most important part of the incremental construction.

• It guarantees encountering the closing critical point of a cell if it exists between subsequent laps.

Page 74: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Complexity of Coverage1. Establish a relationship among the number of critical points, cells, and obstacles.

2. Determine an upper-bound on path length given the perimeter the obstacles and the diameter Δ smallest disk that circumscribes the space as shown in Fig below.

Consider coverage with the boustrophedon decomposition.

In the Reeb graph Obstacles including the outer boundary are represented with "faces" in the graph .Euler's formula relate s the number of nodes ν, edges e and faces f of a planar connected graph by v- e + f =2------------(1)

Fig. To determine the complexity of the algorithm in terms of the environment size, the diameter Δ of the "minimal" disk that fully contains the space.

Page 75: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Modified Euler's Formula• In general ,the outer boundary of the space is not termed an obstacle, 1 is

subtracted from the number of faces to get the number of obstacles. • Let Ncp be the number of critical points, Nce be the number of cells and Nob be

the number of obstacles . Then from equation (1)Nce=Ncp+Nob-1.------------------(2)

Example:

There are 21 critical points (nodes in the graph).i.e , Ncp = 21, and two obstacles (faces f2, f3 in the graph; f1 is the outer boundary), Nob = 2. Using the modified Euler's formula Nce = Ncp + Nob − 1, we get , Nce = 22.Therefore, the number of cells increases linearly as the robot discovers new critical points.

Page 76: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Extra Lap• Analyzing lapping, boundary following and backtracking motions separately. • The space is fully contained within a Δ diameter disk, the length of each lapping

path can be at most Δ. • There must be at least lapping paths where 2r is the interlap spacing.• There is an additional lap associated with starting the coverage operation within a

cell as shown in Fig. below.• The maximum number of lapping paths is . • The length of each lapping path is bounded above by Δ, the total path length of the

lapping motions is bounded above by ------------------(A)

Fig. When the robot starts to cover a new cell, it performs an "extra" lap starting from a critical point on one of its boundaries.

2r

2 ceNr

2 ceNr

Page 77: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Length of Boundary Following Path• Pcell :Length of the floor and ceiling of a cell.

• The length of boundary-following paths in a cell is at least Pcell.

• Considering an undo-reverse boundary-following motion to get to the start point, the lower bound is 1. 5Pcell.

• In the worst case, the upper bound becomes 2Pcell as shown in Fig. below.

• The total length of the boundary-following paths is less than 2Ptotal ------(B)

where Ptotal is the length of the perimeter of all of the obstacles and the outer boundary.

Fig. The total perimeter of the cell is x + y ; y is the length of the floor and x is the length of the ceiling and x >> y. The total path length traveled along the boundary of the cell is bounded above by 2x + y. As x >> y, this value is equal to 2(x + y).

Page 78: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Backtracking to Closing Critical Point

Fig. After discovering the closing critical point of a cell, the robot backtracks to the closing critical point of a cell with uncovered cells by boundary-following and (if necessary) lapping .

In the worst case, the length of this backtracking path is Pcell + Δ (where the robot follows every boundary and the longest slice). When we consider all the backtracking paths, the upper bound becomes Ptotal + ΔNce.

-……………………………..(C)

The extra boundary-following path followed by the robot to discover the critical point is bounded above by Pcell. Hence, the total extra boundary-following path length is bounded above by Ptotal……………………………(D)

Page 79: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

DFS on Reeb GraphWhen the robot finishes covering a cell, it performs a depth-first search on the Reeb graph to choose an uncovered cell (if any are left).

Figure 6.29: The robot starts to cover the space from Cp1. Whenever the robot finishes covering a cell, a depth-first search is performed on the graph to choose a new cell to cover.

Since we perform a depth-first search on the graph, each cell is traversed at most once , and therefore the backtracking path length is bounded by .

1

2

, 2

ceN

celli cei

total ce

P N

or P N

---------------------------------(E)

Page 80: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Length of Coverage Path

Fig. After finishing covering cells A and B, the robot needs to travel from Cp1 to Cp2 to start to cover cell C. The robot simply follows the boundary of the obstacle either along the ceiling or floor of the cell. In the worst case, the boundary-following path length is bounded above by the length of the perimeter of the obstacles that form the boundary of the cell.

Page 81: Cell Decomposition Course: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering

Length of Coverage Path Contd….

Combining the above upper bounds, the length of the coverage path is less than

2

4 52 ce totalN P

r

Using Modified Eulers Formula,2

4 ( ) 5 42 cp ob totalN N P

r

Therefore, the total coverage path length is bounded linearly by the area of the space, the number of critical points, and the length of the perimeter of the obstacles and the outer boundary.