A student research project I mentored, comparing A*, Dijkstra's and Greedy Best-First Search for drones that film smoothly while avoiding obstacles.

Drones are central to modern cinematography, but flying them by hand risks collisions and shaky footage. My student, Brayden T., studied how a drone could autonomously find the smoothest path between shot locations while keeping the camera steady. I mentored the project from start to finish: I taught ROS, guided the experiments and edited the paper.
In the panels below, the black dot is the drone, the red dot is the goal, the green line is the planned path and the yellow cells are the nodes each planner searched.



| Algorithm | Nodes searched | Search (s) | Travel (s) | Total (s) |
|---|---|---|---|---|
| Dijkstra's | 1422 | 13.46 | 45.06 | 58.52 |
| GBFS | 49 | 0.02 | 45.40 | 45.42 |
| A* | 347 | 4.11 | 45.04 | 49.15 |



| Algorithm | Nodes searched | Search (s) | Travel (s) | Total (s) |
|---|---|---|---|---|
| Dijkstra's | 1772 | 9.05 | 72.59 | 81.64 |
| GBFS | 199 | 1.94 | 102.84 | 104.78 |
| A* | 397 | 2.78 | 70.51 | 73.30 |
GBFS searched the fewest nodes but took long detours around the concave obstacle. Dijkstra's found optimal paths but searched far more of the map. A* balanced both: it found the optimal route quickly, which left the drone more time to film and produced smooth camera motion with few zig-zags.

A* slows down on very large or cluttered maps. The paper points to D* and to faster, sub-optimal planners such as RRTs and potential fields. It also points to computer vision, so the drone could choose its own shot locations.