Animation cs 551 651
This presentation is the property of its rightful owner.
Sponsored Links
1 / 36

Animation CS 551 / 651 PowerPoint PPT Presentation


  • 65 Views
  • Uploaded on
  • Presentation posted in: General

Animation CS 551 / 651. Chenney & Forsyth, 2000. Chenney/Forsyth Paper. Results. Applications Atoms: 200 spheres and 100 water molecules in divided box Cars: 4 multibody vehicles and 400 pendula Robots: 20 eight-link manipulators throwing blocks

Download Presentation

Animation CS 551 / 651

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Animation cs 551 651

AnimationCS 551 / 651

Chenney & Forsyth, 2000

Chenney/Forsyth Paper


Results

Results

  • Applications

    • Atoms: 200 spheres and 100 water molecules in divided box

    • Cars: 4 multibody vehicles and 400 pendula

    • Robots: 20 eight-link manipulators throwing blocks

    • Avalanche: 300 rocks tumbling down mountainside


Results1

Results

  • Note average integration step vs. time between discontinuities


Results2

Results

  • Atoms for 2 seconds

    • Average integration step

      • Conservative advancement slows down


Results3

Results

  • Atoms for 2 seconds

    • Total “work done” per simulated object

      • Retroactive detection repeats a lot of work


Results4

Results

  • Total time

    • 100 atoms

      • RD-1/30 = 0.142, TW = 0.147, CA = 1.15

    • 200 atoms

      • RD -1/30 = 2.61, TW = .388, CA = 4.74


Inspect the title

Inspect the title

  • Sampling

  • Plausible Solutions to

  • Multi-body Constraint Problems

  • What’s the emphasis of this paper?


Randomness

Randomness

  • Many details are ignored by simulations

    • Randomness will replace these details with something that is good enough (plausible)

  • Do you agree?

    • A driving simulator with a random approximation to a bumpy road will better prepare its users for driving on a real road


Randomness1

Randomness

  • Multiple paths is a good thing

    • examples

  • Multiple paths is a bad thing

    • examples


Finding a place for uncertainty

Finding a place for uncertainty

  • Feed-forward simulations

    • Where?

  • Optimal (goal-oriented) simulations

    • What trouble do they cause?


Incorporating uncertainty

Incorporating Uncertainty

  • pw (A) = probability animation A would occur in the world

    • non-negative

    • finite integral over domain

    • unnormalized

  • Example:

    • A ball bounces on flat table i times with

      • normal vector mean at 0 degrees

      • standard deviation 10 degrees


Introducing constraints

Introducing constraints

  • The randomness must not interfere with constraints

    • Examples

    • We now want pw(A | C)

  • The ball must start here and land there

  • The ball must go through this point

  • The initial acceleration must be foo


Ball example

Ball example

  • Evaluating pw(A | C)

Constraints


Animation cs 551

Ball example

  • Evaluating pw(A | C)


Ball example1

Ball example

  • Trial and error is bound to fail

    • Easy to start with constraint satisfaction and insert intermediate bounces (but are they plausible)

    • Easy to model plausible bounces (but will they satisfy constraints)

  • Sampling from pw (A|C) is too difficult


Loosening requirements

Loosening requirements

  • pw(A): probability A occurs in real world

  • p(A): probability A occurs in world with relaxed constraints (maybe not realistic)

    • pc(A) = prob A satisfies constraints

    • Removed conditional probability


Ball example2

Ball example

  • pw(A)

  • pc(A)

Gaussian function definedon final position of ball, d


Ball example3

Ball example

  • Sampling

    • Select animation, A, with high probability

    • Select animation, A, from set with high probabilities


Markov chain monte carlo

Markov Chain Monte Carlo

  • Markov chain

    • Given a sequence of events, the present state is only dependent on the preceding state and independent of the previous states

      • Only the present influences the future

      • The past doesn’t influence the future

      • A random walk (why?)

  • Monte Carlo

    • Using random numbers to solve a problem


Mcmc for animations

MCMC for animations

  • Identify degrees of freedom

    • What variables are you looking to solve for?

      • Normal vectors on table, friction over surface, …

      • The random variables

    • Iteratively search for good values of these variables


Mcmc algorithm

MCMC Algorithm

Compute p(A0)

Use markov model to perturbdegree-of-freedom values from Ai

Compute p(Ac)


Mcmc algorithm1

MCMC Algorithm

How likely is change from

parameters used to generateAc to parameters used for Ai


Ball example4

Ball example

  • Transition probability, q

    • First term = prob of choosing particular set of degrees of freedom to change

    • Second term = prob of choosing any particular value for a degree of freedom

n ball bounces

10 values for normal (+/- 5)


Mcmc algorithm2

MCMC Algorithm

  • Key component

    • propose ( )

      • “designed through intuitive reasoning and experimentation”

      • “use past experience as a guide”


Mcmc algorithm3

MCMC Algorithm

  • Provable feature of algorithm

    • As i inf, samples are true reflection of probability distribution of model

    • Sampling animation from the set of samples produces well-understood plausibility


2d ball

2D Ball

  • Probability function

  • Take the log


2d ball1

2D Ball

  • Lesson learned about standard dev

    • s too small  most animations are improbable because they don’t land in correct place

    • s too large  most animations are probable because they land within landing region but they miss the exact spot

  • Tuning probability function, p(A) is tricky


Bowling

Bowling

  • Degrees of freedom

    • Ball (diameter, initial position, initial velocity, initial angular velocity)

    • Pin (initial position)

  • Constraints

    • Initial pins up, final pins down

  • Lesson learned

    • If constraints are too strict, iterative perturbations will not frequently “jump” from one legal animation to another


Rolling dice

Rolling Dice

  • Normal function (for tabletop)

    • Example from bouncing ball won’t work

      • Nearby points should have similar normals (not independent)

      • Object bouncing in same place should use same normal each time

    • Create “surface” using b-splines

      • Degrees of freedom are control point heights, initial pos

      • Also use restitution and friction values at control points


Rolling dice1

Rolling Dice

  • Lessons learned

    • Creating a good proposal algorithm is difficult

    • Algorithm finds first constraint satisfying animation (in one hour) and has hard time jumping to another satisfying animation (“many” hours)


Rolling dice2

Rolling Dice

  • Constraints

    • Any position/orientation at any time


Review

Review

  • What’s easy about this?

    • Getting a simulation

    • Selecting some degrees of freedom

    • Building the MCMC algorithm


Review1

Review

  • What’s difficult?

    • Building p(A|C) function

      • Tuning bouncing ball standard deviation

      • Authors used Gibbs distribution function to assist

    • Building proposal function

      • Dice example had simple proposal algorithm


Review2

Review

  • What’s difficult

    • This is a search problem

      • Global vs. local search

      • Requires infinite samples to be perfect

        • Simulation time and search space size are realistic constraints on feasibility


Big picture

Big Picture

  • How to synthesize animations that accomplish specific goals

    • Keyframing

    • Simulation

    • Motion capture

  • Data-driven simulation is a compromise


Next class

Next Class

  • Hodgins, O’Brien, Tumblin. Perception of Human Motion with Different Geometric Models.


  • Login