  Quadrotor stabilizing controllers often require careful, model-specific
tuning for safe operation. We use reinforcement learning to train policies in
simulation that transfer remarkably well to multiple different physical
quadrotors. Our policies are low-level, i.e., we map the rotorcrafts' state
directly to the motor outputs. The trained control policies are very robust to
external disturbances and can withstand harsh initial conditions such as
throws. We show how different training methodologies (change of the cost
function, modeling of noise, use of domain randomization) might affect flight
performance. To the best of our knowledge, this is the first work that
demonstrates that a simple neural network can learn a robust stabilizing
low-level quadrotor controller (without the use of a stabilizing PD controller)
that is shown to generalize to multiple quadrotors.
