Skip to the content.

DRL for Flight Control

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.

Installation

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.

  1. 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
    
  2. Create a new conda environment with the required packages
conda env create -f environment.yml
conda activate ftc-drl
python setup.py install

Usage

  1. 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.

  1. To retrain the inner-loop and outer-loop controllers ⚙️
    python tests/train_inner_loop.py
    python tests/train_outer_loop.py
    
  2. To perform a hyperparameter optimization 🎯
    python tests/optimization.py
    

Author

👤 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.

References