Drones are clumsy. They bumble through the air, largely unaware of their surroundings, and that's a problem for anything in the air that doesn't want a drone crashing into it. It also limits where drones can fly: the small size and maneuverability of many unmanned aerial vehicles make them ideal for work in buildings or dense areas like forests and cities, provided they don't crash all the time. That's where Ross Allen and Marco Pavone, at Stanford University's Department of Aeronautics and Astronautics, come in. They're teaching drones to avoid obstacles so well that they can even fence:
In their paper titled “A Real-Time Framework for Kinodynamic Planning with Application to Quadrotor Obstacle Avoidance”, Allen and Pavone explain the system they created that lets a quadcopter fly without crashing into stuff. There's a lot of math backing this up, but Allen and Pavone distill the method into a single phrase that almost reads as plain English: “exploration through machine learning, decision making through optimal control, precomputation when possible.”
To give the quadcopter a sense of where it is, there's a collision detection module, and it's input from that which fuels the obstacle-dodging algorithms. In the lab, this sensor was an eternal camera that fed data to a computer and the drone. In the future, that input will come from “a range of visual, laser, and ultrasonic sensors,” say the authors.
We're starting to see sense-and-avoid systems in commercial drones. DJI, a giant in the quadcopter industry, announced that it's new Phantom 4 will have optical and sonar sensors to let it see obstacles 50 feet away, and then to fly around them. Allen and Pavone's approach, which combines detection with updated flight paths, seems the way of the future, once they can replicate it outside of a lab. Until then, it's stunning just to watch it dodge a fencer's blade, which is probably why it ended up on the front page of Reddit earlier this morning.
Check it out below: