A Large-scale Benchmark and an Inclusion-based Algorithm for Continuous Collision Detection

Abstract
We introduce a large-scale benchmark for continuous collision detection (CCD) algorithms, composed of queries manually constructed to highlight challenging degenerate cases and automatically generated using existing simulators to cover common cases. We use the benchmark to evaluate the accuracy, correctness, and efficiency of state-of-the-art continuous collision detection algorithms, both with and without minimal separation. We discover that, despite the widespread use of CCD algorithms, existing algorithms are (1) correct but impractically slow; (2) efficient but incorrect, introducing false negatives that will lead to interpenetration; or (3) correct but over conservative, reporting a large number of false positives that might lead to inaccuracies when integrated in a simulator. By combining the seminal interval root finding algorithm introduced by Snyder in 1992 with modern predicate design techniques, we propose a simple and efficient CCD algorithm. This algorithm is competitive with state-of-the-art methods in terms of runtime while conservatively reporting the time of impact and allowing explicit tradeoff between runtime efficiency and number of false positives reported.
Funding Information
  • NSF CAREER (1652515)
  • NSF (OAC-1835712, OIA-1937043, CHS-1908767, and CHS-1901091)
  • National Key Research and Development Program of China (2020YFA0713700)
  • EU ERC Advanced (694515)
  • Sloan fellowship
  • Adobe Research
  • nTopology
  • Advanced Micro Devices, Inc.