This is an article about Neuroflight…a change to Beta Flight. Curious if this is a real thing and if Arducopter would ever go that way.
http://www.multirotorguide.com/news/neuroflight-flight-control-firmware-with-ai/
This is an article about Neuroflight…a change to Beta Flight. Curious if this is a real thing and if Arducopter would ever go that way.
http://www.multirotorguide.com/news/neuroflight-flight-control-firmware-with-ai/
Looks than another step from autotune that was a great step
I’m curious as to how they fit a firmware that they say is 913kb onto a board that has 512kb flash…
I think it’s very interesting!
Could be an improvement over the current autotune. How easy would it be to copy-paste some of that into ardupilot?
Really interesting and promising!!
I have done a fair bit of work with neural networks, I cant see much advantage in this particular implementation. Maybe something that could scale the PID terms so you can keep them within a reasonable range. PID’s have the advantage that your initial guess can in most cases still fly the vehicle and be tuned up using autotune in 30mins or so. I think he mentions 10,000,000 2 second iterations for the training. It must run much faster than real time but even so will be many hours. And you still have to hope your simulated copter is close enough to your real one.
i think there is more scope for neural networks to be applied for attitude estimation in place of the ekf, you could go from raw sensor data direct to quaternions. But it would be hard to get it to cope with all the possible combinations of sensors and data rates.
Has anyone seen a continuation of this work? I guess this Betaflight fork is no longer active. This could also indicate that indeed this approach in typical cases doesn’t bring much value. But recently I have an issue where control is delayed (so called dead time) and here PIDs just can’t work. I’m thinking about similar approch but with model-based RL. So far I managed to build PX4 with TFLite for Microcontrollers and plan to experiments on it (can’t use ArduPilot because I don’t know know how waf works, CMake is straightforward here).