Survivability-Driven Reconfiguration After Irreversible Resource Loss
A matched experiment on a redundant single-axis cyber-physical system. The object loses first its nominal actuator and then its nominal sensor. EXP-03 tests whether the supervisor can preserve an admissible degraded mission by moving through a graph of configurations built only from resources that still exist.
One controlled coordinate, six redundant resources
The fixture is intentionally small enough to inspect by hand, but explicit enough to separate physical regulation from mission-level reconfiguration.
Each component expresses current resource operability. A destroyed resource remains at zero because EXP-03 contains no repair process.
Same plant, same faults — only reconfiguration changes
The experiment uses a matched baseline so the effect of structural reconfiguration can be separated from plant parameters or gain scheduling.
The configuration is held at \(c(t)\equiv c_0\) throughout both faults.
An invalid configuration triggers ANALYZE → SELECT → APPLY → VERIFY.
For both declared failure events, the damage equation produces complete irreversible loss: \(\rho_i^+=0\).
Fast regulation below, structural decisions above
The feedback gain is deliberately kept constant across mission-preserving configurations. EXP-03 therefore tests structural reconfiguration, not gain scheduling.
Plant: \(A=0.9\), \(K=0.8\), \(\xi_k=0.02\). The configuration changes the effective physical input path \(b(c,\boldsymbol{\rho})\).
Scalar discrete-time stability gate. With \(V(e)=e^2\), this is equivalent to \(\Delta V=(\gamma^2-1)e^2<0\) for non-zero error.
Resources become functions; functions constrain configurations
The selector uses only declared equations and the directed graph. There is no hidden transition score, risk coefficient or time penalty.
EXP-03 specialization for stabilization, tracking, telemetry and diagnostics.
Binary mission-function realizability after resource capability is evaluated.
\(\mathbf w=[0.45,0.30,0.15,0.10]^\top\), with \(\Phi_{\min}=0.65\).
Only outgoing graph successors are candidates. If no mission-preserving successor is admissible, SAFE_STOP is the fallback.
The graph is part of the selector, not a decoration
The same directed transition relation is stored in the executable model, converted to matrices and independently audited against the decision log.
| State | Actuator | Sensor | Network | Functions |
|---|---|---|---|---|
| \(c0\)NOMINAL | M_A | E | C_1 | STAB, TRACK, TEL, DIAG |
| \(c1\)BACKUP_ACTUATOR | M_B | E | C_1 | STAB, TRACK, TEL, DIAG |
| \(c2\)BACKUP_SENSOR | M_A | I | C_1 | STAB, TRACK, TEL, DIAG |
| \(c3\)LIMP_HOME | M_B | I | C_2 | STAB, TEL, DIAG |
| \(c4\)SAFE_STOP | — | I | C_2 | DIAG |
| \(c0\) | \(c1\) | \(c2\) | \(c3\) | \(c4\) | |
|---|---|---|---|---|---|
| \(c0\) | 0 | 1 | 1 | 1 | 1 |
| \(c1\) | 0 | 0 | 0 | 1 | 1 |
| \(c2\) | 0 | 0 | 0 | 1 | 1 |
| \(c3\) | 0 | 0 | 0 | 0 | 1 |
| \(c4\) | 0 | 0 | 0 | 0 | 0 |
| \(c0\) | \(c1\) | \(c2\) | \(c3\) | \(c4\) | |
|---|---|---|---|---|---|
| \(c0\) | 0 | 1 | 0 | 1 | 0 |
| \(c1\) | 0 | 0 | 0 | 1 | 0 |
| \(c2\) | 0 | 0 | 0 | 1 | 0 |
| \(c3\) | 0 | 0 | 0 | 0 | 1 |
| \(c4\) | 0 | 0 | 0 | 0 | 0 |
| \(c0\) | \(c1\) | \(c2\) | \(c3\) | \(c4\) | |
|---|---|---|---|---|---|
| \(c0\) | 0 | 0 | 0 | 1 | 0 |
| \(c1\) | 0 | 0 | 0 | 1 | 0 |
| \(c2\) | 0 | 0 | 0 | 1 | 0 |
| \(c3\) | 0 | 0 | 0 | 0 | 1 |
| \(c4\) | 0 | 0 | 0 | 0 | 0 |
| \(c0\) | \(c1\) | \(c2\) | \(c3\) | \(c4\) | |
|---|---|---|---|---|---|
| \(c0\) | 0 | 1 | 0 | 0 | 0 |
| \(c1\) | 0 | 0 | 0 | 1 | 0 |
| \(c2\) | 0 | 0 | 0 | 0 | 0 |
| \(c3\) | 0 | 0 | 0 | 0 | 0 |
| \(c4\) | 0 | 0 | 0 | 0 | 0 |
Rows are current configurations, columns are target configurations. The amber outline marks transitions actually executed during this run. All four matrices are also exported as CSV.
Data first, plots second
The simulation writes CSV logs before plotting. The independent audit recomputes every logged formula. `plot_results.py` then reads only the CSV files and `manifest.json`.
| Time | From | Candidate | \(S\) | \(\Phi\) | \(\gamma\) | Status |
|---|---|---|---|---|---|---|
| 5.01 s | \(c0\) | \(c1\) | 1.00 | 1.00 | 0.10 | SELECTED |
| 5.01 s | \(c0\) | \(c2\) | 0.25 | 0.25 | 0.90 | REJECTED |
| 5.01 s | \(c0\) | \(c3\) | 0.70 | 0.70 | 0.10 | ADMISSIBLE |
| 12.01 s | \(c1\) | \(c3\) | 0.70 | 0.70 | 0.10 | SELECTED |
Additional audited plots
The object is not restored. The mission is re-realized on the residual structure.
The frozen branch stays tied to the destroyed primary actuator and loses mission validity. The supervisor branch selects \(c_1\) after the actuator loss and \(c_3\) after the encoder loss. The second state intentionally drops tracking while preserving stabilization, telemetry and diagnostics.
After Motor A loss: full mission remains realizable through the backup actuator.
After Encoder loss: the system continues with the declared degraded mission.
Same fault history; different structural-control policy.
From six resources to a general survivability problem
EXP-03 is not the final physical system. It is an inspectable instance of the general Resource → Function → Configuration → Mission decision chain.
A real deployment replaces the six declared resources and five configurations with the diagnosed resources, functional dependencies and supported post-build configurations of the target CPS.
Author: Dmytro Humennyi · [email protected]
Everything needed to check the run
The numerical audit is supporting evidence, not the main narrative.