Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University.

Slides:



Advertisements
Similar presentations
Great Theoretical Ideas in Computer Science
Advertisements

Introduction to Graph Theory Instructor: Dr. Chaudhary Department of Computer Science Millersville University Reading Assignment Chapter 1.
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.
Approximations of points and polygonal chains
IKI 10100: Data Structures & Algorithms Ruli Manurung (acknowledgments to Denny & Ade Azurat) 1 Fasilkom UI Ruli Manurung (Fasilkom UI)IKI10100: Lecture10.
Approximation Algorithms for TSP
NUS CS5247 Motion Planning for Camera Movements in Virtual Environments By Dennis Nieuwenhuisen and Mark H. Overmars In Proc. IEEE Int. Conf. on Robotics.
Data Structure and Algorithms (BCS 1223) GRAPH. Introduction of Graph A graph G consists of two things: 1.A set V of elements called nodes(or points or.
Midwestern State University Department of Computer Science Dr. Ranette Halverson CMPS 2433 CHAPTER 4 - PART 2 GRAPHS 1.
S. J. Shyu Chap. 1 Introduction 1 The Design and Analysis of Algorithms Chapter 1 Introduction S. J. Shyu.
The Maths of Pylons, Art Galleries and Prisons Under the Spotlight John D. Barrow.
Algorithm Strategies Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song and Nancy M. Amato Department of Computer Science Texas A&M University College Station,
C++ Programming: Program Design Including Data Structures, Third Edition Chapter 21: Graphs.
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
Visibility-based Motion Planning Lecture slides for COMP presented by Georgi Tsankov.
Graph Algorithms: Minimum Spanning Tree We are given a weighted, undirected graph G = (V, E), with weight function w:
Approximation Algorithms: Combinatorial Approaches Lecture 13: March 2.
Randomized Planning for Short Inspection Paths Tim Danner and Lydia E. Kavraki 2000 Presented by David Camarillo CS326a: Motion Planning, Spring
1 Greedy Algorithms. 2 2 A short list of categories Algorithm types we will consider include: Simple recursive algorithms Backtracking algorithms Divide.
Presented by David Stavens. Autonomous Inspection Compute a path such that every point on the boundary of the workspace can be inspected from some point.
1 Vertex Cover Problem Given a graph G=(V, E), find V' ⊆ V such that for each edge (u, v) ∈ E at least one of u and v belongs to V’ and |V’| is minimized.
Navigation and Motion Planning for Robots Speaker: Praveen Guddeti CSE 976, April 24, 2002.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song, Nancy M. Amato Department of Computer Science Texas A&M University College Station,
1 Efficient Placement and Dispatch of Sensors in a Wireless Sensor Network Prof. Yu-Chee Tseng Department of Computer Science National Chiao-Tung University.
Randomized Planning for Short Inspection Paths Tim Danner and Lydia E. Kavraki 2000 Presented by Dongkyu, Choi On the day of 28 th May 2003 CS326a: Motion.
ECE 250 Algorithms and Data Structures Douglas Wilhelm Harder, M.Math. LEL Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Minimum Spanning Trees. Subgraph A graph G is a subgraph of graph H if –The vertices of G are a subset of the vertices of H, and –The edges of G are a.
Ant Colony Optimization: an introduction
A Navigation Mesh for Dynamic Environments Wouter G. van Toll, Atlas F. Cook IV, Roland Geraerts CASA 2012.
Lecture 23. Greedy Algorithms
Theory of Computing Lecture 10 MAS 714 Hartmut Klauck.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Introduction Tracking the corners Camera model and collision detection Keyframes Path Correction Controlling the entire path of a virtual camera In computer.
The Traveling Salesman Problem Approximation
© Manfred Huber Autonomous Robots Robot Path Planning.
Graph Algorithms. Definitions and Representation An undirected graph G is a pair (V,E), where V is a finite set of points called vertices and E is a finite.
6.1 Hamilton Circuits and Paths: Hamilton Circuits and Paths: Hamilton Path: Travels to each vertex once and only once… Hamilton Path: Travels to each.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Minimum Spanning Trees CS 146 Prof. Sin-Min Lee Regina Wang.
Approximation Algorithms for TSP Tsvi Kopelowitz 1.
SPANNING TREES Lecture 20 CS2110 – Fall Spanning Trees  Definitions  Minimum spanning trees  3 greedy algorithms (incl. Kruskal’s & Prim’s)
SPANNING TREES Lecture 21 CS2110 – Fall Nate Foster is out of town. NO 3-4pm office hours today!
Graph Algorithms Maximum Flow - Best algorithms [Adapted from R.Solis-Oba]
Motion Planning Howie CHoset. Assign HW Algorithms –Start-Goal Methods –Map-Based Approaches –Cellular Decompositions.
Prims Algorithm for finding a minimum spanning tree
Chapter 20: Graphs. Objectives In this chapter, you will: – Learn about graphs – Become familiar with the basic terminology of graph theory – Discover.
9/8/10CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2010 Triangulations and Guarding Art Galleries Carola Wenk.
Management Science 461 Lecture 7 – Routing (TSP) October 28, 2008.
1 Euler and Hamilton paths Jorge A. Cobb The University of Texas at Dallas.
Polygon Triangulation
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
::Network Optimization:: Minimum Spanning Trees and Clustering Taufik Djatna, Dr.Eng. 1.
Prof. Yu-Chee Tseng Department of Computer Science
3. Polygon Triangulation
Shortest Path Problems
Greedy Technique.
Hamiltonian Cycle and TSP
Spanning Trees Lecture 21 CS2110 – Fall 2016.
Graph Algorithm.
Last lecture Configuration Space Free-Space and C-Space Obstacles
The Art Gallery Problem
Introduction to Graph Theory Euler and Hamilton Paths and Circuits
Chapter 2: Business Efficiency Business Efficiency
Outline This topic covers Prim’s algorithm:
Introduction Wireless Ad-Hoc Network
Spanning Trees Lecture 20 CS2110 – Spring 2015.
Stefan Oßwald, Philipp Karkowski, Maren Bennewitz
Presentation transcript:

Randomized Planning for Short Inspection Paths Tim Danner Lydia E. Kavraki Department of Computer Science Rice University

Outline Introduction Art Gallery and Watchman Route Problems Adding Realism 2-D Algorithm –Selecting Guards –Connecting Guards –Results 3-D Algorithm –Differences –Preliminary Results Future Work

Introduction Problem Definition Robot with vision capabilities Workspace W Path p Boundary dW W dW p

Introduction Problem Definition Find a short p from which every point on dW is visible W dW p

Introduction Uses Autonomous inspection of spacecraft exterior Flying camera building inspection Virtual reality architecture walkthrough

Art Gallery Problem Find minimal number of positions for guards to stand so that every point in a gallery is “visible” to at least one guard “Visible” is defined as the line of sight between the guard and the point lies entirely in W

Watchman Route Problem For workspace W, find the shortest path p in W such that every point on the boundary dW can be seen by a point on path p

Adding Realism “Straight-line” visibility is not very realistic for real sensors Length of line of sight must have a maximum Angle of incidence of line of sight must have a maximum – 60 degrees is a typical value System is adaptable for different sensors 2-D vs 3-D

Angle of Incidence

2-D Algorithm Sensing with real sensors is time consuming Two parts to the algorithm: –Solve “art gallery problem” to find locations for sensing locations - “guards” –Connect the guards with a short path, the “watchman route”

2-D Algorithm Selecting the Guards True minimal set of guards is an NP-hard problem Randomized planner is used in this case Uses Gonzalez-Banos and Latombe’s randomized, incremental algorithm

2-D Algorithm Selecting the Guards Main structure is a loop At each iteration, a point x on the border dW of W that is not yet guarded is chosen randomly Construct region which can see x (same as region which x can see) Apply two range constraints: limited length line of sight and angle of incidence

Choose a point x

Construct its visibility region

Apply maximum line of sight constraint

Apply angle of incidence constraint

Select new guards from blue outlined region

2-D Algorithm Selecting the Guards Sample region k times, evaluating each point as a possible new guard Sample which can cover the largest portion of the new length of border is chosen as the new guard and guarded border is updated Loop repeats until the entire border is guarded

2-D Algorithm Selecting the Guards One problematic case is sharp interior angles A “disproportionately large” number of guards may be needed and hard to place Incremental loop can be terminated

2-D Algorithm Connecting the Guards Basically, find an order to connect guards out of a possible n! orders Connect guards using a graph algorithm In this manner, the problem becomes a “traveling salesman problem”

2-D Algorithm Connecting the Guards Actually use an approximation to the TSP – pre- order walk of a Minimum Spanning Tree Applies in cases where the triangle inequality holds, which is the case for graphs in R 2 and R 3 (which our graph of guards is) Path length is bounded by 2X actual TSP for complete graphs If workspace is connected, then the graph is complete (for an inspection path to exist, the space must be connected)

2-D Algorithm Connecting the Guards Shortest Paths Graph (SPG) –One node for each guard –One edge for each pair of guards –Weight is assigned to each edge (i,j) that is equal to the shortest collision-free path from point i to j –May be straight line or more complex

SPG - Guard locations are nodes

2-D Algorithm Connecting the Guards Shortest path between two points is done by constructing and searching another graph, the workspace-guard roadmap Workspace-guard roadmap has one node for each vertex on dW and one node for each guard Has an edge between a pair of nodes i and j if and only if it is collision-free

SPG - Add nodes at vertices

SPG - Add edges

Use MST for short path

2-D Algorithm Connecting the Guards Complete graph has n 2 edges, but we can use a shortcut Only connect close points, by dividing workspace into rectangular grid About 10 nodes per cell Connection is made with a moving 3X3 window

2-D Algorithm Connecting the Guards

2-D Algorithm Note The default is to inspect the interior To inspect an exterior, surround entire workspace with a rectangle and mark it guarded W W

2-D Algorithm Experimental Results Most computing time spent creating visibility polygons Figure 1 Figure 2 Figure 3

3-D Algorithm Necessary for real workspaces Algorithm is very similar Difficulty – computing visibility polyhedrons in 3-D instead of visibility polygons in 2-D

3-D Algorithm Selecting the Guards Visual constraints remain simple Two steps will require visibility volumes –Determining a sampling region –Determining what surfaces a sampled point can see However, explicitly computing visibility polyhedron can be avoided

3-D Algorithm Selecting the Guards Determining sampling region utilizes constraint sphere and cone –Compute the intersection of these –Randomly sample this region and test if point is valid Both of these are much easier than computing a visibility polyhedron

3-D Algorithm Selecting the Guards Once points are sampled, need to: –Determine what surfaces can be seen by them –Subtract already guarded surfaces Use a front to back checking method, clipping each additional surface with the previous ones

3-D Algorithm Selecting the Guards Front Back

3-D Algorithm Selecting the Guards Complications –Need a way of defining order –Resolving circular problems –Selecting adequate data structure Binary Space Partitioning Tree for defining front to back order

3-D Algorithm Connecting the Guards No analog to creating the optimal shortest paths as in 2-D Shortest path is most likely not around vertices Instead of augmenting guard roadmap with workspace vertices, random planner is used

3-D Algorithm Preliminary Results Two Cubes 20 Seconds Four Cubes & Three Tetrahedra 143 Seconds

Future Work Considering dynamics in “path goodness” criteria Visiting areas rather than points Considering non-omnidirectional cameras