Towards Real-time Simulation of Hyperelastic Materials A - - PowerPoint PPT Presentation

โ–ถ
towards real time simulation
SMART_READER_LITE
LIVE PREVIEW

Towards Real-time Simulation of Hyperelastic Materials A - - PowerPoint PPT Presentation

Towards Real-time Simulation of Hyperelastic Materials A Dissertation Presentation Tiantian Liu April 24 th 2018 Deformable Body Simulation Limited Human Interactivity in Mixed Reality Environments Limited Materials in Real-time Simulators


slide-1
SLIDE 1

Towards Real-time Simulation

  • f Hyperelastic Materials

A Dissertation Presentation

Tiantian Liu April 24th 2018

slide-2
SLIDE 2

Deformable Body Simulation

slide-3
SLIDE 3

Limited Human Interactivity in Mixed Reality Environments

slide-4
SLIDE 4

Limited Materials in Real-time Simulators

slide-5
SLIDE 5

Robotics

[Bai et al. 2016]

slide-6
SLIDE 6

Rigid Body v.s. Deformable Body

slide-7
SLIDE 7

Goal: Fast simulation of general deformable objects

slide-8
SLIDE 8

Goal: Fast simulation of general deformable objects

Simple

slide-9
SLIDE 9

Related Work: Classic work

Towards Real-time Simulation of Deformable Objects 9

[Baraff and Witkin 1998] [Goldenthal et al. 2007] [Tournier et al. 2015]

Simple

slide-10
SLIDE 10

Related Work: Position Based Dynamics

10 Quasi-Newton Methods for Real-time Simulation of Hyperelastic Materials

[Mรผller et al. 2007] [Macklin et al. 2016]

Simple

slide-11
SLIDE 11

Simulation: Prediction of Future

โ„Ž ๐‘ฆ0 ๐‘ฆ๐‘œ ๐‘ฆ๐‘œ+1

slide-12
SLIDE 12

Temporal Discretization

๏ตNewtonโ€™s 2nd Law of Motion

๏ต๐‘ฆ๐‘œ+1 = ๐‘ฆ๐‘œ +

๐‘ข๐‘œ ๐‘ข๐‘œ+โ„Ž ๐‘ค ๐‘ข ๐‘’๐‘ข

๏ต๐‘ค๐‘œ+1 = ๐‘ค๐‘œ +

๐‘ข๐‘œ ๐‘ข๐‘œ+โ„Ž ๐‘โˆ’1 ๐‘” ๐‘—๐‘œ๐‘ข ๐‘ฆ ๐‘ข

+ ๐‘”

๐‘“๐‘ฆ๐‘ข ๐‘’๐‘ข

slide-13
SLIDE 13

Temporal Discretization

๏ตImplicit Euler Integration

๏ต๐‘ฆ๐‘œ+1 = ๐‘ฆ๐‘œ + โ„Ž๐‘ค๐‘œ+1 ๏ต๐‘ค๐‘œ+1 = ๐‘ค๐‘œ + โ„Ž๐‘โˆ’1 ๐‘”

๐‘—๐‘œ๐‘ข ๐‘ฆ๐‘œ+1 + ๐‘” ๐‘“๐‘ฆ๐‘ข ๏ต๐‘ฆ๐‘œ+1 = ๐‘ฆ๐‘œ + โ„Ž๐‘ค๐‘œ + โ„Ž2๐‘โˆ’1๐‘”

๐‘“๐‘ฆ๐‘ข + โ„Ž2๐‘โˆ’1๐‘” ๐‘—๐‘œ๐‘ข(๐‘ฆ๐‘œ+1)

๐‘ง

slide-14
SLIDE 14

Temporal Discretization

๏ตVariational Implicit Euler

๏ต๐‘ฆ๐‘œ+1 = ๐‘๐‘ ๐‘•๐‘›๐‘—๐‘œ๐‘ฆ

1 2โ„Ž2 ๐‘ฆ โˆ’ ๐‘ง ๐‘ + ๐น(๐‘ฆ)

inertia elasticity ๐‘•(๐‘ฆ)

slide-15
SLIDE 15

Typical workflow of a deformable body simulation

Spatial Discretization Temporal Discretization

min

๐‘ฆ

1 2โ„Ž2 ๐‘ฆ โˆ’ ๐‘ง ๐‘ + ๐น(๐‘ฆ)

Numerical Solution

slide-16
SLIDE 16

๐›ผ๐’‰ ๐’š

๐’š

Numerical Solution

๐’‰ ๐’š

๐›ผ2๐’‰ ๐’š โˆ†๐’š = โˆ’

โˆ’1

slide-17
SLIDE 17

Numerical Solution: Newton's Method

min

๐‘ฆ

1 2โ„Ž2 ๐‘ฆ โˆ’ ๐‘ง ๐‘ + ๐น(๐‘ฆ)

๏Š ๏Œ ๏Œ ๏ต Slow

๏ต ๐›ผ2๐น depends on ๐‘ฆ

๏ต Non-convex

๏ต The Hessian ๐‘/โ„Ž2 + ๐›ผ2๐น can be indefinite

๏Œ

slide-18
SLIDE 18

Non-convex Potential

t

slide-19
SLIDE 19

Numerical Solution: Newton's Method

t

slide-20
SLIDE 20

Ideal Numerical Problems

Large Convex Quadratic Problem (Ideally with Constant System Matrix) Many Small Non-convex Problems (Ideally Independent)

slide-21
SLIDE 21

Mass-spring Systems

Fast Simulation of Mass-Spring Systems Tiantian Liu, Adam W. Bargteil, James F . O'Brien, Ladislav Kavan ACM Transactions on Graphics 32(6) [Proceedings

  • f SIGGRAPH Asia], 2013
slide-22
SLIDE 22

Mass-spring System: Basis

Hookeโ€™s Law: ๐น ๐’š๐Ÿ, ๐’š๐Ÿ‘ = 1 2 ๐‘™ ๐’š๐Ÿ โˆ’ ๐’š๐Ÿ‘ โˆ’ ๐‘š0 2

๐’š1 ๐’š2 ๐‘š0

slide-23
SLIDE 23

Hookeโ€™s Law with auxiliary variables

๏ตFor the j-th spring: ๏ต๐นj ๐’š =

1 2 ๐‘™j

๐’šj1 โˆ’ ๐’šj2 โˆ’ lj0

2

๏ตIntroduce auxiliary variable ๐ชj where ๐ชj

= lj0

๐’š๐‘˜1 ๐’š๐‘˜2 ๐’’๐‘˜

slide-24
SLIDE 24

Hookeโ€™s Law with auxiliary variables

๐’’๐‘—1 ๐’’๐‘—2 ๐’†๐‘—

๏ต min

๐’’๐‘˜ =๐‘š๐‘˜0 1 2 ๐‘™๐‘˜ ๐’š๐‘˜1 โˆ’ ๐’š๐‘˜2 โˆ’ ๐’’๐‘˜ 2

=

1 2 ๐‘™๐‘—

๐’š๐‘˜1 โˆ’ ๐’š๐‘˜2 โˆ’ ๐‘š๐‘˜0

2

๏ตWhen ๐’’๐‘˜ = ๐‘š๐‘˜0

๐’š๐‘˜1โˆ’๐’š๐‘˜2 ๐’š๐‘˜1โˆ’๐’š๐‘˜2

slide-25
SLIDE 25

Hookeโ€™s Law with auxiliary variables

๐’š๐‘—1 ๐’š๐‘—2

๐น ๐’š =

๐‘˜

min

๐’’๐‘˜ =๐‘š0๐‘˜

1 2 ๐‘™๐‘˜ ๐’š๐‘˜1 โˆ’ ๐’š๐‘˜2 โˆ’ ๐’’๐‘˜

2

๐น ๐’š = min

๐’’โˆˆโ„ณ ๐‘˜

1 2 ๐‘™๐‘˜ ๐’š๐‘˜1

๐‘ˆ โˆ’ ๐’š๐‘˜2 ๐‘ˆ โˆ’ ๐’’๐‘˜ ๐‘ˆ 2

slide-26
SLIDE 26

Hookeโ€™s Law with auxiliary variables

๐’š๐‘˜1

๐‘ˆ โˆ’ ๐’š๐‘˜2 ๐‘ˆ : Discrete Shape Descriptor

๐’š๐‘˜1

๐‘ˆ โˆ’ ๐’š๐‘˜2 ๐‘ˆ = ๐‘ฏ๐’Œ ๐‘ผ๐’š

โ‹ฎ 1 โ‹ฎ โˆ’1 โ‹ฎ ๐‘ฏ๐’Œ โˆˆ โ„๐’ร—๐Ÿ ๐’Œ๐Ÿ ๐’Œ๐Ÿ‘ ๐’š1

๐‘ˆ

๐’š2

๐‘ˆ

โ‹ฎ โ‹ฎ โ‹ฎ โ‹ฎ โ‹ฎ ๐’š๐‘œ

๐‘ˆ

๐’š โˆˆ โ„๐’ร—๐Ÿ’

slide-27
SLIDE 27

Hookeโ€™s Law with auxiliary variables

๐’’๐‘˜

๐‘ˆ: Projection

๐’’๐‘˜

๐‘ˆ = ๐‘ป๐’Œ ๐‘ผ๐’’

โ‹ฎ 1 โ‹ฎ โ‹ฎ โ‹ฎ ๐‘ป๐’Œ โˆˆ โ„๐’ร—๐Ÿ ๐’Œ ๐’’1

๐‘ˆ

๐’’2

๐‘ˆ

โ‹ฎ โ‹ฎ โ‹ฎ โ‹ฎ โ‹ฎ ๐’’๐‘œ

๐‘ˆ

๐’’ โˆˆ โ„๐’ร—๐Ÿ’

slide-28
SLIDE 28

Hookeโ€™s Law with auxiliary variables

๐น ๐’š = min

๐’’โˆˆโ„ณ ๐‘˜

1 2 ๐‘™๐‘˜ ๐’š๐‘˜1

๐‘ˆ โˆ’ ๐’š๐‘˜2 ๐‘ˆ โˆ’ ๐’’๐‘˜ ๐‘ˆ 2

๐น ๐’š = min

๐’’โˆˆโ„ณ

1 2 ๐‘ข๐‘  ๐’š๐‘ˆ

๐‘˜

๐‘™๐‘˜๐‘ฏ๐‘˜๐‘ฏ๐‘˜

๐‘ˆ

๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ

๐‘˜

๐‘™๐‘˜๐‘ฏ๐‘˜๐‘ป๐‘˜

๐‘ˆ

๐’’ + ๐‘ซ

๐‘ด ๐‘ฒ ๐น ๐’š = min

๐’’โˆˆโ„ณ

1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’ + ๐ท

slide-29
SLIDE 29

Variational Time Integration with Auxiliary Variable

min

๐‘ฆ

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + ๐น(๐‘ฆ) ๐’’ โˆˆ ๐“ ๐’’๐’Œ = ๐‘š๐‘˜0

min

๐‘ฆโˆˆโ„๐‘œร—3,๐’’โˆˆ๐“

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’ + ๐ท

slide-30
SLIDE 30

Optimization

min

๐‘ฆโˆˆโ„๐‘œร—3,๐’’โˆˆ๐“

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’ + ๐ท

๏ต ๐‘ต, ๐‘ด, ๐‘ฒ, ๐’… does not depend on ๐’š or ๐’’ ๏ต If we fix ๐’š -> easy to solve for ๐’’ ๏ต If we fix ๐’’ -> easy to solve for ๐’š ๏ต Invites alternate solver (local/global)

slide-31
SLIDE 31

Local Step

๐’š๐‘—1 ๐’š๐‘—2 ๐’’๐‘—

๏ตFor each spring, project to unit length using the

current ๐’š to find ๐’’๐’‹

๏ตTrivially Parallelizable

slide-32
SLIDE 32

Global Step

min

๐‘ฆโˆˆโ„๐‘œร—3,๐’’โˆˆ๐“

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’ + ๐ท

๏ตSystem matrix (๐/h2 + ๐‘ด) is: ๏ตIndependent of ๐’š and ๐’’ (Constant) ๏ตPositive Definite ๏ตThus can be pre-factorized (using e.g. Cholesky)

๐บ๐‘—๐‘ฆ ๐’’: ๐’šโˆ— = ๐‘ต โ„Ž2 + ๐‘ด

โˆ’1

๐‘ต โ„Ž2 ๐’› + ๐‘ฒ๐’’

slide-33
SLIDE 33

Alternating Solver

Large Convex Quadratic Problem (with a Constant System Matrix) Many Small Non-convex Problems

slide-34
SLIDE 34

Performance

Our Method Newtonโ€™s Method

slide-35
SLIDE 35

Performance

Our Method Newtonโ€™s Method

slide-36
SLIDE 36

Results: Mass-spring Systems

slide-37
SLIDE 37

Results: Mass-spring Systems

slide-38
SLIDE 38

Results: Mass-spring Systems

slide-39
SLIDE 39

Remark: Fast Mass-spring Systems

1 2 ๐‘™๐‘˜ ๐’š๐‘˜1 โˆ’ ๐’š๐‘˜2 โˆ’ ๐‘š๐‘˜0

2 =

min

๐’’๐‘˜ =๐‘š๐‘˜0

1 2 ๐‘™๐‘˜ ๐’š๐‘˜1 โˆ’ ๐’š๐‘˜2 โˆ’ ๐’’๐‘˜

2

min

๐‘ฆ

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + ๐น(๐‘ฆ)

min

๐‘ฆโˆˆโ„๐‘œร—3,๐’’โˆˆ๐“

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’ + ๐ท

slide-40
SLIDE 40

Remark: Fast Mass-spring Systems

1 2 ๐‘™๐‘˜ ๐’š๐‘˜1 โˆ’ ๐’š๐‘˜2 โˆ’ ๐‘š๐‘˜0

2 =

min

๐’’๐‘˜ =๐‘š๐‘˜0

1 2 ๐‘™๐‘˜ ๐’š๐‘˜1 โˆ’ ๐’š๐‘˜2 โˆ’ ๐’’๐‘˜

2

min

๐‘ฆ

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + ๐น(๐‘ฆ)

min

๐‘ฆโˆˆโ„๐‘œร—3,๐’’โˆˆ๐“

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’ + ๐ท

Formulate IE as an Optimization Problem Formulate Hookeโ€™s Law with an Auxiliary Variable Local/global Solve

slide-41
SLIDE 41

Remark: Fast Mass-spring Systems

1 2 ๐‘™๐‘˜ ๐’š๐‘˜1 โˆ’ ๐’š๐‘˜2 โˆ’ ๐‘š๐‘˜0

2 =

min

๐’’๐‘˜ =๐‘š๐‘˜0

1 2 ๐‘™๐‘˜ ๐’š๐‘˜1 โˆ’ ๐’š๐‘˜2 โˆ’ ๐’’๐‘˜

2

min

๐‘ฆ

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + ๐น(๐‘ฆ)

min

๐‘ฆโˆˆโ„๐‘œร—3,๐’’โˆˆ๐“

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’ + ๐ท

slide-42
SLIDE 42

Remark: Fast Mass-spring Systems

min

๐’’๐‘˜ =๐‘š๐‘˜0

1 2 ๐‘™๐‘˜ ๐’š๐‘˜1 โˆ’ ๐’š๐‘˜2 โˆ’ ๐’’๐‘˜

2

slide-43
SLIDE 43

Projective Dynamics

Projective Dynamics: Fusing Constraint Projections for Fast Simulation Sofien Bouaziz, Sebastian Martin, Tiantian Liu, Ladislav Kavan, Mark Pauly ACM Transactions on Graphics 33(4) [Proceedings

  • f SIGGRAPH], 2014
slide-44
SLIDE 44

Key Idea of Fast Mass-Spring Systems

๐น ๐’š = min

๐’’โˆˆโ„ณ ๐‘˜

๐‘ฅ

๐‘˜ ๐‘ฏ๐’Œ ๐‘ผ๐’š โˆ’ ๐’’๐‘˜ 2

๐ธ๐‘—๐‘ก๐‘‘๐‘ ๐‘“๐‘ข๐‘“ ๐‘‡โ„Ž๐‘๐‘ž๐‘“ ๐ธ๐‘“๐‘ก๐‘‘๐‘ ๐‘—๐‘ž๐‘ข๐‘๐‘  โˆ’ ๐‘„๐‘ ๐‘๐‘˜๐‘“๐‘‘๐‘ข๐‘—๐‘๐‘œ 2

slide-45
SLIDE 45

Other Discrete Shape Descriptors

Rest pose ๐’€ Current pose ๐’š ๐‘ฏ๐‘ผ๐’š ๐น ๐’š = min

๐’’โˆˆโ„ณ ๐‘˜

๐‘ฅ

๐‘˜ ๐‘ฏ๐’Œ ๐‘ผ๐’š โˆ’ ๐’’๐‘˜ 2

slide-46
SLIDE 46

Other Manifolds

๐‘ฏ๐’Œ

๐‘ผ๐’š

๐’’๐’Œ

๐‘ฏ๐’Œ

๐‘ผ๐’š

๐’’๐‘˜

๐น ๐’š = min

๐’’โˆˆโ„ณ ๐‘˜

๐‘ฅ

๐‘˜ ๐‘ฏ๐’Œ ๐‘ผ๐’š โˆ’ ๐’’๐‘˜ 2

slide-47
SLIDE 47

Intuitive Projection Manifold: SO(3)

๏ตSO(3) โ€ฆ Best Fit Rotation Matrix ๏ตโ€œAs Rigid As Possibleโ€ [Chao et al. 2010]

slide-48
SLIDE 48

Intuitive Projection Manifold: SL(3)

๏ตSL(3) โ€ฆ Group of Matrices with det = 1 ๏ตVolume Preservation

slide-49
SLIDE 49

More Discrete Shape Descriptors:

Laplace-Beltrami operator

slide-50
SLIDE 50

Results: Projective Dynamics

slide-51
SLIDE 51

Remark: Projective Dynamics

๐น ๐’š = min

๐’’โˆˆโ„ณ ๐‘˜

๐‘ฅ

๐‘˜ ๐‘ฏ๐’Œ ๐‘ผ๐’š โˆ’ ๐’’๐‘˜ 2

๏ต Like before, ๐‘ต, ๐‘ด, ๐‘ฒ, ๐’… does not depend on ๐’š and ๐’’ ๏ต If we fix ๐’š -> easy to solve for ๐’’: Projection ๏ต If we fix ๐’’ -> easy to solve for ๐’š: ๐’šโˆ— =

๐‘ต โ„Ž2 + ๐‘ด โˆ’1 ๐‘ต โ„Ž2 ๐’› + ๐‘ฒ๐’’

min

๐‘ฆโˆˆโ„๐‘œร—3,๐’’โˆˆ๐“

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’ + ๐ท

slide-52
SLIDE 52

Limitation: Projective Dynamics

๐ธ๐‘—๐‘ก๐‘‘๐‘ ๐‘“๐‘ข๐‘“ ๐‘‡โ„Ž๐‘๐‘ž๐‘“ ๐ธ๐‘“๐‘ก๐‘‘๐‘ ๐‘—๐‘ž๐‘ข๐‘๐‘  โˆ’ ๐‘„๐‘ ๐‘๐‘˜๐‘“๐‘‘๐‘ข๐‘—๐‘๐‘œ 2

๐น ๐’š = min

๐’’โˆˆโ„ณ ๐‘˜

๐‘ฅ

๐‘˜ ๐‘ฏ๐’Œ ๐‘ผ๐’š โˆ’ ๐’’๐‘˜ 2 Special Requirement for the Energy Representation

slide-53
SLIDE 53

More Materials?

Soft ARAP Stiff ARAP

slide-54
SLIDE 54

Spline-Based Materials [Xu et al. 2015]

Soft ARAP Stiff ARAP

Polynomial Material [Xu et al. 2015]

slide-55
SLIDE 55

Quasi-Newton Methods for Real-Time Simulation of Hyperelastic Materials

Quasi-Newton Methods for Real-Time Simulation

  • f Hyperelastic Materials

Tiantian Liu, Sofien Bouaziz, Ladislav Kavan ACM Transactions on Graphics 36(3) [Presented at SIGGRAPH],2017.

slide-56
SLIDE 56

Reformulation of Projective Dynamics

min

๐‘ฆโˆˆโ„๐‘œร—3,๐’’โˆˆ๐“

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’ + ๐ท min

๐‘ฆโˆˆโ„๐‘œร—3

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’(๐’š) + 1 2 ๐‘ข๐‘  ๐’’(๐’š)๐‘ผ๐‘ป๐’’(๐’š)

๐’‰(๐’š)

slide-57
SLIDE 57

Reformulation of Projective Dynamics

๐›ผ๐’‰ ๐’š = ๐‘ต โ„Ž2 ๐’š โˆ’ ๐’› + ๐‘ด๐’š โˆ’ ๐‘ฒ๐’’ ๐’š + ๐œ–๐’’ ๐’š ๐œ–๐’š : (๐‘ป๐’’ ๐’š โˆ’ ๐‘ฒ๐‘ผ๐’š)

min

๐‘ฆโˆˆโ„๐‘œร—3

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’(๐’š) + 1 2 ๐‘ข๐‘  ๐’’(๐’š)๐‘ผ๐‘ป๐’’(๐’š)

๐’‰(๐’š)

slide-58
SLIDE 58

Projection Differential

๐œ€ ๐‘ฏ๐‘ผ๐’š โˆ’ ๐’’ ๐’š

2 = ๐‘ฏ๐‘ผ๐’š โˆ’ ๐’’ ๐’š ๐‘ˆ

๐‘ฏ๐‘ผ๐œ€๐’š โˆ’๐œ€๐’’ ๐’š ๐‘ˆ ๐‘ฏ๐‘ผ๐’š โˆ’ ๐’’ ๐’š ๐‘ฏ๐‘ผ๐’š ๐’’(๐’š) ๐œ€๐’’ ๐’š

slide-59
SLIDE 59

Reformulation of Projective Dynamics

๐›ผ๐’‰ ๐’š = ๐‘ต โ„Ž2 ๐’š โˆ’ ๐’› + ๐‘ด๐’š โˆ’ ๐‘ฒ๐’’ ๐’š + ๐œ–๐’’ ๐’š ๐œ–๐’š : (๐‘ป๐’’ ๐’š โˆ’ ๐‘ฒ๐‘ผ๐’š)

(๐‘ต โ„Ž2 + ๐Œ)โˆ’1๐›ผ๐’‰ ๐’š = ๐’š โˆ’

๐‘ต โ„Ž2 + ๐‘ด

โˆ’1 ๐‘ต

โ„Ž2 ๐’› + ๐‘ฒ๐’’ ๐’šโˆ— ๐’šโˆ— = ๐’š โˆ’ (๐‘ต/โ„Ž2 + ๐‘ด)โˆ’1๐›ผ๐’‰ ๐’š

min

๐‘ฆโˆˆโ„๐‘œร—3

1 2โ„Ž2 ๐‘ข๐‘  ๐‘ฆ โˆ’ ๐‘ง ๐‘ˆ๐‘ต ๐‘ฆ โˆ’ ๐‘ง + 1 2 ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ด๐’š โˆ’ ๐‘ข๐‘  ๐’š๐‘ˆ๐‘ฒ๐’’(๐’š) + 1 2 ๐‘ข๐‘  ๐’’(๐’š)๐‘ผ๐‘ป๐’’(๐’š)

๐’‰(๐’š)

slide-60
SLIDE 60

๐’šโˆ— = ๐’š โˆ’ (๐‘ต/โ„Ž2 + ๐‘ด)โˆ’1๐›ผ๐’‰ ๐’š

๐’šโˆ— = ๐’š โˆ’ ๐œท ๐›ผ2๐‘•(๐’š)

โˆ’1๐›ผ๐‘• ๐’š

Compare to one Newton step:

Reformulation of Projective Dynamics

๏ต ๐›ฝ: Step size, usually decided by linesearch, typical value is 1. ๏ต ๐›ผ2๐‘• ๐’š : Hessian Matrix, ๐‘ต/โ„Ž2 + ๐›ผ2๐น(๐’š)

slide-61
SLIDE 61

Projective Dynamics: A Quasi Newton method applied

  • n a special type of energy

Quasi-Newton Formulation

๐’šโˆ— = ๐’š โˆ’ ๐›ฝ(๐‘ต/โ„Ž2 + ๐‘ด)โˆ’1๐›ผ๐’‰ ๐’š ๐›ฝ = 1

slide-62
SLIDE 62

Supporting More General Materials

๐’šโˆ— = ๐’š โˆ’ ๐›ฝ(๐‘ต/โ„Ž2 + ๐‘ด)โˆ’1๐›ผ๐’‰ ๐’š This quasi-Newton formulation can be used for any hyperelastic material, but:

  • We need to do line-search
  • ๐›ฝ = 1 only works for Projective Dynamics
  • We need to define the proper weights ๐‘ฅ๐‘—
  • ๐‘ต/โ„Ž2 + ๐‘˜ ๐‘ฅ

๐‘˜๐‘ฏ๐’Œ๐‘ฏ๐’Œ ๐‘ผ

slide-63
SLIDE 63

๐‘ฅ

๐‘˜

Strain-Stress Curve for PD

  • ๐‘ต/โ„Ž2 + ๐‘˜ ๐‘ฅ

๐‘˜๐‘ฏ๐’Œ๐‘ฏ๐’Œ ๐‘ผ

Strain Stress

slide-64
SLIDE 64

Supporting More General Materials

Strain Stress

๐‘ฅ

๐‘˜

  • ๐‘ต/โ„Ž2 + ๐‘˜ ๐‘ฅ

๐‘˜๐‘ฏ๐’Œ๐‘ฏ๐’Œ ๐‘ผ

slide-65
SLIDE 65

Supporting More General Materials

slide-66
SLIDE 66

Quasi-Newton Algorithm

Compute Gradient

slide-67
SLIDE 67

Quasi-Newton Algorithm

Evaluate Descent Direction

slide-68
SLIDE 68

Quasi-Newton Algorithm

Line Search

slide-69
SLIDE 69

Quasi-Newton Algorithm

slide-70
SLIDE 70

We can do more

slide-71
SLIDE 71

L-BFGS Acceleration

Projective Dynamics Quasi-Newton Method Exact Solution

slide-72
SLIDE 72

L-BFGS Acceleration

Quasi-Newton Method Projective Dynamics

slide-73
SLIDE 73

๐›ผ๐’‰ ๐’š

๐’š

Core of Quasi-Newton Methods

๐’‰ ๐’š

โˆ†๐’š = โˆ’

โˆ’1

๐‘ต ๐’Š๐Ÿ‘ + ๐‘ด ๐‘ฉ

slide-74
SLIDE 74

L-BFGS with rest-pose Hessian

slide-75
SLIDE 75

L-BFGS with rest-pose Hessian

slide-76
SLIDE 76

L-BFGS with Scaled Identity

slide-77
SLIDE 77

L-BFGS with updating Hessian

slide-78
SLIDE 78

Performance of L-BFGS family

slide-79
SLIDE 79

Results: Accuracy

slide-80
SLIDE 80

Results: Robustness

slide-81
SLIDE 81

Results: Collision

slide-82
SLIDE 82

Results: Anisotropy

slide-83
SLIDE 83

Results: Spline-Based Materials

slide-84
SLIDE 84

Remark

๏ต Our method is:

๏ต General: supports a variety types of hyperelastic materials ๏ต Fast: >10x faster compared to Newtonโ€™s method to achieve similar accuracy level ๏ต Simple: avoids Hessian computation, avoids definiteness fix

Simple

slide-85
SLIDE 85

Towards Real-time Simulation of Deformable Objects:

Generalization of Spatial Discretization Models

Fast Mass Spring System Projective Dynamics

slide-86
SLIDE 86

Towards Real-time Simulation of Deformable Objects:

Generalization of Material Models + Acceleration

Projective Dynamics Quasi-Newton Methods

slide-87
SLIDE 87

Towards Real-time Simulation of Deformable Objects:

Whatโ€™s Next?

Quasi-Newton Methods ?

slide-88
SLIDE 88

Core of Our Methods

โˆ†๐’š = โˆ’ ๐‘ต ๐’Š๐Ÿ‘ + ๐‘ด

โˆ’1

๐›ผg(๐ฒ) ร—

๐‘ต ๐’Š๐Ÿ‘ + ๐‘ด =

slide-89
SLIDE 89

Core of Our Methods

โˆ†๐’š = โˆ’ ๐‘ต ๐’Š๐Ÿ‘ + ๐‘ด

โˆ’1

๐›ผg(๐ฒ) ร— =

slide-90
SLIDE 90

Time Varying Events

๏ต Collisions ๏ต Tearing or Cutting

ร—

slide-91
SLIDE 91

Collisions

slide-92
SLIDE 92

Collisions

slide-93
SLIDE 93

Collision: Soft Constraint ๐‘œ ๐‘ฆ๐‘ก ๐‘ฆ

๐น๐‘‘๐‘๐‘š = ๐‘™๐‘‘๐‘๐‘š 2 ๐‘ฆ โˆ’ ๐‘ฆ๐‘ก ๐‘ˆ๐‘œ

2

, ๐‘—๐‘” ๐‘ฆ โˆ’ ๐‘ฆ๐‘ก ๐‘ˆ๐‘œ < 0 , ๐‘๐‘ขโ„Ž๐‘“๐‘ ๐‘ฅ๐‘—๐‘ก๐‘“

slide-94
SLIDE 94

Collision: Soft Constraint

๐น๐‘‘๐‘๐‘š = ๐‘™๐‘‘๐‘๐‘š 2 ๐‘ฆ โˆ’ ๐‘ฆ๐‘ก ๐‘ˆ๐‘œ

2

, ๐‘—๐‘” ๐‘ฆ โˆ’ ๐‘ฆ๐‘ก ๐‘ˆ๐‘œ < 0 , ๐‘๐‘ขโ„Ž๐‘“๐‘ ๐‘ฅ๐‘—๐‘ก๐‘“ ๐›ผ๐น๐‘‘๐‘๐‘š = ๐‘™๐‘‘๐‘๐‘š ๐‘ฆ โˆ’ ๐‘ฆ๐‘ก ๐‘ˆ๐‘œ ๐‘œ , ๐‘—๐‘” ๐‘ฆ โˆ’ ๐‘ฆ๐‘ก ๐‘ˆ๐‘œ < 0 , ๐‘๐‘ขโ„Ž๐‘“๐‘ ๐‘ฅ๐‘—๐‘ก๐‘“ ๐›ผ2๐น๐‘‘๐‘๐‘š = ๐‘™๐‘‘๐‘๐‘š๐‘œ๐‘œ๐‘ˆ , ๐‘—๐‘” ๐‘ฆ โˆ’ ๐‘ฆ๐‘ก ๐‘ˆ๐‘œ < 0 , ๐‘๐‘ขโ„Ž๐‘“๐‘ ๐‘ฅ๐‘—๐‘ก๐‘“

slide-95
SLIDE 95

Quasi-Newton Algorithm with Collisions

๐›ผ๐น๐‘‘๐‘๐‘š ๐น๐‘‘๐‘๐‘š

slide-96
SLIDE 96

Tearing

slide-97
SLIDE 97

Tearing

slide-98
SLIDE 98

Tearing

slide-99
SLIDE 99

Tearing

slide-100
SLIDE 100

Tearing

slide-101
SLIDE 101

Quasi-Newton Algorithm with Tearing

Original L

slide-102
SLIDE 102

Parallelization

๏ต Local Step / Gradient Evaluation Step ?

๏ต Yes

๏ต Global Step / Decent Direction Evaluation ?

๏ต Dependents on the Linear Solver

slide-103
SLIDE 103

Choice of Linear Solver: Direct Solver

ร— =

Pros: Accurate Fast in CPU if Prefactorized Cons: Hard to Parallelize Memory Consuming

slide-104
SLIDE 104

Choice of Linear Solver: Iterative Solvers

[Wang 2015] [Fratarcangeli et al. 2016]

slide-105
SLIDE 105

Choice of Linear Solver: CG

slide-106
SLIDE 106

Simulating Stiff/Rigid Materials

slide-107
SLIDE 107

Simulating Stiff/Rigid Materials

[Image courtesy of FistfulOfTalent.com]

slide-108
SLIDE 108

Increasing Stiffness Directly?

slide-109
SLIDE 109

Using Hard Constraints

[Tournier et al. 2015]

๐‘‘ ๐บ = ๐บ โˆ’ ๐‘† = 0

slide-110
SLIDE 110

Using Hard Constraints (Contโ€™d)

๐‘ฆ = ๐‘†๐‘Œ + ๐‘ข

slide-111
SLIDE 111

Damping

๏ต Current damping model: post-processing models โ€“ Ether drag, PBD damping

[Li et al. 2018]

slide-112
SLIDE 112

Other Time Integrators

๏ต More vivid motion?

๏ต Other Integrators

๏ต Implicit Midpoint ๏ต Newmark-Beta ๏ต BDF2 ๏ต [Bathe 2007] Integrator

๏ต Energy Momentum Methods

๏ต [Dimitar et al. 2018]

slide-113
SLIDE 113

Whatโ€™s Next?

๏ต Bring Machine Learning to Physics?

[Video courtesy of Junior Rojas]

slide-114
SLIDE 114

Forward Physics Inverse Physics

Our Method

A Bigger Picture

slide-115
SLIDE 115

A Bigger Picture

Phys-based Simulation

slide-116
SLIDE 116

Thank You