Human simulation
1 / 49

Human Simulation - PowerPoint PPT Presentation

  • Uploaded on

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.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Human Simulation' - ardara

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
Human simulation

Human Simulation

Keith Thoresz

Suan Yong

April 6, 1999


  • 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.

Why simulating humans is useful
Why simulating humans is useful

  • Ergonomic prototyping

  • Virtual conferencing

  • Interaction in graphical worlds

  • Games

  • Education

  • Training

  • Military/Space/Whatever simulation


  • Biomechanics

    • data for creating dynamic models and motions

  • Robotics

    • control strategies

  • Computer graphics

    • implementation experience

Difficulties in animating humans
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

Animating techniques
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

Procedural methods
Procedural methods

  • High-level control

    • specifying desired motion

  • Control Algorithms

    • control the primary actions (choreography)

  • Low-level Procedures

    • generates the motion (kinematics)


Procedural methods1
Procedural methods

  • High-level control

    • specifying desired motion

  • Control Algorithms

    • control the primary actions (choreography)

  • Low-level Procedures

    • generates the motion (kinematics)

Procedural methods2
Procedural methods

  • High-level control

    • specifying desired motion

  • Control Algorithms

    • control the primary actions (choreography)

  • Low-level Procedures

    • generates the motion (kinematics)

Animating human athletics hodgins et al
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)

Control algorithms
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

Control algorithms1
Control Algorithms

  • state machines connecting phase of behavior to active control laws


ball of foot leaves ground

heel touches ground



knee bends

knee extended

toe contact

heel contact

hip in front of heel

ball of foot touches ground

heel/toe contact

Example running
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

Manual vs automatic generation of control algorithms
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


  • 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

Adapting simulated behaviors hodgins et al
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

Basic method
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


  • 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)



Ankle Thrust


  • 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

Goal directed animation bruderlin et al
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

Keyframe less animation of walking klaw
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

High level control
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

Low level control
Low-level Control

  • Motion broken up into stance and swing phases

Strength guided motion lee et al
Strength-guided Motion(Lee et al)

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

Basic approach
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

Problem specification
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

System design


perceived exertion,


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



Path Planning


Rate Control


Motion strategies
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

Interactive behaviors phillips badler
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

Real time virtual humans badler et al
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.


  • 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

Specifying actions
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

Performing simultaneous actions
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++.


  • 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

Open questions
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?