Open Problem #12 Dynamic Planar Convex Hull

Open Problem #12
Dynamic Planar Convex Hull
Juan Burgos
Parasol Lab, Texas A&M University
http://maven.smith.edu/~orourke/TOPP/P12.html#Problem.12
http://parasol.tamu.edu
Static Planar Convex Hulls
•  Lower bound of planar convex hull algorithms is Ω(n log n).
•  Intuitively, this lower bound poses the following questions:
•  Is possible to perform updates on a convex hull with at most
logarithmic cost with respect to the current number of points?
•  Following this trail of thought, is it also possible to perform useful
queries of the convex hull with at most logarithmic cost with respect to
the current number of points?
Subset of Useful Queries for Convex Hulls
•  An extreme-point query asks to find the vertex of the convex hull that is extreme
in a given direction.
•  A tangent query asks to determine whether a given point is interior to the convex
hull, and if not, to find the two tangent lines of the convex hull that passes through
the given point.
•  A gift-wrapping query asks to find the two vertices of the convex hull adjacent to
a given vertex of the convex hull.
•  A line-stabbing query asks to find the two edges of the convex hull (if any) that
intersect a given line
Question to be Answered
•  Can a planar convex hull be maintained to support both
dynamic insertions and deletions of points and queries
in O(log n) worst-case time time per operation?
•  Note: Dynamic insertion and deletion means that new
points can be added to our point set P and points can
be deleted from our point set P. The convex hull must
be able to adapt to the changes in its point set P as
these insertion and deletions occur. Dynamic does
NOT mean that points are moving in our plane.
Overmars’s and Leeuwen’s work
•  Describes a data structure supporting insertions and deletions in
O(log2 n) worst-case time and all types of queries described above in O(log n)
worst-case time.
•  First a favorite static planar convex hull algorithm was chosen to build the initial
convex hull with no initial points at a O(no log no) cost.
•  After construction, they progressively decomposed the convex hull into many leftconvex hulls by dividing each successive hull in half as seen below in figure 5.
•  Sadly, no major improvements came till 1999 that lowered the expected running
times…
Improvements over the next 2 decades
•  During the 1980’s – 1990’s many specialized results were found.
•  Logarithmic insertion and deletion times were found for algorithms
that only allowed one or the other.
•  F. P. Preparata and M. I. Shamos. Computational Geometry: An Introduction. Springer
Verlag, Berlin, 1985.
•  J. Hershberger and S. Suri. Applications of a semidynamic convex hull algorithm. BIT,
32:249–267, 1992.
•  Experiments with randomized insertions and deletions managed that
they could achieve expected logarithmic update times.
•  K. Mulmuley. Randomized multidimensional search trees: lazy balancing and dynamic
shuffling. In Proc. 32nd Ann. Symp. on Foundations of Computer Science (FOCS), pages
180–196, 1991.
•  O. Schwarzkopf. Dynamic maintenance of geometric structures made easy. In Proc. 32nd
Ann. Symp. on Foundations of Computer Science (FOCS), pages 197–206, 1991.
Major improvements 2000 – Today
•  Discuss approximation methods that were used by other related
works. Not in detail of course but in subtle detail… include their
running times and assumptions and simplifications.
•  Major improvements came in 1999-2000 from Chan and
2000-2002 from Gerth Stølting Brodal and Riko Jacob, the later
pair basing their method off of both [Ch99] and [OvL81].
Upper Envelope
What is left in the Open Problem?
•  What still needs to be done in order to meet the O( log n ) runtime goal.
Year
Insertion Time
Deletion Time
Query Time
M. H. Overmars and J. van
Leeuwen
1981
O(log2 n)
Worst-Case Time
O(log2 n)
Worst-Case Time
O(log n)
Worst-Case Time
Timothy M. Chan
1999
O(log1+ɛ n)
Amortized Time
O(log1+ɛ n)
Amortized Time
O(log n)
Worst-Case Time
Gerth Stølting Brodal and
Riko Jacob
2000
O(log n ・ log log n)
Amortized Time
O(log n ・ log log n)
Amortized Time
O(log n)
Worst-Case Time
Gerth Stølting Brodal and
Riko Jacob
2002
O(log n)
Amortized Time
O(log n)
Amortized Time
O(log n)
Wost-Case Time
Timothy M. Chan
2011*
O(log1+ɛ n)
O(poly log n)
O(nɛ)
All Amortized Time
O(log1+ɛ n)
O(poly log n)
O(nɛ)
All Amortized Time
O(log1+ɛ n)
O(log n+k)
O(log n)
All Amortized Time
• 
* There are 3 rows for the 2011 paper since it had results for solving 3 problems related to dynamic convex
hulls:
• 
Finding edges in a convex hull that intersect a query line.
• 
Supporting half-plane range reporting queries.
• 
Providing semi-dynamic data structure for maintaining line segments in the plane for determining whether or not a query
line lies completely above the lower envelope.
Data Structure from:
Gerth Stølting Brodal and Riko Jacob, 2002
Dynamic planar convex hull.
Related Problem
•  Related to open problem# 63: Dynamic Planar Nearest
Neighbors.
•  Will be presented later, Nov 8th, by Aditya Mahadevan.
References
• 
[Cha11] Timothy M. Chan: Three problems about dynamic convex hulls. Symposium on Computational
Geometry 2011: 27-36
• 
[BJ02]
Gerth Stølting Brodal and Riko Jacob. Dynamic planar convex hull. In Proceedings of the 43rd
Annual IEEE Symposium on Foundations of Computer Science, November 2002.
• 
[BJ00]
Gerth Stølting Brodal and Riko Jacob. Dynamic planar convex hull with optimal query time
and o(log n . loglog n) update time. In Proc. 7th Scand. Workshop Algorithm Theory, volume
1851 of Lecture Notes Comput. Sci., pages 57-70. Springer-Verlag, 2000.
• 
[Cha99] Timothy M. Chan.
Dynamic planar convex hull operations in near-logarithmic amortized time.
In Proc. 40th Annu. IEEE Sympos. Found. Comput. Sci., pages 92-99, 1999.
• 
[OvL81] M. H. Overmars and J. van Leeuwen.
Maintenance of configurations in the plane.
J. Comput. Syst. Sci., 23:166-204, 1981.