SlideShare a Scribd company logo
Near-optimal Character Animation with Continuous ControlAdrienTreuille, Yongjoon Lee, ZoranPopović2008.10.14  HA SE HOON
PrerequisiteIntroductionRelated WorksMotion ModelControlPoliciesResultsConclusionOutline
Motion GraphA directed graph to synthesize a new motionNode = PoseEdge = Motion ClipWe already discussed in 4th presentation“Group Motion Graph”, Yu-Chi Lai, Stephen Chenney, ShaoHua FanPresented by Heo Jae PilWe will use a similar but different method!Prerequisite #1: Motion GraphShort MotionRunningJumpingWalkingFBASShort MotionShort MotionNShort MotionDrawn by Heo Jae Pil
A sub-area of machine learningHow agent should take action?Goal: Maximize rewardModel of  reinforcement learningA set of environment states SA set of action AA set of scalar reward in RWe will use reinforcement learning to find a near-optimal actionPrerequisite #2: Reinforcement Learning
Finding a “near optimal” character animationWith real-time continuous controllerTasksNavigation (Walking)Spinning NavigationFixed Object Avoidance (FOA)Moving Object Avoidance (MOA)Introduction: The goal of the paperReal Time Continuous Controller(Arrows under the char.)
You should know…How to represent motions, states, policiesHow to blend motion clipsHow to define the cost functionHow to find the near optimal policyIntroduction
Motion Graph KOVAR, L., GLEICHER, M., AND PIGHIN, F. 2002Motion synthesis from annotationsARIKAN, O., FORSYTH, D. A., AND O’BRIEN, J. F. 2003Precomputing avatar behavior from human motion dataLEE, J., AND LEE, K. H. 2004Related Works
A set of motion clips СOne of each clip C = (p1, p2, …, pm)Each pose p = ℝnA Vector specifying all joint positionsMotion Model: Definition of terms
Motion Model:Motion ClipsAssumption: A clip C represents one walk cycleConstraint frames: (b) for Cin, (d) for CoutCinCoutDivided into two subsequences Cin and CoutEach subsequence covers one foot plant frameThis frame became a ‘constraint’ frame
Allow any transition between two clipsUnlike “motion graph”!AlgorithmStep 1: C is mirrored if necessaryStep 2: Overlap constraint frames of Cout and C’inStep 3: Rotate C’ to match its foot   (C’ is reoriented so that its ground-contact foot coincides with that of C)Step 4: Blend Cout to C’in(With ground-contact foot as the root of kinematic skeleton)Motion Model: Blending motion clips
Motion Model: Example of motion blendingConstraint frames (foot-planted frames)Prevent foot-skating!!!            Why?
Control: Goal tasksNavigationSpinning NavigationUser controls gait, path, torso orientation(example of gait: walking, running,…)User controls the motion direction as character spinsFixed Obstacle AvoidanceMoving Obstacle AvoidanceThe character follows a line, avoiding fixed planar objectThe character follows a line, avoiding fixed planar object with linear motion
State XC: current clipx, z, Ɵ : position and orientationu, v, u’, v’: relative position and speed of obstacleG, T, W: desired Gait, Torso Orientation, SpinControl: Definition of the stateIntention of user
Transition function f: S x C  SX = (C, …)  X’ = (C’, …)Control: Transition function
State Cost Cs: S  ℝIf current clip is not desired gait then Cs(X) = ∞(If X = (C, …) but C ∉ G, then Cs(X) = ∞)Transition Cost Ct : S x S  ℝControl: CostsWeights of each term.
Policy ∏ : S  CDecide next clip C from given state SThen we can move to next state S’ with transition function f(X, C)  X’ (X/X’ = current/next state)Policies: DefinitionDefinition of state and transition function
Greedy Policy ∏greedyFind the clip that minimize the cost!Just look one stateBut we should consider the following case:Policies: Greedy Policy
We will minimize the entire costTaking into account the futureRedefine the cost functionFor given some policy ∏ that produces (X1, X2, … Xn)α ∈ [0, 1) : future uncertainty factorPolicies: Optimal Policy
Value function V: S  ℝLong term cost under optimal policy ∏*V(X) = C∏*(X)Def: Optimal policy isThus, if we can calculate value function V(X), We can find long-term optimal next state!Policies: Value function
Now issue is approximation of V(X)Linear approximation of basis functionsBasis functions Ф = (Ф1, Ф2, … ,Фn)Each basis functions Ф : S  RPolynomials or GaussiansThen, Approximation of V isBasis functions are pre-selected by human!So, how can we calculate weights r1, r2, … rn?Policies: Near optimal policy
Draw set of sample clipsInit state transition pairs                and rDef: r = a vector of weights (r1, r2, … rn)Step1X’ is the optimal next state from X under current VStep 2Recalculate r by solving the linear programPolicies: Near optimal policy (Algorithm)
Policies: Near optimal policy
SwitchabilitySwitching between tabulated value functionWhen transition from a walking to a running, the algorithm still picks near-optimalSeperabilityLearn separate value function for each taskEx) MOA and FOAPolicies: Dimensionality
Let’s see the videoResults
Presents a new control modelHigh dimensionalContinuousReal timeNear optimalBut…Needs a large amount of databaseConclusion
Any question?

More Related Content

PPT
Lecture03
PPT
Limit theorem.
PPT
Lecture09
PPTX
Website friction
PPT
Grade 11, U1C-L2, Rel Mot
PPT
Continuity Editing
PPT
PPT
Grade 11, U1A-L7, Average Accel while Turning
Lecture03
Limit theorem.
Lecture09
Website friction
Grade 11, U1C-L2, Rel Mot
Continuity Editing
Grade 11, U1A-L7, Average Accel while Turning

What's hot (11)

PPT
Moment
PPT
05 kinematics in two dimension
PPTX
Differential kinematics robotic
PDF
6161103 4.4 principles of moments
PPT
MECHANICS ENGINEERING - Equilibrium
PDF
6161103 8.3 wedges
PPTX
2d and 3d motion
PPT
Denavit hartenberg convention
PPT
Continuity Editing Powerpoint
PPT
Kinematics
PPTX
Free fall motion-part 1
Moment
05 kinematics in two dimension
Differential kinematics robotic
6161103 4.4 principles of moments
MECHANICS ENGINEERING - Equilibrium
6161103 8.3 wedges
2d and 3d motion
Denavit hartenberg convention
Continuity Editing Powerpoint
Kinematics
Free fall motion-part 1
Ad

Viewers also liked (10)

DOC
cs-project.doc
DOCX
2009 HEP Science Network Requirements Workshop Final Report
PPT
What s an Event ? How Ontologies and Linguistic Semantics ...
DOC
mingdraft2.doc
PPTX
Automatic Hypernym Classification: Towards the Induction of ...
PPT
What s an Event ? How Ontologies and Linguistic Semantics ...
DOCX
JENIS – JENIS SISTEM OPERASI PADA KOMPUTER DAN HANDPHONE NAMA ...
PPTX
Noshir Contractor - WebSci'09 - Society On-Line
PPT
Introduction to Machine Learning Aristotelis Tsirigos
PPTX
Automatic Hypernym Classification: Towards the Induction of ...
cs-project.doc
2009 HEP Science Network Requirements Workshop Final Report
What s an Event ? How Ontologies and Linguistic Semantics ...
mingdraft2.doc
Automatic Hypernym Classification: Towards the Induction of ...
What s an Event ? How Ontologies and Linguistic Semantics ...
JENIS – JENIS SISTEM OPERASI PADA KOMPUTER DAN HANDPHONE NAMA ...
Noshir Contractor - WebSci'09 - Society On-Line
Introduction to Machine Learning Aristotelis Tsirigos
Automatic Hypernym Classification: Towards the Induction of ...
Ad

Similar to Near-optimal Character Animation with Continuous Control (20)

PDF
Motion and tracking
PPT
Random tripleb nov05
PPTX
Human expression mapping on robot xin ren
DOCX
PHYS1101 Physics I.docx
PPT
Mechanics
PDF
Acceleration
PDF
A Bionic gait programming algorithm for Hexapod Robot
PPT
Robotics: Introduction to Kinematics
PPT
Finete Element
DOC
Last docx
PPT
Grade 11, U1A-L1, Introduction to Kinematics
PDF
Seth Hutchinson - Progress Toward a Robotic Bat
PPT
Action Recognition (Thesis presentation)
PDF
Formato guía10
PDF
DETECTION OF MOVING OBJECT
PDF
Introduction to Computer Animation using Computer Graphics Techniques
PPT
Chapter1
PDF
simuliton of biped walkinng robot using kinematics
PPT
Motion and tracking
Random tripleb nov05
Human expression mapping on robot xin ren
PHYS1101 Physics I.docx
Mechanics
Acceleration
A Bionic gait programming algorithm for Hexapod Robot
Robotics: Introduction to Kinematics
Finete Element
Last docx
Grade 11, U1A-L1, Introduction to Kinematics
Seth Hutchinson - Progress Toward a Robotic Bat
Action Recognition (Thesis presentation)
Formato guía10
DETECTION OF MOVING OBJECT
Introduction to Computer Animation using Computer Graphics Techniques
Chapter1
simuliton of biped walkinng robot using kinematics

More from butest (20)

PDF
EL MODELO DE NEGOCIO DE YOUTUBE
DOC
1. MPEG I.B.P frame之不同
PDF
LESSONS FROM THE MICHAEL JACKSON TRIAL
PPT
Timeline: The Life of Michael Jackson
DOCX
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
PDF
LESSONS FROM THE MICHAEL JACKSON TRIAL
PPTX
Com 380, Summer II
PPT
PPT
DOCX
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
DOC
MICHAEL JACKSON.doc
PPTX
Social Networks: Twitter Facebook SL - Slide 1
PPT
Facebook
DOCX
Executive Summary Hare Chevrolet is a General Motors dealership ...
DOC
Welcome to the Dougherty County Public Library's Facebook and ...
DOC
NEWS ANNOUNCEMENT
DOC
C-2100 Ultra Zoom.doc
DOC
MAC Printing on ITS Printers.doc.doc
DOC
Mac OS X Guide.doc
DOC
hier
DOC
WEB DESIGN!
EL MODELO DE NEGOCIO DE YOUTUBE
1. MPEG I.B.P frame之不同
LESSONS FROM THE MICHAEL JACKSON TRIAL
Timeline: The Life of Michael Jackson
Popular Reading Last Updated April 1, 2010 Adams, Lorraine The ...
LESSONS FROM THE MICHAEL JACKSON TRIAL
Com 380, Summer II
PPT
The MYnstrel Free Press Volume 2: Economic Struggles, Meet Jazz
MICHAEL JACKSON.doc
Social Networks: Twitter Facebook SL - Slide 1
Facebook
Executive Summary Hare Chevrolet is a General Motors dealership ...
Welcome to the Dougherty County Public Library's Facebook and ...
NEWS ANNOUNCEMENT
C-2100 Ultra Zoom.doc
MAC Printing on ITS Printers.doc.doc
Mac OS X Guide.doc
hier
WEB DESIGN!

Near-optimal Character Animation with Continuous Control

  • 1. Near-optimal Character Animation with Continuous ControlAdrienTreuille, Yongjoon Lee, ZoranPopović2008.10.14 HA SE HOON
  • 3. Motion GraphA directed graph to synthesize a new motionNode = PoseEdge = Motion ClipWe already discussed in 4th presentation“Group Motion Graph”, Yu-Chi Lai, Stephen Chenney, ShaoHua FanPresented by Heo Jae PilWe will use a similar but different method!Prerequisite #1: Motion GraphShort MotionRunningJumpingWalkingFBASShort MotionShort MotionNShort MotionDrawn by Heo Jae Pil
  • 4. A sub-area of machine learningHow agent should take action?Goal: Maximize rewardModel of reinforcement learningA set of environment states SA set of action AA set of scalar reward in RWe will use reinforcement learning to find a near-optimal actionPrerequisite #2: Reinforcement Learning
  • 5. Finding a “near optimal” character animationWith real-time continuous controllerTasksNavigation (Walking)Spinning NavigationFixed Object Avoidance (FOA)Moving Object Avoidance (MOA)Introduction: The goal of the paperReal Time Continuous Controller(Arrows under the char.)
  • 6. You should know…How to represent motions, states, policiesHow to blend motion clipsHow to define the cost functionHow to find the near optimal policyIntroduction
  • 7. Motion Graph KOVAR, L., GLEICHER, M., AND PIGHIN, F. 2002Motion synthesis from annotationsARIKAN, O., FORSYTH, D. A., AND O’BRIEN, J. F. 2003Precomputing avatar behavior from human motion dataLEE, J., AND LEE, K. H. 2004Related Works
  • 8. A set of motion clips СOne of each clip C = (p1, p2, …, pm)Each pose p = ℝnA Vector specifying all joint positionsMotion Model: Definition of terms
  • 9. Motion Model:Motion ClipsAssumption: A clip C represents one walk cycleConstraint frames: (b) for Cin, (d) for CoutCinCoutDivided into two subsequences Cin and CoutEach subsequence covers one foot plant frameThis frame became a ‘constraint’ frame
  • 10. Allow any transition between two clipsUnlike “motion graph”!AlgorithmStep 1: C is mirrored if necessaryStep 2: Overlap constraint frames of Cout and C’inStep 3: Rotate C’ to match its foot (C’ is reoriented so that its ground-contact foot coincides with that of C)Step 4: Blend Cout to C’in(With ground-contact foot as the root of kinematic skeleton)Motion Model: Blending motion clips
  • 11. Motion Model: Example of motion blendingConstraint frames (foot-planted frames)Prevent foot-skating!!! Why?
  • 12. Control: Goal tasksNavigationSpinning NavigationUser controls gait, path, torso orientation(example of gait: walking, running,…)User controls the motion direction as character spinsFixed Obstacle AvoidanceMoving Obstacle AvoidanceThe character follows a line, avoiding fixed planar objectThe character follows a line, avoiding fixed planar object with linear motion
  • 13. State XC: current clipx, z, Ɵ : position and orientationu, v, u’, v’: relative position and speed of obstacleG, T, W: desired Gait, Torso Orientation, SpinControl: Definition of the stateIntention of user
  • 14. Transition function f: S x C  SX = (C, …)  X’ = (C’, …)Control: Transition function
  • 15. State Cost Cs: S  ℝIf current clip is not desired gait then Cs(X) = ∞(If X = (C, …) but C ∉ G, then Cs(X) = ∞)Transition Cost Ct : S x S  ℝControl: CostsWeights of each term.
  • 16. Policy ∏ : S  CDecide next clip C from given state SThen we can move to next state S’ with transition function f(X, C)  X’ (X/X’ = current/next state)Policies: DefinitionDefinition of state and transition function
  • 17. Greedy Policy ∏greedyFind the clip that minimize the cost!Just look one stateBut we should consider the following case:Policies: Greedy Policy
  • 18. We will minimize the entire costTaking into account the futureRedefine the cost functionFor given some policy ∏ that produces (X1, X2, … Xn)α ∈ [0, 1) : future uncertainty factorPolicies: Optimal Policy
  • 19. Value function V: S  ℝLong term cost under optimal policy ∏*V(X) = C∏*(X)Def: Optimal policy isThus, if we can calculate value function V(X), We can find long-term optimal next state!Policies: Value function
  • 20. Now issue is approximation of V(X)Linear approximation of basis functionsBasis functions Ф = (Ф1, Ф2, … ,Фn)Each basis functions Ф : S  RPolynomials or GaussiansThen, Approximation of V isBasis functions are pre-selected by human!So, how can we calculate weights r1, r2, … rn?Policies: Near optimal policy
  • 21. Draw set of sample clipsInit state transition pairs and rDef: r = a vector of weights (r1, r2, … rn)Step1X’ is the optimal next state from X under current VStep 2Recalculate r by solving the linear programPolicies: Near optimal policy (Algorithm)
  • 23. SwitchabilitySwitching between tabulated value functionWhen transition from a walking to a running, the algorithm still picks near-optimalSeperabilityLearn separate value function for each taskEx) MOA and FOAPolicies: Dimensionality
  • 24. Let’s see the videoResults
  • 25. Presents a new control modelHigh dimensionalContinuousReal timeNear optimalBut…Needs a large amount of databaseConclusion