Journal of Advanced Transportation
Volume 2018 (2018), Article ID 6574183, 15 pages
https://doi.org/10.1155/2018/6574183

Research Article

An Optimization Problem for Quadcopter Reference Flight Trajectory Generation

Karam Eliker,¹ Guoqing Zhang,¹ Said Grouni,² and Weidong Zhang1,3

¹Department of Automation, Shanghai Jiao Tong University, Shanghai 200240, China
²Faculty of Sciences Engineering, University of Boumerdes, 35000 Boumerdes, Algeria
³School of Computer Engineering and Science, Shanghai University, Shanghai 200444, China

Correspondence should be addressed to Weidong Zhang; wdzhang@sjtu.edu.cn

Received 22 October 2017; Accepted 29 March 2018; Published 26 July 2018

Academic Editor: Howard Li

Copyright © 2018 Karam Eliker et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

This paper deals with the reference flight trajectory generation and planning problems for quadcopter Unmanned Aerial Vehicle (UAV). The reference flight trajectory is defined as the composition of path and motion functions. Both of them are generated by using quintic B-spline functions. Based on differential flatness approach, the quadcopter dynamical constraints are satisfied instantaneously by computing the induced aerodynamical moments and lift force. The optimal reference flight trajectory, with respect to the mission requirements and imposed constraints, is reached by manipulating the control points’ vectors of B-spline functions via a nonlinear constrained optimization method. The mission requirements are defined as a set of waypoints with their respective scheduled flight timetable. A minimum-energy cost function is developed to minimize the consumed energy and induced efforts by reference flight trajectory. For the need of the optimal overfly-times schedule, the overfly times with respect to the defined constraints and performance criteria are calculated. Numerical simulation results show the feasibility and effectiveness of the proposed optimization method.

1. Introduction

With a vast proliferation of Manned Aerial Vehicles (MAVs) and Unmanned Aerial Vehicles (UAVs), world air transportation traffic has witnessed a continuous increase causing a saturation in the airspace. The formal approach adopted by researchers to design the UAVs is to separate the avionics systems into three distinct and independent systems, which are Guidance, Navigation, and Control (GNC). By using this structure, UAVs could perform a variety of planning missions in either military or civilian fields. However, there are many incidents like a collision with civil aviation aircraft, invasion of privacy, and threats to security reported by [1] Federal Aviation Administration (FAA). These incidents are because of the lack of transportation rules and regulations supporting UAVs and the weakness current structure UAVs. Therefore, the need to integrate the UAVs in National Airspace System (NAS) is highly recommended.

To achieve this challenge, an adequate flight trajectory planner that could be embedded on quadcopter UAV should be developed. The flight trajectory planner could reduce uncertainty and increase predictability for Air Traffic Management (ATM). Planning missions in terms of waypoints with overfly times at which the UAV is scheduled to overfly could be a challenging problem for trajectory generation. Most of the previous works have focused on 3D trajectory planning problem and consider only waypoints without any overfly-times constraints. By contrast, this paper proposes a new optimization method to generate the reference flight trajectory that could fulfill some related requirements of NAS. The proposed flight trajectory planning should generate a trajectory that complies with the considered quadcopter dynamical constraints and meets the assigned missions. The assigned missions contain a set of waypoints with their respective scheduled flight timetable. For the necessity of optimal overfly-times schedule, the overfly times can be calculated in optimal way while considering the assigned constraints and performance criteria. By generating such reference flight trajectory, different tasks such as delivering and reconnaissance missions at acceptable overfly times could be performed. Moreover, the traffic managements for UAV could be enhanced by managing the scheduled flight timetable of waypoints.

Several papers of 3D trajectory planning problems while considering waypoints as physical points in the workspace have been done. On one hand, the authors in [2–7] proposed an optimization approach to solve Time Optimal Motion Planning (TOMP) between two configuration points by using a Nonlinear Programming (NLP) method. On the other hand, the authors in [8–10] have proposed an algorithm based on Pontryagin’s minimum principle to solve TOMP between two states. In [11], the authors presented an approach that could link separate trajectories to form smooth analytically defined paths while satisfying a set of waypoint constraints. Moreover, in [12–14], a minimum snap cost function was designed to generate smooth trajectory while satisfying a sequence of consecutive waypoints. In [15], a quasi-optimal trajectory generation was developed to satisfy constraints concerning waypoints and their overfly times while minimizing the trajectory length.

Moreover, some papers have dealt with the minimum-energy problem. In [16], a quasi-optimal trajectory planner was proposed to generate trajectory between two points. The objective function was defined as a fuel consumption problem by considering the cost function as an average velocity. The authors in [17] supposed that the consumed energy was proportional to the rotors velocities. In [18], the authors designed a trajectory planning function for a small-scale helicopter in autorotation which could minimize the battery power consumption and avoid bang-bang type solutions. Nonlinear Programming problem was used to compute the optimal polynomial coefficients of the trajectory while minimizing the cost function written as the rate of all forces and moments applied on helicopter. In [19], a minimum-energy trajectory generation approach was proposed by defining the cost function as a function of the voltage and current across the four rotors. The similarity among these papers was the reference trajectory planning problems, defined as longitudinal, lateral, and altitude displacements, as NLP problem between two configuration points, while the difference was related to the parameterization of the reference trajectory.

The objective of this paper is the reference trajectory generation and planning problems for quadrotor UAV. The reference flight trajectory is defined as a composition of path and monotonically increasing motion functions. Both of them are generated by using quintic B-spline functions. Based on differential flatness approach, the quadcopter dynamical constraints are checked instantaneously by computing the induced aerodynamical roll and pitch, heading moments, and lift force, respectively. The optimal reference trajectory, which consists of longitudinal, lateral, and altitude displacements, in addition to yaw angle, is reached by manipulating the control points’ vectors of B-spline functions via a nonlinear constrained optimization method while taking into account the mission requirements and defined constraints. The mission requirements are defined as a sequence of waypoints with their respective scheduled flight timetable, and each waypoint could represent a particular posture. A minimum-energy cost function is designed to enhance the performance criteria regarding trajectory length, induced efforts, consumed energy, and trajectory smoothness. For the optimal overfly-times schedule requirement, the overfly times are calculated by the proposed optimization method with regard to the interested constraints and performance criteria. Several configurations are studied and numerical simulation results show the feasibility and effectiveness of the proposed optimization method.

2. Quadcopter Flight Dynamics

The quadcopter UAV is a vertical take-off and landing (VTOL) aircraft. Its main characteristics are the ability of hovering, vertical take-off, and landing in any terrain. The displacement and rotation motions are achieved by adjusting the angular speed of each rotor. To design the reference flight trajectory, a simplified quadcopter flight dynamics are used to reduce the computation burden and to facilitate the optimization problem implementation. By considering that the quadcopter UAV performs angular motions of low amplitude and omitting the drag force, aerodynamical frictions, and gyroscopic effects moments, the simplified dynamic model of quadcopter UAV, in contrast to full quadcopter dynamics presented in [21, 22], is given by

where are longitudinal, lateral, and altitude displacements and are roll, pitch, and yaw angles in the Earth-fixed frame, respectively. is the gravity acceleration and is the mass of quadcopter UAV. are roll, pitch, and yaw inertia moments, respectively. The lift force and the aerodynamical roll , pitch , and heading moments developed by the quadcopter UAV are expressed with respect to the rotors velocities:

where and are lift and drag force coefficients, respectively. is the distance between the center mass of quadcopter and the axis of the propeller. is the rotor velocity, . From (1d), (1e), and (1f), roll () and pitch () angles are expressed as follows:

Using (1a)–(1f), the aerodynamical roll, pitch, and heading moments and lift force, which are induced by the reference flight trajectory, are expressed as follows:

Based on (3a) and (3b), it can be concluded that the analytical expressions of , and are functions of the first, second, third, and fourth derivatives of the vector components .

3. Optimization Problem Formulation

The optimization problem is concerned with the reference flight trajectory that satisfies waypoints constraints at specific schedule flight timetable. Since the quadcopter UAV can perform six Degrees of Freedom (DOF), the reference flight trajectory could contain six components:

However, the quadcopter UAV is an underactuated system. Only longitudinal, lateral, and altitude displacements and yaw angle () can be directly controlled. Roll () and pitch () angles are systemically computed with respect to quadcopter dynamics. Differential flatness approach has shown interesting performance regarding the trajectory planning problem as demonstrated in [4, 5, 8, 12–14, 16–18]. Using the differential flatness method, the state space variables and control inputs can be defined in terms of flat output vector. Furthermore, the computation load on optimization could be reduced considerably. Equations (1a)–(1f) are differentially flat if there exists a flat output vector in the following form [23]:

such that

where and are state space and control input vectors, respectively. From (1a)–(1f), (3a)-(3b), and (4a)–(4d), it can be concluded that the vector represents the flat output vector. Therefore, the optimization problem can be treated from the flat output vector and expressed as NLP problem in the following form:

where (8b) and (8c) denote a set of equality and inequality constraints, respectively. is the objective function.

3.1. Mission Requirements and Constraints

The considered constraints are classified as follows.

(a) Mission Constraints. The mission constraints are defined as a set of conditions as follows:

(i)The quadcopter UAV posture:

where and are autonomy flight and final times, respectively. is the number of waypoints.(ii)The quadcopter UAV scheduled flight timetable:

where is the predefined overfly time and is an allowed range of overfly time.(iii)The quadcopter UAV velocity:

(b) Workspace and Flight Envelope Constraints

(i)The workspace limits:

(ii)The flight envelope limits: the flight envelope is a set of flight conditions defined by the quadcopter height and airspeed.

where is the maximum operating speed.

(c) Induced Efforts Constraints. From (2), the induced efforts can be expressed as follows:

Since the quadcopter rotors are identical, denotes the maximum rotor velocity.

3.2. Reference Flight Trajectory Parameterization

The reference trajectory can be defined as a composition [3, 6, 15, 24] of path and motion functions. Based on this definition, the velocity, acceleration, jerk, and snap profiles of reference flight trajectory could be adjusted to make them compliant with the assigned constraints. The reference flight trajectory is written as follows:

where the path is a set of time-independent configurations followed by the quadcopter UAV to fly from an initial configuration to a final one . The motion is a positive scalar function that defines the way in which the path is achieved with respect to the time, . In order to construct the path and motion functions, a parametric function has to be selected. For this purpose, B-spline function is used for its advantage to support the manipulation of the reference trajectory as functions of control points and knot vectors. Basically, B-spline function is demonstrated as follows [24]:

with

where is a control point and is a control points number. is a knot vector and is the number of knots. is a basis function of degree . For this purpose, the knot vectors are selected as uniform sequences. To construct the path and motion functions, the following conditions are defined:

(a) Path Function

(i)Posture condition: it satisfies the condition indicated in (9a)–(9d):

(ii)Velocity condition: it ensures the condition of (11a) and (11b):

(c) Motion Function

(i)The first derivative of :

(ii)The motion must satisfy the following conditions:

(iii)The overfly-time conditions:

From (3a)-(3b) and (15a)–(15e), the continuity of the second-order derivatives of the desired roll and pitch angles depends on the continuity of the fourth derivative of the path and motion functions. Therefore, the parametric function of is modeled as a quintic B-spline function using () control points number, where . The () control points number represents a set of path control points that will be manipulated by the proposed optimization method. The control points number represents the fixed control points that satisfy the condition expressed in (18a) and (18c). The parametric function of is modeled as a quintic B-spline function using () control points number. The () control points number is a set of motion control points and the control points number is a set of fixed control points that meet conditions defined by (11a)-(11b) and (21a)–(21h). In addition, the motion control points’ vector is uniformly distributed along the time scale, guarantying that each motion control point belongs to an increasing bounded interval to satisfy the condition of (20). Figure 1 illustrates an example for path and monotonically increasing motion functions, respectively.

(a)

(b)

Figure 1: An illustration example for (a) motion and (b) path functions, respectively.

4. Performance Criterion

For rotor-craft systems, the electrical power is converted to mechanical power in the form of thrust. The developed mechanical power could be described as the product of the torque and angular velocity . Therefore, the power generated from each rotor could be computed as follows:

By using the first term in (23), the proposed cost function is expressed as a function of rotor velocities and yaw dynamics:

with

where the term is used to minimize the induced aerodynamical heading moment and the second term is introduced in the proposed cost function to minimize the induced efforts and consumed energy. This yields

The synoptic procedure of optimization method is shown in Figure 2. For fixed scheduled flight timetable problem, only the positions of the control points’ vectors are manipulated. The final solution will be the optimal control points’ vectors. For this problem, the overfly-time constraints defined should be selected properly. For the requirements of the optimal overfly-times schedule, the overfly times are calculated by the proposed optimization problem with respect to the constraints of interest and performance criteria.

Figure 2: Proposed optimization method procedure.

5. Numerical Simulations

5.1. Flight Trajectory 1

Let us consider the following configuration in Table 1. All simulations are done using and . The constraints are listed in Table 3. The real parameters identified in [20] are used to test the proposed optimization method (see Table 2). A numerical solver in Matlab [25] via “fmincon” based upon Sequential Quadratic Programming (SQP) is used to solve the optimization method. To demonstrate the effectiveness of proposed cost function in (26), different cost functions defined in [15, 17] are used. Figure 3 displays the 2D and 3D reference flight trajectory with respect to the requirements of Table 1. It could be noted that the proposed algorithm can deal with different cost functions. Moreover, the smoothness of the generated reference flight trajectory depends on the considered cost functions. Figure 4 shows the generated longitudinal, lateral, and altitude displacements in addition to yaw angle. Figures 6 and 7 illustrate the induced efforts developed by each cost function. It could be seen from the proposed cost function in (26) that the mean values of the induced efforts are considerably less than those related to the cost functions in [15, 17]. Figure 5 displays the results given by each cost function in regards of trajectory length and consumed energy. The fitness value developed by the proposed cost function, which reflects consumed energy, is less important than other cost functions. The proposed cost function shows an interesting performance in terms of trajectory length, induced efforts, consumed energy, and smoothness, as demonstrated in Tables 4 and 5.

Table 1: Waypoints configuration with their scheduled flight timetable.

Waypoint
 (s)
 (m)
 (m)
 (m)
 (rad)

Initial

1

2

3

4

5

Final

Table 2: Quadcopter UAV parameters [20].

Parameter
Value

 kg⋅m²

 kg⋅m²

 kg⋅m²

 kg

 N⋅m/rad/s

 N/rad/s

 m

Table 3: Considered constraints.

Constraint types
Constraints
Constraint ranges

Workspace
Longitudinal displacement (m)

Lateral displacement (m)

Altitude (m)

Roll angle (rad)

Pitch angle (rad)

Yaw angle (rad)

Flight envelope
Height (m)

Yaw rate (rad/s)

Airspeed (m/s)

Actuators
Maximum rotor velocity (rad/s)

Table 4: Comparison results of trajectory length and fitness value.

Cost function type
Trajectory length (m)
Fitness value

1
Minimum-energy

2
Minimum-length [15]

3
Minimum-energy [17]

Table 5: Comparison results of induced efforts.

Cost function type
Lift force
Roll moment
Pitch moment
Heading moment

(N)
(N⋅m)
(N⋅m)
(N⋅m)

1
Minimum-energy

2
Minimum-length [15]

3
Minimum-energy [17]

(a)

(b)

Figure 3: Optimal 3D and 2D reference flight trajectory.

(a)

(b)

(c)

(d)

Figure 4: Desired (a) longitudinal, (b) lateral, and (c) altitude displacements and (d) heading angle, respectively.

(a)

(b)

Figure 5: Performance criterion: (a) trajectory length and (b) fitness value, respectively.

(a)

(b)

(c)

(d)

Figure 6: Induced efforts: (a) lift force and aerodynamical (b) roll and (c) pitch and (d) heading moments, respectively.

(a)

(b)

(c)

(d)

Figure 7: Mean values of (a) lift force and aerodynamical (b) roll and (c) pitch and (d) heading moments, respectively.

5.2. Flight Trajectory 2

Let us consider the configuration in Table 6. Simulations are done by considering three scenarios. In the first one, the waypoints overfly times are fixed. In the second one, the waypoints overfly times are freely computed by the proposed optimization method. However, in the last case, an allowed range of overfly time ( s) is used.

Table 6: Waypoints configuration with their scheduled flight timetable.

Waypoint
(s)
(m)
(m)
(m)
 (rad)

Initial

1

2

3

4

5

6

7

8

Final

Figure 8 displays the 3D and 2D generated reference flight trajectory for the three scenarios. Even if the imposed waypoints overfly times defined in Table 6 are fixed without any prior knowledge on optimality aspect, the proposed optimization method will show its ability to generate the reference trajectory of desired configuration despite its weakness in terms of induced efforts, length trajectory, and consumed energy, as demonstrated in Figures 9 and 11. Table 8 shows the optimal overfly-times schedule computed in the second and third scenarios.

(a)

(b)

Figure 8: Optimal 3D and 2D reference flight trajectory.

(a)

(b)

Figure 9: Performance criterion: (a) trajectory length and (b) fitness value, respectively.

Figures 10 and 11 illustrate the induced lift force, aerodynamical moments, and their mean values computations with respect to each scenario. Based on the proposed optimization problem, the overfly times are computed optimally and consequently; the induced efforts, trajectory length, and consumed energy could be considerably reduced. Tables 7 and 9 show this aspect.

Table 7: Comparison results of trajectory length and fitness value.

Scenario
Trajectory length (m)
Fitness value

1

2

3

Table 8: Waypoints configuration with their optimal overfly-times schedule.

Waypoint
(s)
(s)
(s)

Initial

1

2

3

4

5

6

7

8

Final

Table 9: Comparison results of induced efforts.

Scenario
Lift force
Roll moment
Pitch moment
Heading moment

(N)
(N⋅m)
(N⋅m)
(N⋅m)

1

2

3

(a)

(b)

(c)

(d)

Figure 10: Induced efforts: (a) lift force and aerodynamical (b) roll and (c) pitch and (d) heading moments, respectively.

(a)

(b)

(c)

(d)

Figure 11: Mean values of (a) lift force and aerodynamical (b) roll and (c) pitch and (d) heading moments, respectively.

5.3. Flight Trajectory 3

Let us consider the same configuration in Table 6. In this study, different is used and  min is fixed. Figure 12 displays the 3D and 2D generated reference flight trajectory and Table 10 shows the optimal overfly-times schedule computed for each selected . Figures 13, 14, and 15 display the trajectory length, consumed energy, and induced efforts developed by selecting . Tables 11 and 12 display the performance criteria assessment. It can be seen that while increased, the performance criteria showed enhancing results.

Table 10: Waypoints configuration with their optimal overfly-times schedule.

Waypoint
(s)
(s)
(s)
(s)

Initial

1

2

3

4

5

6

7

8

Final

Table 11: Comparison results of trajectory length and fitness value.

 (s)
Trajectory length (m)
Fitness value

0.6

2.5

4

10

Table 12: Comparison results of induced efforts.

 (s)
Lift force
Roll moment
Pitch moment
Heading moment

(N)
(N⋅m)
(N⋅m)
(N⋅m)

0.6

2.5

4

10

(a)

(b)

Figure 12: Optimal 3D and 2D reference flight trajectory.

(a)

(b)

Figure 13: Performance criterion: (a) trajectory length and (b) fitness value, respectively.

(a)

(b)

(c)

(d)

Figure 14: Induced efforts: (a) lift force and aerodynamical (b) roll and (c) pitch and (d) heading moments, respectively.

(a)

(b)

(c)

(d)

Figure 15: Mean values of (a) lift force and aerodynamical (b) roll and (c) pitch and (d) heading moments, respectively.

6. Conclusion

An optimization method for reference flight trajectory generation has been proposed, which allows the generation of feasible and realistic flight plan for quadcopter UAV and manages adequately the scheduled flight timetable of waypoints. In this paper, the flight trajectory generation problem was treated as NLP problem and solved via a nonlinear constrained optimization technique. The reference flight trajectory was defined as a composition of path and motion functions. Both of them were generated by using B-spline functions. Based on differential flatness approach, the quadcopter UAV dynamical constraints were checked instantaneously by computing the induced aerodynamical roll, pitch, and heading moments and lift force, respectively. The optimal reference trajectory was reached by manipulating the control points’ vectors of B-spline functions while taking into account the quadcopter mission requirements, dynamical constraints, flight envelope, and workspace limits. The mission requirements were defined as a series of waypoints with their respective scheduled flight timetable. A minimum-energy cost function has been proposed to minimize the consumed energy and induced efforts along the path. For requirement of optimal overfly-times schedule, the overfly times were computed in an optimal way regarding the defined constraints and performance criteria. Numerical simulations in this study have shown the feasibility and effectiveness of the proposed optimization method to generate an optimal reference flight trajectory in terms of trajectory length, induced efforts, consumed energy, and smoothness. Moreover, it shows its ability to manage the scheduled flight timetable of waypoints.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

This paper is partly supported by the National Natural Science Foundation of China (Grants nos. 61473183 and U1509211), National Postdoctoral Program for Innovative Talents (no. BX201600103), and the China Postdoctoral Science Foundation (no. 2016M601600). The authors would like to thank Bahij Eliker, Zahia Oueldkherroubi, and Nafissa Zouad for their support and helpful feedback for drafting the paper.

References

M. Huerta, Integration of civil Unmanned Aircraft Systems (UAS) in the National Airspace System (NAS) Roadmap, Federal Aviation Administration, 2013.

L. Lai, C. Yang, and C. Wu, “Time-optimal control of a hovering quad-rotor helicopter,” Journal of Intelligent & Robotic Systems, vol. 45, no. 2, pp. 115–135, 2006.

Y. Bouktir, M. Haddad, and T. Chettibi, “Trajectory planning for a quadrotor helicopter,” in Proceedings of the 16th Mediterranean Conference on Control and Automation, pp. 1258–1263, Ajaccio, France, June 2008.

A. Chamseddine, Y. Zhang, and C.-A. Rabbath, “Adaptive trajectory planning for a quad-rotor unmanned aerial vehicle,” in Proceedings of the AIAA Guidance, Navigation, and Control Conference, pp. 2–5, Toronto, Canada, August 2010.

A. Chamseddine, T. Li, Y. Zhang, C. A. Rabbath, and D. Theilliol, “Flatness-based trajectory planning for a quadrotor unmanned aerial vehicle test-bed considering actuator and system constraints,” in Proceedings of the American Control Conference, pp. 920–925, Montreal, Canada, June 2012.

A. P. Schoellig, F. L. Mueller, and R. D'Andrea, “Optimization-based iterative learning for precise quadrocopter trajectory tracking,” Autonomous Robots, vol. 33, no. 1-2, pp. 103–127, 2012.

E. Kahale, P. Castillo, and Y. Bestaoui, “Minimum time reference trajectory generation for an autonomous quadrotor,” in Proceedings of the International Conference on Unmanned Aircraft Systems, pp. 126–133, Orlando, Fla, USA, March 2014.

M. Hehn and R. D'Andrea, “Quadrocopter trajectory generation and control,” in Proceedings of the IFAC World Congress, vol. 44, pp. 1485–1491, 2011.

M. Hehn, R. Ritz, and R. D'Andrea, “Performance benchmarking of quadrotor systems using time-optimal control,” Autonomous Robots, vol. 33, no. 1-2, pp. 69–88, 2012.

M. Hehn and R. Dandrea, “Real-Time Trajectory Generation for Quadrocopters,” IEEE Transactions on Robotics, vol. 31, no. 4, pp. 877–892, 2015.

J. Jamieson and J. Biggs, “Path planning using concatenated analytically-defined trajectories for quadrotor UAVs,” Aerospace, vol. 2, no. 2, pp. 155–170, 2015.

D. Mellinger and V. Kumar, “Minimum snap trajectory generation and control for quadrotors,” in Proceedings of the IEEE International Conference on Robotics and Automation, pp. 2520–2525, IEEE, Shanghai, China, March 2011.

D. Mellinger, N. Michael, and V. Kumar, “Trajectory generation and control for precise aggressive maneuvers with quadrotors,” International Journal of Robotics Research, vol. 31, no. 5, pp. 664–674, 2012.

J. Yu, Z. Cai, and Y. Wang, “Optimal trajectory generation of a quadrotor based on the differential flatness,” in Proceedings of the 28th Chinese Control and Decision Conference, pp. 678–683, Yinchuan, China, March 2016.

K. Eliker, H. Bouadi, and M. Haddad, “Flight planning and guidance features for an UAV Flight Management Computer,” in Proceedings of the 21st IEEE International Conference on Emerging Technologies and Factory Automation, 6, 1 page, Berlin, Germany, September 2016.

I. D. Cowling, O. A. Yakimenko, J. F. Whidborne, and A. K. Cooke, “Direct method based control system for an autonomous quadrotor,” Journal of Intelligent & Robotic Systems, vol. 60, no. 2, pp. 285–316, 2010.

A. Chamseddine, Y. Zhang, C. A. Rabbath, C. Join, and D. Theilliol, “Flatness-based trajectory planning/replanning for a quadrotor unmanned aerial vehicle,” IEEE Transactions on Aerospace and Electronic Systems, vol. 48, no. 4, pp. 2832–2848, 2012.

S. Taamallah, X. Bombois, and P. M. J. Van den Hof, “Trajectory planning and trajectory tracking for a small-scale helicopter in autorotation,” Control Engineering Practice, vol. 58, pp. 88–106, 2017.

F. Morbidi, R. Cano, and D. Lara, “Minimum-energy path generation for a quadrotor UAV,” in Proceedings of the 2016 IEEE International Conference on Robotics and Automation, pp. 1492–1498, Stockholm, Sweden, March 2016.

M. De Lellis Costa de Oliveira, Modeling, identification and control of a quadrotor aircraft [M.S. thesis], Faculty of Electrical Engineering, Prague, Czech Republic, 2011.

L. Derafa, T. Madani, and A. Benallegue, “Dynamic modelling and experimental identification of four rotors helicopter parameters,” in Proceedings of the IEEE International Conference on Industrial Technology (ICIT '06), pp. 1834–1839, Mumbai, India, December 2006.

H. Bouadi and F. Mora-Camino, “Modeling and adaptive flight control for quadrotor trajectory tracking,” Journal of Aircraft, vol. 55, no. 2, pp. 666–681, 2018.

G. G. Rigatos, Nonlinear Control and Filtering Using Differential Flatness Approaches: Applications to Electromechanical Systems, Springer, Cham, Switzerland, 2015.

L. Biagiotti and C. Melchiorri, Trajectory Planning for Automatic Machines and Robots, Springer, Berlin, Germany, 2009.

T. Coleman, M. A. Branch, and A. Grace, Optimization Toolbox: for Use with Matlab, Matlab The Mathworks Inc., 1999.