Divide Areas Algorithm For Optimal Multi-Robot Coverage Path Planning

Slides:



Advertisements
Similar presentations
Chapter 4 Partition I. Covering and Dominating.
Advertisements

Lecture 15. Graph Algorithms
Algorithm Design Methodologies Divide & Conquer Dynamic Programming Backtracking.
Traveling Salesperson Problem
O(N 1.5 ) divide-and-conquer technique for Minimum Spanning Tree problem Step 1: Divide the graph into  N sub-graph by clustering. Step 2: Solve each.
Efficient access to TIN Regular square grid TIN Efficient access to TIN Let q := (x, y) be a point. We want to estimate an elevation at a point q: 1. should.
Motion Planning for Point Robots CS 659 Kris Hauser.
Greedy Algorithms Greed is good. (Some of the time)
Label Placement and graph drawing Imo Lieberwerth.
Chapter 9 Graph algorithms. Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
On the Construction of Energy- Efficient Broadcast Tree with Hitch-hiking in Wireless Networks Source: 2004 International Performance Computing and Communications.
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
Graphs & Graph Algorithms 2 Nelson Padua-Perez Bill Pugh Department of Computer Science University of Maryland, College Park.
Chapter 9 Graph algorithms Lec 21 Dec 1, Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
SMART: A Scan-based Movement- Assisted Sensor Deployment Method in Wireless Sensor Networks Jie Wu and Shuhui Yang Department of Computer Science and Engineering.
MAE 552 – Heuristic Optimization Lecture 26 April 1, 2002 Topic:Branch and Bound.
Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University.
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
Solving problems by searching
Graphs & Graph Algorithms 2 Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Graph Algorithms Ch. 5 Lin and Dyer. Graphs Are everywhere Manifest in the flow of s Connections on social network Bus or flight routes Social graphs:
Data Structures Using C++ 2E
Visibility Graphs and Cell Decomposition By David Johnson.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS 2007 (TPDS 2007)
Mobility Limited Flip-Based Sensor Networks Deployment Reporter: Po-Chung Shih Computer Science and Information Engineering Department Fu-Jen Catholic.
Surface Simplification Using Quadric Error Metrics Michael Garland Paul S. Heckbert.
Efficient Gathering of Correlated Data in Sensor Networks
Complete Coverage Path Planning Based on Ant Colony Algorithm International conference on Mechatronics and Machine Vision in Practice, p.p , Dec.
Parallelism and Robotics: The Perfect Marriage By R.Theron,F.J.Blanco,B.Curto,V.Moreno and F.J.Garcia University of Salamanca,Spain Rejitha Anand CMPS.
Minimum Spanning Trees CSE 2320 – Algorithms and Data Structures Vassilis Athitsos University of Texas at Arlington 1.
Agenda Introduction Overview of White-box testing Basis path testing
Relay Placement Problem in Smart Grid Deployment Wei-Lun Wang and Quincy Wu Department of Computer Science and Information Engineering, National Chi Nan.
Sparse Signals Reconstruction Via Adaptive Iterative Greedy Algorithm Ahmed Aziz, Ahmed Salim, Walid Osamy Presenter : 張庭豪 International Journal of Computer.
Most of contents are provided by the website Graph Essentials TJTSD66: Advanced Topics in Social Media.
Efficient Computing k-Coverage Paths in Multihop Wireless Sensor Networks XuFei Mao, ShaoJie Tang, and Xiang-Yang Li Dept. of Computer Science, Illinois.
CS654: Digital Image Analysis Lecture 5: Pixels Relationships.
School of Systems, Engineering, University of Reading rkala.99k.org April, 2013 Motion Planning for Multiple Autonomous Vehicles Rahul Kala Rapidly-exploring.
Ramakrishna Lecture#2 CAD for VLSI Ramakrishna
Efficient Resource Allocation for Wireless Multicast De-Nian Yang, Member, IEEE Ming-Syan Chen, Fellow, IEEE IEEE Transactions on Mobile Computing, April.
Motion Planning Howie CHoset. Assign HW Algorithms –Start-Goal Methods –Map-Based Approaches –Cellular Decompositions.
Efficient Placement and Dispatch of Sensors in a Wireless Sensor Network You-Chiun Wang, Chun-Chi Hu, and Yu-Chee Tseng IEEE Transactions on Mobile Computing.
Optimal Relay Placement for Indoor Sensor Networks Cuiyao Xue †, Yanmin Zhu †, Lei Ni †, Minglu Li †, Bo Li ‡ † Shanghai Jiao Tong University ‡ HK University.
Discrete Optimization Lecture 3 – Part 1 M. Pawan Kumar Slides available online
Introduction Wireless Ad-Hoc Network  Set of transceivers communicating by radio.
Prof. Yu-Chee Tseng Department of Computer Science
COGNITIVE APPROACH TO ROBOT SPATIAL MAPPING
Mathematical Foundations of AI
基于多核加速计算平台的深度神经网络 分割与重训练技术
Divide-and-Conquer MST
Delay Optimization using SOP Balancing
Artificial Intelligence
Path Planning in Discrete Sampled Space
Outline Introduction Network Model and Problem Formulation
Graphs & Graph Algorithms 2
Graphs Chapter 13.
Efficient Distribution-based Feature Search in Multi-field Datasets Ohio State University (Shen) Problem: How to efficiently search for distribution-based.
Artificial Intelligence
Introduction Wireless Ad-Hoc Network
3. Brute Force Selection sort Brute-Force string matching
Market-based Dynamic Task Allocation in Mobile Surveillance Systems
Resource Allocation in a Middleware for Streaming Data
3. Brute Force Selection sort Brute-Force string matching
Delay Optimization using SOP Balancing
Continuous Density Queries for Moving Objects
CS 416 Artificial Intelligence
Major Design Strategies
Chapter 9 Graph algorithms
INTRODUCTION A graph G=(V,E) consists of a finite non empty set of vertices V , and a finite set of edges E which connect pairs of vertices .
3. Brute Force Selection sort Brute-Force string matching
Presentation transcript:

Divide Areas Algorithm For Optimal Multi-Robot Coverage Path Planning A. Ch. Kapoutsis, S. A. Chatzichristofis, E. B. Kosmatopoulos, “DARP: Divide Areas Algorithm for Optimal Multi-Robot Coverage Path Planning”, «Journal of Intelligent & Robotic Systems», Springer.

The multi-robot Coverage Path Planning (mCPP) Problem Given the following set-up: Obstacles Location Initial Robots position – Starting Cells Calculate: Robots Paths  A sequential set of cells for each available robot In order to: Fully coverage the operation area  every unoccupied cell Using the minimum amount of energy

The single-robot Coverage Path Planning (CPP) Problem Given the following set-up: Obstacles spreading Initial Robot position – Starting Cell Calculate: Robot Path A sequential set of cells starting from the starting cell In order to: Fully coverage the operation area  every unoccupied cell Using the minimum amount of energy

STC - An optimal O(n) algorithm for the single robot case Under the assumption that any obstacle occupy at least 4 cells, the single robot CPP has a dedicated algorithm O(n) to calculate the optimal path Main Steps Group cells in packs of 4 and represent them as nodes. Also, place the corresponding adjacent connections If the 4-cell node is occupied by obstacle do not add any node or connection Calculate the Minimum Spanning Tree, that traverses all the nodes Move the robot so as to circumnavigate around the constructed MST Reference: Gabriely, Yoav, and Elon Rimon. "Spanning-tree based coverage of continuous areas by a mobile robot." Annals of Mathematics and Artificial Intelligence31.1-4 (2001): 77-98.

Reduce the Original mCPP Problem utilizing STC algorithm Utilizing the findings of STC algorithm mCPP problem can be reduced to the construction of 𝑾 𝟏 , 𝑾 𝟐 , … 𝑾 𝒏 𝒓 exclusive robot regions. After the calculation of these exclusive regions the STC algorithm 𝒏 𝒓 instances of the STC algorithm could be deployed – in a completely distributed manner – to calculate the exact robots’ paths inside the 𝑾 i sets. However, the construction of 𝑾 i sets for every problem configuration (Obstacles – Initial robots formation) is not trivial!

mCPP problem – Attributes of any optimal path selection (Definition 3 in paper) A selection { 𝑾 𝒊 , 𝑾 𝒊 ,…, 𝑾 𝒏 𝒓 } compose an optimal solution iff 𝑾 𝒊 ∩ 𝑾 𝒋 = ∅, ∀ 𝒊,𝒋 ∈𝟏, …, 𝒏 𝒓 , 𝒊≠𝒋 The intersection between two different robots paths must be zero. It goes without saying that each set cannot have duplicate elements of the same cell. 𝑾 𝟏 ∪ 𝑾 𝟐 ∪ … 𝑾 𝒏 𝒓 =𝑳, The union of all 𝑾 𝒊 sets must contain every unblocked cell of the area to be covered (𝑳) 𝑾 𝟏 ≈ 𝑾 𝟐 ≈ … 𝑾 𝒏 𝒓 Balanced load in each robot’s set path 𝑾 𝒊 is spatially connected ∀ 𝒊∈𝟏, …, 𝒏 𝒓 , The cells inside each robot’s set 𝑾 𝒊 should be compact, having a spatial connectivity 𝒙 𝒊 (𝒕𝟎) = [ 𝒙 𝒊 𝟎 ; 𝒚 𝒊 𝟎 ] ∈ 𝑾 𝒊 The final condition refines that the initial position of each robot `i(t0) must be contained on its own set 𝑾 𝒊

Divide Areas based on Robots initial Positions (DARP) Flowchart Main Idea of DARP algorithm: Each robot provides a reachability measure (Evaluation Matrix) for every unoccupied cell, a simple mechanism assigns in each cell the robot with the smallest reachability value. At each iteration change the “Evaluation Matrix” of each robot so as to meet the attributes of the optimal solution (Definition 1). Initially the reachability measures E for each robot are their in-between Euclidean distance. Iterate the following until you reach the optimality attributes (Definition 3).: Assign a robot for each unoccupied cell based on A x,y = 𝑎𝑟𝑔𝑚𝑖 𝑛 𝑟 ( 𝐸 𝑟 (𝑥,𝑦)) For each 𝑟 robot: If the robot has been assigned to multiple, unconnected regions Create appropriately CM matrix so as to give more priority on cells around the main robot’s sub-region (The one where the robot actual lies in) Else CM  all ones e= [#𝑈𝑛𝑜𝑐𝑐𝑢𝑝𝑖𝑒𝑑 𝐶𝑒𝑙𝑙𝑠] 𝑛 𝑟 −[# 𝐴 𝑥,𝑦 ==𝑟 ] Find the residual from the fair share. Create a matrix T which has the appropriate rescale factor based on 𝑒 𝐸 𝑟 =𝐶𝑀⊙𝑇⊙ 𝐸 𝑟 Update the evaluation matrix, using the previously calculated matrices.

An indicative instance of DARP in action Severe initial robots’ placement A sample execution is illustrated in this figure, where the terrain is constituted of 42× 42 cells and the number of robots is nr = 5. The initial robots’ positions were squeezed inside a sub-region of the whole operation area, at the left bottom space of the grid, with dimension 10×10 cells.

Divide Areas based on Robots initial Positions (DARP) Computational Complexity Analysis The evidences of this representation indicate that DARP’s complexity is cubic with respect to the input of the problem (nr × n), as the approximation on the complexity curve is strictly bounded under the nr^3 × n2 curve, at least until the maximum simulated parameters nr = 20 and n = 5000.

Outline of the Proposed Approach (DARP+STC) Initial Robots and Obstacles Placement Divide area into 𝒏 𝒓 exclusive sub-areas, utilizing DARP Calculate 𝒏 𝒓 MST inside each exclusive robot’s sub-area Circumnavigate each robot around the corresponding MST

Software Video demonstration and standalone application (.jar) are available http://tinyurl.com/DARP-app