Safe Execution of Bipedal Walking Tasks from Biomechanical Principles Andreas Hofmann Cognitive Robotics – 04/27/2005
Introduction
Problem: For agile, underactuated systems, can’t ignore dynamics
Introduction Problem: For agile, underactuated systems, can’t ignore dynamics
Introduction Problem: For agile, underactuated systems, can’t ignore dynamics Problem: No notion of task plan, little flexibility to disturbances
Introduction Gap: Large class of problems that require -ability to execute task-level plans -flexibility to disturbances during this execution -taking into account dynamic limitations; understanding relationship between acceleration limits, and time needed to achieve state-space goals
Challenging case – Bipedal Machines Walk from location A to B in 30 seconds Must be strong, fast enough
Challenging case – Bipedal Machines Walk from location A to B in 30 seconds Must be strong, fast enough Should not fall, even if disturbed
Challenging case – Bipedal Machines Should not fall, even if disturbed
Challenging case – Bipedal Machines Should not fall, even on shaky ground
Challenging case – Bipedal Machines Should not fall, even on shaky ground
Challenging case – Bipedal Machines Should not fall, even on shaky ground But there are limits!
Problem Statement What balance strategies do humans use? How can we build an autonomous system that –Understands qualitative walking task specifications –Translates such specifications into control actions –Rejects significant disturbances?
Humans use Three Balance Strategies Stance ankle torque
Humans use Three Balance Strategies Stance ankle torque Stepping
Humans use Three Balance Strategies Stance ankle torque Stepping
Humans use Three Balance Strategies Stance ankle torque Stepping Movement of non-contact segments
Humans use Three Balance Strategies Stance ankle torque Stepping Movement of non-contact segments
Humans use Three Balance Strategies Stance ankle torque Stepping Movement of non-contact limbs
Approach – walking task spec Qualitative State Plan
Computing torques to achieve a particular state goal is challenging
Hybrid executive and multivariable controller
Hybrid executive coordinates controllers to sequence plant through poses in qualitative state plan
Multivariable controller makes state plan quantities, like CM, directly controllable allows hybrid executive to control CM by adjusting linear gain parameters
Maximizing tubes maximizes robustness to disturbances Hybrid executive Synthesizes dedicated controller for each qualitative pose Rather than generating specific reference trajectories, generates “tubes” of valid operating regions
Approach Summary To enhance balancing ability, use all 3 strategies To simplify task specification, use qualitative state plan To translate specification into actions, use model-based executive –Hybrid executive to sequence –Multivariable controller to decouple, linearize To provide robustness, compute regions of operation, not just nominal trajectories
Innovations of Approach Previous Approach Uses primarily first strategy [Hirai, 1997]
Innovations of Approach Previous ApproachInnovation Uses primarily first strategy Use all three strategies
Innovations of Approach Previous ApproachesInnovation Use primarily first strategy Use all three strategies Detailed actuated trajectory spec.
Innovations of Approach Previous ApproachesInnovation Use primarily first strategy Use all three strategies Detailed trajectory spec. Higher-level spec – Get to goal by specific time Qualitative specification - Dividing range of values of state variables into regions of interest [Williams, 1986]
Innovations of Approach Previous ApproachesInnovation Use primarily first strategy Use all three strategies Detailed trajectory spec. Higher-level spec – Get to goal by specific time, using common gait
Innovations of Approach Previous ApproachesInnovation Use primarily first strategy Use all three strategies Detailed actuated trajectory spec. Qualitative state trajectory spec.
Innovations of Approach Previous ApproachInnovation Uses primarily first strategy Use all three strategies Use detailed trajectory spec.Use flexible trajectory spec. - Compute tubes [Sacks, 1987], [Bradley and Zhao, 1993]
Innovations of Approach Previous Approach – exploits waits [Morris, 2001]
Innovations of Approach Previous ApproachInnovation Underactuated system - Control epochs have no equilibrium point (no ability to wait)
Innovations of Approach Previous ApproachInnovation Define continuous goal region in position/velocity state space Find feasible range of times for presence in goal region
Innovations of Approach Previous ApproachInnovation Offline planning to generate detailed trajectories Compilation of state-space and temporal requirements into control bounds Executive adjusts control parameters within bounds Compilation efficiency through use of a novel metric
Innovations of Approach Previous ApproachInnovation Offline planning to generate detailed trajectories
Roadmap Analysis of three balance strategies Model-based executive Discussion
Analysis of three balance strategies Study of human trial data Which balance strategies are used during normal walking? Are there simplifying relations that are useful for control?
Angular momentum tightly conserved During normal walking [Popovic, Hofmann, and Herr, 2004] Using strategies 1 and 2, not 3 Ground reaction force vector points from ZMP through CM
Angular momentum tightly conserved During normal walking [Popovic, Hofmann, and Herr, 2004] Using strategies 1 and 2, not 3 Horizontal ZMP can be used to accelerate horizontal CM ZMP can be thought of as control input
Angular momentum tightly conserved During normal walking [Popovic, Hofmann, and Herr, 2004] Using strategies 1 and 2, not 3 Approximate using spring constant
Validation of approximation Lateral ZMP: prediction in red, average over 7 trials in green, standard deviation bounds in black and blue
Horizontal CM accelerated by horizontal ZMP ZMP bounded by support polgon –Imposes controllability limit
Horizontal CM accelerated by horizontal ZMP ZMP bounded by support polgon –Imposes controllability limit What if this isn’t enough? –What if more horizontal force is needed, but foot placement can’t be changed?
Non-conservation of Angular Momentum (Strategy 3) How is lateral restoring force achieved?
Non-conservation of Angular Momentum (Strategy 3) Orbital torque can be used to move COM –Use spin torque to get extra orbital torque (beyond max provided by ankle torque) –But, there are limits to how long and how hard
Centroidal Moment Point (CMP)
How large is stability reservoir? Analyze using simplified model [Popovic, Hofmann, and Herr, 2004] (Humanoids) Limited by maximum effective angle –Effective angle is integral of angular momentum –Summarizes rotational state about CM From rest, maximum excursion is 0.2m Base of support limited to 0.05m
Stepping to absorb lateral disturbance Simplified model, similar to [Goswami, 1996], but emphasis on reduction of lateral movement Determine ideal foot placement to absorb disturbance (strategy 2) –e.g. what foot placement will bring lateral CM movement to stop? (Vertical momentum dissipated)
Simplified Stepping Model How to absorb remaining lateral kinetic energy? –Lateral force (forward leg acts as damper), or –Continue to pose C
Roadmap Analysis of three balance strategies Model-based executive –Detailed problem formulation –SISO abstraction –Hybrid executive Discussion
Detailed Problem Formulation Take state plan and plant state as input Generate plant control input that causes plant state to evolve in accordance with the state plan specification. Define problem more formally in terms of state plan input, and plant being controlled
Plant Definition 18 D.O.F. (6 for body, 12 for joints) Hip - ball and socket, knee - pin, ankle – saddle Ground model contact points on foot bottom corners - continuous part, 37 variables (body position, orientation, joint angles, velocities) - discrete part, 8 ground contact binary vars -12 joint torque external inputs, 8 ground forces (func(x)) -12 outputs (CM, body orientation, swf pos, orientation, knees) -forward kinematics
State Plan - Example CMX_1 CMY_1 SWX_2 SWX_3 State-space constraints SWX_4 SWX_5
State Plan - Definition executes successfully
State Plan - Definition executes successfully Within required duration Starts in init, ends in goal Stays in tube
Roadmap Analysis of three balance strategies Model-based executive –Detailed problem formulation –SISO abstraction, multivariable controller –Hybrid executive Discussion
Hybrid executive moves CM by adjusting kp, kd gains of SISO abstraction
Multivariable Controller Requirements Typical controller tracks detailed trajectories
Multivariable Controller Requirements
Want to specify coarse setpoint –Forward CM setpoint = 0 –Lateral CM setpoint = 0
Multivariable Controller Requirements Want to specify coarse setpoint –Forward CM setpoint = 0 –Lateral CM setpoint = 0 Controller should figure out detailed joint trajectories
Virtual Model Control [Pratt, 1997] No detailed specification of joint trajectories Allows for low-gain, compliant control Virtual elements specify desired force on body Jacobian used to compute joint torques that achieve this
Virtual Model Control [Pratt, 1997] Problem – dynamics not taken into account System may not move in direction of static force
Whole body control [Khatib, 2004], [Hofmann, 2004] Dynamics taken into account through feedback linearization Static balancing Can exert manipulation force No control epoch sequencing Requires accurate model Dynamic balancing Supports control epoch sequencing Deals with model error (sliding control)
SISO Abstraction -Computing control inputs for successful state plan execution is challenging -Use feedback linearization [Slotine and Li, 1991] - MIMO plant appears to be a set of decoupled SISO linear 2 nd -order systems
Multivariable Controller
Controller Design Two-stage feedback linearization –Relation between workspace and joint accelerations –Inverse dynamics Craig, etc. Y includes: -COM position -Swing foot position -Body orientation
QP Optimizer Constraints –FRI –Joint limit Constraints may cause infeasibilities
Dealing with Infeasibility Introduce slack variables Cost function penalizes slacks Weighting of slack costs prioritizes importance of controlled variable Slacks for important variables 0 Non-zero slacks for less important –Treat as disturbance –Guarantee bounds on disturbance
Controller Design Multi-variable control achieved by QP formulation –Asserts FRI constraint, joint limits –Cost on torques –Use of slack variables Sliding control to compensate for model error Slotine
Balancing on Ground COM starts outside support polygon FRI stays in
Balancing on Ground COM starts outside support polygon FRI stays in
Balancing on Podium COM starts outside support polygon FRI stays in
Analysis of reaction Rotation about CM Allows extra rotation of CM about foot support CP –(Conservation of angular momentum) –Corresponds to lateral movement of CM to setpoint Interesting to note that –Initial movement of swing leg to right is beneficial in moving COM in desired direction –Movement of body to left is not!
Details of reaction behavior Can depend on preferences and capabilities of individual
Joint limit constraints are important! Determines reservoir of stability due to spin
Key Insights for Multivariable Controller Balance requirements can be expressed concisely as biomechanical constraints. Balance greatly improved by integrated action of contact, non-contact segments Seemingly complex behavior emerges –Single setpoint –No stored trajectories, dynamic optimization
Roadmap Analysis of three balance strategies Model-based executive –Detailed problem formulation –SISO abstraction –Hybrid executive Discussion
Hybrid Executive Requirements Multivariable controller accepts single setpoint
Hybrid Executive Requirements Multivariable controller accepts single setpoint Can’t, by itself, sequence through multiple setpoints (sequence of control epochs)
Hybrid Executive Requirements Multivariable controller accepts single setpoint Can’t, by itself, sequence through multiple setpoints (sequence of control epochs) Need hybrid executive for that
At start of control epoch, hybrid exec. sets controller gains
Hybrid Executive Monitors Progress of each variable to its goal
Hybrid Executive Transitions to Next Epoch when goal for each variable is achieved
What if there’s a disturbance?
Acceleration pulse at start Trajectory gets to goal pos. at wrong time
What if there’s a disturbance? Acceleration pulse at start Trajectory gets to goal pos. at wrong time With wrong velocity
Dealing with disturbance Expand goal region Goal setpoint
Dealing with disturbance Expand goal region Goal region
Dealing with disturbance Expand goal region Adjust gains
Dealing with disturbance Expand goal region Adjust gains –Allows for increasing controllable duration in goal region
Dealing with disturbance Expand goal region Adjust gains –Allows for increasing controllable duration in goal region –Trajectory can be guaranteed to be in goal pos./vel. region over this entire range.
Dealing with disturbance Expand goal region Adjust gains –Allows for increasing controllable duration in goal region –Trajectory can be guaranteed to be in goal pos./vel. region over this entire range. –Allows initial region to be larger.
What are the limits? How much can gains be adjusted? How large can regions, controllable temporal range be? What is the relation between regions, time, and controllability limits? What is the largest disturbance that can be handled? –What guarantees can be made for successful execution?
Disturbances and Controllability How can disturbances be handled? Given some bound on disturbances, is it possible to guarantee successful execution of a plan? Dispatchers for discrete systems
Disturbances and Controllability How can disturbances be handled? Given some bound on disturbances, is it possible to guarantee successful execution of a plan? Dispatchers for discrete systems Guarantee successful execution
Disturbances and Controllability How can disturbances be handled? Given some bound on disturbances, is it possible to guarantee successful execution of a plan? Dispatchers for discrete systems Guarantee successful execution Even with temporal uncertainty
Disturbances and Controllability How can disturbances be handled? Given some bound on disturbances, is it possible to guarantee successful execution of a plan? Dispatchers for discrete systems Guarantee successful execution Even with temporal uncertainty If uncertainty is bounded, [Morris, 2001]
Strong and Dynamic Controllability Strong controllability for discrete systems
Strong and Dynamic Controllability Strong controllability for discrete systems t = 0t = 5 Not feasible t = 0
Strong and Dynamic Controllability Strong controllability for discrete systems Dynamic controllability
Strong and Dynamic Controllability Strong controllability for discrete systems Dynamic controllability t = 0 If t(B) = 1, t(C ) = 2 If t(B) = 8, t(C ) = ? (not safe)
What are the limits? How much can gains be adjusted? How large can regions, controllable temporal range be? What is the relation between regions, time, and controllability limits? Is there a notion of strong and dynamic controllability for hybrid systems?
Plan compiler computes limits Computes spatial and temporal regions for all activities
Plan compiler synthesizes controllers Control info expressed as ranges on SISO parameters
How does the plan compiler compute region limits, synthesize controllers? Initial and goal regions
How does the plan compiler compute region limits, synthesize controllers? Initial and goal regions Want to maximize controllable time range in goal Given start anywhere in init region, what are lb, ub on this time?
How does the plan compiler compute region limits, synthesize controllers? Lb – fastest trajectory from slowest start Worst-case (slowest) start is point B
How does the plan compiler compute region limits, synthesize controllers? Lb – fastest trajectory from slowest start Worst-case (slowest) start is point B Best-case (fastest) finish is point D
How does the plan compiler compute region limits, synthesize controllers? Consider single acceleration spike as control input Spike occurs at beginning
How does the plan compiler compute region limits, synthesize controllers? Consider single acceleration spike as control input Spike occurs at beginning If spike has the right size, results in GFT (Guaranteed Fastest Trajectory)
How does the plan compiler compute region limits, synthesize controllers? Ub – slowest trajectory from fastest start Worst-case (fastest) start is point A Best-case (slowest) finish is point C
How does the plan compiler compute region limits, synthesize controllers? Spike of right size at end results in GST (Guaranteed Slowest Trajectory)
Existence of controllable temporal range in goal If t(GFT)<t(GST) then presence of trajectory in goal pos./vel. region can be guaranteed for any time [t(GFT), t(GST)] –By adjusting spike
Two spikes provide more controllability Single spike – monotonic Two spikes, opposite directions – monophasic –Velocity does not change sign, but acceleration does GFT GST
GFT, GST with linear control law Adjust control law parameters to get GFT, GST A – max pos., vel. (fastest start) B – min pos., vel. (slowest start) C – max pos., min vel. (slowest finish) D – min pos., max vel. (fastest finish) Assume monotonic velocity Maximize controllable temporal range, initial region size Subject to limits on control inputs
Plan Compiler Generate dispatchable state plan from state plan: Compute initial and goal regions for each activity Compute duration range for each activity Compute control parameter ranges Formulate as Nonlinear Program, and solve by SQP
Plan Compiler SQP Formulation For each activityrefers to variable (row in plan) refers to control epoch (column) Parameters being optimized:Initial and goal regions InitialGoal DurationControl parameter ranges
SQP Formulation: Constraints Existence of initial and goal regions Initial Goal Goal region fits inside successor initial region
SQP Formulation: Constraints GFT Trajectories computed analytically (due to SISO abstraction) GFT GST Goal Init GST Temporal controllability
SQP Formulation Synchronization constraints Cost function –Maximize initial region –Minimize goal region –Maximize
Controllable Regions for Lateral CM
Consistent with trial data
Controllable Regions for Forward CM
Nominal not completely consistent with trial data
Controllable Regions for Lateral CM
Strong and Dynamic Hybrid Controllability Lateral Forward
Trade-off Between Region Size and Temporal Range t(GFT) = t(GST) GFT in red, GST in blue, Nom in green
Trade-off Between Region Size and Temporal Range t(GFT) = t(GST) GFT in red, GST in blue, Nom in green t(GFT) > t(GST) Some uncertainty in duration
Strong and Dynamic Hybrid Controllability
Hybrid Dispatcher
Synchronization is important!
Hybrid Dispatcher Executes dispatchable activities Guides each controlled variable to its goal region –May adjust controller parameters, within bounds Timing of goal region arrival can be adjusted by adjusting control parameters Transitions to next control epoch when goal conditions are met
Hybrid Dispatcher Algorithm At start of control epoch, compute goal transition time, –Choose nominal time in range Monitor progress to goal regions –Predict/adjust Attempt transition to next control epoch –If each variable in respective goal region at transition to next control epoch
Monitor Progress Predict If in goal at, do nothing Otherwise, adjust Adjust within compiler-specified bounds Try to get into goal region at
Attempt Transition If each variable in respective goal region at Transition to next control epoch
Roadmap Analysis of three balance strategies Model-based executive Discussion
Analysis of three strategies –when each strategy should be used –what are capabilities (limits) of each strategy
Discussion Ankle torque (strategy 1) limited by support base –when this is insufficient, use strategy 2 to change support base Step adjustment (strategy 2) limited by foot placement constraints –when too constrained, use strategy 3 Angular acceleration about CM (strategy 3) limited by limits on range and speed of motion torso, non-contact limbs –when insufficient - fall
Discussion Hybrid executive –From qualitative state plan, automatically synthesizes controllers Computes dispatcher regions and gain ranges –Successful, stable execution achieved by getting key variables into right region at right time Provides significant flexibility in how they actually get there –Relies on SISO decoupling, linearization provided by multivariable controller
Discussion Hybrid executive –Decoupling abstraction provided by multivariable controller very useful –But, can’t just assume all variables are completely decoupled (still part of same body) –Still need to be synchronized at key points (loosely coupled) –Decides interesting trade-off between state- space and temporal controllability
Discussion Multivariable controller –Provides SISO abstraction (linearization, decoupling) used by hybrid executive –Interesting and complex behavior emerges automatically from very simple specification (single setpoint) –Can’t sequence through different qualitative regions; hybrid executive needed for that
Discussion Balance enhancement through use of non- contact segments (3 rd strategy) Balance enhancement through step adjustment (2 nd strategy) Walking on firm and soft ground –Nonlinear spring constants vary from 2,000,000 (less than 1 cm deflection) to 10,000 (up to 10 cm deflection) –Still would like to increase walking speed Walking with push disturbance –More testing in progress
Conclusion Unprecedented level of robustness achieved through integration of three balance control strategies Robust plan execution achieved for hybrid system by extending techniques used for discrete systems Efficiency of execution achieved through compilation of plan into dispatchable form
Plan compiler addendum More on plan compiler
Executable State Plan -State plan cannot be executed directly -Specifies state requirements, but no control info -Executable activity -Adds control info -All region and temporal constraints specified -Successful execution
Hybrid dispatcher controls plant through SISO abstraction - synchronizes SISO systems
Plan Compiler Generates (for each controlled variable) –mode sequence, control parameters Control parameters chosen so that state plan constraints do not become active –Well-known example – preventing saturation
Computing gains that keep constraints inactive Problem solved recently for linear systems with linear constraints –Using LP approach For this problem, system is linear (due to linearization) –Unfortunately, FRI constraint is very non-linear Linearize constraints? Derive simplified, conservative approximations of actual constraints
Focus on Important Variables Planner ensures feasibility for important variables –Constraint approximations satisfied Relies on lower-level control (multivariable controller) to decide which of the less important variables to sacrifice Amount of sacrifice possible represents “reservoir of stability” Scalar quantity, basis for constraint approximations
Control of COM is most important COM accelerated through ground contact COP represents ground contact point Normal walking –force vector goes through COM (Popovic, 2004)
Disturbance conditions Ground force vector not through COM If ZTCOP outside support polygon, then get spin torque about COM
Spin Disturbance Level Spin angular momentum Spin disturbance level Form second-order linear system, control output is Bounds on
Plan Generation by SQP Variables being optimized –Control parameters, mode transition times Equality constraints –Trajectory end positions must match across mode transitions Inequality constraints –Temporal constraints –Limits on Cost function – penalty on
Old Slides Old slides after this
Introduction Robots in structured environments –Limited autonomy –Bolted to ground –Safety guaranteed
Introduction Robots in structured environments –Limited autonomy –Bolted to ground –Safety guaranteed Robots in unstructured environments –Commanded at Task-level –Mobile –Safety not guaranteed
Approach – translating specification into control actions
Multivariable controller decouples plant providing SISO abstraction Elements of y include CM position, body orientation, etc.
Hybrid executive coordinates controllers to move Center of Mass (CM)
Hybrid Dispatcher Algorithm Dispatch() Initialize 2. while (not finished) { MonitorProgress tg = ComputeDesiredArrivalTime feasible? = AdjustProgress(tg) if (not feasible?) abort if (t_current = tg) AttemptTransition} } Initialize() 1. For each controlled variable, var1 2 var1.activity = initial_activity // from plan output nominal parameters to controller } MonitorProgress() 1. For each controlled variable, var1 2var1.t_exp = 3 ComputeTransitionTime(var1) } ComputeDesiredArrivalTime() if no uncertain variable return nominal goal time from plan else { var1 = uncertain variable tg = ComputeBestTransitionTime(var1) return tg} } AttemptTransition() if (all variables in their goal regions and t_current satisfies external temporal constraints) { For each controlled variable, var1 var1.activity = var1.activity.next output nominal parameters for new activity}}
Example Adjustment Guide all variables into their respective goal regions at the same time
Problem Statement Execute state plan Recover from disturbance By utilizing temporal and spatial flexibility in plan
FRI Constraint Goswami, 1999
FRI Constraint Can be expressed, in 2D, as Can be expressed in terms of COM
Torque Balance Re-arranging terms yields This is of the form Orbital torque can be used to move COM –Use spin torque to get extra orbital torque (beyond max provided by ankle torque) –But, there are limits to how long and how hard
State Plan Controllability Transition condition Controllability with respect to particular mode –There exists mode sequence
Hybrid Dispatcher Guides each controlled variable to its goal –By adjusting controller gains Performs mode transitions Treats each controlled variable independently –Possible due to action of plan formulator, decoupling
Dispatcher-Key Assumptions Each controlled variable is output of a linear SISO system Monotonic progress to goal region –Gains are overdamped, no oscillation Gains may be adjusted –Within bounds of dispatchable state plan –To increase/decrease speed to goal
Hybrid Dispatcher Algorithm Monitor progress From current state, compute val_t_min, max –Can be done analytically Feasible (goal region overlaps range of val_t_min, max
Infeasible, increase speed val_t_max < goal_min
Infeasible, decrease speed goal_max < val_t_min
Results Nominal plan
Results Nominal plan execution
Small disturbance Handled by multivariable controller Gain adjustment by dispatcher not necessary
Larger disturbance Requires action by dispatcher Dispatcher adjusts gains
Larger disturbance still Requires re-planning [In progress]
Discussion Compliance at 3 levels –Low-gain controller –Temporal flexibility –Fast replanning Achieved by careful coordination of Plan Formulator, Dispatcher, and Multivariable Controller
Low-gain Control Two approaches High gain Low gain Suppose Vs. Kp1 10 times greater than Kp2
Discussion [Add points on temporal flexibility, fast replanning]
State plan specifies desired plant state evolution
Task executive and Multivariable Controller
Background Humanoids that track detailed reference trajectories –(Hirai, 1997), (Hodgins, 1996) Requires high-gain control
Two-stage Approach Plant output as function of state Taking partial derivatives yields Differentiating again Ex. COM as function of joint positions
Two-stage Approach First stage converts from workspace accelerations to joint space accelerations Second stage converts from joint space accelerations to joint torques Elements of y vector: –COM, body orientation, swing foot position, swing foot orientation
Analysis of reaction Non-contact limbs used in two ways –To shift FRI, and to shift COM Initially, body leaning too far to left –Stance ankle action alone would not prevent tipping further Body leans further to left, swing leg swings to right –Negative angular acceleration about forward (x) axis
Analysis of reaction Negative angular acceleration about forward (x) axis –Allows negative lateral (y) linear acceleration of COM –Without requiring change in FRI As COM moves to desired position –FRI moves away from edge of support polygon –Body, swing leg can return to desired position Interesting to note that –Initial movement of swing leg to right is beneficial in moving COM in desired direction –Movement of body to left is not!
Robustness to Varying Ground Conditions Soft, springy groundFirmer ground
Need for Dispatchable State Plan SISO abstraction requires control parameters State plan doesn’t have this Need to generate dispatchable state plan
Example: Computing Goal Region Suppose Temporal range: [1, 2] Compute goal region, GFT, GST (initial region) Controllable iff:
Computing Goal Region-More Examples
Background Model-based planning and execution systems –Titan, Kirk (Williams, 2001) –Combined TPN, path planning (Walcott, 2004) Temporal plan executives –Dynamic controllability (Morris, 2001), (Stedl, 2004)