Machine learning for High speed quadrotor flips
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

High Speed Quadrotor flips Learning


pip install -r requirements.txt


The script can be used to perform cmaes optimization or generate matplotlib flight plots or generate data for blender.

usage: [-h] [-f [F]] [--fly | --cmaes | --blender]

Quadcopter multiflips

optional arguments:
  -h, --help  show this help message and exit
  -f [F]      Parameters file to generate output
  --fly       Plot the flight
  --cmaes     Run cmaes optimization
  --blender   Generate data for blender
--fly and --blender take a file as an argument that can be used to provide optimized parameters (Ex: example.params).
If the file is not provided default initial parameters will be used.

Matplotlib Plot

Using --fly will generate a matplotlib animated plot as below matplotlib animation

Blender Animation

An animated plot using blender can be generated by the following steps

  1. Generate the data using --blender -f example.params
  2. Open quadcopter.blend in blender and paste into blender and set the appropiate path for the state data quaddata.npy file generated in the first step in the code pasted in to blender.

Example Output: Blender Flight Path Video


  1. A Simple Learning Strategy for High-Speed Quadrocopter Multi-Flips
  • Sergei Lupashin, Angela Sch ̈ollig, Michael Sherback, Raffaello D’Andrea
  1. Adaptive Open-Loop Aerobatic Maneuvers for Quadrocopters
  • Sergei Lupashin, Rafaello D’Andrea
  1. Adaptive fast open-loop maneuvers for quadrocopters
  • Sergei Lupashin, Rafaello D’Andrea