Abstract. We introduce the notion of a star unfolding of the surface P of a three-dimensional convex polytope with n vertices, and use it to solve several problems related to shortest paths on P. The first algorithm computes the edge sequences traversed by shortest paths on P in time O(n 6 β(n) log n), where β(n) is an extremely slowly growing function. A much simpler O(n 6 ) time algorithm that finds a small superset of all such edge sequences is also sketched. The second algorithm is an O(n 8 log n) time procedure for computing the geodesic diameter of P: the maximum possible separation of two points on P with the distance measured along P. Finally, we describe an algorithm that preprocesses P into a data structure that can efficiently answer the queries of the following form: "Given two points, what is the length of the shortest path connecting them?" Given a parameter 1 ≤ m ≤ n 2 , it can preprocess P in time O(n 6 m 1+δ ), for any δ > 0, into a data structure of size O(n 6 m 1+δ ), so that a query can be answered in time O(( √ n/m 1/4 ) log n). If one query point always lies on an edge of P, the algorithm can be improved to use O(n 5 m 1+δ ) preprocessing time and storage and guarantee O((n/m) 1/3 log n) query time for any choice of m between 1 and n.
Agarwal et al. REF presented a data structure of size O(n 6 m 1+δ ) that answers a two-point shortest path query on a given convex polytope in O(( √ n/m 1/4 ) log n) time after O(n 6 m 1+δ ) preprocessing time for any fixed 1 ≤ m ≤ n 2 and any δ > 0.
Star unfolding of a polytope with applications
SIAM J. Comput
Mathematics Computer Science