Fault-tolerant flight control for the Cessna Citation 500. First use of Deep Reinforcement Learning for a jet aircraft flight controller. The code was developed for a Master's thesis entitled Deep Reinforcement Learning for Flight Control.
MacOS users can use the module straight away. Linux and Windows users are required to recompile the CitAST high-fidelity simulation model as instructed in
docs/CitAST_for_Python.pdf
.
- Clone fault-tolerant-flight-control-drl
cd <installation_path_of_your_choice>
git clone https://github.com/kdally/fault-tolerant-flight-control-drl
cd fault-tolerant-flight-control-drl
- Create a new conda environment with the required packages
conda env create -f environment.yml
conda activate ftc-drl
python setup.py install
- To fly the aircraft right away with pre-trained agents 🛩
python tests/test_all.py
Select flight settings on the GUI. Default choices are recommended for unexperienced users.
- To retrain the inner-loop and outer-loop controllers ⚙️
python tests/train_inner_loop.py
python tests/train_outer_loop.py
- To perform a hyperparameter optimization 🎯
python tests/optimization.py
👤 K. Dally (Delft University of Technology MSc. Student)
Project developed as part of a Master's Thesis at the Control & Simulation Department, Faculty of Aerospace Engineering at Delft University of Technology.
- Haarnoja, T., Zhou, A., Abbeel, P., and Levine, S. (2018) [paper][code]
- Haarnoja, T., Zhou, A., Abbeel, P., and Hartikainen, K. (2019) [paper][code]
- Hill, A. et al. (2018) [doc][code]
- Rodríguez, R. (2021) [article][code]