49
Human Simulation Keith Thoresz Suan Yong April 6, 1999

Human Simulation Keith Thoresz Suan Yong April 6, 1999

Embed Size (px)

Citation preview

Page 1: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Human Simulation

Keith ThoreszSuan Yong

April 6, 1999

Page 2: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Papers

• J. Hodgins, W. Wooten, D. Brogan, and J. O'Brien. Animating Human Athletics. SIGGRAPH '95.

• J. Hodgins and N. Pollard, 1997. Adapting Simulated Behaviors For New Characters, SIGGRAPH 97 Proceedings, Los Angeles, CA.

• Bruderlin and Calvert. Goal-Directed, Dynamic Animation of Human Walking. Proceedings SIGGRAPH '89.

• Lee, Wei, Zhao, and Badler. Strength Guided Motion. SIGGRAPH '90.

• Phillips and Badler. Interactive Behaviors for Bipedal Articulated Figures. SIGGRAPH '91.

• N. Badler, R. Bindiganavale, J. Bourne, J. Allbeck, J. Shi and M. Palmer. "Real time virtual humans," International Conference on Digital Media Futures, Bradford, UK, April 1999.

Page 3: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 4: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Why simulating humans is useful

- Ergonomic prototyping- Virtual conferencing- Interaction in graphical worlds- Games- Education- Training- Military/Space/Whatever simulation

Page 5: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Background

• Biomechanics– data for creating dynamic models and motions

• Robotics– control strategies

• Computer graphics– implementation experience

Page 6: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Difficulties in Animating Humans

- Natural motions almost impossible to create computationally (the problem)

- Large search spaces for underconstrained scenarios

- Physical realism requires complex models- Fine control vs. tedious manual work- How to specify controls/constraints intuitively

Page 7: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Animating Techniques• Keyframing

+ detailed control– tedious

• Procedural Methods+ can be physically correct, high-level control– unnatural motions, difficult to create

• Motion Capture+ natural motions– inflexible

Page 8: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Procedural methods

vault

• High-level control– specifying desired motion

• Control Algorithms– control the primary actions (choreography)

• Low-level Procedures– generates the motion (kinematics)

Page 9: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Procedural methods• High-level control

– specifying desired motion• Control Algorithms

– control the primary actions (choreography)• Low-level Procedures

– generates the motion (kinematics)

Page 10: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Procedural methods• High-level control

– specifying desired motion• Control Algorithms

– control the primary actions (choreography)• Low-level Procedures

– generates the motion (kinematics)

Page 11: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 12: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Animating Human Athletics(Hodgins et al)

• Dynamic simulation of human motion– Running– Cycling– Vaulting

• Control algorithms– state machines that describe each specific

motion• Toolbox of motions (control algorithms)

Page 13: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Control Algorithms

- Control the primary actions using equations for motion

- Basic process: (for each time step)- calculate joint positions and velocities- compute joint torque (with proportional-derivative

servos); - integrate equations of motion

- Hand designed and tuned

Page 14: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Control Algorithms

• state machines connecting phase of behavior to active control laws

flight

heel contacttoe contact

loadingunloading

heel/toe contact

knee extended

ball of foot leaves ground

hip in front of heel

heel touches ground

ball of foot touches ground

knee bends

Page 15: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Example: Running

- Ground speed matching- reduces disturbance due to foot touchdown

- Hand tuning of arms to produce natural looking gait- Control algorithms modified (by hand) when path is

a curve- User-specified input

- forward velocity- desired path

Page 16: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Manual vs. Automatic Generation of Control Algorithms

• Manual:- requires vast knowledge of control techniques,

human dynamics, etc.- tedious

• Automatic- reduces animator’s work- expensive, harder to implement, impractical- usually lacks natural look

Page 17: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Summary

- Advantages- produce physically correct/realistic motions- easy to create simulated motion- can easily create similar motions

- Disadvantages- robust algorithms difficult to create- require detailed knowledge of the system- computational expense grows with constraints- generally accurate only for one complete action

Page 18: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 19: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 20: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 21: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 22: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Adapting Simulated Behaviors(Hodgins et al)

• Goal: fit a simulated motion from one model to another– simulated motion represented as control

algorithms• This is not a trivial task

– models may have different geometries– simple geometric scaling is not enough

Page 23: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Basic Method

• Approximate new control system– scale control parameters (e.g. size, masses,

moments etc)• Fine-tune control system

– search for a control system with good steady-state behavior

– use simulated annealing

Page 24: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Scaling

• Geometric scaling– joint angles, position/orientation, forward velocity, etc– “Good” scale ratio must be found (e.g. leg length for

running)• Mass Scaling

– requires selection of relevant body segments (based on knowledge of behavior)

Page 25: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Tuning

- Implemented as a search over the reduced space.- Optimization Criteria: ground speed matching, body pitch,

timing of thrust, extension of ankle and knee- Search space contains large number of local minima

use simulated annealing- Tuning done in steps of different scales to reduce step

sizes

Ankle Thrust

Eval

uatio

n

Page 26: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 27: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 28: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 29: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Goal-directed Animation(Bruderlin et al)

• Humans and animals are goal-oriented– motions are specified as goals, then translated

into joint movements, etc.• Idea: Combine dynamic motion control with goal-

directed motion control– simplifies the work of animating– less detail needed to define a motion compared

to keyframing

Page 30: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Keyframe-Less Animation of Walking(KLAW)

• Levels of control:- Desired motion (goal) = high-level control- Control algorithms (kinematics) and gait

refinements• Motion equations are Lagrangian• Dynamic model assumes constant segment masses

and symmetrical segments

Page 31: Human Simulation Keith Thoresz Suan Yong April 6, 1999

High Level Control

- Three fundamental locomotion parameters:- forward velocity- step length- step frequency

- Decomposed into state-phase timings and symmetry of steps

- Passed as step constraints to low-level control

Page 32: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Low-level Control

• Motion broken up into stance and swing phases

Page 33: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 34: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Strength-guided Motion(Lee et al)

• Idea: Use strength, comfort, and perceived exertion as heuristics for optimizing movement

Page 35: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Basic Approach

- strength model used as optimality criterion for control algorithms and path decisions.

- comfort region dictated by muscular strength- task paths chosen by system, not animator (i.e.

keyframing)- plans short paths toward the goal based on desired

action

Page 36: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Problem specification

• Comfort level for each joint given by max torque ratio (current torque divided by max torque for current position and velocity)

• Perceived exertion: expected level of difficulty in completing a task; perception of amount of strength required

• Strength model: maximum achievable joint torque based on muscle groups– Muscle group strength depends on body position,

gender, handedness, fatigue, etc

Page 37: Human Simulation Keith Thoresz Suan Yong April 6, 1999

System Design

- Condition Monitor: monitors body state (positions, max strength, torques, etc.) and suggests motion strategies to PPS

- Path Planning Scheme (PPS): plans end effector movements;- must not violate strength constraints- tradeoff between reaching goal and avoiding

straining the model

- Rate Control Process (RCP): determines joint rates for motion

ConditionMonitor

Path PlanningScheme

Rate ControlProcess

comfort,perceived exertion,

etc

Page 38: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Motion Strategies

- Available torque (available strength): people tend to move stronger joint.

- Reducing moment: avoids further stress while trying to reach goal (increases available torque)

- Pull back: retract when a joint reaches max strength; leads to a stable configuration (posture that a set of joints should form in order to withstand large forces)

- Recoil and jerk: similar to a weight lifter recoiling legs; jerk reduces forces necessary to complete a task for the set of active joints

Page 39: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 40: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Interactive Behaviors(Phillips, Badler)

• Approach:– Specify constraints on parts of the figure– Constraints determine end-effector positions– Use Inverse Kinematics to computes motion

(joint angles)• Important constraints identified for bipedal

articulated figures:– the feet: position relative to the ground– center of mass and balance: to maintain balance

Page 41: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 42: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Real-time Virtual Humans(Badler et al)

• Idea: Motions for animated humans can be described at a high-level using natural language.

• Scenes and motions can be more complicated if computed in parallel.

Page 43: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Goals

- What should Virtual Humans be capable of doing?- Playing a stored motion sequence- Posture changes and balance adjustments- Reaching, grasping, locomoting, looking- Facial expressions- Physical force- or torque-induced movements

(jumping, falling, swinging)- Blending (coarticulating) one movement into the

next one

Page 44: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Specifying Actions

• Parameterized Action Representation (PAR)- Natural language representation for specifying

motions and dynamics- Parameterized because the action depends on its

participants (agents, object, etc.)- Output fed to PaT-Net

Page 45: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Performing Simultaneous Actions

• Parallel Transition Networks (PaT-Nets)- Provides a non-linear animation model that

enables simultaneous control over body motions as well as interaction between characters and their environments.

- Effective, but must be hand-coded in Lisp or C++.

Page 46: Human Simulation Keith Thoresz Suan Yong April 6, 1999
Page 47: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Conclusions

• The state of the art still falls short of expectations• Procedural methods for creating human motion are

difficult to design, and seldom look realistic• Control algorithms are specific to one action, and

must be recoded for new actions– actions that seem related, e.g. walking and

running, are physically very different– automatic methods exist, but hand coding

produces more natural looking results

Page 48: Human Simulation Keith Thoresz Suan Yong April 6, 1999

Open Questions

• Transitioning between unrelated motions– e.g. between walk and run

• What are the characteristics of human motion that current systems are unable to simulate?– is this worth pursuing?– is Motion Capture a more viable alternative?

• How to simulate high-level behaviors such as personality?

Page 49: Human Simulation Keith Thoresz Suan Yong April 6, 1999

The End