---
title: Retrospective Cost Adaptive Control (RCAC)
url: https://www.emergentmind.com/topics/retrospective-cost-adaptive-control-rcac-664831ae-2cdc-4752-95a2-96474e6d697a
type: topic
---

# Retrospective Cost Adaptive Control (RCAC)

Searching arXiv for recent and foundational papers on Retrospective Cost Adaptive Control to ground the article in cited research.
Retrospective Cost Adaptive Control (RCAC) is a direct adaptive control methodology for discrete-time and sampled-data systems in which a linearly parameterized controller is updated online by minimizing a quadratic **retrospective cost** built from measured closed-loop data and a reconstructed “what-if” performance variable. In the formulation used across recent aerospace, propulsion, and estimation applications, RCAC combines a controller parameterization such as \(u_k=\Phi_k\theta_k\), a retrospective performance variable \(\hat z_k(\theta)\) that evaluates how performance would have changed under an alternative controller parameter, and a recursive least-squares-like minimization of a cumulative quadratic objective [2506.08157], [2102.07191]. In contemporary practice, RCAC appears both in its canonical sampled-data form for command following and disturbance rejection and in application-specific variants such as adaptive digital autopilot augmentation, multicopter autotuning, thrust regulation for solid-fuel ramjets, and retrospective-cost-based attitude estimation [2110.11390], [2109.12797], [2401.13092].

## 1. Historical framing and conceptual identity

RCAC is presented in the recent literature as a **digital adaptive control technique** applicable to stabilization, command following, and disturbance rejection, using past measured data and past applied input to recursively optimize controller gains online [2110.11390], [2210.13621]. Its contemporary role is especially clear in application papers that contrast it with fixed-gain robust control and model-heavy adaptive designs: fixed-gain control trades nominal performance against uncertainty, whereas RCAC seeks online performance recovery or improvement using limited plant-side structural information rather than a full identified model [2102.07191], [2110.11390].

A central point in the literature is terminological. In propulsion and flight-control papers, **retrospective cost optimization (RCO)** denotes the optimization principle, while **retrospective cost adaptive control (RCAC)** denotes the controller implementation derived from that principle [2506.08157]. This distinction is explicit in the solid-fuel ramjet thrust-regulation study, where the controller is said to be “based on retrospective cost optimization,” but the implemented algorithm is explicitly labeled RCAC [2506.08157].

Recent work also makes clear that RCAC is best understood as a **controller-parameter adaptation framework**, not a plant-parameter identification framework. In multicopter autotuning and PX4 autopilot augmentation, RCAC updates gains of existing P/PI/PID-type loops rather than first identifying a high-fidelity model of the airframe [2109.12797], [2012.02896]. A plausible implication is that RCAC is particularly attractive in embedded control stacks where the baseline structure is already acceptable and only gain adaptation or augmentation is desired.

## 2. Canonical mathematical structure

The canonical RCAC structure appearing across recent papers begins with a linearly parameterized controller,
\[
u_k=\Phi_k\theta_k,
\]
where \(\Phi_k\) is a regressor formed from measured signals and \(\theta_k\) is the adaptive controller parameter vector [2506.08157], [2102.07191]. In the propulsion and autopilot papers, \(\Phi_k\) is typically constructed from tracking error, integral-of-error, error differences, and optionally feedforward references [2506.08157], [2110.11390], [2109.12797].

The defining RCAC ingredient is the **retrospective performance variable**, which in one standard form is written as
\[
\hat z_k(\theta)=z_k+G_f(q^{-1})(\Phi_k\theta-u_k),
\]
with \(G_f(q^{-1})\) an FIR surrogate filter [2506.08157], [2401.13092]. In digital PID-specialized formulations used in flight-control and multicopter papers, this reduces to a one-step form
\[
\hat z_k(\theta)=z_k+\sigma(\phi_{k-1}\theta-u_{k-1}),
\]
where \(\sigma\) is the sign of the leading numerator coefficient of the transfer function from \(u_k\) to \(z_k\) [2110.11390], [2109.12797], [2012.02896], [2006.00416]. In both cases, \(\hat z_k(\theta)\) is a reconstructed or hypothetical performance variable answering the counterfactual question: what would the current performance have been if a different controller parameter had been used?

The retrospective cost is then formed as a cumulative quadratic objective. A widely used form is
\[
J_k(\theta)=\sum_{i=0}^k \hat z_i(\theta)^T R_z \hat z_i(\theta)+(\theta-\theta_0)^T P_0^{-1}(\theta-\theta_0),
\]
or, in PID-specialized formulations with explicit control regularization,
\[
J_k(\theta)=\sum_{i=0}^k \hat z_i(\theta)^T R_z \hat z_i(\theta)+(\phi_k\theta)^T R_u(\phi_k\theta)+(\theta-\theta_0)^T P_0^{-1}(\theta-\theta_0)
\]
[2506.08157], [2110.11390], [2109.12797]. The parameter update is the minimizer
\[
\theta_{k+1}=\arg\min_{\theta}J_k(\theta),
\]
which, because \(J_k\) is quadratic in \(\theta\), admits an RLS-style recursion [2506.08157], [2110.11390].

A representative recursive update used in the SFRJ paper is
\[
\theta_{k+1}=\theta_k-P_{k+1}\Phi_{f,k}^T R_z\left(z_k+\Phi_{f,k}\theta_k-u_{f,k}\right),
\]
with covariance recursion
\[
P_{k+1}=P_k-P_k\Phi_{f,k}^T\left(R_z^{-1}+\Phi_{f,k}P_k\Phi_{f,k}^T\right)^{-1}\Phi_{f,k}P_k,
\]
where \(\Phi_{f,k}=G_f(q^{-1})\Phi_k\) and \(u_{f,k}=G_f(q^{-1})u_k\) [2506.08157]. In the digital PID flight-control literature, the analogous recursion includes both performance and control penalties through \(R_z\) and \(R_u\) [2110.11390], [2109.12797].

This mathematical structure explains why RCAC is often described as a direct adaptive method with least-squares flavor: it updates controller coefficients, not plant parameters, but it does so by solving a recursively updated quadratic optimization problem using measured data.

## 3. Target-model information, feasibility, and nonminimum-phase structure

A major theoretical point developed in the data-driven RCAC paper is that RCAC is not assumption-free with respect to plant structure [2102.07191]. In sampled-data SISO settings, the target model must encode specific information about the plant, and the paper identifies the essential elements as the **sign of the leading numerator coefficient**, the **relative degree**, and **all nonminimum-phase zeros** of the discretized plant [2102.07191].

This requirement arises because the closed-loop map that RCAC attempts to shape inherits the plant numerator. The paper shows that if the target model omits actual nonminimum-phase zeros, the adaptation may attempt their cancellation through unstable controller poles, leading to hidden instability [2102.07191]. Thus, for SISO systems, a nominal quasi-feasible target model must preserve those numerator-side structural features even if the full plant model is unknown.

The same paper introduces **data-driven RCAC (DDRCAC)**, which combines RCAC with online system identification via RLS with variable-rate forgetting. In DDRCAC, the identified numerator of the input-output model is used to build a time-varying target model, thereby supplying online the structural information—especially NMP zero content—that RCAC needs [2102.07191]. This is a significant shift from standard RCAC: instead of assuming the target-model information is known a priori, the controller identifies the limited plant-side information required for retrospective-cost adaptation.

A plausible implication is that RCAC occupies a middle ground between purely model-free heuristics and full certainty-equivalent adaptive control. The adaptation law itself may be data-driven, but target-model feasibility remains a structural issue, especially for nonminimum-phase plants [2102.07191].

## 4. Controller parameterizations and implementation styles

Recent applications overwhelmingly implement RCAC through low-order, linearly parameterized controllers. The most common parameterizations are adaptive P, PI, PID, and PID-plus-feedforward forms [2506.08157], [2110.11390], [2109.12797], [2012.02896], [2006.00416].

In the SFRJ thrust-regulation framework, RCAC adapts a PID controller with
\[
u_k=K_{P,k}z_k+K_{I,k}\gamma_k+K_{D,k}(z_k-z_{k-1}),
\]
written compactly as
\[
u_k=\Phi_k\theta_k,\qquad
\Phi_k=\begin{bmatrix} z_k & \gamma_k & z_k-z_{k-1}\end{bmatrix},\qquad
\theta_k=\begin{bmatrix} K_{P,k}\ K_{I,k}\ K_{D,k}\end{bmatrix}
\]
[2506.08157]. In fixed-wing PX4 augmentation and multicopter autotuning, the parameter vector often includes a feedforward term,
\[
u_k=K_{{\rm P},k}z_{k-1}+K_{{\rm I},k}\gamma_{k-1}+K_{{\rm D},k}(z_{k-1}-z_{k-2})+K_{{\rm ff},k}r_k,
\]
with regressor
\[
\phi_k=\begin{bmatrix} z_{k-1}\ \gamma_{k-1}\ z_{k-1}-z_{k-2}\ r_k\end{bmatrix}^T
\]
[2110.11390], [2109.12797].

The choice of regressor is application-dependent. In the quadcopter PX4 augmentation paper, proportional augmentations are used in position and reduced-attitude channels, PI in velocity channels, and PID+feedforward in angular-rate channels [2012.02896]. In the multicopter autotuner, all 27 PX4 gains across the position, velocity, attitude, and rate loops are adapted by assigning controller-specific regressor structures and error-normalization functions \(g(z)\), including both \(g(z)=z\) and
\[
g(z)=\operatorname{erf}\!\left(\frac{\sqrt{\pi}}{2}z\right)
\]
depending on the loop [2109.12797].

The continuous-time extension, CTRCAC, retains the RCAC logic but replaces the sampled-data recursion with continuous-time filtered signals and a continuous-time retrospective cost,
\[
J(t,\hat\theta)=\int_0^t\Big(\hat z(\tau,\hat\theta)^TR_z\hat z(\tau,\hat\theta)+(\Phi(\tau)\hat\theta)^TR_u(\Phi(\tau)\hat\theta)\Big)d\tau+\hat\theta^TR_\theta\hat\theta,
\]
leading to differential equations for \(\theta(t)\) and \(P(t)\) [2506.08042]. This extension preserves the retrospective-cost principle while removing the primary dependence on a discrete-time implementation.

## 5. Application domains

RCAC has recently been used in multiple aerospace and propulsion contexts. The dominant implementation pattern is not wholesale controller replacement but **adaptive augmentation** of an existing architecture.

In fixed-wing autopilot work, RCAC augments the PX4 inner-loop attitude controller while leaving the mission planner, TECS, guidance law, and control allocation intact [2110.11390], [2210.13621]. Adaptive signals are added to the pitch-rate and roll-rate command generators and, conceptually, to the angular-acceleration command stage. This augmentation architecture is central: RCAC learns corrective inner-loop action to compensate degraded nominal gains or actuator faults without redesigning the entire flight stack [2110.11390]. The 2022 fixed-wing paper extends this to physical flight experiments on a Volantex Ranger 1600 and reports that the augmented adaptive autopilot recovers baseline performance under degraded nominal gains and improves tracking under a stuck-aileron fault [2210.13621].

In multicopters, RCAC has been used in two distinct ways. One is adaptive augmentation of PX4, where parallel adaptive signals \(u_r\), \(u_v\), \(u_q\), and \(u_\omega\) are added to the nested position and attitude loops [2012.02896]. The other is **autotuning**, where fixed gains in the cascaded PX4 autopilot are replaced by adaptive gains that are learned over a single “learning trajectory” flight and then saved as an autotuned controller [2109.12797]. The autotuner paper reports performance improvements on a second-order Hilbert-curve trajectory of \(38.4\%\) in simulation and \(32.3\%\) in real flight tests relative to default PX4 gains [2109.12797].

In propulsion, RCAC has been applied to solid-fuel ramjet thrust regulation. One study integrates RCAC with a neural-network thrust estimator because thrust is not directly measurable in flight; the neural network maps in-situ measurements \((r_0,P_{t4},X_{CO},H)\) to estimated thrust, and RCAC then regulates the estimated thrust by adjusting a variable capture radius \(r_0\) [2506.08157]. A later CFD-based SFRJ study uses an adaptive PI controller updated online by RCAC to regulate thrust through combustor-wall heat-flux modulation, with the key implementation point that the adaptive update uses measured thrust data rather than the CFD model itself [2511.04580].

RCAC ideas have also migrated beyond control into estimation. The retrospective cost attitude estimator (RCAE) on \(\mathrm{SO}(3)\) uses an RCAC-style retrospective cost to adapt a scalar correction magnitude inside a multiplicative attitude-estimation update [2401.13092]. This preserves the structure of RCAC—parameterized correction, retrospective performance variable, quadratic retrospective cost, RLS-style update—but repurposes it for state estimation rather than control. This suggests that retrospective-cost machinery is portable across control and estimation problems when a suitable performance variable can be defined.

### Representative recent application papers

| Domain | Role of RCAC | Representative paper |
|---|---|---|
| Fixed-wing flight control | Inner-loop adaptive augmentation, fault accommodation | [2110.11390], [2210.13621] |
| Multicopter control | PX4 augmentation and autotuning of 27 gains | [2012.02896], [2109.12797] |
| Ramjet propulsion | Adaptive thrust regulation with estimated or measured thrust | [2506.08157], [2511.04580] |

## 6. Practical behavior, tuning, and limitations

Across application papers, RCAC is consistently described as **model-light**, not model-free in an absolute sense. The fixed-wing PX4 paper states that RCAC requires only the sign \(\sigma\) of the leading numerator coefficient from adaptive input to performance variable [2110.11390]. The SFRJ thrust paper says RCAC “optimizes the controller coefficients using only the measured data and does not rely on the SFRJ model to update the controller gains,” but still uses a finite impulse response surrogate \(G_f(q^{-1})\), with the simplest choice \(N_1=1\) [2506.08157]. The CFD-based SFRJ paper likewise uses RCAC as a data-driven adaptive mechanism while still relying on offline knowledge to select nominal operating heat flux and safe pre-unstart envelopes [2511.04580].

Hyperparameter sensitivity is a recurring theme. In the SFRJ work, larger \(P_0\) yields faster convergence but larger overshoot, while larger \(N_1\) yields a faster response [2506.08157], [2511.04580]. In multicopter and fixed-wing applications, authors specify channel-dependent \(P_0\), \(R_u\), and sometimes \(\sigma\), but generally do not provide exhaustive tuning theory [2110.11390], [2210.13621], [2109.12797]. The continuous-time CTRCAC paper introduces particle swarm optimization to automate tuning of \(P_0\) and filter pole \(p_f\) offline in simulation, while experimental hyperparameters remain manually tuned [2506.08042].

Several practical limitations appear repeatedly. First, many papers provide only empirical validation and omit formal closed-loop stability theorems for the actual nonlinear plant-controller interconnection [2506.08157], [2110.11390], [2210.13621], [2506.08042]. Second, handling of saturation, anti-windup, and hard constraints is usually outside the RCAC law itself. The quadcopter augmentation paper explicitly reports that one adaptive angular-rate gain diverged in flight and had to be set to zero, highlighting the practical need for parameter bounding or projection even though these were not included in the reported implementation [2012.02896]. Third, persistence of excitation is rarely treated formally, though some papers address it operationally through designed learning trajectories that excite all loops [2109.12797].

A further source of confusion in the literature is the relation between RCAC and predictive-cost methods. Papers on **predictive cost adaptive control (PCAC)** and **nonlinear predictive cost adaptive control (NPCAC)** are methodologically adjacent but distinct: they perform online model identification and then solve a predictive finite-horizon optimization, whereas RCAC adapts controller parameters through a retrospective cost built on past measured data [2508.17577], [2602.05263]. The distinction is substantive rather than terminological. RCAC is retrospective and direct in its standard form; PCAC is predictive and indirect, with model identification feeding the controller. The Rijke-tube PCAC paper explicitly compares PCAC with prior RCAC results on the same thermoacoustic platform and reports faster suppression for PCAC, but this does not make PCAC an RCAC variant in the strict sense [2402.00346].

A final limitation is reproducibility. Several recent application papers use RCAC but omit the full retrospective cost and recursive update equations, instead citing earlier RCAC sources for algorithmic details [2210.13621], [2511.04580]. This reflects a mature methodology entering application-oriented literature: the architectural use of RCAC is central, but the full derivation is increasingly assumed background knowledge.

## 7. Extensions and adjacent developments

The RCAC framework has generated several notable extensions. **DDRCAC** integrates RCAC with online identification to estimate the target-model information needed for nonminimum-phase and MIMO plants [2102.07191]. **CTRCAC** carries the retrospective-cost idea into continuous time with continuous-time filtering and adaptive ODEs for \(\theta(t)\) and \(P(t)\) [2506.08042]. **RCAE** ports retrospective-cost optimization to attitude estimation on \(\mathrm{SO}(3)\), showing that the core machinery is not limited to control inputs but can also update estimator corrections [2401.13092]. **RC/ESC**, a retrospective-cost-based extremum-seeking controller with vanishing perturbation, uses RCAC-style retrospective optimization to reduce the need for persistent dither in online output minimization [2402.03717].

These developments suggest that the essential RCAC pattern is broader than any single controller family. That pattern consists of four elements: a linearly parameterized decision law, a retrospective performance variable, a cumulative quadratic cost, and a recursive least-squares-type update. What changes across domains is the interpretation of the “control” variable, the choice of performance variable, and the source of surrogate dynamics used to reconstruct retrospective performance [2401.13092], [2402.03717].

From the perspective of current arXiv literature, RCAC is therefore best characterized as a **retrospective quadratic optimization framework for direct adaptive update of controller or correction parameters**, especially effective when low-order controller structures are preferred, accurate reduced-order models are unavailable, and measured closed-loop data are abundant [2506.08157], [2511.04580], [2102.07191]. Its strongest contemporary contributions are not new theoretical derivations of the canonical law, but the demonstration that the retrospective-cost principle can be embedded in real autopilot stacks, propulsion-control loops, and even nonlinear estimation pipelines while preserving computational tractability and architectural simplicity.

Source: https://www.emergentmind.com/topics/retrospective-cost-adaptive-control-rcac-664831ae-2cdc-4752-95a2-96474e6d697a