1 / 14

Convex Hull Algorithms for Dynamic Data

Convex Hull Algorithms for Dynamic Data. Kanat Tangwongsan Joint work with Guy Blelloch and Umut Acar (TTI-C). The Convex Hull Problem. Output: CH ( S). Extensively studied: Graham Scan, Gift-Wrapping, Incremental Hull, Overmars, Quick-Hull, Ultimate Hull. Matched Lower-bound already!.

carver
Télécharger la présentation

Convex Hull Algorithms for Dynamic Data

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Convex Hull Algorithmsfor Dynamic Data Kanat Tangwongsan Joint work with Guy Blelloch and Umut Acar (TTI-C)

  2. The Convex Hull Problem Output: CH(S) • Extensively studied: • Graham Scan, Gift-Wrapping, Incremental Hull, Overmars, Quick-Hull, Ultimate Hull. • Matched Lower-bound already! Input: S

  3. Convex Hull++: Dynamic Case • Maintain the Hull under insertionand deletion. insert delete

  4. Convex Hull#: Kinetic Case • each point has velocity (v) • maintain the hull (efficiently)

  5. Known Solutions and Issues • Dynamic Convex Hull • Overmars, Brodal, Mulmuley, Schwarzkopf, Preparata, Hershberger and Suri, Chan • complicated!! • hard to compose algorithms together • Kinetic Convex Hull • Guibas, de Berg, … • None existed for 3 or higher dimensions

  6. Self-Adjusting Computation Idea: Record who reads what and when main main g f g f h h m k m k Memory Some parts of the input change

  7. SAC vs. Dynamic Convex Hull • Automatic “dynamization” • Allow composition of programs • Down-side: not always efficient! • Stability (=input-sensitivity) [Acar et al. SODA’04] • Our Job: • Design a stable static convex hull algorithm • Focus: 3-D case.

  8. Our Approach Self-Adjusting Tree Suitable Convex Hull in 3D Dynamic Convex Hull in 3D + j Give orientation to edges Face i Store (i,j) as key and k as data k

  9. Self-Adjusting Binary Tree Initial Run: Time Re-execution:

  10. Kinetic Convex Hull • 1-D Case • S(t)={x1(t), x2(t), …, xn(t)}, where xi(t) = xi(0) + vit • Maintain min and max • Observation: x1 Value x2 x3 Time

  11. Idea: Certificates • Each comparison is associated with a certificate, where • Self-Adjusting Computation • account for changes • in order of expiration times certificate = comparsion result + expiration time

  12. Summary • Focus: 3D {dynamic, kinetic} convex hull • Dynamic Convex Hull • Amortized expected O(log n)in certain models. • Worst-case bound: O(n log n) • More performance analysis to come • Real-time bound: can it be better than O(n)? • Practical performance: implemented, being evaluated. • Kinetic Convex Hull • in progress!

  13. Questions?

  14. Thank you!!

More Related