Day 55: building a fault-tolerant RL octocopter as my first hardware project
PROJECT COMPLETE! 🥳🙌 The drone survived single, dual, triple, AND QUAD failures in real-life test flights (everything above dual was out-of-domain for the policy).
The final policy is a ~45k-param MLP (two 128-wide layers), running at 50 Hz onboard the flight controller with no companion computer. The policy was trained with MuJoCo + PPO via
@puffer_ai, then deployed zero-shot: baked straight into ArduPilot's C++ at the AP_Motors level.
Thank you to everyone who followed along!!
📸: The policy surviving an initial single failure (back motor), then a stacked dual failure (happens during zoom in), for a total of 3 dead motors.