---
title: Probabilistic Aircraft Thrust & Airspeed Model
url: https://www.emergentmind.com/topics/probabilistic-model-of-aircraft-thrust-and-airspeed
type: topic
---

# Probabilistic Aircraft Thrust & Airspeed Model

A probabilistic model of aircraft thrust and airspeed provides a data-driven, uncertainty-aware framework for generating aircraft trajectories in which thrust and airspeed profiles are treated as random functions conditioned on contextual features. The central application is trajectory prediction (TP) in air traffic management, where operational uncertainty and variable meteorological conditions necessitate a model that can quantify both mean behavior and probabilistic deviations. Recent advancements leverage machine learning to estimate distributions over thrust and calibrated airspeed (CAS) profiles, enforcing physical plausibility by integrating data-driven corrections within the physics-based Base of Aircraft Data (BADA) trajectory simulator. This approach yields a hybrid, physics-informed, probabilistic modeling architecture with demonstrable improvements in predictive skilfulness [2601.03152].

## 1. Hybrid Physics-Informed Learning Architecture

The core modeling framework is the Probabilistic–Physics-Informed Machine Learning (PIML) scheme, which augments the deterministic BADA model with a learned conditional distribution for aircraft thrust and CAS profiles. The pipeline comprises:

- **BADA deterministic core**: Governs trajectory integration via the energy-balance and aerodynamic relationships, requiring time-indexed thrust $T_{HR}(h)$ and CAS $V_{CAS}(h)$ as inputs.
- **Data-driven projection of profiles**: True thrust and CAS profiles are projected onto orthonormal bases derived via functional principal component analysis (fPCA). The resulting low-dimensional "signature" consists of latent weights $\boldsymbol{\alpha}$ for thrust and $\boldsymbol{\beta}$ for CAS. The joint latent variable is $\boldsymbol{y} = [\boldsymbol{\alpha},\,\boldsymbol{\beta}]^\top$.
- **Probabilistic conditioning**: A machine-learning model estimates the conditional distribution $p(\boldsymbol{y} \mid \boldsymbol{x})$, where $\boldsymbol{x}$ encodes meteorology, operator, flight plan, and other contextual features.

At inference, $M$ samples are drawn from $p(\boldsymbol{y} \mid \boldsymbol{x})$; each sample yields reconstructed thrust and airspeed profiles via the fPCA basis, which are then passed to BADA for trajectory simulation. The resulting trajectories obey aerodynamics and energy constraints by construction.

## 2. Feature Selection and Conditioning Variables

The conditional model's feature vector $\boldsymbol{x} \in \mathbb{R}^{14}$ encodes the operational and meteorological context. Features are selected via a random forest importance analysis, requiring at least a 2% improvement in held-out $R^2$ for the dominant fPCA mode across several selection heuristics.

Key inputs include:

- **Operator and origin airport**: Capture airline-specific procedures and local air traffic control (ATCO) effects.
- **Filed intent code and flight type**: Reflect route intentions and associated gross weight differences.
- **Flight level statistics (FL\_min, FL\_max, FL\_range)**: Quantify altitude structure, impacting both thrust and CAS via ambient pressure and temperature dependence.
- **Meteorological summaries**: Mean, standard deviation, and time gradient of along-track wind and temperature deviation from International Standard Atmosphere (ISA) along each sub-trajectory.

Categorical features use K-fold target encoding (GP) or one-hot encoding (DE). Cyclic time features are handled via sin/cos transforms. All continuous features are unit-variance scaled.

## 3. Mathematical Structure of the Probabilistic Model

The probabilistic model treats the latent vector $\boldsymbol{y} = [\alpha_1, ..., \alpha_{n_\alpha}, \beta_1, ..., \beta_{n_\beta}]^\top$ as jointly distributed, but, after fPCA projection, the components are modeled as statistically independent:

$$
p(\boldsymbol{y}\mid\boldsymbol{x}) = \prod_{i=1}^d p(y_i\mid\boldsymbol{x}),
$$

where $d = n_\alpha + n_\beta$. The principal modeling options are:

- **Gaussian Process (GP) regression**: For each $y_i$, $p(y_i\mid\boldsymbol{x}) = \mathcal{N}(\mu^{(i)}(\boldsymbol{x}), \sigma^{2\,(i)}(\boldsymbol{x}))$, with mean and variance inferred via a Matérn 5/2 kernel and inducing-point sparse variational inference. Training scales to $N\sim10^5$ using $m\leq1000$ inducing locations.
- **Deep Ensemble (DE) of Multi-Layer Perceptrons**: An ensemble of $E=8$ MLPs, independently parameterized, each predicts $(\mu_{i,k}(\boldsymbol{x}), \sigma^2_{i,k}(\boldsymbol{x}))$ per $y_i$. Neg. log-likelihood loss is minimized. At inference, mean and variance estimates are ensembled, decomposing uncertainty into aleatoric and epistemic components.
- **Baseline multivariate Gaussian**: Fits a single unconditional normal distribution over all $\{\boldsymbol{y}\}$ by expectation–maximization, serving as the unconditioned reference.

Given a sampled $\boldsymbol{y}^{(m)}$, reconstructed thrust and CAS profiles are generated as

$$
\begin{aligned}
\hat{T}_{HR}^{(m)}(h) & = \mu_{T_{HR}(h)} + \sum_{i=1}^{n_\alpha} \alpha_i^{(m)} \phi_i(h), \\
\hat{V}_{CAS}^{(m)}(h) & = \mu_V(h) + \sum_{j=1}^{n_\beta} \beta_j^{(m)} \psi_j(h).
\end{aligned}
$$

## 4. Physical Constraints via BADA Dynamics

Trajectory generation is governed by the BADA energy balance, specifically the Total Energy Equation for climb/descent:

$$
\frac{dh}{dt} = \frac{T_{HR}(h) - D(V_{TAS}, h)}{m g_0} V_{TAS} f(M(h, V_{TAS}))
$$

with $T_{HR}(h)$ (propulsive thrust along the path), $D(V_{TAS},h)$ (aerodynamic drag), $V_{TAS}$ (true airspeed after Mach/CAS conversion), $m$ (mass), $g_0$ (gravity), and $f(M)$ (energy-share function).

All generated profiles are filtered through BADA's models for atmosphere, drag, and temperature correction (temperature correction factor set to 1; aircraft parameters per BADA tables), ensuring physical plausibility. A rejection test discards any trajectory where the simulated climb rate $\dot{h}$ drops below 500 ft/min at any epoch.

## 5. Training Data, fPCA Basis, and Model Fitting Procedures

The model is trained on 200,000 climb segments across 60 days, derived from Mode-S radar surveillance and meteorological forecasts interpolated at each radar blip. Meteorological variables are summarized as per-segment statistics.

Functional PCA is performed individually per aircraft type for $(\hat{T}_{HR}(h),\,\hat{V}_{CAS}(h))$, trimming bases to explain 80% of the variance, yielding latent vectors of $d\approx10$–25 dimensions. Each climb segment is projected onto these bases via least-squares (ridge regularization with $\lambda=0$).

GP hyperparameters are optimized for predictive log-likelihood via stochastic variational inference (using GPyTorch). Deep Ensembles are implemented as 8 MLPs (hidden layers [128,256,128]), trained in TensorFlow with NLL objective and diversity ensured via random initialization and dropout. The EM-fitted Gaussian serves as the baseline.

Uncertainty in meteorology is handled implicitly: the learned model increases predictive variance in regions of high meteorological variability; explicit modeling of forecast errors is not carried out.

## 6. Evaluation Methodology and Results

Evaluation is conducted on a held-out 20% test split across ten aircraft types. Metrics comprise:

- **Mean prediction error**: RMSE for time-to-top-of-climb, mean rate of climb, and mean CAS.
- **Probabilistic calibration**: CRPS for each of the above, using Monte Carlo integration with $M=500$ samples.

A comparative skilfulness metric $S_m = 1 - \sum_k \mathrm{Score}_m(k)/\sum_k \mathrm{Score}_{\rm base}(k)$ is reported, using either RMSE or CRPS as "Score."

Results indicate that, averaged over types and metrics, the GP achieves $+22.5\%$ skilfulness, while the DE attains $+20\%$. For high-sample types (e.g., B738, A320), DE slightly outperforms GP (up to $+35\%$ on mean ROC RMSE); for rare types, GP exhibits greater stability. Rejection sampling eliminates 2.8% of GP, 3.2% of DE, and 6.8% of unconditioned baseline samples.

## 7. Monte Carlo Generation and Sampling Algorithm

Probabilistic trajectory generation is carried out using the following algorithmic template:

```python
# Input: Context features x, number of samples M
# Output: {trajectoryₘ(t)}ₘ=1..M

for m = 1 to M do
    Draw latent weights y^(m) ~ p(y | x)
    Reconstruct:
        T^(m)(h) = μ_T(h) + Σ_{i=1}^{n_α} α_i^(m) φ_i(h)
        Vc^(m)(h) = μ_V(h) + Σ_{j=1}^{n_β} β_j^(m) ψ_j(h)
    Convert Vc^(m) → V_TAS^(m)(h) via ISA & Mach/CAS formula
    Simulate trajectory z^(m)(t) by integrating dh/dt = f_BADA[T^(m)(h),D(V_TAS^(m),h),…]
    If ∃ t such that dh/dt < 500 ft/min then
        Reject sample and decrement m (retry)
end for
Return all accepted trajectories z^(m)(t)
```

Each trajectory $z^{(m)}(t)$ comprises time-indexed altitude, true airspeed, and associated physical variables at original radar timestamps. Post-processing allows computation of empirical quantiles or CRPS versus observed outcomes.

[2601.03152]

Source: https://www.emergentmind.com/topics/probabilistic-model-of-aircraft-thrust-and-airspeed