Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computing Shortest Path amid Pseudodisks

Similar presentations


Presentation on theme: "Computing Shortest Path amid Pseudodisks"— Presentation transcript:

1 Computing Shortest Path amid Pseudodisks
Danny Z. Chen and Haitao Wang University of Notre Dame Indiana, USA

2 Pseudodisks A set of convex objects in the plane are called pseudodisks if the boundaries of any two objects cross each other at most twice Pseudodisks Not pseudodisks

3 What is the Problem? Given a set of n constant-complexity pseudodisks and two points s and t in the plane, find a shortest path from s to t avoiding all pseudodisks t s

4 Why study this problem? Shortest path among obstacles is a fundamental problem Motivated by applications on robotics motion planning

5 Robotics motion planning
The robot is modeled as non-rotating convex body destination the robot source Objective: Find a shortest path for the robot to move from the source to the destination

6 Robotics motion planning
Take the Minkowski sum to reduce the problem to finding a shortest path amid pseudodisks between two points destination source

7 Related work Shortest path problem among polygonal obstacles
Visibility graph: O(nlog n +k) time [Ghosh and Mount, 91’], where k is the size of the visibility graph Continuous Dijkstra’s approach O(n1.5+ε) time [Mitchell, 96] O(nlog n) time [Hershberger and Suri, 99’]

8 Previous work If all pseudodisks are disks, a shortest path can be found in O(n2log n) time [Chew 85’, Chang et al. 05’]. If all disks have the same radius, O(n2) time [Hershberger and Guibas 88’, Storer and Reif 94’] If all pseduodisks have the same shape and size O(n2+min{n,L/W}nlog n) time [Hershberger and Guibas 88’] This is also the result for the robotics motion planning L/W can be unbounded O(n2 log n) time in worst case robot W L

9 Previous work (cont.) For the general case (pseudodisks have different shapes and sizes) O(n2log n) time by extending Chew’s algorithm[85’]

10 Our results O(n2) time The same time bound for the robotics motion planning problem New techniques for solving shortest path problems Also useful in other applications, e.g., shortest path among polygonal obstacles, curved obstacles (in our new papers)

11 Two possible approaches for this problem
The visibility graph approach Continuous Dijkstra’s approach

12 Difficulties on using continuous Dijkstra’s approach for polygonal obstacles
Mitchell’s algorithm uses a data structure for wavelet dragging queries, by modeling as high-dimensional radical free semialgebraic range queries. In our problem however, such queries would involve not only radical numbers but also inverse trigonometric operations (e.g.,arcsine)

13 Difficulties on using continuous Dijkstra’s approach for polygonal obstacles (cont.)
Hershberger and Suri’s algorithm relies heavily on a conforming subdivision defined on the n vertices of the polygonal obstacles. In our problem, however, it is not clear how to determine a set of O(n) vertices for pseudodisks that can help build such a subdivision.

14 The visibility graph approach
There is a shortest path consisting of only free common tangents and pseudodisk boundaries (or arcs) t s

15 The Previous approach (Hershberger and Guibas 88’)
Their Algorithm Build a visibility graph Transform the visibility graph to a coalesced graph by using O(n L/W) distinguished points Difficulties The parameter L/W can be unbounded Works only for the special case (all pseduedisks are congruent)

16 Our new approach What’s new? Improvement
A new way of defining the distinguished points A new way of computing the distinguished points Based on Voronoi diagram New proofs Improvement Construct a coalesced graph by using O(n) distinguished points Applicable to the general case (the pseduedisks can have different shapes and sizes)

17 Our algorithm overview
Step 1: Compute the visibility graph (or tangent graph) G, by computing the free common tangents of all pseudodisks A shortest s-t path in the plane corresponds to a shortest s-t path in G O(n2) time ---- By extending Welz’s algorithm [85’] for computing visibility graph on line segments Step 2: Finding a shortest s-t path in G A difficult step!!!

18 Finding a shortest path in G
Difficulty: G has O(n2) nodes and O(n2) edges O(n2log n) time for Dijkstra’s algorithm

19 Finding a shortest path in G (cont.)
Our solution: Transform G to a coalesced graph G’ such that G’ has O(n2) edges but only O(n) nodes A shortest s-t path in G ↔ a shortest s-t path in G’ O(n2) time for Dijkstra’s algorithm on G’ The key: Compute O(n) distinguished points on the union Σ of all pseudodisks The previous work computes O(n L/W) distinguished points, so their coalesced graph has O(n L/W) nodes Σ has O(n) vertices and arcs, and can be computed in O(n log2 n) time [Kedem et al., 86’]

20 Defining the distinguished points (the third property)
Consider a common tangent (u,v) and u is not a distinguished point. Suppose u is between two neighboring distinguished points a and b on the same arc; then |ub| ≤ |uv| The previous work (Hershberger and Guibas 88’) requires |ab| ≤ |uv| u v a b d c The third property requires |ub| ≤ |uv| and |vc| ≤ |uv|

21 Goal Choose a set S of points on Σ as distinguished points such that those properties can be satisfied The set of the endpoints of all free common tangents satisfies the third property But, the number of them is O(n2), too large Challenge: How to find a small distinguished point set S For example, |S|=O(n)

22 Computing the distinguished points (for property three)
The previous approach (Hershberger and Guibas 88’) The endpoints of all common tangents shorter than L are considered as distinguished points The total number of them is O(n L/W) robot W L

23 Our approach for computing the distinguished points
Suppose we have the Voronoi Diagram of Σ For each arc e of Σ, we define the distinguished points on the arc e as follows D(e) e v D(f) f

24 Our approach for computing the distinguished points
Suppose we have the Voronoi Diagram of Σ For each arc e of Σ, we define the distinguished points on the arc e as follows D(e) e v D(f) f

25 Our approach for computing the distinguished points
Suppose we have the Voronoi Diagram of Σ For each arc e of Σ, we define the distinguished points on the arc e as follows D(e) e v D(f) f

26 Analysis on the number of distinguished points
The total number of distinguished points on the arc e is proportional to the number of its neighboring Voronoi cells Σ has O(n) arcs The size of the Voronoi diagram is O(n) The total number of all distinguished points is O(n)

27 General idea for proving property (3)
Consider a tangent (u,v) with u on an arc e and u is not a distinguished point Goal: to prove there is always a distinguished point b on e between u and t such that |ub|≤|uv| Difficulty: How to make use of the information of the Voronoi Diagram The proof is complicated Involve several case analysis v a voronoi edge A distinguished point b with |ub|≤|uv| t e u

28 Summary Find a shortest path among pseudodisks in O(n2) time
Settled a long time open problem Solve the robotics motion planning problem in O(n2) time Improved the previous work by O(log n) time Develop interesting techniques for solving shortest path problems

29 Thank you Questions?


Download ppt "Computing Shortest Path amid Pseudodisks"

Similar presentations


Ads by Google