“Coping with friction for non-penetrating rigid body simulation”

  • ©David Baraff




    Coping with friction for non-penetrating rigid body simulation



    Algorithms and computational complexity measures for simulating the motion of contacting bodies with friction are presented. The bodies are restricted to be perfectly rigid bodies that contact at finitely many points. Contact forces between bodies must satisfy the Coulomb model of friction. A traditional principle of mechanics is that contact forces are impulsive if and only if non-impulsive contact forces are insufficient to maintain the non-penetration constraints between bodies. When friction is allowed, it is known that impulsive contact forces can be necessary even in the absence of collisions between bodies. This paper shows that computing contact forces according to this traditional principle is likely to require exponential time. An analysis of this result reveals that the principle for when impulses can occur is too restrictive, and a natural reformulation of the principle is proposed. Using the reformulated principle, an algorithm with expected polynomial time behaviour for computing contact forces is presented.


    1. Baraff, D., “Analytical methods for dynamic simulation of non-penetrating rigid bodies,” Computer Graphics (Proc. SIGGRAPH), vol. 23, pp. 223-232, 1989.
    2. Baraff, D., “Curved surfaces and coherence for nonpenetrating rigid body simulation,” Computer Graphics (Proc. SIGGRAPH), vol. 24, pp. 19-28, 1990.
    3. Barzel, R. and Barr, A.H., “A modeling system based on dynamic constraints,” Computer Graphics (Proc. SIG- GRAPH), vol. 22, pp. 179- 188, 1988.
    4. Cottle, R.W., “On a problem in linear inequalities,” Journal of the London Mathematical Society, vol. 43, pp. 378-384, 1968.
    5. Erdmann, M.A., On Motion Planning with Uncertainty, M.S. Thesis, Massachusetts Institute of Technology, 1984.
    6. Featherstone, R., Robot Dynamics Algorithms, Kluwer, Boston, 1987.
    7. Garey, M.R. and Johnson, D.S., Computers and Intractability, Freeman, New York, 1979.
    8. Goyal, S., “Second order kinematic constraint between two bodies rolling, twisting and slipping against each other while maintaining point contact,” Technical Report TR 89-1043, Department of Computer Science, Cornell University, 1989.
    9. Kilmister, W. and Reeve, J.E., Rational Mechanics, Longman’s, London, 1966.
    10. Lrtstedt, P., “Coulomb friction in two-dimensional rigid body systems,” Zeitschrift fiir Angewandte Mathematik un Mechanik, vol. 6 1, pp. 605-615,198 i.
    11. L6tstedt, P., “Numerical simulation of time-dependent contact friction problems in rigid body mechanics,” SIAM Journal of Scientific Statistical Computing, vol. 5, no. 2, pp. 370- 393, 1984.
    12. Lemke, C.E., “Bimatrix equilibrium points and mathematical programming,” Management Science, vol. 11, pp. 681- 689, 1965.
    13. Mason, M.T. and Wang, Y., “On the inconsistency of rigidbody frictional planar mechanics,” IEEE International Conference on Robotics and Automation, 1988.
    14. Murty, K.G., Linear Complementarity, Linear and Nonlinear Programming, Heldermann Verlag, Berlin, 1988.
    15. Vavasis, S.A., “Quadratic Programming is in NP,” Technical Report TR 90-1099, Department of Computer Science, Cornell University, 1990.
    16. Wang, Y. and Mason, M.T., “Two dimensional rigid body collisions with friction,” Journal of Applied Mechanics, (to appear).

ACM Digital Library Publication:

Overview Page: