Keyframe Control of Complex Particle Systems Using the Adjoint Method

1 / 20
About This Presentation
Title:

Keyframe Control of Complex Particle Systems Using the Adjoint Method

Description:

Keyframe Control of Complex Particle Systems Using the Adjoint Method ... Adjoint method is theoretically sensitive to discontinuities ... –

Number of Views:68
Avg rating:3.0/5.0
Slides: 21
Provided by: XP3
Category:

less

Transcript and Presenter's Notes

Title: Keyframe Control of Complex Particle Systems Using the Adjoint Method


1
Keyframe Control of Complex Particle Systems
Using the Adjoint Method
  • Chris Wojtan Peter J. Mucha Greg Turk
  • ACM SIGGRAPH Symposium on Computer Animation 2006

2
Motivation
  • Simulated animation is hard to control
  • High level control is necessary
  • Propose a way to control interacting particles by
    keyframes
  • Flock
  • Cloth

3
Related works
  • Keyframe control simulation
  • Interactive manipulation of rigid body simulation
    Popovic et. al. SIGGRAPH 00
  • Directable animation of elastic objects Kondo
    R. et. al. SCA 05
  • Keyframe control of smoke simulations Treuille
    A. et. al. SIGGRAPH03
  • Fluid control using the adjoint method McNamara
    A. et. al. SIGGRAPH 04

4
Related works (cont.)
  • Flocks
  • Flocks, herds, and schools A distributed
    behavioral model. Reynolds C. W. SIGGRAPH 87
  • Cloth
  • Large steps in cloth simulation. Baraff D.,
    Witkin A. SIGGRAPH 98
  • Stable but responsive cloth. Choi K. J., Ko H.
    S. SIGGRAPH 02

5
Interactive particle system
  • Each Particle has its own properties
  • position, velocity, mass, etc.
  • Particles may exert forces between each other
  • External forces may exist

6
Keyframe matching
F0
F1
F2
Fn
Define the objective function
P0
P1
P2
Pn
n frame number qn state vector of keyframe Wn
Weights Cn Mapping from u to q a smoothness Q
aggregation of q0qN
State vector
Control vector
7
Problem of finding minimum
  • Gradient-based method
  • Expensive computation
  • Dimension explosion in normal way
  • Solve by the adjoint method!

8
Adjoint method
  • Duality
  • Given matrices A, C and vector g are known
  • its adjoint vector, s
  • It is exactly the same as the original one!

9
Adjoint method (cont.)
  • Generally speaking, qi1 fi(qi)
  • fi updating operation
  • Simply apply external forces in this system
  • f(q) q Mtu
  • Suppose all the forces are applied linearly
  • Mt matrix converting u to an incremental state
  • Rewrite in a aggregate form
  • Q F(Q,u)

10
Adjoint method (cont.)
gT
A
B
C
g
sT
A
11
Adjoint method (cont.)
  • Solving for the adjoint vector

recall that qi1 fi(qi)
  • Simply use Gaussian elimination
  • Solve backward in time

A
12
Adjoint method (cont.)
  • Workflow
  • Huge memory consumption, but efficient.

13
Control flocking
  • Control force
  • Collision avoidance
  • Velocity matching force
  • Flocking centering force
  • Wander force
  • Solving by forward Euler scheme

14
Control flocking (cont.)
  • Derivation
  • F ?t V(Q) gt Qn1 ?t V(Qn)
  • Resulting adjoint vector

15
Control flocking (cont.)
  • Extending some constraints for more intuitive
    control
  • Center of mass constraints
  • Shape constraints
  • No need to modify objective function
  • Compute difference between boundary shape
  • Computer difference between centers of mass

16
Control cloth
  • A different story!
  • Solving by backward Euler scheme

General form of its adjoint vector
?????(???)??
17
Control cloth (cont.)
  • Dimension explosion!
  • Expensive both in space and in time
  • Avoid exact calculation, use approximation!
  • Calculate adjoints of backward Euler to
    approximate adjoints of linearized scheme

18
Control cloth (cont.)
  • Derivation
  • F ?t V(Qn1)
  • Result adjoint
  • Introduce O(?t3) errors

19
Results
  • No benchmark, no spec of demo environmentjust
    video!

20
Conclusion future work
  • Efficient control of particle system
  • Simple system like flocking
  • Stiff system like cloth
  • Main contribution!
  • More robust cloth control
  • Adjoint method is theoretically sensitive to
    discontinuities
  • Large amount of collision detection cannot occur.
Write a Comment
User Comments (0)
About PowerShow.com