Hacker News new | ask | show | jobs
by spaqin 32 days ago
PID is more than enough to keep level. FPV relies on manual flight, but you can get Ardupilot for autonomous missions. There's no need for RL, nothing to gain here; level flight and following waypoints is a solved issue already.

And frankly as a pilot, I'd rather not see any completely autonomous drones with no oversight in the sky - that's one incident away in which blame cannot be put solely on the operator from getting the hobby completely banned.

2 comments

As a researcher in the autonomous robotics space, there is a lot to gain in RL over PIDs and manual flight.

The delta between what is possible with current autonomous flight missions and manual FPV style flight is by having a brain on board that can dynamically adapt to a changing environment. There are a finite amount of PID profiles for each steadystate solution that a researcher can preprepare for. But RL allows an overarching heuristic to transiently alter the PIDs depending on the changing environment.

We use PIDs because analyzing robotics platforms as seeking a steadystate dramatically simplifies the math needed to where its computationally possible for us to solve for a situation.

We use RL in systems that have continuously changing environments with transient solution spaces that are easier to model in hyperspace with a RL model.

Take for example platforms that have tiltrotors. They ideally have a minimum of 3 PID profiles for flying. One when it best fits a multirotor profile. A second when it is transitioning from multirotor to fixed wing flight, and a third for when fixed wing flight is established. What happens when the researcher has a need to fly in the transition state, or subconfigurations of the states? How many PID profiles are you looking to think of and train for? This is where RL has dividends.

Interesting - thanks! OP's drone IS using RL and that's what jumped out at me - it felt a bit overkill for the usecase.
Hey! This is a great question because RL is overkill for my use case, you're right! The reason I'm using RL is because I wanted an RL project on real hardware, so I built this idea of a drone project around that concept, not vice versa. A lot of people on X have brought up alternative solutions -- like MPC -- that might be a better approach to this problem engineering-wise. I just really wanted a real-world RL problem and this was kind of the first cool idea I thought of :D

I'm sorry for the late response, I didn't realize someone had posted my project

That makes total sense, I never meant this in a negative way! I really like your project and am following along now, good luck!