Efficient Collision Detection among Moving Spheres with Unknown by leader6

VIEWS: 3 PAGES: 13

									CS 780


Efficient Collision Detection
among Moving Spheres with
    Unknown Trajectories

           Ho Kyung Kim
         Leonidas J. Guibas
          Sung Yong Shin
             2004. 5. 17
                 Outline
•   Introduction
•   Related Work
•   Time-Varying Bound
•   Collision Detection among TVBs
    – Event-driven approach
    – Events for Time-Varying Bounds
• Results
• Conclusion
            Introduction
• Issues on collision detection
  – Reduce the number of comparisons
  – Make the shape of the objects simple
  – Catch all collisions without missing


• How to solve?
  – Space Subdivision
  – Time-varying bound
  – Event-driven approach
             Related Work
• Polyhedral object with ballistic trajectories
  – [Mirtich 96], [Mirtich 97]
• Event-driven approach
  – [Kim et al. 98]
• Kinetic data structure
  – [Basch et al. 99], [Guibas 98]
• Unknown trajectory with maximum norm of
  acceleration
  – [Hayward et al. 95], [Hubbard 94], [Hubbard
    95]
     Time-Varying Bound
• Assumption :
     Event-Driven Approach
• Subspace tree
  – Maintains the list of spheres
   in each subspace
• Event tree
  – Maintains the candidate events
   of each sphere
• The earliest event actually occurs, and
  subspace and event trees are modified.
• Hierarchical space subdivision
• Cost model
   Events for Time-Varying
           Bounds
• Entering/Leaving event




  – Diameter of B(si) is bounded by the side length
    of a subspace
  – # of non-empty subspace is O(n)
  – # of time-varying bounds intersecting a
    subspace is O(1)
   Events for Time-Varying
           Bounds
• Resetting event


                    →

• Colliding event
    Events for Time-Varying
            Bounds
• Complexity analysis
   – For each B(si),
      • # of candidate entering/leaving events : O(1)
      • # of candidate colliding events : O(1)
      • # of resetting event : 1
   – Total number of candidate events for the TVB in the
     event tree is O(n)
   – Handling an event : O(log n) (regardless of its type)

   – Detection of all collisions among the spheres during the
     time interval : O(ntlog n + nclog n)
• Efficiency improvement
   – Do not insert into the event tree the candidate events of
     B(si), whose event times are later than that of its
     resetting event
                Results
• Event time calculation



  – Entering/Leaving :
  – Resetting :          →
  – Colliding :

  – Collision with a face of the box
                 Results
• Performance
  – Average processing time(2003)
                Results
– Comparison with Hubbard’s algorithm




– # of actual events
             Conclusion
• New algorithm which can detect
  collisions efficiently
  – Time-varying bound
  – Generalization of the event-driven
    approach
  – Interactive rate
• Future work
  – Apply to various applications such as
    crowd simulation

								
To top