I Introduction
Due to their agility, ease of deployment, decreasing costs, and small size, quadrotors are extensively used in robotics and related areas. Their 3D navigation capabilities are favorable for tasks such as surveillance, target tracking, search & rescue, etc. Many applications use a coordinating swarm of quadrotors for efficiency, where large 3D regions can be simultaneously covered by different quadrotors. Agile, highvelocity quadrotor navigation is especially important in applications involving disaster response, where time is critical for effective rescue operations [34]. Further, for safe implementation, it is important to avoid collisions with the obstacles in the scene as well as other quadrotor agents during the highvelocity maneuvers. Such applications require navigation algorithms that can rapidly adapt to the changes in the environment, account for sensor uncertainty, and scale to a large number of swarm agents.
Many centralized [2, 3, 4, 5] and decentralized [11, 12] planning approaches have been proposed for collisionfree navigation of quadrotors in a swarm. Centralized methods scale poorly and are generally not adaptable to dynamic environments but can provide guarantees on trajectory smoothness, optimality, etc. In contrast, decentralized methods are scalable and are adaptable to changes in the environment, but cannot provide such guarantees on the generated trajectories.
Quadrotor dynamics is nonlinear due to the sinusoidal relationships required to describe its orientation [29]. Collision avoidance methods that account for such nonlinearities either do not run in realtime [3, 4] or use a computationally expensive controller such as NMPC [21], thus limiting the available onboard computational power for other applications like perception and communication. In addition, an NMPC solution is susceptible to converging to local minima [18]. In contrast, other methods [11, 12] reduce the complexity by linearizing the quadrotor dynamics about an equilibrium point (usually about the quadrotor’s hover configuration). This linearized model is valid near the equilibrium point, but its performance decreases during aggressive (highvelocity) maneuvers, where large pitch and roll is required [33]. Further, to account for downwash in the collision avoidance algorithm, the quadrotors are modeled as axisaligned ellipsoids, disregarding the quadrotor orientation [5, 12], though the downwash region would vary in relation to the quadrotor orientation [28].
Main Results: We present a novel decentralized realtime approach (DCAD) for navigation of large quadrotor swarms in dynamic environments. Our approach is general and makes no assumptions about the obstacles or the environment. To handle the nonlinear dynamics constraints and enable fast maneuvers, we present two novel algorithms:

An online collision avoidance algorithm for navigation in dynamic environments that accounts for quadrotor dynamics using flatnessbased feedforward linearization and MPC. In contrast to linearizing about the hover point, we can still incorporate the nonlinearities in the system using an inverse map.

An algorithm to incorporate downwash into the construction of collision avoidance constraints based on ORCA. In contrast to using axisaligned ellipsoids to consider downwash, our algorithm incorporates quadrotor attitude by modeling neighboring pair of quadrotors as a combination of a sphere and an oriented ellipsoid.
We combine these algorithms with ORCA constraints for collision avoidance [8] to compute the local trajectory for each quadrotor in a decentralized manner. In addition, our method incorporates sensing uncertainty using Kalman filtering and provides scalability with respect to the number of agents. In practice, our algorithm takes about 5 ms on average to calculate a new collisionavoiding control input for an agent in the presence of 8 obstacles, showcasing good performance in terms of smoother trajectories and a lower number of collisions during agile highvelocity maneuvers than ORCA, AVO, and LQRobstacles.
The rest of the paper is organized as follows. In Section II, we summarize stateoftheart methods in collision avoidance and quadrotor control. In Section III, we introduce our quadrotor model and the notion of feedforward linearization. In Section IV, we present our decentralized collision avoidance algorithm that considers dynamics constraints. In Section V, we describe its implementation and highlight the benefits over prior methods. compared to other stateoftheart methods.
Ii Previous Work
In this section, we give a brief overview of prior work in quadrotor control and collision avoidance.
Iia Quadrotor Control
In prior literature [11, 12, 15, 16], quadrotor dynamics is handled by linearizing the system dynamics about the hover point to facilitate the use of a linear controller such as an LQR [30] or a linear Model Predictive Control (MPC) [31]. These methods facilitate reduced computational overhead compared to nonlinear controllers, thereby allowing more onboard processing power for other applications like perception or communication. However, aggressive (highvelocity, highacceleration) maneuvers require large attitude deviations from the hover point, and the performance is reduced when hoverpoint linearization is used [32]. Kamel et al. [22] and Zhu et al. [21] present a nonlinear Model Predictive Controlbased (NMPCbased) collision avoidance method, that models the full nonlinear quadrotor dynamics. The NMPCbased algorithm [21] takes about 16ms to compute a collision avoiding control input for a quadrotor with 6 neighboring obstacles. Flatnessbased feedforward controller for trajectory tracking is proposed in [17, 18]. Unlike the methods that linearize about the hover point, these feedforward methods do not make small angle assumptions about the roll and pitch of the quadrotors. Controllers based on feedforward linearization and flatness have shown better performance in terms of computation time and, unlike NMPC, they are not sensitive to the choice of the initial trajectory or susceptible to local minima convergence issues [18]. Because of these advantages, we use flatnessbased feedforward linearization to model the quadrotor dynamics in our algorithm.
IiB Collision Avoidance
Prior research can be grouped into two broad areas, centralized trajectory generation and reactive collision avoidance.
IiB1 Centralized Trajectory Generation
Augugliaro et al. [3] and Chen et al. [4] propose a centralized algorithm that relies on solving a sequential convex program to generate collisionfree trajectories for a swarm. Kushleyev et al. [2] present a method that generates collisionfree trajectories for a swarm of quadrotors by solving a Mixed Integer Quadratic Program (MIQP). Due to the high computational overhead and centralized nature of MIQP, the algorithm scales exponentially with the number of agents. Preiss et al. [5] reduce the computation cost by decomposing the collisionfree trajectory generation problem into a discrete collisionfree path planner and a trajectory optimizer. Hamer et al. [6] present a parallel formulation for fast generation of collisionfree trajectories in multiagent scenarios. Centralized trajectory generation can guarantee optimality in terms of minimum path length, time to reach the goal, or fuel cost. However, these methods can be limited in terms of realworld urban scenarios due to the dynamic nature of the environment, a sudden change in mission, or covering very large areas.
IiB2 Reactive Collision Avoidance
Velocity Obstacle (VO) [7]based methods such as RVO [8] provide decentralized collision avoidance by locally altering the trajectories for agents with singleintegrator dynamics. Constraints in RVO [8] were linearly approximated in ORCA [1] and extended to double integrator dynamics in AVO [9]. Rufli et al. [10] extend RVO to generate order continuous trajectories.
Berg et al. [11] and Bareiss et al. [12] extend VO to control obstacles for agents with linear dynamics. Moreover, they demonstrate the algorithm for a large swarm of quadrotors by linearizing the quadrotor dynamics about the hover configuration. This type of linearized model is valid only for small roll and pitch angles about the hover configuration [33] and not for large angular deviation as during highvelocity flights. Further, control obstacles may also result in nonconvex solution space and the new velocity is generally computed from a convex subset of this solution space. Cheng et al. [13] avoid this convex approximation by using an MPCbased method for linear systems. Morgan et al. [14] present a decentralized algorithm based on sequential convex programming (SCP). Due to its higher computational complexity, SCP is not favorable for fast online computation. Reactive methods are suitable for dynamic environments because they only use the local position and velocity data for the neighboring agents and obstacles (i.e. state information). However, these reactive methods cannot provide any global guarantees.
IiC Downwash
In dense scenarios, multiple quadrotors may have to maneuver in close proximity to each other. Downwash causes a region of instability below the rotors of a quadrotor and any other quadrotor entering this region may lose control or result in unstable behavior [5]. In prior literature, the downwash effect is considered in collision avoidance by modeling the agents as axisaligned ellipsoids [12, 5] or cylinders [27, 28], which encourages a larger separation along the Zaxis. Quadrotor roll and pitch affect the downwash region, and the ellipsoid or cylinder must be rotated with respect to the quadrotor orientation for accurate modeling [28]. For simplicity, the quadrotors are modeled as axisaligned ellipsoids and the radius of the ellipsoid/cylinder is increased by a safety threshold to account for roll and pitch [28] [27].
Iii Preliminaries
In this section, we introduce our assumptions, notation, and provide an overview of the concepts of differential flatness and feedforward linearization. We describe the quadrotor model and the nonlinear transformation used in our collision avoidance algorithm (Section IV).
Iiia Symbols and Notation
The symbols and notations used in this paper are defined in Table I.
Notation  Definition 

World Frame defined by unit vectors , , and along the standard X, Y and Z axes 

Body Frame attached to the center of mass, defined by the axes , , and  
3D position of the center of mass of the quadrotor given by  
Velocity of the quadrotor given by  
Acceleration and jerk of the quadrotor given by second and third derivative of position respectively  
Roll, pitch and yaw of the quadrotor.  
Rotation matrix of quadrotor body frame () w.r.t world frame ()  
Net thrust in body fixed coordinate frame  
Mass of quadrotor  
Angular velocity in body fixed coordinate frame given by  
Quadrotor State space  
Control input to the quadrotor  
Input to the inner loop controller  
Velocity Obstacle for agent A induced by agent B over a time horizon  
Collision avoiding velocity set for agent A induced by agent B over a time horizon 
IiiB Differential Flatness
A nonlinear system given by is differentially flat if there exists a set (flat output) whose elements, expressed as , are differentially independent; and their derivatives can be used to construct the system state space and control inputs [23] [24].
The quadrotor model we consider is described below and, from [25], we know that the quadrotor dynamics is differentially flat for the flat output set given by .
Quadrotor Model: The state space and the control input for the quadrotor are given by
(1)  
(2) 
The quadrotor dynamics can be represented by the following set of equations:
(3)  
(4)  
(5)  
(6) 
IiiC Feedforward Linearization
Hagenmeyer et al. [24] introduce the notion of exact feedforward linearization based on differential flatness. Given a nonlinear, differentially flat system and a sufficiently smooth trajectory in the flat output , the system can be represented as a linear flat model given as
(7)  
(8) 
when a nominal input (9) is applied to the nonlinear system, provided the initial condition (10) is satisfied.
(9)  
(10) 
Here, is the linear multivariable Brunovsky form, represented as
(11) 
and represents the new control input in the flat space. The desired flat state ) and flat input () can be computed from . In Equation (8), is the maximum order of differentiation of required to describe .
Equation (9) represents the nonlinear transformation required to obtain from the flat input. We observe from Etal et al. [35] that we require the third derivative of position (r) and the first derivative of yaw () to express the state and the control input. Hence, we choose the flat state space and the flat input as
In our method, flatnessbased feedforward linearization provides the benefit of reducing the computation overload by linearizing the quadrotor dynamics to linear flat model while still allowing us to handle the nonlinearities using a nonlinear map. We use a flatnessbased MPC that is similar to the one used in [18] to generate a feasible collisionfree trajectory. The nonlinear map (Eqn. 13) is described below:
Nonlinear Map: The control input u can be represented in terms of and its derivative using the following relation,
(12) 
(13) 
Eqn. 13 gives the nonlinear map that transforms the flat inputs to the quadrotor inputs [35].
We assume the presence of an innerloop attitude controller that can track the attitude values and takes as input . The inner loop control dynamics is given by
(14)  
(15)  
(16) 
From Eqn. (12)  (16) we can compute in terms of and its derivative, which is then applied as input to the inner loop controller.
IiiD Assumptions on Swarm Agents
We assume that each agent has access to a reference trajectory in flat output space that considers static obstacles in the environment. The reference trajectory is assumed to be sufficiently smooth and can be generated prior to flight using any trajectory generation method. In our case, we assume the yaw orientation of the quadrotor is not important and we take in the reference trajectory. To generate the collision avoidance constraint, we assume the position, velocity, and orientation of each neighboring quadrotor/obstacle is available to each swarm agent at any given time, with some level of uncertainty. Our collision avoidance scheme is based on ORCA [1] and [13] we assume that each agent and dynamic obstacle travels at a constant velocity during the prediction horizon of the MPC.
Iv Collision Avoidance and Trajectory Computation
In this section, we present our decentralized collision avoidance algorithm for the quadrotor swarm. In our algorithm, the quadrotor dynamics are handled in the flatMPC, while ORCA planes are used as state constraints to generate local, collisionfree, downwashaware trajectories. The highlevel overview of our algorithm is given in Fig. 1 and the details are given below.
Iva Mpc
Model Predictive Control (MPC) is a receding horizon planner that computes a control input based on the system dynamics, input and state constraint, by minimizing an objective function over a prediction horizon. Here, prediction horizon (N) is a finite time horizon in the future [t, t+N]. In our method, we linearize the quadrotor model using feedforward linearization, as mentioned in Section III, to facilitate the use of a linear MPC. The linearized flat state space and the flat input are given by
At each time step, the MPC uses the linear flat model (z) to plan the state trajectories in the flat space and to compute a control input in the flat input space . The optimization problem minimizes the tracking error and flat input () while satisfying the velocity constraints by ORCA and constraints on jerk. The optimization problem is given by
(17)  
subject to  
Here ‘’ is the number of prediction steps, is the reference trajectory, and the matrices Q and R are weights that prioritize between minimizing the trajectory tracking error and the control input. represents the flat state of the agents and matrix is such that gives the position, velocity and orientation of the agent at time step k. is the flat state of the neighboring agent/obstacle at time step k. During collision avoidance, the quadrotor may have to deviate from its reference trajectory to avoid collision. In this case, the initial state of the quadrotor agent may deviate from the reference trajectory, the state feedback is used to satisfy the initial condition requirement given by (10). Equation represents the state feedback. The ORCA velocity constraints between the agent and its neighbors are represented by . The constraints on the jerk are represented by , and are computed as follows.
Constraints on Jerk: Assume the quadrotor can reach a maximum and minimum roll and pitch angle given by (), and (). Since the MPC computes a control input in flat input , the constraint on roll and pitch need to be transformed to the flat space to prevent quadrotors from flipping over during collision avoidance. At any timestep, the maximum jerk that can be applied to the system is dependent on the current state of the quadrotor, including maximum and minimum limits on roll and pitch.
A maximum and minimum value for the roll rate () and pitch rate () can be computed using , Eqn. (14) and (15). To compute the limits on jerk () at a given timestep, we rewrite Eqn. (13) as follows. The minimum jerk can be computed as
Similarly, we can compute by maximizing the above expression. The computed and values are used as maximum and minimum jerk constraints, respectively, over the entire prediction horizon.
MPC Output: As a result of the optimization, the MPC generates the predicted state trajectory and computed control input for each time step in the time horizon. The values for the state and the control input () are passed to the nonlinear map to compute the control input for the inner loop attitude controller () using the nonlinear map (13).
IvB Collision Avoidance
ORCA generates linear collision avoidance constraints, which result in a convex set of feasible velocity [1]. In our method, we incorporate ORCA velocity constraints as state constraints in our MPC formulation.
IvB1 State Constraints
At a time t = 0, ORCA constraints can be computed for an agent considering the current position and current velocity of all its neighboring agents and obstacles. For subsequent timesteps , we compute ORCA planes by predicting the future position and velocity of the agents and neighbours using their current state information. Assume that we are to compute the ORCA constraints for an agent A. The position and velocity of agent A is obtained from the state trajectory predicted by the MPC. This is given by
In contrast, for neighboring agents we propagate their current position using a simple motion model given by
We assume velocity for the neighboring agents and obstacles to remain constant over the prediction horizon. State constraints by ORCA now pertain to a particular time step in the prediction horizon. The ORCA planes consider downwash and uncertainty in the sensor reading. The modifications to ORCA for downwash is presented below.
IvB2 Downwash
In dense scenarios, multiple quadrotors may have to maneuver in close proximity to each other. Downwash causes a region of instability below the rotors of a quadrotor and any other quadrotor entering this region may lose control and face instability. To ensure safe flights in close proximity, we must account for downwash in our collision avoidance method.
Since we do not make small angle assumptions regarding the attitude angle, assuming a fixed orientation in the form of axisaligned ellipsoids is not ideal. Hence, we rotate the ellipsoidal bounding region of the agent according to the quadrotor attitude when computing the VO. Two issues require proper consideration in this approach.

When two quadrotors are in proximity, only the quadrotor (and its orientation) at the higher altitude influences the downwash region. The quadrotor at the lower altitude, in spite of its orientation, may face instability when it enters the downwash region of the quadrotor above it.

ORCA requires Minkowski sum construction and closest point computation for constructing the ORCA halfplanes. Modelling the quadrotors as oriented ellipsoids increases the complexity of both the computation. Since we are required to recompute the ORCA plane over the prediction horizon as discussed in Section IVB1, we need a fast method to perform this computation.
We solve the issue by modelling only one of the two quadrotors as ellipsoids while constructing the VO for the pair of agents. To maintain the symmetry of and about the origin, the decision regarding which quadrotor is modelled as an ellipsoid must be common for any pair of quadrotors.
When an agent constructs the VO based on its neighbors, we choose to model the quadrotor at the higher altitude (at the current timestep) as an ellipsoid, while the other is modelled as a sphere. Also, the orientation of the agent at the higher altitude is used to rotate the bounding ellipsoid for the construction of the Minkowski sum. This results in the Minkowski sum being computed between a oriented ellipsoid and a sphere. Given two agent ’i’ and ’j’, assume agent ’j’ is at a higher altitude at the current timestep. Then the Minkowski sum is given by
In addition, since the choice of agent at a higher altitude is unique for any pair of agents, this ensures that and are symmetric about the origin.
IvC Modeling Uncertainty
ORCA assumes perfect knowledge of the sizes, positions and velocities of all the obstacles around them. This assumption is idealistic and makes implementing ORCA on real quadrotors impractical. To account for a quadrotor’s imperfect sensing, we use a Kalman filter to compute the mean and covariance of the position and velocity of all obstacles around it. Eigenvalues of the covariance matrix represent the spread of the data, or the level of uncertainty in the direction of the eigenvectors. Therefore, we use the maximum eigenvalue of an entity’s position covariance matrix to enlarge its bounding volume from the perspective of the quadrotor that senses it. If the sensed entity is another agent, we increase the length of the axes of its bounding ellipsoid and, if the entity is a dynamic obstacle, we increase the radius of its bounding sphere.
This is similar to the method used in [19]. The VO is constructed using this bounding sphere and is later augmented by the velocity covariance matrix. Although this formulation makes the collision avoidance conservative, we observe that it works well even with tens of dynamic obstacles. Fig. 2 shows a scenario with two agents and the increase in the size of an agent’s bounding ellipsoid as perceived by another agent. This is a simple approach to account for uncertainty, which could be extended to more sophisticated methods, as shown in [20] or [22].V Results
In this section we highlight our implementation and the experimental results and describe the benefits of our method over prior methods.
Va Experimental Setup
Our algorithm is implemented on an Intel Xeon w2123 octacore processor ( GHz) with GB memory and GeForce GTX GPU. We utilize the PX4 Software In The Loop framework, ROS Kinetic, and Gazebo for our simulations. The RVO3D library is utilized to compute the ORCA collision avoidance constraints. The Optimal Control Problem (OCP) is solved using IPOPT Library with a prediction horizon of 10 steps and a timestep of 0.1 seconds. We consider a sensing region of 6m and a time horizon of 5 seconds for ORCA (including the one used in our formulation), AVO, and LQRobstacle. The parameter for AVO is set as as suggested in [9].
VB Performance Evaluation
We compare the performance of our algorithm with ORCA, AVO and LQRObstacles in terms of smoothness of trajectories, variation in velocity during collision avoidance, and proportion of collisions while maneuvering trajectories with highvelocity. In addition, we show the separation between agents to demonstrate the downwash performance.
VB1 Generated Trajectory
We compare the smoothness of the trajectories followed by 6 agents while using our method, ORCA, and AVO. The agents are initially in a circular formation, exchanging their positions with diagonally opposite agents. The maximum velocity for the agents in the above scenario was limited to 4 m/s. Figure 2(a), 2(b), and 2(c) illustrate the trajectories followed by the 6 agents using our method, ORCA and AVO. We observe that our method produces smoother trajectories than ORCA.
VB2 Variation in Velocity
To show our method results in smoother trajectories than AVO, we plot the velocity components (along X, Y, and Z axes) of an agent while performing collision avoidance in the scenarios discussed in the previous subsection. Figure 4 graphs the variation in velocity of one agent while using our method, ORCA, and AVO. It can be observed that the variation velocity is much smoother for the agent using our method compared to ORCA or AVO.
VB3 Performance During Agile Maneuvers
Table II summarizes the performance of the various algorithms while following high velocity timeparameterized trajectories. The trajectories provided are straight lines, but the quadrotors accelerate to reach their highest velocity in the midpoint of the line before decelerating. We define an episode as when all 8 quadrotors exchange their positions with the agents diagonally opposite them. We report the number of episodes (out of 250 episodes) that resulted in one or more of the agents colliding. We observe that our method performs better when following such trajectories.
Collisions while tracking a reference trajectory  

Average Velocity  Episodes with Observed Collisions (out of 250 Episodes)  
ORCA  AVO  DCAD (Our Method)  
1 m/s  0  0  0 
2 m/s  0  0  0 
4 m/s  17  31  0 
7 m/s  151  128  21 
In previous literature, ORCA and AVO are generally tested in scenarios where only the goal position is provide, this is in contrast to using a time parameterized trajectory as in our previous result. Hence, we also tabulate the results when only a goal position is provided in Table III. The scenarios is same as earlier, the agents exchange positions with the diagonally opposite neighbour.
Collisions while moving to a goal position  

Average Velocity  Episodes with Observed Collisions (out of 250 Episodes)  
ORCA  AVO  DCAD (Our Method)  
1 m/s  0  0  0 
2 m/s  0  0  0 
4 m/s  0  21  0 
7 m/s  67  106  21 
Comparing with both cases, we can observe that our method performs better in high velocity flight in scenarios with small sensing distance (6m in our case).
In addition, we observe that our collision avoidance performs well in aggressive trajectories such as a lamniscate (shown in figure 5).
VB4 Scalability Comparison
The Figure 6 illustrates the computation time of our algorithm for one agent considering 1 to 50 obstacles in the environment. We observe that considering only the closest 10 obstacles provides good performance in most cases, an on an average this take less than 6ms.
VC Benefits Over Prior Methods
In comparison with the centralized methods shown in [5] and [6], our method proves to be superior in handling dynamic scene changes and provides scalability to large numbers of agent due to its decentralized and reactive nature. In addition, our method is also computationally inexpensive compared to NMPC methods such as [21], enabling more computation power to be available to other applications like perception and/or communication.
Vi Conclusion, Limitations, and Future Work
In this paper, we present a decentralized collision avoidance method for a quadrotor swarm. Our method uses differential flatness and feedforward linearization to simplify the quadrotor dynamics and uses a linear MPC to generate smooth, collisionfree, downwashconscious local trajectories.
We observe that our method results in smoother trajectories and smoother velocity variations. Further, our method performs considerably better than OCRA or AVO when following highvelocity trajectories. We observe that our method requires 5 ms for each agent to compute a control input in the presence of 8 nearest obstacles.
In this paper, we include a conservative method that accounts for sensor uncertainty by augmenting the bounding volume of agents and VO based on the eigenvalue of the state uncertainty. Our next step is to provide tighter bounds on the sensor uncertainty to improve the performance with noisy sensing. Further, we currently assume the position and velocity data in the case of dynamic obstacles (e.g., birds) are available through some form of sensing. It would be interesting and useful to develop robust methods with integrated sensing, tracking and planning capabilities. In addition, we plan on physically implementing our algorithm in a quadrotor system to measure its performance.
References
 [1] Berg, Jur P. van den, Stephen J. Guy, Ming C. Lin and Dinesh Manocha. “Reciprocal nBody Collision Avoidance.” ISRR (2009).
 [2] A. Kushleyev, D. Mellinger, C. Powers, and V. Kumar, “Towards a swarm of agile micro quadrotors,” Autonomous Robots, vol. 35, no. 4, pp. 287–300, 2013.
 [3] F. Augugliaro, A. P. Schoellig, and R. D’Andrea, “Generation of collisionfree trajectories for a quadrocopter fleet: A sequential convex programming approach,” in Intelligent Robots and Systems (IROS), 2012 IEEE/RSJ International Conference on. IEEE, 2012, pp. 1917– 1922.
 [4] Y. Chen, M. Cutler and J. P. How, ”Decoupled multiagent path planning via incremental sequential convex programming,” 2015 IEEE International Conference on Robotics and Automation (ICRA), Seattle, WA, 2015, pp. 59545961.
 [5] J. A. Preiss, W. Hönig, N. Ayanian and G. S. Sukhatme, ”Downwashaware trajectory planning for large quadrotor teams,” 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vancouver, BC, 2017, pp. 250257.
 [6] M. Hamer, L. Widmer and R. D’andrea, ”Fast Generation of CollisionFree Trajectories for Robot Swarms Using GPU Acceleration,” in IEEE Access, vol. 7, pp. 66796690, 2019.
 [7] Fiorini, P., & Shiller, Z. (1998). Motion Planning in Dynamic Environments Using Velocity Obstacles. The International Journal of Robotics Research, 17(7), 760–772.
 [8] J. van den Berg, Ming Lin and D. Manocha, ”Reciprocal Velocity Obstacles for realtime multiagent navigation,” 2008 IEEE International Conference on Robotics and Automation, Pasadena, CA, 2008, pp. 19281935.
 [9] J. van den Berg, J. Snape, S. J. Guy and D. Manocha, ”Reciprocal collision avoidance with accelerationvelocity obstacles,” 2011 IEEE International Conference on Robotics and Automation, Shanghai, 2011, pp. 34753482.
 [10] M. Rufli, J. AlonsoMora and R. Siegwart, ”Reciprocal Collision Avoidance With Motion Continuity Constraints,” in IEEE Transactions on Robotics, vol. 29, no. 4, pp. 899912, Aug. 2013.
 [11] J. van den Berg, D. Wilkie, S. J. Guy, M. Niethammer and D. Manocha, ”LQGobstacles: Feedback control with collision avoidance for mobile robots with motion and sensing uncertainty,” 2012 IEEE International Conference on Robotics and Automation, Saint Paul, MN, 2012, pp. 346353.
 [12] D. Bareiss and J. van den Berg, ”Reciprocal collision avoidance for robots with linear dynamics using LQRObstacles,” 2013 IEEE International Conference on Robotics and Automation, Karlsruhe, 2013, pp. 38473853.
 [13] H. Cheng, Q. Zhu, Z. Liu, T. Xu and L. Lin, ”Decentralized navigation of multiple agents based on ORCA and model predictive control,” 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vancouver, BC, 2017, pp. 34463451.
 [14] Morgan, Daniel & Chung, SoonJo & Hadaegh, Fred. (2013). Decentralized Model Predictive Control of Swarms of Spacecraft Using Sequential Convex Programming.
 [15] Mellinger, D., Michael, N., & Kumar, V. (2012). Trajectory generation and control for precise aggressive maneuvers with quadrotors. The International Journal of Robotics Research, 31(5), 664–674. https://doi.org/10.1177/0278364911434236
 [16] G. Hoffmann, S. Waslander, and C. Tomlin, “Quadrotor helicopter trajectory tracking control,” in AIAA Guidance, Navigation and Control Conference and Exhibit, Honolulu, Hawaii, Apr. 2008.
 [17] J. Ferrin, R. Leishman, R. Beard and T. McLain, ”Differential flatness based control of a rotorcraft for aggressive maneuvers,” 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems, San Francisco, CA, 2011, pp. 26882693.
 [18] M. Greeff and A. P. Schoellig, ”FlatnessBased Model Predictive Control for Quadrotor Trajectory Tracking,” 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, 2018, pp. 67406745.
 [19] J. Snape, J. v. d. Berg, S. J. Guy and D. Manocha, ”The Hybrid Reciprocal Velocity Obstacle,” in IEEE Transactions on Robotics, vol. 27, no. 4, pp. 696706, Aug. 2011. doi: 10.1109/TRO.2011.2120810
 [20] B. Gopalakrishnan, A. K. Singh, M. Kaushik, K. M. Krishna and D. Manocha, ”PRVO: Probabilistic Reciprocal Velocity Obstacle for multi robot navigation under uncertainty,” 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vancouver, BC, 2017, pp. 10891096.
 [21] H. Zhu and J. AlonsoMora, ”ChanceConstrained Collision Avoidance for MAVs in Dynamic Environments,” in IEEE Robotics and Automation Letters, vol. 4, no. 2, pp. 776783, April 2019.
 [22] M. Kamel, J. AlonsoMora, R. Siegwart, and J. Nieto, “Robust collision avoidance for multiple micro aerial vehicles using nonlinear model predictive control,” in Intelligent Robots and Systems (IROS), IEEE/RSJ International Conference on, 2017, pp. 236–243.
 [23] MICHEL FLIESS, JEAN LÉVINE, PHILIPPE MARTIN & PIERRE ROUCHON (1995) Flatness and defect of nonlinear systems: introductory theory and examples, International Journal of Control, 61:6, 13271361, DOI: 10.1080/00207179508921959
 [24] Veit Hagenmeyer & Emmanuel Delaleau (2003) Exact feedforward linearization based on differential flatness, International Journal of Control, 76:6, 537556, DOI: 10.1080/0020717031000089570
 [25] D. Mellinger and V. Kumar, ”Minimum snap trajectory generation and control for quadrotors,” 2011 IEEE International Conference on Robotics and Automation, Shanghai, 2011, pp. 25202525.
 [26] Greeff, Melissa & Schoellig, Angela. (2017). Model Predictive PathFollowing for Constrained Differentially Flat Systems.
 [27] Xu, Y., Lai, S., Li, J. et al. J Intell Robot Syst (2019) 94: 503. https://doi.org/10.1007/s1084601808139
 [28] Ferrera, E., Alcántara, A., Capitán, J., Castaño, Á.R., Marrón, P.J., & Ollero, A. (2018). Decentralized 3D Collision Avoidance for Multiple UAVs in Outdoor Environments. Sensors.
 [29] H. Voos, ”Nonlinear control of a quadrotor microUAV using feedbacklinearization,” 2009 IEEE International Conference on Mechatronics, Malaga, 2009, pp. 16. doi: 10.1109/ICMECH.2009.4957154
 [30] E. ReyesValeria, R. EnriquezCaldera, S. CamachoLara and J. Guichard, ”LQR control for a quadrotor using unit quaternions: Modeling and simulation,” CONIELECOMP 2013, 23rd International Conference on Electronics, Communications and Computing, Cholula, 2013, pp. 172178. doi: 10.1109/CONIELECOMP.2013.6525781
 [31] M. Bangura and R. Mahony, ìRealtime model predictive control forquadrotors,îIFAC Proceedings Volumes, vol. 47, no. 3, pp 1177311780, 2014
 [32] Kamel, Mina Samir & Burri, Michael & Siegwart, Roland. (2017). Linear vs Nonlinear MPC for Trajectory Tracking Applied to Rotary Wing Micro Aerial Vehicles. IFACPapersOnLine. 50. 10.1016/j.ifacol.2017.08.849.
 [33] T. Engelhardt, T. Konrad, B. Schäfer and D. Abel, ”Flatnessbased control for a quadrotor camera helicopter using model predictive control trajectory generation,” 2016 24th Mediterranean Conference on Control and Automation (MED), Athens, 2016, pp. 852859.
 [34] Falanga, Davide & Foehn, Philipp & Scaramuzza, Davide & Kuppuswamy, Naveen & Tedrake, Russ. (2017). Fast Trajectory Optimization for Agile Quadrotor Maneuvers with a CableSuspended Payload. 10.15607/RSS.2017.XIII.030.
 [35] E. Tal and S. Karaman, ”Accurate Tracking of Aggressive Quadrotor Trajectories Using Incremental Nonlinear Dynamic Inversion and Differential Flatness,” 2018 IEEE Conference on Decision and Control (CDC), Miami Beach, FL, 2018, pp. 42824288. doi: 10.1109/CDC.2018.8619621
Comments
There are no comments yet.