Kinetic binary space partitions for intersecting segments and disjoint triangles

Published

Journal Article

We describe randomized algorithms for efficiently maintaining a binary space partition of continuously moving, possibly intersecting, line segments in the plane, and of continuously moving but disjoint triangles in space. Our two-dimensional BSP has depth O(log n) and size O(n log n+k) and can be constructed in expected O(n log2 n+k log n) time, where k is the number of intersecting pairs. We can detect combinatorial changes to our BSP caused by the motion of the segments, and we can update our BSP in expected O(log n) time per change. Our three-dimensional BSP has depth O(log n), size O(n log2 n+k′), construction time O(n log3 n+k′log n), and update time O(log2 n) (all expected), where k′ is the number of intersections between pairs of edges in the xy-projection of the triangles. Under reasonable assumptions about the motion of the segments or triangles, the expected number of number of combinatorial changes to either BSP is O(mnλs(n)), where m is the number of moving objects and λs(n) is the maximum length of an (n, s) Davenport-Schinzel sequence for some constant s.

Duke Authors

Cited Authors

  • Agarwal, PK; Erickson, J; Guibas, LJ

Published Date

  • December 1, 1998

Published In

  • Proceedings of the Annual Acm Siam Symposium on Discrete Algorithms

Start / End Page

  • 107 - 116

Citation Source

  • Scopus