scispace - formally typeset
Open AccessJournal ArticleDOI

The Geodesic Diameter of Polygonal Domains

TLDR
In this paper, the geodesic diameter of polygonal domains with holes and corners is computed in worst-case time, in which the distance between two interior points can be computed in linear time.
Abstract
This paper studies the geodesic diameter of polygonal domains having $$h$$ holes and $$n$$ corners. For simple polygons (i.e., $$h=0$$ ), the geodesic diameter is determined by a pair of corners of a given polygon and can be computed in linear time, as shown by Hershberger and Suri. For general polygonal domains with $$h \ge 1$$ , however, no algorithm for computing the geodesic diameter was known prior to this paper. In this paper, we present the first algorithms that compute the geodesic diameter of a given polygonal domain in worst-case time $$O(n^{7.73})$$ or $$O(n^7 (\log n + h))$$ . The main difficulty unlike the simple polygon case relies on the following observation revealed in this paper: two interior points can determine the geodesic diameter and in that case there exist at least five distinct shortest paths between the two.

read more

Content maybe subject to copyright    Report

Discrete Comput Geom (2013) 50:306–329
DOI 10.1007/s00454-013-9527-8
The Geodesic Diameter of Polygonal Domains
Sang Won Bae · Matias Korman · Yoshio Okamoto
Received: 10 July 2011 / Revised: 5 November 2012 / Accepted: 24 June 2013 /
Published online: 26 July 2013
© Springer Science+Business Media New York 2013
Abstract This paper studies the geodesic diameter of polygonal domains having h
holes and n corners. For simple polygons (i.e., h = 0), the geodesic diameter is
determined by a pair of corners of a given polygon and can be computed in linear
time, as shown by Hershberger and Suri. For general polygonal domains with h 1,
however, no algorithm for computing the geodesic diameter was known prior to this
paper. In this paper, we present the first algorithms that compute the geodesic diameter
of a given polygonal domain in worst-case time O(n
7.73
) or O(n
7
(log n + h)).The
main difficulty unlike t he simple polygon case relies on the following observation
revealed in this paper: two interior points can determine the geodesic diameter and in
that case there exist at least five distinct shortest paths between the two.
Keywords Polygonal domain ·Shortest path ·Geodesic diameter ·Exact algorithm ·
Convex function · Lower envelope
A preliminary version of this paper was presented at the 18th Annual European Symposium on
Algorithms (ESA 2010).
S. W. Bae (
B
)
Department of Computer Science, Kyonggi University, Suwon, Korea
e-mail: swbae@kgu.ac.kr
M. Korman
Department of Matemàtica Aplicada II, Universitat Politècnica de Catalunya, Barcelona, Spain
e-mail: matias.korman@upc.edu
Y. O k am o to
Department of Communication Engineering and Informatics, University of Electro-Communications,
Chofu, Tokyo, Japan
e-mail: okamotoy@uec.ac.jp
123

Discrete Comput Geom (2013) 50:306–329 307
1 Introduction
A polygonal domain P with h holes and n corners is a connected and closed subset of
R
2
having h holes whose boundary consists of h + 1 simple closed polygonal chains
of n total line segments. Given a polygonal domain P, the geodesic distance d( p, q)
between two points p and q of P is defined as the length of a shortest path that connects
p and q and stays within P.
This paper addresses the geodesic diameter problem in polygonal domains having
one or more holes. The geodesic diameter diam(P) of domain P is defined as the
largest possible geodesic distance between any two points of P,thatis,diam(P) =
max
s,tP
d(s, t).
For simple polygons (i.e., domains with no hole), the geodesic diameter has been
extensively studied. Chazelle [7] provided the first O(n
2
)-time algorithm comput-
ing the geodesic diameter of a simple polygon. Afterwards, Suri [20] presented an
O(n log n)-time algorithm that solves the all-geodesic-farthest neighbors problem,
computing the farthest neighbor of every corner and thus finding the geodesic diam-
eter. At last, Hershberger and Suri [12] showed that the diameter can be computed in
linear time using fast matrix search techniques.
On the other hand, the geodesic diameter of a domain having one or more holes
is less understood. Mitchell [16] has posed an open problem asking an algorithm
for computing the geodesic diameter of a polygonal domain. However, even for the
corner-to-corner diameter max
u,vV
d(u,v), where V denotes the set of corners of
P, we know nothing better than a brute-force algorithm that takes O(n
2
log n) time,
checking all the geodesic distances between every pair of corners.
1
Prior to our results,
there was no known algorithm for computing the geodesic diameter in domains with
holes. We should also mention that Koivisto and Polishchuk [14] had claimed an
improved algorithm after a preliminary report of our work [6], but it was shown to be
a failed trial through conversations with the authors.
2
This fairly wide gap between simple polygons and polygonal domains with holes
is seemingly due to the uniqueness of the shortest path between any two points. When
a domain P has no hole, it is well known that there is a unique shortest path between
any two points [10]. Using this uniqueness, one can show that the diameter diam(P)
is realized by a pair of corners [12,20]. For general polygonal domains, however,
this is not the case. In this paper, we exhibit several examples where the diameters
are realized by non-corner points on P or even by interior points of P (see Fig. 1).
Such examples were constructed based on the multiplicity of shortest paths and, to
our best knowledge, never known prior t o this work. This observation also shows an
immediate difficulty in devising any exhaustive algorithm since one sees no intuitive
discretization of the search space.
The status of the geodesic center problem is also similar. A point in P is defined as
a geodesic center if it minimizes the maximum geodesic distance from it to any other
point of P. Asano and Toussaint [3] introduced the first O(n
4
log n)-time algorithm
1
Personal communication with Joseph S. B. Mitchell.
2
Personal communication with Valentin Polishchuk.
123

308 Discrete Comput Geom (2013) 50:306–329
(a) (b) (c)
Fig. 1 Three polygonal domains where the geodesic diameter is determined by a pair (s
, t
) of non-corner
points; gray-shaded regions depict the interior of the holes and dark gray segments depict the boundary
P. Recall that P, as a set, contains its boundary P . a Both s
and t
lie on P. There are three shortest
paths between s
and t
. In this domain, there are two (symmetric) diametral pairs (only one is depicted for
clarity). b s
P and t
int P . Three triangular holes are placed in a symmetric way, obtaining four
shortest paths between s
and t
. c Both s
and t
lie in the interior int P . Here, the five holes are packed
like jigsaw puzzle pieces, forming narrow corridors (dark gray paths) and two empty, regular triangles.
Observethatd(u
1
,v
1
) = d(u
1
,v
2
) = d(u
2
,v
2
) = d(u
2
,v
3
) = d(u
3
,v
3
) = d(u
3
,v
1
). The points s
and
t
lie at the centers of the triangles formed by the u
i
and the v
i
, respectively. There are six shortest paths
between s
and t
.
for computing the geodesic center of a simple polygon (i.e., when h = 0), and Pollack
et al. [19] improved it to O(n log n) time. As with the diameter problem, there is no
known algorithm for domains with holes. See O’Rourke and Suri [18] and Mitchell [16]
for more references on the geodesic diameter/center problem.
Since the geodesic diameter/center of a simple polygon is determined by its corners,
one can exploit the geodesic farthest-site Voronoi diagram of the set V of corners to
compute the diameter/center, which can be built in O(n log n) time [2]. Recently,
Bae and Chwa [4] presented an O(nk log
3
(n +k))-time algorithm for computing the
geodesic farthest-site Voronoi diagram of k sites in polygonal domains with holes.
This result can be used to compute the geodesic diameter max
p,qS
d( p, q) of a finite
set S of points in P . However, this approach cannot be directly used for computing
diam(P) without any characterization of the diameter. Moreover, when S = V ,this
approach is no better than the brute-force O(n
2
log n)-time algorithm for computing
the corner-to-corner diameter max
u,vV
d(u,v).
In this paper, we present the first algorithms that compute the geodesic diameter
of a given polygonal domain in O(n
7.73
) or O(n
7
(log n + h)) time in the worst case.
Our new geometric results underlying the algorithms show that the existence of any
diametral pair consisting of non-corner points implies multiple shortest paths between
the pair; among other results, we show that if (s, t) is a diametral pair and both s and
t lie in the interior of P, then there are at least five shortest paths between s and t.
Some analogies between polygonal domains and convex polytopes in R
3
can be
seen. O’Rourke and Schevon [17] proved that if the geodesic diameter on a con-
vex 3-polytope is realized by two non-corner points, then at least five shortest paths
exist between the two; see also Zalgaller [21] for simpler arguments. Based on this
observation, they presented an O(n
14
log n)-time algorithm for computing the geo-
desic diameter on a convex 3-polytope. Afterwards, the time bound was improved
to O(n
8
log n) by Agarwal et al. [1] and recently to O(n
7
log n) by Cook IV and
Wenk [9].
123

Discrete Comput Geom (2013) 50:306–329 309
The rest of the paper is organized as follows: after introducing preliminary defin-
itions and concepts in Sect. 2, we investigate local maxima of the lower envelope of
convex functions in Sect. 3, resulting in Theorem 1. Section 4 extensively exploits the
intermediate result to show lower bounds on the number of shortest paths between a
diametral pair for every possible case, and then Sect. 5 describes our algorithms for
the geodesic diameter. We finally conclude the paper with a summary, some remarks,
and open issues in Sect. 6. Also, we exhibit several examples that cover all possible
combinatorial cases in Appendix 1.
2 Preliminaries
Throughout the paper, we frequently use s everal topological concepts such as open
and closed subsets, neighborhoods, and the boundary A and the interior int A of a
set A; unless stated otherwise, all of them are supposed to be derived with respect to
the standard topology on R
d
with the Euclidean norm ·for fixed d 1. We also
denote the straight line segment joining two points a, b by
ab.
A polygonal domain P with h holes and n corners
3
is a connected and closed subset
of R
2
with h holes whose boundary P consists of h + 1 simple closed polygonal
chains of n total line segments. The boundary P of a polygonal domain P is regarded
as a series of obstacles so that any feasible path in P is not allowed to cross P .The
geodesic distance d( p, q) between any two points p, q in a polygonal domain P is
defined as the length of a shortest feasible path between p and q, where the length
of a path is the sum of the Euclidean lengths of its segments. It is well known from
earlier work [15] t hat there always exists a shortest feasible path between any two
points p, q P , and thus the geodesic distance function d(·, ·) is well defined. The
geodesic diameter diam(P) of a polygonal domain P is defined as the largest geodesic
distance between any two points of P , that is,
diam(P) = max
s,tP
d(s, t).
A pair (s, t) of points in P that realizes the geodesic diameter diam(P) is called a
diametral pair.
Shortest Path Map. Let V be the set of all corners of P and π(s, t) be a shortest
path between s P and t P . Such a path π(s, t) is represented as a sequence
π(s, t) = (s,v
1
,...,v
k
, t) for some v
1
,...,v
k
V ; that is, a polygonal chain through
a sequence of corners [15]. Note that we can have k = 0 when d(s, t) =s t.
If two paths (with possibly different endpoints) have the same sequence of corners
(v
1
,...,v
k
), then they are said to have the same combinatorial structure.
The shortest path map
SPM(s) for a fixed s P is a decomposition of P into cells
such that every point in a common cell can be reached from s by shortest paths of the
same combinatorial structure. Each cell σ
s
(v) of SPM(s) is associated with a corner
v V which is the last corner of π(s, t) for any t in the cell σ
s
(v). We also define the
cell σ
s
(s) as the set of points t P such that π(s, t) passes through no corner of P ,so
3
We reserve the term “vertex” for 0-dimensional faces of subdivisions of a certain space.
123

310 Discrete Comput Geom (2013) 50:306–329
π(s, t) = st. Each edge of SPM(s) either belongs to P or is an arc on the boundary
of two incident cells σ
s
(v
1
) and σ
s
(v
2
) determined by two corners v
1
,v
2
V ∪{s}.
Similarly, each vertex of
SPM(s) is a vertex of P or is determined by at least three
distinct corners v
1
,v
2
,v
3
V ∪{s}.
Note that, for fixed s P, a point farthest from s lies at either (1) a vertex of
SPM(s), (2) an intersection between the boundary P and an edge of SPM(s),or(3)a
corner in V . The shortest path map
SPM(s) has O(n) total number of cells, edges, and
vertices and can be computed in O(n log n) time using O(n log n) working space [13].
For more details on shortest path maps, see [13,15,16].
Path-Length Function. If π(s, t) =
st, then there are two corners u,v V such that
u and v are the first and last corners along π(s, t) from s to t, respectively. Here, the
path π(s, t) is formed as the union of
su, vt and a shortest path π(u,v)from u to v.
Note that u and v are not necessarily distinct. In order to realize such a path, we assert
that s is visible from u and t is visible from v. That is, s
VR(u) and t VR(v),
where
VR( p) for any p P is defined to be the set of all points q P such that
pq P, also called the visibility region of p P.
We now define the path-length function len
u,v
: VR(u) ×VR(v) R for any fixed
pair of corners u,v V to be
len
u,v
(s, t) := s u+d(u,v)+v t.
That is, len
u,v
(s, t) represents the length of paths from s to t that have a common
combinatorial structure; going straight from s to u, following a shortest path from u
to v, and going straight to t. Also, unless d(s, t) =s t (equivalently, s
VR(t)),
the geodesic distance d(s, t) can be expressed as the pointwise minimum of some
path-length functions:
d(s, t) = min
uVR(s), vVR(t)
len
u,v
(s, t).
Consequently, we have two possibilities for a diametral pair (s
, t
); either we have
d(s
, t
) =s
t
or the pair (s
, t
) is a local maximum of the lower envelope
of several path-length functions. In the following, we will mainly study the latter case,
since the former can be easily handled.
3 Local Maxima of the Lower Envelope of Convex Functions
In this section, we give a property of the lower envelope of a family of convex functions
which will afterwards be used in our geodesic diameter environment. We start with
a basic observation on the intersection of hemispheres on a unit hypersphere in the
d-dimensional space R
d
. For any fixed positive integer d,letS
d1
:= {x R
d
|
x=1} be the unit hypersphere in R
d
centered at the origin. A closed (or open)
hemisphere on S
d1
is defined to be the intersection of S
d1
and a closed (open,
respectively) half-space of R
d
bounded by a hyperplane that contains the origin.
123

Citations
More filters
Posted Content

A linear-time algorithm for the geodesic center of a simple polygon

TL;DR: In this paper, a linear time algorithm for computing the geodesic center of a polygon of n vertices is presented, which is the unique point in the polygon that minimizes the largest distance to all other vertices.
Journal ArticleDOI

A Linear-Time Algorithm for the Geodesic Center of a Simple Polygon

TL;DR: This paper affirmatively answer the question whether this running time can be improved and presents a deterministic linear-time algorithm to solve the geodesic center of P.
Journal ArticleDOI

Computing the L 1 geodesic diameter and center of a simple polygon in linear time

TL;DR: It is shown that any family of L 1 geodesic balls in any simple polygon has Helly number two, and the L 1 Geodesic center consists of midpoints of shortest paths between diametral pairs, crucial for linear-time algorithms.
Book ChapterDOI

Computing the L 1 Geodesic Diameter and Center of a Simple Polygon in Linear Time

TL;DR: It is shown that any family of L 1 geodesic balls in any simple polygon has Helly number two, and the L 1 Geodesic center consists of midpoints of shortest paths between diametral pairs, crucial for linear-time algorithms.
Journal ArticleDOI

Computing the geodesic centers of a polygonal domain

TL;DR: In this article, the authors present an algorithm that computes the geodesic center of a given polygonal domain in O(n 12 + ϵ ) time, where n is the number of corners of the input polygon.
References
More filters
Book ChapterDOI

I and J

Journal ArticleDOI

An Optimal Algorithm for Euclidean Shortest Paths in the Plane

TL;DR: The algorithm is based on an efficient implementation of wavefront propagation among polygonal obstacles, and it actually computes a planar map encoding shortest paths from a fixed source point to all other points of the plane; the map can be used to answer single-source shortest path queries in O(log n) time.
Proceedings ArticleDOI

A theorem on polygon cutting with applications

TL;DR: It is proved that it is possible, in O(N) time, to find two vertices a,b in P, such that the segment ab lies entirely inside the polygon P and partitions it into two polygons, each with a weight not exceeding 2C/3.
Journal ArticleDOI

Optimal shortest path queries in a simple polygon

TL;DR: This paper shows how to preprocess the polygon so that, given two query points p and q inside P, the length of the shortest path inside thepolygon from p to q can be found in time O(log n).
Book ChapterDOI

Shortest paths and networks

TL;DR: This work surveys various forms of the problem, primarily in two and three dimensions, for motion of a single point, since most results have focused on these cases.