Robot control

Direct multiple shooting

Definition

Direct multiple shooting transcribes an optimal-control problem by dividing the time horizon into intervals, integrating each interval from a decision-variable state, and enforcing continuity between neighbouring intervals. It improves initialisation and sparsity compared with one long shot, at the cost of more variables and equality constraints.

Also known as: Multiple shooting

Updated

Join several simulated intervals

Single shooting chooses a control sequence and simulates one trajectory from the fixed initial state. Direct multiple shooting inserts additional state decision variables at shooting nodes. Each interval is simulated independently from its node state, then continuity constraints require one interval's final state to match the next node.

The CasADi documentation describes this transcription and supplies implementations. It notes that lifting node states into the nonlinear program permits a state-trajectory initial guess and creates a larger but sparser problem than single shooting.

Expose structure to an optimal-control solver

The shorter integrations reduce the sensitivity of the entire predicted motion to the earliest control variables. Dynamics and derivatives for different intervals can also be evaluated separately. Diehl and colleagues developed fast multiple-shooting methods for optimal robot control.

Robots use the transcription for trajectory optimisation, estimation, and model predictive control. It differs from direct collocation, which represents state trajectories with polynomials and enforces dynamics at collocation points instead of integrating a shot across each interval.

More nodes do not make a non-convex problem global

Every shooting node adds variables and continuity constraints. Poor scaling, a weak initial guess, or a difficult contact sequence can still lead a nonlinear solver to an infeasible point or a local optimum. Numerical integration error also affects the constraints.

The interval count and integrator must resolve fast dynamics without making the optimisation unnecessarily large. Discontinuous impacts and changing contacts need event handling or a contact-aware formulation. Solver convergence is not evidence that the trajectory respects unmodelled actuator, collision, friction, or uncertainty limits.

Sources