Precomputed Search Trees: Planning for Interactive Goal-Driven Animation Manfred Lau and James...
-
date post
19-Dec-2015 -
Category
Documents
-
view
220 -
download
3
Transcript of Precomputed Search Trees: Planning for Interactive Goal-Driven Animation Manfred Lau and James...
Precomputed Search Trees: Planning for Interactive Goal-Driven
Animation
Manfred Lau and James KuffnerCarnegie Mellon University
Motion Planning approach
Inputs Output
Behavior Planner
Lau and Kuffner. “Behavior Planning for Character Animation.” SCA 05
Motivation
Efficient algorithm for: large number of characters global planning re-plan continuously in real-
time dynamic environment complex motions including
jump, crawl, duck, stop-and-wait
Main contribution
Precomputed Search Tree
Traditional Planning
~50,000 μs for 1 s of motion
Precomputed Search Trees
~250 μs for 1 s of motion
Overview
FSM
Environment
Overview
Precompute
FSM
Environment
1) Search Tree
Overview
FSM
Environment
Precompute
2) Gridmaps
Overview
FSM
EnvironmentPrecompute
1) Search Tree
2) Gridmaps
Runtime
Overview
FSM
EnvironmentPrecompute
1) Search Tree
2) Gridmaps
Runtime
1) Map Obstacles
Overview
FSM
EnvironmentPrecompute
1) Search Tree
2) Gridmaps
Runtime
1) Map Obstacles
2) Path Finding
Overview – Distant Goal
Coarse-Level Planner
Overview – Distant Goal
Coarse-Level Planner Repeatedly select sub-goaland run each sub-case
Related Work
Motion PlanningKuffner 98Shiller et al. 01Bayazit et al. 02Choi et al. 03Pettre et al. 03Sung et al. 05
Koga et al. 94Kalisiak and van de Panne 01Yamane et al. 04
Choi et al. 03GlobalNavigation
Manipulation andwhole-body motions
Related Work
PrecomputationLee and Lee 04Reitsma and Pollard 04
Re-playing original motion capture dataArikan and Forsyth 02Kovar et al. 02Lee et al. 02Pullen and Bregler 02Gleicher et al. 03Lee et al. 06
Lee and Lee 04
Kovar et al. 02
Related Work
Motion Vector Fields / Steering ApproachesBrogan and Hodgins 97Menache 99Reynolds 99Mizuguchi et al. 01Treuille et al. 06
Treuille et al. 06
Advantages of our approach
Precomputed Search Trees: many characters re-plan
continuously in real-time global planning – as
opposed to local policy methods
complex motions – jump, crawl, duck, stop-and-wait
one tree – can be used for all characters, and different environments
Environment Representation
Obstacle Growth in Robot Path PlanningUdupa 77Lozano-Pérez and Wesley 83
Special regionsfor crawl/jump
Behavior Finite-State Machine
Precompute
1) Search Tree
2 levels, 3 behavior states
Precompute
1) Search Tree
Precompute
1) Search Treerepresents all states reachable from current state
5 levels, 7 behavior states
Precompute
1) Search Tree – Pruned to ~10 MB
exhaustive pruned
Precompute
2) Environment Gridmapused to identify the tree nodes that are blocked by obstacles
Precompute
2) Goal Gridmapused to efficiently extract all paths that reach goal from start state
Runtime
1) Map obstacles to Environment Gridmap
Runtime
1) Map obstacles to Environment Gridmap
Runtime
2) Path Finding – reverse path lookup (vs. forward search)
Runtime2) Path Finding – take shortest path that reaches goal
21
3
root
obstacle
Runtime2) Path Finding – take shortest path that reaches goal
Runtime2) Path Finding – take shortest path that reaches goal
Motion Generation / Blending
Sequence of behaviors converted to actual motion
Blending at frames near transition pointsLinearly interpolate root positionsSmooth-in, smooth-out slerp interpolation for joint rotations
Planning to distant goals
Only up to specific level
Intermediate goal points
Apply precomputed tree repeatedly
Intermediate goal points
Apply precomputed tree repeatedly
Intermediate goal points
Apply precomputed tree repeatedly
Distant goal example
Run coarse bitmap planner first
Distant goal example
Find sub-goal Run sub-case
Distant goal example
Find sub-goal Run sub-case
Distant goal example
Final solution
Distant goal example
Final solution
Result – speedup
Precomputed Trees A*-search
Avg. runtime or 3,131 550,591search time (μs) 176 times faster
Avg μs per frame 7.95 1,445Avg pathcost 361 357
Avg time of synthesized 13,123,333 12,700,000motion (μs)
Real-time speedup 4,191 times 23 times
Effect of using less memory for Precomputed Tree
80
85
90
95
100
105
110
115
120
1 10 100 1000
Memory for Precomputed Tree (MB)
Pat
h C
ost
(N
orm
aliz
ed t
o 1
00)
Tradeoff: Motion Quality vs. Memory
exhaustive tree
Single Character Mode
complete solution path for one character continuously re-generated, as the user changes environment
large environment (70 by 70 meters), takes 6 ms to generate full path
Multiple Character Mode
execute “runtime path finding” phase only after we start rendering the first frame from the previous partial path
precompute blend frames (~20 motion clips), precompute all pairs
separate gridmaps for collision avoidance between characters
same precomputed tree for all characters
Summary
Advantages of our approach: large number of characters global planning re-plan continuously in real-
time complex environment complex motions
Precomputed Search Tree
Summary
Advantages of our approach: large number of characters global planning re-plan continuously in real-
time complex environment complex motions
Precomputed Search Tree
Thank you! Questions.