Eric Feron/MIT 02/2000 Trajectory Planning and System dynamics Eric Feron Laboratory for Information and Decision Systems (LIDS) Dept Aeronautics and Astronautics
Eric Feron/MIT 02/2000 Point of this lecture System dynamics is very important for robotic systems which aim at moving fast - anything that flies in particular.
Eric Feron/MIT 02/2000 Outline Motivation: ground, space and air vehicles Trajectory planning: fundamental requirements System dynamics: introduction / reminder Some approaches to integrate system dynamics and trajectory planning: –Frequency separation –Inverse control –“Intuitive control” –Recent approaches Conclusions
Eric Feron/MIT 02/2000 Ground, space and air vehicles Egg on the groundEgg in outer space Egg that was up in the air Full mastery of dynamics is entry level for aerobotics Simulated eggs are OK for a while.
Eric Feron/MIT 02/2000 From Dynamics to Trajectory Planning Trajectory Generation Interaction with Surrounding Environment: Other vehicles, obstacles Inner loop control Inner loop, physical model Towards Mission Planning "Robotics" "GN&C"
Eric Feron/MIT 02/2000 Trajectory Planning Today Probabilistic Roadmap Methods Probabilistic Completeness Latombe, Kavraki - Overmars, Svestka Kinodynamic Trajectory Planning Latombe, LaValle, Kuffner, INRIA Time-optimality Reif, Zefran Complexity analysis Canny, Donald, Reif, Xavier Moving Obstacles Fiorini, Shiller Potential field methods Khatib, Latombe, Barraquand
Eric Feron/MIT 02/2000 Trajectory Planning A B Configuration space (Lozano- Peres) A B Potential field approaches, dynamic programming A B Randomization schemes (Latombe, Motwani) A B Randomly exploring trees (LaValle)
Eric Feron/MIT 02/2000 Fundamentals of vehicle dynamics: Notion of State Vehicle system: Vehicle state: All variables that are necessary to know at instant t to predict behavior of vehicle in the future (given future inputs to the system). Example: Cart sliding on a surface: Inputs (accelerations, steering wheel angle, etc) Outputs (vehicle position, attitude, health). F State?
Eric Feron/MIT 02/2000 State and Equations of Motion Implicit in notion of state is that of equation of motion –Continuous: x is state (position, attitude, speeds of all sorts), u is control, w is perturbation. –Discrete: –We’ll see both brands in this course. CS seems to like second brand better. ODEs must also be accounted for. –Fancy buzzword: hybrid systems.
Eric Feron/MIT 02/2000 Beating the complexity hurdle in trajectory planning Trajectory planning is very complex, for very many reasons: environment complexity (obstacles, vehicle shape), dynamics complexity: Equations of motion with many, many states. Makes straight application of standard planning paradigms (e.g. Dynamic Programming) computationally intractable on initial models Need for complexity reduction. Hierarchical decomposition of the control tasks: –Maneuver sequencing (guidance, trajectory planning –Maneuver execution (control, trajectory tracking)
Eric Feron/MIT 02/2000 Complexity Reduction via frequency separation Basic axiom: the “dynamics” of the trajectory is very slow, thus uncoupled from the dynamics of the vehicle: path planning for jetliner. Waypoints Trajectory represented by piecewise linear functions, although system cannot physically make sharp turns: no one cares. Also applied for many current flying robots: Can’t always do that. Draper-MIT-BU TSK Base.
Eric Feron/MIT 02/2000 Trajectory regulation/tracking Once a trajectory is given, must be able to track it: Nominal trajectory yd==> nominal inputs (trim values) ud ==> (+perturbations, unmodeled dynamics) yields actual trajectory y ==> use y-yd to generate a correction signal du, which will make sure it stays close to zero. System ud y yd - + Logic (usually PID) + + du
Eric Feron/MIT 02/2000 Complexity reduction from fundamental insight Map vehicle dynamics onto achievable trajectories Inverse Control Feedback Linearization Differential Flatness Trajectory specification in output space (geometrical coordinates) is enough for trajectory specification in control space.
Eric Feron/MIT 02/2000 Trajectory Generation Example Inverse Control and Feedback Control of a Cart Protoype problem: Steering a cart on a plane to follow a given trajectory. Also applies to many types of airplanes, helicopters, etc. Fliess, Rouchon, Sastry, Murray.
Eric Feron/MIT 02/2000 Steering a cart: Interface between Trajectory Planning and Control A cart: Two controls Reference Trajectory: Two variables One problem: If use steering wheel position as reference for trajectory following, then not only need to know trajectory, but also initial position/oientation of cart to find out controls. e.g. May have to steer or left (and of course apply opposite sign moments) to follow reference trajectory. A control systems nightmare if inertial effects are significant.
Eric Feron/MIT 02/2000 Steering a cart: Appropriate Interfacing through “Differential flatness” One elegant solution: The middle of rear axle tracks the reference trajectory. Named Flat Output: The reference trajectory unambiguously specifies the controls to be applied to the cart. Notice: the trajectory r(t) must be continuously differentiable at least a few times with respect to time (also assume no geometrical singularities to make matters simpler) r(t)
Eric Feron/MIT 02/2000 Steering a cart: Technical details r(t) Parameterize trajectory by curvilinear coordinates: s(t): Curvilinear abscissa. (t): Cart angular speed. Cart equations of motion: F: Forward force, directly proportional to (algebraic) sum of torques applied to rear wheels (for example). M: Torque, directly proportional to (algebraic) difference of torques applied to rear wheels. Can convert these into other combinations like torque/direction of front wheel or direction of front wheel + torque on rear axle for rear wheel drives. For a given r(t), the derivatives of s(t) and those of (t) are unambiguously determined. So the controls on the vehicle (force and torque) are uniquely determined as a function of r(t).
Eric Feron/MIT 02/2000 A Feedback control strategy / tracking system for cart steering (x,y) (xd,yd) Step 1: Given (x,y) and (xd,yd) (desired trajectory), design a proportional, derivative, tracking system, that is design (x,y) such that These behaviors are “stable” for positive K and D, and (x,y) converge towards desired trajectory. Step 2: Extract from (x,y) and apply corresponding force, moment to cart. It works. You show it in HW.
Eric Feron/MIT 02/2000 Complexity reduction via dynamics discretization A reduction in the complexity of the problem comes from the decomposition of feasible trajectories into trajectory primitives
Eric Feron/MIT 02/2000 Trim trajectories: trajectories along which velocities in body axes and control inputs are constant –Symmetry trim trajectories are the composition of a constant rotation g 0 {0} SO(3) and a screw motion h(t)=exp( t), where h se(3) – h(t) in the physical space can be visualized as a helix flown at a constant sideslip angle –Trim trajectories can be parameterized by , or equivalently by: Trajectory Primitives – Trim Trajectories Usual parametrization: V: velocity : fligt path angle d /dt: turning rate : sideslip angle Usual parametrization: V: velocity : fligt path angle d /dt: turning rate : sideslip angle
Eric Feron/MIT 02/2000 Trajectory Primitives - Maneuvers Maneuver: (Finite time) (Fast) transition between trim points Maneuver: (Finite time) (Fast) transition between trim points “Aerobatics”: loop barrel roll flip split-s... “Aerobatics”: loop barrel roll flip split-s... Transitions to and from: hover forward flight turning flight climbs/dives Transitions to and from: hover forward flight turning flight climbs/dives g
Eric Feron/MIT 02/2000 Vehicle maneuvers
Eric Feron/MIT 02/2000 Split-S I/O Observations Trimmed forward flight Pitch cyclic Collective Pitch cyclic Rev. Coll. Roll cyclic Roll cyclic Maneuver Initiation Roll Angle= 90 deg Roll angle =145deg Pitch angle =45deg Pitch angle =0deg "Intuitive control" Pratt & Raibert
Eric Feron/MIT 02/2000 Maneuver Automaton The state of the system is fully described by: –trajectory primitive being executed (q Q N) –inception time (t 0 R) and “position” (h 0 R 4 ) –Current time (t R) Maneuvers have a time duration, while trim trajectories can be followed indefinitely The hybrid controller must provide: –jump destination (q’ Q, which maneuver to execute) –coasting time (t’-t 0, how long should we wait in the trim trajectory before initiating the maneuver)
Eric Feron/MIT 02/2000 Robust Hybrid Automaton For each trim trajectory, define the following: – L q : limit set – R q : recoverability set – C q : maneuver start set – q : maneuver end set
Eric Feron/MIT 02/2000 Given - Running cost: Find a Control policy: To minimize the Total cost: Subject to the System dynamics: Optimal cost satisfies the HJB eq.: Solving the HJB equation is still difficult, however we have reduced the dimension of the state to 4 continuous dimension + 1 discrete dimension solvable through approximation architectures Optimal Control Problem
Eric Feron/MIT 02/2000 Neuro-Dynamic Programming Formulation Assume we know a proper policy 0, that is a policy that for all possible initial states results in a finite cost J 0 (e.g. from heuristics, or other considerations) A no worse policy is given by The iteration converges; technical conditions for convergence to optimal cost In general, we have some approximate representation of J i (look-up tables, approximation architectures) J i depends on a “small” number of parameters, and has to be computed only on compact sets (computational tractability) The optimal control is computed by an optimization over time, and a discrete set (applicability to real-time systems)
Eric Feron/MIT 02/2000 Simulation Example Initial conditions: High speed flight over target
Eric Feron/MIT 02/2000 Motion planning with obstacles Traditional path planning –techniques based on the configuration space (Lozano-Perez), e.g. A* searches – does not deal with system dynamics - deals with complex geometric environmnets Kinodynamic planning –state space –Potential field techniques: can get stuck in local minima –Randomized techniques, e.g. randomized roadmap (Latombe 96), Rapidly-exploring Random Trees (LaValle 99): probabilistic completeness An attractive alternative to the full state space is the maneuver space
Eric Feron/MIT 02/2000 Motion Planning algorithm Based on Rapidly-exploring Random Trees algorithm (LaValle, 99) Optimal cost function in the free workspace case provides: –pseudo-metric on the hybrid space –Fast and efficient computation of “optimal” control
Eric Feron/MIT 02/2000 Maneuver Tree - Threat avoidance
Eric Feron/MIT 02/2000 Motion planning demo: threat avoidance
Eric Feron/MIT 02/2000 Maneuver Tree - “Maze”
Eric Feron/MIT 02/2000 Maneuver Tree - “Sliding doors”