simulating multi-rigid-body dynamics with contact and friction

32
Simulating Multi-Rigid-Body Dynamics with Contact and Friction Mihai Anitescu SIAM OPTIMIZATION MEETING May 10, 1999

Upload: indra

Post on 12-Jan-2016

35 views

Category:

Documents


0 download

DESCRIPTION

Simulating Multi-Rigid-Body Dynamics with Contact and Friction. Mihai Anitescu SIAM OPTIMIZATION MEETING May 10, 1999. Rigid Multi-Body Dynamics Simulation Applications. Industrial simulation and design for aircraft, ships, heavy vehicles (product design -- production, 5 years). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Mihai Anitescu

SIAM OPTIMIZATION MEETING

May 10, 1999

Page 2: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Rigid Multi-Body Dynamics Simulation Applications

• Industrial simulation and design for aircraft, ships, heavy vehicles (product design -- production, 5 years).

• Flexible Manufacturing Systems design and redesign (commissioning+tuning, 3 years).

• Appropriate simulation could reduce lead times by up to 50%.

• Simulating virtual environments (+real time = interactive).

Page 3: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Virtual Environment Application Example

• Setting up the real installation for training is very expensive.

• The virtual environment can be easily modified for different scenarios, but simulating it in real-time is essential.

• Simplified model: rigid bodies with joints and contacts.

Insert PictureInsert Picture

Page 4: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Initial model requirements

• Acceleration based Newton laws.

• Rigid bodies.

• No inter penetration, nonnegative contact impulses and passive contact

• Joint constraints

• Coulomb friction or reasonable approximations.

• Impact resolution (Poisson hypothesis).

mjq 1,0)(j

01,0)(i ncniq

Page 5: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Classical Constrained Dynamics

(MDP)

0,

,,)(

)(

00)(

0,q) j

,1,1

dqdf

ff

fnff

q

qn

fq

f

fffqM

Tk

Tk

Nk

Tk

Tk

Nkk

Nk

jjj

nkk

mjjext

Page 6: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Inconsistency example

• State space representation

• Constraint , initially

sin(

cos(

2

lrp

0pnT

m

fgpn

I

l

m

lfgpn

NT

NT

..

2..

)cos()sin(((cos2

( 0pnT

Page 7: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Frictional Inconsistency

• What went wrong? Newton’s laws rather than Coulomb’s model.

• Configuration inconsistent, not only singular.

• P. Painleve: Governing equations of motion do not have a solution in general( Comptes Rendus Acad. Sci. Paris, 1895).

• Approaches for the continuous case.– Solutions in a distributional sense.

– Differential inclusions instead of differential equations (Moreau, 1986; Monteiro-Marques, 1993).

Page 8: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Avoiding Frictional Inconsistencyin time-stepping schemes

• Time-stepping: If a continuous model exists, how should the associated numerical integration scheme look like?

• Friction is estimated, and the frictionless problem is solved (Lotstedt,1982). Problems: starting configuration and the impact case.

• The inconsistent configuration is treated as a collision(Baraff,1993). Problems: arbitrary collisions and the impact case.

• Newton's law with impulses and velocities (Stewart & Trinkle 1995; Anitescu & Potra, 1996).

Page 9: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Revised model requirements

• Velocity based Newton laws, by combining time stepping with impulse resolution.

• Rigid bodies.

• No inter penetration, nonnegative contact impulses and passive contact

• Joint constraints

• Coulomb friction or reasonable approximations.

• Impact resolution (Poisson hypothesis).

01,0)(i ncniq

mjq 1,0)(j

Page 10: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Framework and notations used

• The rigid multi-body system is described by its generalized coordinates, q, and generalized velocities, v.

• The contacts (joints) are described by inequalities (equalities).

• The ``tangent plane'' for a contact constraint is defined by the cone generators

• M: mass matrix, symmetric positive definite; h: the time step k: external force.

niq 1,0)(i mjq 1,0)(j

20),,( i iqt

Insert Model SlidesInsert Model Slides

Page 11: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Contact Model

• Contact configuration described by the (generalized) distance function , which allows for some interpenetration.

• Feasible set .

• Contact impulses are compressive

• The normal velocity for non inter penetration is velocity-based (as opposed to Stewart & Trinkle, where it is position-based):

• Complementarity guarantees energetic passivity of contact:

)(qd

0)( q

)(,0 qnvnv qT

n

0nc

0,0,0 nnnn cvcv

Page 12: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Contact Description

• is the normal impulse and is the tangential impulse

• is the total impulse in Newton Euler world coordinates .

• Classical Coulomb model requires the 3D contact impulse to lie in a circular cone.

• If relative motion exists, the frictional impulse has to be opposite to the relative velocity (Maximum Dissipation)

)()( 2

1

2

1

tr

t

tr

t

c

nr

n

nr

n

cc tnNE

NEc

nc tc

ntn ccc ,0

Page 13: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Polygonal approximation of Coulomb cone

0 , ,

0 ,

by edapproximat is

scoordinate NE : Each

],....,,....,[ 21,21

iniiiT

iniiit

nt

i

nn

cdf

cdc

cc

d

ddddddD

Page 14: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

The Integration Step

pjec

pjvDe

pjcvn

miv

hkDcncvvM

jjTjjn

jj

jlTjjjj

jn

ljj

li

m

i

p

j

jjjn

jiill

..1,0,,0

..1,,0

..1,0,0

..1,0

)()(

)()()()()()(

)()1()()()()(

)()1()()(

)1()(1 1

)()()()()()()()1(

Page 15: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Matrix Form of The Integration Step

0~

~~

~

~

~

,0~

~~

0~

~

~

0

0

0

0

)(

~

~~

~

000

000~

0000~0000~0

~~~

~~

~0

0 )()1(

n

T

n

l

n

l

T

T

T

T

cc

hkMv

c

c

v

e

eD

n

DnM

Page 16: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Linear Complementarity Problems (LCPs)

• Linear and Quadratic Programming are LCPs, via primal-dual formulations.

• If , a solution exists, (by a Brouwer fixed point argument), and can be computed by Lemke’s algorithm (pivotal, similar to simplex).

• M has to be copositive

0,0,0, xsxsqMxs T

0,)()( xcqMxxxf T

0,0 xMxxT

Page 17: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Interior Point Algorithms (IP)

• It takes corrected Newton steps to compute a solution if M is positive semi definite. The central path is well defined.

• In the convex case IP algorithms have polynomial complexity, but other extensions are unclear.

** )(,)(

..1)()(

0)(,0)(,)()(

ssxx

nisx

sxqMxs

ii

)1ln(( nO

Page 18: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Theorem

• Consider the mixed LCP above. If M is a symmetric positive definite matrix, N a copositive matrix and b a nonnegative vector, then the mixed LCP has a solution. Lemke’s algorithm (with anti cycling strategy) will find a solution of the LCP obtained by eliminating x,y.

0,0,0

0

0

000

0

ss

b

k

y

x

NH

F

HFM

sT

T

T

Page 19: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Properties of the formulation

• The model is solvable for any configuration.

• Discrete Maximum Dissipation Principle (MDP): The frictional impulse maximizes the dissipation over all feasible contact impulses, given

• If the mass matrix is constant, the kinetic energy at the new step cannot exceed the the kinetic energy of the system with no constraint enforced (contacts are passive).

))( jjD vc j

n ,)(

)1()()()1()1()()1()()1(

1)(1)()1()1(

2

1

2

1)()(

2

1

)()(2

1

2

1

lTlTllTlTlTlTlTl

lllTl

vhkMvvMvvvvMvv

khMvMkhMvMvv

Page 20: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Energy/ stability properties

• Assumption: M constant.

• If the external force is of the form

• c depends only on M and d. h has to be sufficiently small but depending only on c, T.

cTcTTT

c

cTeeqMvvTMvTv

qdqkvdvkdqvk

qkvkqvkvfqvk

222

332211

321

2))0()0()0(()()(

then,)(,)(,),(

where),()(),()(),(

1)0()0()()(,0 If 32 cTMvvTMvTvkk TT

Page 21: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Constraint stability

• There are constants C,H depending on the problem data, but not on the time-step h, such that

• for any h < H (q(t) is obtained by linear interpolation).

totalj

i

njtqCh

miChtqCh

1)),((

1,))((

Page 22: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Difficult Friction Configuration

• For any friction coefficient we obtain multiple solutions.

• Does this result in undesirable properties of the LCP matrix?

Page 23: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Column sufficiency?

0.any for ,sufficientcolumn not is Q

.0but ,0)( ,0any For

.0,0,0,0 If

0

011

11

nii

nnT

n

T

TT

TT

cQzz

ccn

c

e

eDMDnMD

DMnnMn

Q

Page 24: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Row sufficiency?

0.any for ,sufficient rownot is Q

.0but ,0)( ,0any For

.0,0,0,0 If

00

11

11

niT

i

nnT

n

T

TT

TT

T

czQz

ccn

c

e

eDMDnMD

DMnnMn

Q

Page 25: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Properties of the LCP matrix.

• The matrix Q is neither row, nor column sufficient.

• As a result, it cannot be in the class, which makes it difficult to use polynomial-time interior-point algorithms.

• Lemke’s algorithm appears to be the only one which is guaranteed to provide a solution to this model.

• However, further analysis may reveal good matrix properties for pointed friction cones.

• Since model needs to solve a succession of these LCPs anyway, other approaches may provide (computationally) better matrices.

*P

Page 26: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Differential Inclusions

cts.,0)(,)(co)(

)()(

|

ttKdtt

dvttK

dt

dv

tt

• v has bounded variation

• K(t) is closed and convex set valued

)]()()[lim 1 iiiTT tvtvtdv

Page 27: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Theorem

• For a pointed friction cone, there exists

• The quantities are obtained by linear interpolation. (D. Stewart)

0kh

)cts. ,))((

*weak ),()(

a.e. ),()(

uniformly ),()(

dvtdvt

dvdv

vv

qq

Th

h

h

h

k

k

k

k

kk hh vq ,

Page 28: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Theorem(II)

• For one contact, maximal dissipation holds

,increasing-non is2

1

)(),(),(

0

0

0

dtvkMvv

vdtqtqqFCvqkdt

dvM

tTT

t

a.e , nTT

n

cvDvDdc

d

Page 29: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Accomplishments

• The time-stepping model to has a solution regardless of the configuration and dimension of the problem. Impulsive solutions are accommodated.

• Static and dynamic friction are treated in an unitary manner.• The constraints are guaranteed to be satisfied within any

given tolerance.• The numerical scheme is dissipative and, as a result the

velocities are uniformly bounded.• A differential inclusion model with energy dissipation

satisfied in the limit.

Page 30: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

2-dimensional examples

• Long bar with multiple contacts:– low friction (mu=0.05, e=0.6)

– high friction.(mu=0.2, e=0.6)

• 2 blocks on table– low friction (mu=0.02, e=0.2)

– high friction (mu=0.1, e=0.2)

• Multiple collisions with high restitution, high friction (mu=0.3, e=0.9).

• Three blocks on table, low friction (mu=0.05, e=0.6).

• Several blocks, (mu=0.2, e=1.0)

VRML: to start animation click on the base object after browser is loaded.

Page 31: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Open Problems

• Can a consistent differential inclusion approach be formulated for general configurations?

• Under which conditions does the maximum dissipation principle apply in the multiple contact case?

• Can other properties of the time-stepping scheme be used in the continuous time context (such as the bound on the square of the variation of the velocities)?

• Is the solution set of the friction LCP convex? (it is not true for arbitrary copositive matrices),

• Can the LCP be recast as a convex optimization problem?

Page 32: Simulating Multi-Rigid-Body Dynamics with Contact and Friction

Future Research

• Treat the Coulomb cone directly rather than using a polygonal approximation (partly solved APS98 ).

• Design stable numerical algorithms to handle stiffness (implicit or linearly implicit, work in progress).

• Nonlinear formulations (NCP).

• Investigate Interior-Point Algorithms for solving the friction LCP or NCP.

• Are higher-order methods relevant?

• Formulate an efficient piecewise DAE strategy.