1.02k likes | 1.54k Views
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
E N D
Cell DecompositionCourse: Introduction to Autonomous Mobile Robotics Prof. Jaebyung Park Intelligent Systems & Robotics Lab. Division of Electronic Engineering Chonbuk National Univerisity Presented by: Ram KajiBudhathoki Student ID: 201155431 Ansu Man Singh Student ID:201150875
Outline • Exact Cell Decomposition • Trapezoidal Decomposition • Boustrophedon Decomposition • Morse Decomposition • Visibility based Decomposition
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
Exact Cell Decomposition • Adjacency graph • A graph where a node represent cell, and an edge is used to connect two nodes
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
Path planning using cell decomposition Node with grey color represent cell covered during the path of robot Adjacency graph start goal Cell
Cell Decomposition method • Trapezoidal decomposition • Boustrophedon decomposition • Morse cell decomposition • Visibility based decomposition
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
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
Trapezoidal Decomposition Formation of cells after Trapezoidal decomposition
Steps in Trapezoidal decomposition • In order to decompose, First list of polygons with the list of vertices are given as input to the algorithms • 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 • Determination of intersection of those vertices with edges. This requires O(n^2) time
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
Trapezoidal Decomposition • Some Terminology Vertex where event took place Scan line Y – coordinates of e(upper) is always greater that e(lower)
Trapezoidal Decomposition • There are four types of event
Trapezoidal Decomposition • Example
Trapezoidal Decomposition • Example
Trapezoidal Decomposition • Example
Trapezoidal Decomposition • Example
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
Path planning using Trapezoidal decomposition • Steps • First cells containing start and goal points are determined. • Adjacency graph is created with node is used to represent a cell, • Path is searched on adjacency graph, i.e, nodes connecting start point to goal point is searched
Path planning using Trapezoidal decomposition • Examples Mid point Adjacency graph
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.
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
Boustrophedon Decomposition Boustrophedon decomposition Trapezoidal decomposition This figure proves that when there are more Number cells, then robot have to cover more Distance.
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
Coverage using Boustrophedon Decomposition Step 1 Step 2 and 3 Step 4
Boustrophedon Decomposition • Exhaustive Walk along the graph can be achieved using depth-first search algorithm
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 finished Let the three states be defined by three colors (grey, white and black)
Depth-First search Algorithm(DFS) • Initially all nodes are white
Depth-First search Algorithm(DFS) • Start with node one, i.e. visit node 1
Depth-First search Algorithm(DFS) • Node one has connection with node 4, so visit node 4
Depth-First search Algorithm(DFS) • Node 4 has connection with node 2 and 5 , choose one node and visit that node, e.g 2
Depth-First search Algorithm(DFS) • Node 2 has connection with node 4 and5 , since 4 is already visited, Node 5
Depth-First search Algorithm(DFS) • Similarly visit node 3
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
Depth-First search Algorithm(DFS) • Now node has connection with 5, since 5 is already visited, Mark Node 5 with black color
Depth-First search Algorithm(DFS) • Similarly, same applies to node 2
Depth-First search Algorithm(DFS) • same applies to node 4 and 1
Coverage using Boustrophedon Decomposition • Example Obstacles Robot
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.
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
Visibility based decomposition • Example Each edge graph contains binary information, B(x) is the binary vector related to x Edge gap
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
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.
Visibility based decomposition • Example Conservative region with adjacency graph
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
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
Visibility based algorithms to solve pursuit/evasion problem • Example Adjacency graph with visible edge-gap
Visibility based algorithms to solve pursuit/evasion problem • Example 1 0 1 0 0 00 10 1 0 1 01 11 Information graph