3.5.52 · D5Guidance, Navigation & Control (GNC)

Question bank — Optimal guidance — ZEM - ZEV formulation

1,729 words8 min readBack to topic

A quick reminder of the vocabulary these questions lean on, so no symbol appears un-earned:

  • = the vehicle's current position and velocity vectors (measured in a fixed inertial frame — pick "up" and "downrange" as positive axes and stick to them).
  • = the desired position and velocity at the final time .
  • = gravitational acceleration = the known external acceleration acting during the coast (e.g. m/s² on the Moon, pointing down — its sign follows your chosen frame).
  • = time-to-go , how much flight time remains.
  • ZEM = Zero-Effort-Miss = the position error at if you cut thrust now and coast, measured target minus predicted: a positive ZEM means the coast falls short of the target along that axis.
  • ZEV = Zero-Effort-Velocity = the velocity error at under the same coast, again desired minus predicted.
  • = Lagrange multipliers (costates) — constant vectors introduced to enforce the two constraints while minimizing effort; they have no direct physical reading, they are the "prices" that make the optimum satisfy both endpoint conditions.
  • = the acceleration command applied right now (thrust acceleration, above gravity).
  • The two headline laws: full and position-only .

The figure below fixes the geometry these questions keep referring to — the coast prediction, the two error vectors, and how they combine into the command.

Figure — Optimal guidance — ZEM - ZEV formulation

And this one shows why the late-time story is subtle once a real thruster can only push so hard:

Figure — Optimal guidance — ZEM - ZEV formulation

True or false — justify

If ZEM is zero right now, the guidance command is automatically zero.
False for the full law. , so a nonzero ZEV still commands thrust; only in the position-only law does ZEM=0 force .
ZEM and ZEV are computed by actually flying the coast and measuring where you land.
False. They come from the closed-form propagation and , evaluated instantly each cycle — nothing is physically flown.
The gravity term only matters for landers, not interceptors.
False. Any coast under gravity drifts; dropping biases the predicted miss for interceptors too. It merely looks ignorable when the engagement is short so the drift is small.
The optimal acceleration profile over the whole trajectory is constant.
False. Calculus of variations on the quadratic effort cost gives with constant multipliers — an affine (linear-in-time) profile, not a constant.
Making the effort integral smaller always means less fuel.
Roughly but not exactly. penalizes squared acceleration (a smoothness/energy proxy), while fuel tracks ; minimizing gives the clean linear law but is not literally minimum-propellant.
The position-only ZEM/ZEV law and Proportional Navigation are genuinely the same law.
True. The position-only form is Proportional Navigation with effective navigation ratio ; ZEM/ZEV just derives it as an optimal-control result.
The two ZEM/ZEV coefficients having opposite signs is a sign error someone should fix.
False. With ZEM and ZEV both defined desired minus predicted in one consistent frame, solving the Lagrange system yields the minus on the ZEV term; near the position and velocity fixes pull acceleration in opposite directions.
ZEM/ZEV needs the vehicle model to be a double integrator.
True in the standard derivation. The closed-form coast () is what gives the tidy polynomials; other dynamics need generalized ZEM/ZEV via a state-transition matrix.

Spot the error

"For a soft landing I'll use since 6 is the position coefficient."
The full landing law also carries ; drop it and velocity is never matched, so you arrive at the right spot but at killing speed.
"For pure interception I'll use — same position term as landing."
The interception coefficient is , not . The 6 belongs to the two-constraint problem; removing the ZEV constraint changes the moment equations and halves it.
"Both ZEM and ZEV are errors, so both correction terms should add."
The Lagrange solution yields . The velocity term subtracts because matching arrival velocity often demands the opposite acceleration direction to closing the position gap.
"I integrated position with weight 1 like velocity: ."
Position needs the lever-arm weight: . Early thrust accumulates through two integrations, so it carries the extra factor.
" is gravity so I add it to before commanding the thruster."
Gravity is already inside the coast prediction (the , terms); is the thrust acceleration above gravity. Adding again double-counts it.
"Since ZEV is a velocity, dividing it by gives nonsense units."
Units check out: is m/s, and is (m/s)/s = m/s², an acceleration — exactly what a command needs.
"I'll compute ZEM once at the start and reuse it."
ZEM/ZEV are meant as continuous feedback; recomputing every cycle lets small residuals be killed while is still large, keeping the command bounded.
"The law diverges as , so a real vehicle's command also diverges."
No — real thrusters saturate at a maximum acceleration. Once the ideal command exceeds that cap it clips, so late-time behavior is set by the actuator limit, not the singularity (which is why you must null the errors early).

Why questions

Why does the position corrector get but the velocity corrector only ?
A position error must be fixed over an interval, so its needed acceleration scales as distance; a velocity error is a one-integration gap, needing acceleration velocity.
Why is the optimal control an affine function of time rather than something wilder?
The cost is quadratic in and the two constraints are linear integrals, so pointwise stationarity of the Lagrangian forces , linear in remaining time.
Why do the coefficients blow up as ?
With almost no time left, only a huge acceleration can erase a residual miss (). Good guidance drives ZEM/ZEV to zero early so this singularity is never reached — and if it is, actuator saturation caps the response.
Why express the constraints as ZEM and ZEV instead of raw endpoint conditions?
Subtracting the coast part isolates the correctable error, turning a boundary-value problem into "the control just has to fill these two known gaps" — cheap and real-time.
Why does ZEM/ZEV relate to Powered Descent Guidance (Apollo E-Guidance)?
Apollo's E-Guidance is essentially the same idea — predict the coast endpoint, correct position and velocity with -scaled gains — so ZEM/ZEV is a clean modern restatement of that lineage.
Why is Time-to-go estimation a make-or-break subproblem here?
Every gain contains ; a wrong mis-scales both terms and can destabilize the loop, so estimating it accurately is as important as the law itself.
Why doesn't ZEM/ZEV need to know the target's future motion for a maneuvering target?
It uses the current predicted coast miss; recomputing each cycle folds in the target's latest state, so no full future trajectory forecast (unlike solving Lambert's Problem) is required.

Edge cases

What does the law command if the vehicle is already perfectly on the coast trajectory (ZEM=0, ZEV=0)?
: both terms vanish, so it coasts — the coast is optimal when no error exists.
What happens if you plug literally into the gains?
You divide by zero; the law is undefined at the instant of arrival. In practice guidance is cut off (or frozen) at a small threshold before the singularity.
If ZEM and ZEV are nonzero but the two correction terms exactly cancel, does the vehicle stop steering?
Yes at that instant , but it is momentary; as shrinks the two terms scale differently ( vs ), so the balance breaks and steering resumes.
For a pure interceptor, does matching final velocity matter at all?
No — interception only requires , so the ZEV constraint is dropped entirely and the law collapses to .
What if the ideal command exceeds the thruster's maximum acceleration?
It gets clipped to the actuator limit (saturation); the vehicle then under-corrects, so the guidance may not achieve the endpoint — the reason well-designed loops keep the ideal command inside the cap by nulling errors early.
What if gravity is zero (deep-space, coasting between burns)?
The gravity terms drop out of ZEM/ZEV, leaving straight-line ballistic prediction; the guidance structure and coefficients are unchanged.
If your estimate is too large, how does the command behave?
The gains and come out too small, so the vehicle under-corrects early and must scramble late — the opposite of the smooth profile the law was designed to give.
Recall One-line summary of every trap

Gravity is already inside the prediction; ZEM and ZEV are both desired minus predicted coast in one fixed frame; the ZEV term subtracts; position gains go as and velocity gains as ; the two distinct gains are and for landing versus a single for intercept; recompute every cycle; and a real thruster's saturation cap — not just the singularity — governs late-time behavior.