How mit-realm/neuralfaultdetector works
FTneuralCBF is a research toolbox for learning safe control and fault detection/isolation (FDI), illustrated with Crazyflie dynamics. The principal workflow is to define a control-affine system, train a control-barrier-function (CBF) and controller or train an FDI model from simulated fault trajectories, then evaluate FDI performance. The graph distinguishes those domain stages and the shared trainer/data/model layer. The README documents the broader workflow; sampled excerpts support Crazyflie simulation, trajectory-buffer use, and Gamma training, but do not establish every training script’s internal wiring.
Main entry points: CF_train_Gamma_Output.py Gamma FDI training · trainer.py Optimization trainer · Crazyflie_train_new.py CBF + control training · Crazyflie.py Crazyflie model
Components 14
System dynamics
- Control-affine base
dynamics/control_affine_system_new.py - Crazyflie model
dynamics/Crazyflie.py
Safe control
- CBF + control training
train/Crazyflie_train_new.py - CBF model
train/CBF.py
Fault isolation
- Gamma FDI training
train/CF_train_Gamma_Output.py - Gamma variants
train - FDI evaluation
test/CF_test_Gamma_compare_NNs_output.py
Learning internals
- Optimization trainer
trainer/trainer.py - Neural architectures
trainer/NNfuncgrad_CF.py - Trajectory buffer
trainer/datagen.py - Barrier constraints
trainer/constraints_crazy.py - Lie derivatives
trainer/lie_der.py - Training utilities
trainer/utils.py
Other components
- Researcher
Connections 19
- Researcher → Control-affine base: defines system
- Researcher → CBF + control training: configures training
- Researcher → Gamma FDI training: configures training
- Researcher → FDI evaluation: runs evaluation
- Crazyflie model → Control-affine base: extends dynamics
- CBF + control training → Crazyflie model: simulates system
- CBF + control training → Optimization trainer: trains CBF/control
- CBF + control training → CBF model: uses barrier model
- Gamma FDI training → Crazyflie model: simulates fault trajectories
- Gamma FDI training → Trajectory buffer: adds trajectories
- Gamma FDI training → Optimization trainer: trains Gamma
- Gamma FDI training → Neural architectures: instantiates Gamma
- Gamma FDI training → CBF model: loads CBF weights
- Gamma variants → Neural architectures: defines variants
- FDI evaluation → Neural architectures: evaluates models
- Optimization trainer → Trajectory buffer: samples batches
- Optimization trainer → Neural architectures: updates models
- Optimization trainer → Crazyflie model: computes dynamics
- Barrier constraints → Lie derivatives: computes derivatives