State Estimation for the Twin
Kronos fuses noisy multi-rate diagnostics with physics forecasts using nonlinear state estimation, so the twin holds a best estimate with quantified uncertainty.
Fusing model and measurement
State estimation answers: given a physics forward model and noisy, partial measurements, what is the most probable current state and how uncertain is it? Kronos uses nonlinear estimators, ensemble and unscented Kalman-type filters, because the twin dynamics (equilibrium, ambipolar potential, thermomechanics) are nonlinear and the measurement maps (a flux-loop integral, a line-integrated chord) are nonlinear too.
# predict-update cycle (nonlinear, ensemble form)
# predict: push each ensemble member through the twin surrogate
X_pred = [f_twin(x, u) for x in ensemble]
# update: correct with measurement y via Kalman gain from sample stats
K = cross_cov(X_pred, H(X_pred)) @ inv(cov(H(X_pred)) + R_meas)
ensemble = [x + K @ (y - H(x)) for x in X_pred]
x_hat = mean(ensemble); P = cov(ensemble) # estimate + uncertainty
The ensemble spread P is the twin's uncertainty, and it flows everywhere: MPC tightens its envelope when P grows, the anomaly ensemble scales its forecast-residual test by P, and operators see calibrated confidence. Imputed channels enter with inflated measurement noise R_meas, so reconstructed data widens uncertainty rather than falsely sharpening it.
Why not a simple filter
A linear filter would misrepresent the nonlinear equilibrium and confinement physics and could produce over-confident, biased estimates near the strongly nonlinear operating points that matter most, the pedestal, the plug throat. The ensemble/unscented approach propagates uncertainty through the true nonlinear model, so the twin's confidence stays honest across the operating space.
The estimator uses the twin surrogates as its forward model, so it inherits their speed and differentiability, and it is validated in the plant-in-the-loop simulation before FOAK. Its uncertainty calibration is checked, an estimator that is confidently wrong is more dangerous than one that is honestly uncertain, so calibration is a gating validation criterion.