Q-guidance

Q-guidance is a method of missile guidance used in some U.S. ballistic missiles and some civilian space flights. It was developed in the 1950s by J. Halcombe Laning and Richard Battin at the MIT Instrumentation Lab.

Q-guidance is used for missiles whose trajectory consists of a relatively short boost phase (or powered phase) during which the missile's propulsion system operates, followed by a ballistic phase during which the missile coasts to its target under the influence of gravity. (Cruise missiles use different guidance methods). The objective of Q-guidance is to hit a specified target at a specified time (if there is some flexibility as to the time the target should be hit, then other types of guidance can be used).

Early Implementations
At the time Q-guidance was developed, the main competitive method was called Delta-guidance. According to Mackenzie, Titan, some versions of Atlas, Minuteman I and II used Delta-guidance, while Q-guidance was used for Thor IRBM and Polaris, and presumably Poseidon. It appears, from monitoring of test launches, that early Soviet ICBMs used a variant of Delta-guidance.

Delta-guidance overview
Delta-guidance is based on adherence to a planned reference trajectory, which is developed before the flight using ground-based computers and stored in the missile's guidance system. In flight, the actual trajectory is modeled mathematically as a Taylor series expansion around the reference trajectory. The guidance system attempts to zero the linear terms of this expression, i.e. to bring the missile back to the planned trajectory. For this reason, Delta-guidance is sometimes referred to as "fly [along] the wire", where the (imaginary) wire refers to the reference trajectory.

In contrast, Q-guidance is a dynamic method, reminiscent of the theories dynamic programming or state-based feedback. In essence, it says "never mind where we were supposed to be; given where we are, what should we do to make progress towards the goal of reaching the required target at the required time". To do this, it relies on the concept of "velocity to be gained".

Velocity to be gained
At a given time t and for a given vehicle position r, the correlated velocity vector Vc is defined as follows: if the vehicle had the velocity Vc and the propulsion system was turned off, then the missile would reach the desired target at the desired time under the influence of gravity. In some sense, Vc is the desired velocity.

The actual velocity of the missile is denoted by Vm, and the missile is subject to both the acceleration due to gravity g and that due to the engines aT. The velocity to be gained is defined as the difference between Vc and Vm:


 * $$V_\text{TBG} = V_\text{c} - V_\text{m}.$$

A simple guidance strategy is to apply acceleration (i.e. engine thrust) in the direction of VTBG. This will have the effect of making the actual velocity come closer to Vc. When they become equal (i.e. when VTBG becomes identically zero), it is time to shut off the engines, since the missile is by definition able to reach the desired target at the desired time on its own.

The only remaining issue is how to compute VTBG easily from information available on board the vehicle.

The Q matrix
A remarkably simple differential equation can be used to compute the velocity to be gained:


 * $$\frac{dV_\text{TBG}}{dt} = -a_\text{T} - Q V_\text{TBG},$$

where the Q matrix is defined by


 * $$Q = \left. \frac{\partial V_\text{c}}{\partial r}\right|_{r_\text{T},t_\text{f}},$$

where Q is a symmetric 3 × 3 time-varying matrix. (The vertical bar refers to the fact that the derivative must be evaluated for a given target position rT and time of free flight tf.) The calculation of this matrix is non-trivial, but can be performed offline before the flight; experience shows that the matrix is only slowly time-varying, so only a few values of Q corresponding to different times during the flight need to be stored on board the vehicle.

In early applications the integration of the differential equation was performed using analog hardware, rather than a digital computer. Information about vehicle acceleration, velocity and position is supplied by the onboard inertial measurement unit.

Cross-product steering
A reasonable strategy to gradually align the thrust vector to the VTBG vector is to steer at a rate proportional to the cross product between them. A simple control strategy that does this is to steer at the rate


 * $$\omega = \kappa (a_\text{T} \times V_\text{TBG}),$$

where $$\kappa$$ is a constant. This implicitly assumes that VTBG remains roughly constant during the maneuver. A somewhat more clever strategy can be designed that takes into account the rate of time change of VTBG as well, since this is available from the differential equation above.

This second control strategy is based on Battin's insight that "If you want to drive a vector to zero, it is [expedient] to align the time rate of change of the vector with the vector itself". This suggests setting the auto-pilot steering rate to


 * $$\omega = \kappa \left(V_\text{TBG} \times \frac{dV_\text{TBG}}{dt}\right).$$

Either of these methods are referred to as cross-product steering, and they are easy to implement in analog hardware.

Finally, when all components of VTBG are small, the order to cut-off engine power can be given.