systems theory//engineering patterns//uncertainty as first-class
Uncertainty as first-class is the engineering principle that every estimate travels with its uncertainty, as a data type the system computes, propagates and decides with, because a number without an error bar is an opinion with decimals and cannot support a decision. It is used to judge any estimator, predictor or model by whether it says how wrong it might be. A prediction that a pump has 40 days of life left is useless on its own: with an interval of 38 to 42 days the maintenance can wait for the next planned stop, with 5 to 120 days it cannot, and the same point estimate leads to opposite decisions.
Uncertainty as first-class is the engineering principle that every estimate travels with its uncertainty, as a data type the system computes, propagates and decides with, because a number without an error bar is an opinion with decimals and cannot support a decision. It is used to judge any estimator, predictor or model by whether it says how wrong it might be. A prediction that a pump has 40 days of life left is useless on its own: with an interval of 38 to 42 days the maintenance can wait for the next planned stop, with 5 to 120 days it cannot, and the same point estimate leads to opposite decisions.
Probability is the language for this. Each source of doubt is written as a distribution: the sensor's noise as a variance measured on the bench (measurement noise), the model's error as another variance tuned in the field (process noise), a belief about a parameter as a prior. From there the uncertainty is carried through every computation along with the estimate, growing with each prediction and shrinking with each informative measurement.
Uncertainty is what turns an estimate into an action. Knowing how wrong you can be is what decides whether to stop the machine or wait, whether a fault alarm is believable, whether a drone can land on the platform or must go around. An estimator that returns only its best guess has thrown away the half of its answer the decision needed.
The Kalman filter is the pattern built into an algorithm. Its estimate covariance PPP is propagated through the model and shrunk by every measurement, it sets the filter's own weights, and it leaves as an output for whoever consumes the estimate. The general rule for pushing a covariance through a function, JΣJ⊤J\Sigma J^\topJΣJ⊤, is uncertainty propagation, and the error budget of a whole system is built with it.
When a single bell is not enough, the particle filter carries the uncertainty as a cloud of weighted samples, which can hold two hypotheses at once; Bayesian inference in general returns a posterior distribution instead of a value.
In prognostics the remaining useful life is given as a distribution, and predictive maintenance decides on its lower quantile; reliability engineering states failure probabilities over a mission time rather than a single lifetime.
Decisions on uncertain states are the subject of decision theory: a POMDP decides on beliefs, distributions over the state, rather than on the state itself, and the industrial shortcut of certainty equivalence (act as if the estimate were true, with a margin) is justified exactly when the uncertainty is small or the cost symmetric.
A model that does not know what it does not know is a hazard. A neural network gives confident outputs far from its training data, and an uncalibrated probability is no better than a point estimate (probability calibration).
The principle has a cost: uncertainty must itself be estimated, and a filter whose stated covariance is wrong (too small after tuning, inconsistent after a model change) is worse than one that states none, because it is trusted. Checking it is filter consistency. The principle leads to tails over means; siblings in engineering patterns.