Papers
Topics
Authors
Recent
Search
2000 character limit reached

Dynamic Planar Convex Hull

Updated 21 January 2026
  • Dynamic planar convex hull is a data structure that maintains the minimal convex polygon of a dynamic set in R² using efficient INSERT and DELETE operations.
  • It leverages the Overmars–van Leeuwen framework with balanced BSTs and merge routines to achieve O(log² n) amortized update time and O(log n) query time.
  • Recent enhancements include a 3-case bridge-finding method and concurrent locking strategies that improve performance and practical throughput.

A dynamic planar convex hull data structure maintains the convex hull CH(P)\mathrm{CH}(P) of a dynamically changing set PR2P \subset \mathbb{R}^2, supporting efficient INSERT, DELETE, and various query operations. Owing to the foundational work of Overmars and van Leeuwen, and substantial subsequent advances, the problem integrates geometric, data-structural, and algorithmic principles. This entry details the main theoretical models, algorithmic structures, practical optimizations, lower bounds, and variants motivated both by theory and applications.

1. Problem Definition and Historical Context

The dynamic planar convex hull problem concerns the efficient maintenance of the minimal convex polygon CH(P)\mathrm{CH}(P) containing a point set PR2P \subset \mathbb{R}^2, under arbitrary sequences of insertions and deletions of points. Core operations include:

  • INSERT(p)\mathrm{INSERT}(p), DELETE(p)\mathrm{DELETE}(p), maintaining PP;
  • Query operations: extreme point in direction dd, tangent through qq, intersection/bridge, neighbor on hull, point-in-hull membership, and full hull reporting.

The classic Overmars-van Leeuwen framework achieves O(log2n)O(\log^2 n) amortized update time with PR2P \subset \mathbb{R}^20 query costs, using a balanced BST with partial hulls stored at internal nodes. Subsequent work has yielded improvements for specialized models and queries, but worst-case PR2P \subset \mathbb{R}^21 update persists in fully general settings unless one resorts to randomized or output-sensitive bounds (Mills et al., 2017, Gæde et al., 2023, Jacob et al., 2019).

2. Algorithmic Structures and Core Principles

2.1. Overmars-van Leeuwen Hull Trees and Variants

The foundational “HullTree” is an external leaf-based balanced BST, with each internal node PR2P \subset \mathbb{R}^22 maintaining:

  • pointers to two child nodes,
  • two convex-hull chains PR2P \subset \mathbb{R}^23 (left) and PR2P \subset \mathbb{R}^24 (right), typically according to a vertical split, updated via a merge routine,
  • a minY (or minX) augmentation for search routing.

Update workflow: Insertion or deletion of a point triggers a descent to a relevant leaf, structural modification (splitting or splicing), and an upward pass of chain-merging. The merge procedure uses the classical bridge-finding (tangent identification) between two convex chains, based on Overmars & van Leeuwen’s algorithm (Mills et al., 2017, Gæde et al., 2023).

Complexity: Each update performs PR2P \subset \mathbb{R}^25 BST operations (search/split/splice) and PR2P \subset \mathbb{R}^26 chain merges, each costing up to PR2P \subset \mathbb{R}^27 total since the size of hulls at level PR2P \subset \mathbb{R}^28 is PR2P \subset \mathbb{R}^29 and CH(P)\mathrm{CH}(P)0. Thus, CH(P)\mathrm{CH}(P)1 amortized per update (Mills et al., 2017, Gæde et al., 2023).

2.2. Algorithmic Simplification: 3-Case Bridge-Finding

Recent advances reduce the classical 11-case bridge-finding test to a 3-case formulation, expressible as:

  1. Discard right part of chain CH(P)\mathrm{CH}(P)2 if CH(P)\mathrm{CH}(P)3,
  2. Discard left part of CH(P)\mathrm{CH}(P)4 if CH(P)\mathrm{CH}(P)5,
  3. Else, compare intersection CH(P)\mathrm{CH}(P)6 with separator CH(P)\mathrm{CH}(P)7 to decide branch. This test accelerates bridge identification and simplifies code, typically described in CH(P)\mathrm{CH}(P)820 lines of C-style pseudocode (Gæde et al., 2023).

2.3. Rank-Based and Path-Constrained Variants

For rank-ordered data, insertions may non-locally shift CH(P)\mathrm{CH}(P)9-coordinates. Parameterizing bridges with implicit rank-based endpoints and storing “widths” allows efficient PR2P \subset \mathbb{R}^20 updates without extra navigation cost. “Simple path” and “monotone path” restrictions—where updates are allowed only at the path ends—admit PR2P \subset \mathbb{R}^21 worst-case update time with PR2P \subset \mathbb{R}^22 or PR2P \subset \mathbb{R}^23 queries, using four-list decompositions and specialized partitions (Brewer et al., 2024).

3. Query Capabilities and Functional Extensions

Standard data structures support:

  • Extreme-point query: PR2P \subset \mathbb{R}^24, via duality and interval trees or search on explicit hulls, in PR2P \subset \mathbb{R}^25 or PR2P \subset \mathbb{R}^26 (Gæde et al., 2023, Jacob et al., 2019).
  • Tangent query: Find tangents from PR2P \subset \mathbb{R}^27 to PR2P \subset \mathbb{R}^28, via geometric search and hull annotation (Jacob et al., 2019).
  • Segment-hull intersection, neighbor queries: Supported by explicit or tree-based indexing on hull vertices (Gæde et al., 2023).
  • Point-in-hull membership: Search for edge spanning PR2P \subset \mathbb{R}^29 in INSERT(p)\mathrm{INSERT}(p)0, then orientation predicate (Gæde et al., 2023).
  • Full hull reporting: Output hull vertices in INSERT(p)\mathrm{INSERT}(p)1 or INSERT(p)\mathrm{INSERT}(p)2 (Brewer et al., 2024).

Support for specialized queries such as segment-hull intersection, hull–hull interactions, rank-based queries, and bridge finding is grounded in the explicit storage of partial and global hulls at BST nodes, augmented by geometric predicates evaluated with exact arithmetic for robustness (Gæde et al., 2023).

4. Complexity Bounds and Lower Bounds

Approach/Model Update time Query time Space
Overmars–van Leeuwen [OvL] INSERT(p)\mathrm{INSERT}(p)3 INSERT(p)\mathrm{INSERT}(p)4 INSERT(p)\mathrm{INSERT}(p)5
Jacob–Brodal (Jacob et al., 2019) INSERT(p)\mathrm{INSERT}(p)6 am INSERT(p)\mathrm{INSERT}(p)7 INSERT(p)\mathrm{INSERT}(p)8
Simple/monotone path INSERT(p)\mathrm{INSERT}(p)9 wc DELETE(p)\mathrm{DELETE}(p)0, DELETE(p)\mathrm{DELETE}(p)1 DELETE(p)\mathrm{DELETE}(p)2
Concurrent (fine/finer lock) DELETE(p)\mathrm{DELETE}(p)3 amortized DELETE(p)\mathrm{DELETE}(p)4 (ref query) DELETE(p)\mathrm{DELETE}(p)5

am = amortized, wc = worst-case.

Lower bounds: Any semidynamic hull data structure with amortized query time DELETE(p)\mathrm{DELETE}(p)6 must have update cost DELETE(p)\mathrm{DELETE}(p)7. For DELETE(p)\mathrm{DELETE}(p)8, one must pay DELETE(p)\mathrm{DELETE}(p)9 (Jacob et al., 2019). Path-constrained models (monotone or simple path) achieve PP0 worst-case updates but must have PP1 per hull query, with matching decision-tree lower bounds (Brewer et al., 2024).

5. Concurrency, Robustness, and Implementation

Concurrent dynamic planar convex hulls employ lock-based schemes on BST nodes. Fine-grained locking uses one lock per node, achieving serializability. Finer-grained locking uses two locks (left/right chains) per node, enabling higher throughput—empirically PP2–PP3\% over fine-grained, and PP4–PP5 over coarse locking or STM (Mills et al., 2017).

Robust dynamic hulls require exact arithmetic for geometric predicates (orientation, intersection, slope comparisons), achievable via filtered-exact or rational kernels (e.g., CGAL CORE), to handle degeneracies and collinearities. Approximate/float-precision variants may observe 2–4PP6 speedup but risk correctness for near-degenerate sets (Gæde et al., 2023).

Implementation optimizations include object reuse for node-local buffers, early termination during merge-updates if hull chains remain unchanged, optimistic lock-free search with validation, and JVM/GC tuning for reduced overhead (Mills et al., 2017).

6. Experimental Performance and Practical Considerations

Empirical evaluation on PP7 points and realistic query/update workloads indicates:

  • Simplified algorithms (3-case bridge-finding) yield at least PP8 speedup over classical approaches.
  • The “Eilice” variant, omitting concatenable queues, achieves running times within PP9–dd0\% of explicit hull-maintaining structures.
  • Dynamic hull data structures outperform static reconstructions for nontrivial query workloads (dd1 queries per block extension of dd2 points), with dynamic build times dd3–dd4s for dd5 in exact mode (Gæde et al., 2023).
  • In the concurrent setting, on 24-thread hardware, finer-grained approaches reach dd6M ops/sec for mixed queries, versus dd7k for coarse/STM. Dynamic hull queries on static sets are dd8–dd9 faster than parallel divide-and-conquer (Mills et al., 2017).

7. Model Variants and Theoretical Extensions

Restricting update operations to structured inputs (monotone or simple paths) enables breaking the general qq0 update/query barrier. For:

  • One-sided monotone paths (stack convex hull): fully dynamic hull with qq1 update and qq2 query time.
  • Deque updates (both ends): qq3 update, qq4 query, qq5 hull reporting (Brewer et al., 2024).
  • Simple paths: qq6 update by partitioning into stack-trees and finger/BST subcomponents.

These results are provably optimal under the algebraic decision-tree model. A plausible implication is that dynamic convex hull algorithms may be tuned for application-specific update models to bypass lower bounds inherent in the fully general problem, trading off flexibility for speed (Brewer et al., 2024).


References

Definition Search Book Streamline Icon: https://streamlinehq.com
References (4)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Dynamic Planar Convex Hull.