Giter VIP home page Giter VIP logo

fault-tolerant-flight-control-drl's Introduction

DRL for Flight Control

CodeQL Python License docs arXiv

Fault-tolerant flight control for the Cessna Citation 500. First use of Deep Reinforcement Learning for a jet aircraft flight controller. The paper for this code can be found at doi.org/10.2514/6.2022-2078. The arXiv reprint is known as arXiv:2202.09262.

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

Paper

The paper was presented at the AIAA SciTech conference in Jan. 2022 and can be found at doi.org/10.2514/6.2022-2078. A recorded presentation can also be found at doi.org/10.2514/6.2022-2078.vid.

References

  • 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]

fault-tolerant-flight-control-drl's People

Contributors

kdally avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.