Flying a quadrotor through a cluttered environment requires not only planning a collision-free reference trajectory based on perceived obstacles, but the reference also needs to be dynamically feasible and within the actuation limits of the vehicle, so that the controller can track it precisely. Existing methods either optimize a smooth polynomial inside a convex corridor, which limits agility, or treat obstacles as soft costs traded against tracking performance. We propose a Nonlinear Model Predictive Planning (NMPP) that imposes perceived obstacles as hard geometric constraints and hands a full-state reference to an obstacle-blind SE(3) controller. Our planner achieves a 58-67 % lower position RMSE than a linear Model Predictive Control trajectory planner and a 41-70 % lower RMSE than a polynomial trajectory planner. It also completes all forest flights with up to 9.5 m/s speed without collisions, and achieves 86 % flight success rate under a more aggressive speed profile where a state-of-the-art planner has only 26 % success rate. The real-world deployment showed reliable execution flying up to 5.5 m/s in an unknown cluttered environment.
Figures & tables
Fig. 1 : Illustrative images from real-world experiments: (a) UAV used in the experiments, (b) flown path visualization in RViz, and (c) top view of the course with the flown path.
Fig. 2 : Whole nmpp system pipeline.
Profile
vxy
axy
jxy
vz
az↑ / ↓
[ ms−1 ]
[ ms−2 ]
[ ms−3 ]
[ ms−1 ]
[ ms−2 ]
slow
1.0
1.0
20
1.0
1.0/1.0
medium
4.0
2.0
40
2.0
1.0/1.0
fast
8.0
4.0
60
4.0
2.0/2.0
super fast
10.0
10.0
120
3.0
3.0/2.0
agile
13.0
15.0
120
3.0
4.0/2.0
TABLE I : The constraint profiles. The snap limit equals the jerk limit in every profile.
Profile
vpeak
NMPP
MPC
Poly
Red.
Red.
(proposed)
(baseline)
(baseline)
vs MPC
vs Poly
slow
1.0–1.2
0.032
0.077
0.055
58.2
41.3
medium
3.9–4.1
0.078
0.238
0.192
67.3
59.5
fast
5.9–7.2
0.122
0.373
0.307
67.4
60.3
super fast
7.3–8.8
0.178
0.497
0.398
64.1
55.2
agile
9.5–10.0
0.186
0.545
0.624
65.9
70.2
TABLE II : Mean 3D rmse ( m ) of a 20m flight in free space for varying constraint profiles. vpeak is the range of peak speeds reached across the three planners in ( ms−1 ) while Reduction denotes the percentage decrease in error relative to each baseline. No standard deviation exceeded 0.045m .
Profile
RMSE [ m ]
vmax [ ms−1 ]
tmean [ ms ]
tp95 [ ms ]
slow
0.041
1.47
5.51
7.88
medium
0.096
4.29
5.86
8.66
fast
0.143
7.08
5.95
9.57
super fast
0.172
9.51
5.74
8.92
agile
0.198
11.38
6.91
9.79
TABLE III : Tracking and computational performance of nmpp in the simulated forest. The rmse is pooled over the ten flights of each profile. tmean and tp95 cover the nmpc update only.
Fig. 3 : nmpp solution time over the ten simulated forest flights under the super fast profile.
Fig. 4 : Predicted trajectories obtained during the ten super fast simulation runs. Obstacles are shown in black with red-dashed safety margins.
Profile
NMPP (proposed)
SUPER
succ. [ % ]
min. clr. [ m ]
succ. [ % ]
min. clr. [ m ]
slow
100
+1.243
100
-0.041
medium
100
+0.800
100
+0.004
fast
100
+0.270
100
+0.183
super fast
100
+0.264
70
+0.158
agile
86
+0.131
26
-0.145
TABLE IV : Success rate and clearance in the forest. Min. clr. is the smallest airframe-to-trunk gap over the successful flights, with the propeller tips reaching 0.231m from the vehicle centre, so a negative value is a propeller strike the flight survived. The agile row is from fifty flights per method.
Nflights
RMSE [ m ]
vmax [ ms−1 ]
tmean [ ms ]
tp95 [ ms ]
10
0.328±0.070
5.55
13.52
20.03
TABLE V : Aggregated performance over the ten real-world flights under the fast profile. The rmse is the mean and standard deviation over the individual flights, vmax denotes maximum achieved flight speed and tmean and tp95 denote the mean and 95th-percentile nmpp computation times, respectively.
Fig. 5 : Real uav trajectories with corresponding speeds.