Guidance, Navigation and Control · Theory · M1
M1-T4 — From Mission Requirement to GNC Budget
A requirement is a number for the whole vehicle. A budget is that number cut into pieces that three teams can each meet.
Nobody can build "a vehicle that lands within three metres". A team can build a navigation filter good to some size, a guidance law that ends its command within some tolerance, and a controller that follows it closely enough. The work of a GNC engineer starts by cutting the requirement into those pieces and checking that the pieces add up. This lesson shows how: write the requirement as a radius and a probability, convert it into an error per axis, split that among the three blocks of the identity from the first lesson, and find which block deserves the next hour of effort.
Learning objectives
After this lesson, you should be able to:
- Write a mission requirement as a radius and a probability, and convert it to a one-sigma error per axis.
- Combine independent error contributions by root-sum-square, and say when that rule does not hold.
- Allocate a total error among navigation, guidance and control, and identify the dominant term.
- Compute the probability that a given budget meets a requirement.
The intuition
Hopper's mission has a requirement written in one sentence: land within 3 m of the pad centre in at least 99 of 100 flights. Three things about this sentence are worth noticing.
- It is statistical. No flight is exactly the same as another, so the requirement is a radius and a probability, not a single number. "Within 3 m, 99% of the time" is a very different promise from "within 3 m".
- It belongs to the whole vehicle. No navigation engineer can test it alone, and neither can the guidance or control engineers.
- It is two-dimensional. The pad is a point on a plane, and the miss has an east and a north component. The radius counts both.
From the first lesson, the miss along each axis is : one guidance, one control and one navigation term. So the work is to give each term a size, such that the three together meet the requirement. That list of sizes is the error budget.
Why errors add in quadrature
If the three errors were certain to be at their worst at the same moment and in the same direction, they would add: 0.6 m of navigation error and 0.5 m of guidance error would give 1.1 m. But they come from different causes, and an error that is large by chance in one is not more likely to be large in another. When one error pushes the vehicle east, another is as likely to push it west. Combined, they spread less than the sum. Like the two short sides of a right triangle, the combination is the hypotenuse: errors of 3 and 4 combine to 5, not 7. This is the root-sum-square (RSS), and it holds for independent errors with zero mean.
It breaks down in two situations that matter in practice. A bias is an error that is the same every time, such as a survey error in the pad's coordinates: it does not average out, and it adds directly, not in quadrature. And correlated errors, such as two sensors that share a clock error, move together and add more than RSS says. Module 12 treats both. This lesson assumes independent, zero-mean errors and states the assumption in the answer.
A circle, not a line
The requirement is a radius, so the relevant question is what fraction of landings falls inside a circle. If the east and north errors are independent and have the same spread , the distance from the pad follows a known law: half of the landings lie within of the pad (the circular error probable), 95% within , and 99% within . A "3 sigma" circle holds 98.9% of the landings in two dimensions, not the 99.7% of the one-dimensional rule that most engineers remember.
| Probability inside the circle | Radius in units of σ | Name or use |
|---|---|---|
| 50% | 1.177 | circular error probable (CEP) |
| 90% | 2.146 | |
| 95% | 2.448 | a common acceptance level |
| 99% | 3.035 | Hopper's requirement |
| 99.7% | 3.409 | the one-dimensional "3 sigma" probability, in two dimensions |
A requirement is a radius and a probability. A budget is a list of errors per axis that combine, by root-sum-square, to a spread small enough to meet it.
Definitions
- Requirement
- The miss shall be at most metres with probability at least .
- Per-axis spread
- The standard deviation, in metres, of the miss along one horizontal axis. The east and north spreads are assumed equal and independent.
- Contributions
- The one-sigma sizes, per axis, of the navigation, guidance and control errors , and of the first lesson. Zero mean and independent of each other.
- Budget
- The list together with the assumption that they combine as below.
- Margin
- The ratio, or the difference, between what the requirement allows and what the budget uses.
The miss along one axis is the sum from the first lesson. For independent zero-mean errors the variances add, which is the root-sum-square rule:
For a circular Gaussian error with spread on each axis, the probability that the landing is within a radius is:
Inverting it gives the radius that contains a probability , and the spread that a requirement allows:
Derivation: variances add, and a budget has a dominant term
The RSS rule is not a convention. It follows from the algebra of variance, in four lines. The probability results above are quoted from the Probability course; what this lesson adds is the combination of the three errors and the use of the result for design.
For zero-mean errors the variance of the miss is the average of its square. means the average over many flights.
Expand the square. It has three squares and three cross terms.
For independent errors the average of a product is the product of the averages, and each average is zero. All three cross terms vanish. This is the step that fails for biased or correlated errors.
What is left is the sum of the three variances: root-sum-square for the standard deviations.
Halving one term to removes from the total variance. The saving is three quarters of that term's share of the variance, so the term with the biggest variance repays effort best.
The last line is the design rule hidden in the algebra. Because squares dominate, a term that is twice as large as another contributes four times as much variance, and a term that is three times as large contributes nine times. Once one term is dominant, improving the others buys almost nothing: if navigation is times larger than guidance and control, they together account for only 18% of the variance. The first job of a budget review is to find the dominant term. The second is to ask whether it is cheaper to reduce that one or to relax the requirement.
Errors add as squares, so a budget is dominated by its largest line. Effort spent on the smaller lines is mostly wasted until the largest has been brought down.
A worked example
Hopper must land within m of the pad centre in at least of flights. Build the budget and check it.
- Convert the requirement. , so the total spread must satisfy m per axis.
- Propose an allocation. Navigation 0.60 m (the beacon ranges and the filter), guidance 0.50 m (the terminal conditions the law can reach) and control 0.50 m (the tracking of the final command). These are the one-sigma values per axis.
- Combine. m. It is below 0.989 m, so the allocation meets the requirement, with a margin of 6%.
- Compute the probability. . So 99.47% of the flights land within 3 m, against the 99% required.
- Find the dominant term. Navigation carries of the variance, guidance and control 29.1% each. Halving navigation raises the probability to 0.9995; halving either of the others only to 0.9988. Navigation is the line to work on, but only slightly: this is a balanced budget.
- Check the 3 sigma folk rule. A circle of radius contains 98.9% of the landings in two dimensions. A team that sizes by "3 sigma means 99.7%" is misled by about one percentage point, which is a factor of four in the number of misses.
The same arithmetic as a program (standard library only):
import math
R, P = 3.0, 0.99 # land within R metres of the pad with probability P
k = math.sqrt(-2.0 * math.log(1.0 - P)) # radius containing probability P, in units of sigma
sigma_req = R / k
print(f'a {P:.0%} circle has radius {k:.3f} sigma, so the total error must be sigma <= {sigma_req:.3f} m per axis')
print(f'a 3 sigma circle holds {1 - math.exp(-4.5):.4f} of the flights, not 0.9973')
budget = {'navigation': 0.60, 'guidance': 0.50, 'control': 0.50} # one-sigma errors per axis (m)
def rss(terms):
return math.sqrt(sum(s * s for s in terms.values()))
def p_within(R, sigma):
return 1.0 - math.exp(-R * R / (2.0 * sigma * sigma))
total = rss(budget)
print(f'budget: total {total:.3f} m per axis, P(miss <= {R} m) = {p_within(R, total):.4f}')
for name, s in budget.items():
halved = dict(budget, **{name: s / 2})
print(f' {name:<10} {s:.2f} m = {s * s / total ** 2:5.1%} of the variance; halve it and P = {p_within(R, rss(halved)):.4f}')a 99% circle has radius 3.035 sigma, so the total error must be sigma <= 0.989 m per axis a 3 sigma circle holds 0.9889 of the flights, not 0.9973 budget: total 0.927 m per axis, P(miss <= 3.0 m) = 0.9947 navigation 0.60 m = 41.9% of the variance; halve it and P = 0.9995 guidance 0.50 m = 29.1% of the variance; halve it and P = 0.9988 control 0.50 m = 29.1% of the variance; halve it and P = 0.9988
In robotics
Every programme that has a landing, a pointing or a rendezvous requirement keeps a budget of this kind, and its structure is the one in the example.
- Planetary landers. Mission requirements are expressed as a landing ellipse, the region that contains the landing with a stated probability. Narrowing it has meant working on each line of the budget: guided entry reduced the guidance and control terms, and terrain-relative navigation, used by the Mars 2020 lander, reduced the navigation term by letting the vehicle see where it actually is.
- Delivery drones. Consumer GNSS receivers are typically accurate to a few metres horizontally, which would consume the whole budget of a pad one metre wide. Precision landing therefore replaces the navigation term with a camera that looks at a marker on the pad. The change is a change of the navigation line, not of the controller.
- Pointing. A satellite that must keep a camera within 0.1 degrees of a target budgets the attitude determination error, the control error and the alignment error between the camera and the star tracker in the same way.
- Requirements flow-down. The same logic appears in systems engineering generally. UAV M8-T1: System requirements engineering and UAV M8-T2: Requirements decomposition describe how a requirement is broken down; this lesson gives the quantitative rule for a requirement on an error.
For the underlying probability, Probability M4-T1: Expectation and Variance proves that variances of independent errors add, Probability M4-T4: Propagating Uncertainty Through Transformations extends it to covariances through a linear map, and Probability M1-T3: Simulating Randomness is the way to check a budget by simulation.
Common misconceptions
“Add the errors.”
Adding gives the worst case, and it is too pessimistic for independent random errors: 0.6 + 0.5 + 0.5 = 1.6 m, against the root-sum-square of 0.93 m. It is the right rule for biases, which do not average out. A real budget separates the two: random terms combine in quadrature, and biases are added on top.
“3 sigma always means 99.7%.”
That number is for one dimension. Landings are two-dimensional, and a 3 sigma circle holds 98.9% of them, so about 1.1% of landings fall outside, nearly four times more than the 0.3% the folk rule suggests. Use the radius for the probability you need: 3.03 sigma for 99% in two dimensions.
“Split the allowance equally among the three blocks.”
An equal split ignores what each reduction costs. Halving a sensor's noise might need a new sensor, while halving a controller's tracking error might need a gain change. The right split puts the effort where the next unit of error reduction is cheapest, and the squares in the algebra mean the largest line is usually the best place to look first.
“If the budget meets the requirement, the vehicle does.”
The budget holds only if the errors are independent, zero-mean and Gaussian, and if the three sizes are what the real subsystems deliver. Real errors have biases, correlations and heavy tails. A budget is where design starts. A Monte Carlo campaign of dispersed flights, as in module 12, is how it is checked.
“The navigation error is the accuracy of the sensor.”
It is the accuracy of the estimate, which depends on the sensor and on the filter, its model, its tuning, its latency and the geometry of the measurements. A sensor with 0.5 m noise can produce an estimate with an error well above or well below 0.5 m, depending on how it is used.
Key takeaways
- A mission requirement is a radius and a probability. For a circular Gaussian miss the radius that holds probability is .
- In two dimensions, 50%, 95% and 99% of landings fall within 1.18, 2.45 and 3.03 sigma, and a 3 sigma circle holds 98.9%.
- Independent zero-mean errors combine by root-sum-square: . Biases add directly, and correlated errors add more.
- A budget is dominated by its largest line, because variance goes as the square. Halving the largest line saves three quarters of its share.
- Navigation, guidance and control each get a line from the identity of the first lesson, so a budget can be checked against a flight log.
- A budget is a design tool, not a proof. Module 12 verifies it by dispersed simulation.
References and further reading
Each source is marked free or paid. Free to read does not mean free to reuse: the course resources page lists every source with its licence.
- J. M. Hanson and B. B. Beard, Applying Monte Carlo Simulation to Launch Vehicle Design and Requirements Analysis, NASA, 2010 . How many runs a requirement needs and how to state the result with a confidence. Free to read; a NASA report.
- C. J. Dennehy, Best Practices for the Design, Development, and Operation of Robust and Reliable Space Vehicle GN&C Systems, NASA/TP-20230005922, 2023 . Practical rules on requirements, margins and verification. Free to read; a US Government work.
- J. Tsitsiklis and P. Jaillet, MIT RES.6-012 Introduction to Probability , the lectures on variance and on sums of independent random variables. Free videos and notes; licence CC BY-NC-SA 4.0.
- P. Zarchan, Tactical and Strategic Missile Guidance, AIAA, 6th edition, 2012, the material on miss-distance analysis and error sources. A standard reference for how guidance errors build up. Paid book.
Knowledge check
Three questions. Write an answer, then reveal the explanation. Your answers stay in your browser.
Question 1
A satellite must point a camera within 5 m of a target on the ground, 95% of the time, and its footprint error is circular and Gaussian. What per-axis spread σ may the total error have?
Explanation
The 95% radius is 2.448σ, so σ ≤ R / 2.448 = 5 / 2.448 = 2.04 m per axis. Notice that a naive "2σ is 95%" rule from one dimension would have allowed σ = 2.5 m and understated the risk: in two dimensions a 2σ circle holds only 1 − e^(−2) = 86.5% of the cases.
Question 2
A budget for Hopper gives navigation 1.2 m, guidance 0.8 m and control 0.5 m, all one-sigma per axis. What is the probability of landing within 3.0 m, and which line would you work on first?
Explanation
The variance is 1.44 + 0.64 + 0.25 = 2.33 m², so σ = 1.53 m. The probability is 1 − exp(−9 / (2 × 2.33)) = 1 − exp(−1.931) = 0.855, far below the 99% required. Navigation carries 1.44 / 2.33 = 62% of the variance, so it is the line to work on first. Halving it to 0.6 m gives a variance of 1.25 m² and a probability of 1 − exp(−9 / 2.5) = 0.973, while halving control to 0.25 m would reach only 0.878. Even the best single halving falls short of 99%, so this budget needs more than one change.
Question 3
The pad coordinates were surveyed with a constant error of 0.8 m, and the random part of the landing error is σ = 0.5 m per axis. A colleague treats the bias as one more random term, √(0.8² + 0.5²) = 0.94 m, and compares it with the 0.989 m allowed for 99% within 3 m. Is the method sound, and what simple bound would you use instead?
Explanation
No. A constant offset is a bias: it shifts the whole cloud of landings by 0.8 m instead of widening it, and the root-sum-square rule assumes zero-mean independent errors. Treating the bias as a spread happens to give a safe answer here (3.035 × 0.94 = 2.86 m, below 3.0 m) but for the wrong reason, and it wastes margin: it would reject a 2.5 m requirement that the vehicle in fact meets. A simple safe bound comes from the triangle inequality: the miss is at most the bias plus the random radius, so the 99% radius is at most 0.8 + 3.035 × 0.5 = 2.32 m, which passes. A numerical calculation for an offset circular Gaussian gives about 2.06 m, so the bound is safe and not far off.
What’s next
Related content
Nothing below is required to finish this lesson.
- BeforeM1-T3: One Block Diagram, Four Vehicles
Map the same GNC diagram onto a rover, a multirotor, an aircraft and a spacecraft, and say which blocks change and why.
- LabM1-L1: Who Missed the Pad?
Hopper lands 4 m from its pad in three different flights. From the logged truth, estimate and command signals, decide in each flight whether navigation, guidance or control is responsible.
Other courses on this site treat neighbouring topics from their own angle:
- UAV M5-T15: Guidance and control integration
- UAV M1-T12: Complete UAV system architecture and data flow
- Navigation M1-T2: The Navigation Stack at a Glance
- Physical AI: The Physical AI stack
This course leaves the following to the pages that already teach them:
Get notified when the next lesson and new labs are released.
One email per new lesson or lab.