2022 - Swarm of Micro Flying Robots in The Wild
2022 - Swarm of Micro Flying Robots in The Wild
Fig. 1. Overview of the proposed aerial swarm. (A) Static closeup. (B) Comparison with swarm gradient bug algorithm (SGBA) (8), flocking (29), and nonlinear model
simultaneously planning the shape and time profile of a trajectory, feasibility, which are defined in Materials and Methods. This trajec-
also called spatial-temporal trajectory planning, is crucial for safe tory planning framework is illustrated in Fig. 2D.
and efficient drone flights. Despite this, such joint optimization Except for the proposed trajectory planning, we adopt visual-inertial
has a historically difficult problem for multicopters, because the odometry running on each drone independently for aerial swarm
spatial and temporal parameters determining the trajectory together localization. However, accumulative odometry drift may result in
are highly coupled (38, 39), which, for example, results in ~40 min drone collisions when they continue to report, maintaining a safe
to compute a time-optimal trajectory (1). In the proposed approach, distance, so we develop a decentralized drift-correction algorithm
we achieve real-time spatial-temporal optimization by decoupling by minimizing relative distance error measured from onboard ultra-
the spatial and temporal parameters in objective function com- wideband (UWB) sensors.
putation and achieving a linear complexity mapping between the As shown in Fig. 2 (A and B), each drone is equipped with full
optimized variables and intermediate variables that represent a perception, localization, planning, and control functionalities and
trajectory. loosely coupled by a broadcast network sharing trajectories. Coinci-
Under the trajectory-planning framework, the task-specific re- dentally but reasonably, the proposed system is similar to birds
quirements of generating a trajectory can always be formulated as capable of flying freely through the forest while avoiding obstacles
goals to reach; multiple objectives, such as shorter flight time, higher and other moving creatures. For example, in short-range navigation,
smoothness, and closeness to a given path; and constraints, such as birds mainly rely on eyes and their vestibular system (41), and we,
collision avoidance and dynamical feasibility. For the first require- accordingly, develop improved visual-inertial odometry. Further-
ment, we build our planner under the goal-chasing scheme, which more, birds adjust path and speed simultaneously to avoid collision
receives users’ goals continuously and keeps chasing the latest one. while considering flight time and smoothness to save energy (35),
For the second and third requirements, the nonconvexity among and we thus propose joint optimization of spatial-temporal trajec-
them makes the optimization problem difficult to solve. To achieve tories with multiple objectives. Beyond the capability of small birds,
high compatibility, we adopt the constraint transcription method we further use the advantage of our electrically powered artificial
(40) that converts all objectives and constraints to weighted penalties. system characterized by high-fidelity wireless communication for
Specifically, penalties derived from constraints are assigned with trajectory sharing and high-speed computing for fast planning.
weights orders of magnitude higher than other objectives. Note that Furthermore, decentralized coordination concerning both individual
here, terms “objectives” and “constraints” refer to task requirements, and swarm intelligence is met naturally by our solution, which im-
while “penalties” are their relative mathematical formulations form- proves robustness. As Murphy (42) pointed out, weakly centralized,
ing the final cost function. The trajectory-planning problem can distributed organization of the swarm shows higher robustness and
then be solved quickly by standard solvers leveraging sparse para- resilience and can even retain actions when communication and
metric optimization and constraint transcription. To simplify the Global Positioning System (GPS) data are lost.
situation, we provide detailed examples of adding task-specific ob- We propose a versatile multirobot navigation solution, allowing
jectives and constraints intuitively with preformulated general- users to incorporate various task-specific requirements and also pro-
purpose penalties (GPPs). GPPs consist of time minimization, ducing locally spatial-temporal optimal motions in real time. The
smoothness maximization, collision avoidance, and dynamical proposed solution is embodied on drones that are only the size of a
Fig. 2. Hardware and system architecture specifics. (A) Hardware components of our flight platform. See the “Palm-sized drone hardware” section for more details.
(B) The system architecture. Visual-Inertial State Estimator (5) and probabilistic occupancy grid (7) are adopted for localization and mapping, respectively. (C) Computation
and memory usage. Planning and mapping run in the same thread to reduce latency. (D) The planning framework.
performance and potential. In simulations, quantitative evaluations the drones always show an explicit and nonsmooth turn-away pattern
of several common metrics are conducted with various state-of-the- (8) directly in front of an obstacle or before hitting other drones.
art aerial swarm planners. From the photos, available space between two bamboos may be
less than 30 cm wide, and therefore, only miniature-sized drones
Fly through dense forest are allowed to pass. More severely, these narrow gaps further limit
This experiment is designed to demonstrate swarm navigation with the solution space, especially for drones that have neighbors on
full autonomy in a highly dense wild, i.e., a bamboo forest, without both the left- and right-hand sides. The constraints become even
harming themselves or the plants. In this experiment, the penalty tighter when only one available gap exists for multiple drones to
function only contains GPPs, and the goal is set 65 m forward, outside pass through together. To achieve safety and efficiency, some naive
the forest. The paths in Fig. 3I reveal a notable advantage of trajectory handcrafted strategies, such as altering altitude to avoid collisions,
planning: The planned trajectories always connect one gap to the next are undesired because of downwash disturbance and energy wasting.
one directly and smoothly. Compared with reaction-based methods, Under such situations, our spatial-temporal trajectory planner
Fig. 3. Challenging wild navigation with bamboos and various other obstacles. (A) Ten drones fly through highly dense bamboos. (B) A drone flies through a narrow
gap. (C and D) Collision avoidance. (E) A trunk. (F) Messy branches. (G) Tilted bamboos. (H) Uneven ground. (I) Trajectories and the combined map recorded from each
drone. Circled letters with white arrows indicate the places in above panels. Experimental visualization in this paper shares a legend identical to that here.
implicitly finds solutions in a general problem formulation by Intensive reciprocal avoidance evaluation
adjusting time profiles to allow multiple drones to only change Unlike other tests, in which drones move along a similar direction
necessary velocity smoothly and then pass the gap in a queue, which and the actions of avoiding others are not apparent, the experiment
produces lower cost from the planner’s perspective compared shown in Fig. 5 demonstrates random-direction flight in a confined
handcrafted rules. A quantitative analysis of this procedure can space, therefore maximizing the necessity of inter-robot collision
be found in section S4 of the Supplementary Materials. avoidance. This setting mimics the most underlying requirements
Except for dense vertically growing bamboos, other kinds of for dense air traffic among skyscrapers: navigating safely, efficiently,
obstacles exist, including tilted bamboos, trunks, low bushes, weedy and individually. To validate such capability for 10 drones, goals on
ditches, uneven ground, and blown leaves blocking cameras a 3-m-radius circle are assigned randomly to drones that have
(Fig. 3, A to H), which necessitate planning the trajectory in three arrived at the previous goals. Only the basic GPPs in trajectory
dimensions. Such an unstructured environment composed of planning are adopted. Except for a thick tree trunk and a camera-
obstacles with irregular shapes and dense distributions validates the mounted tripod in the flight area, to better imitate more real-world
capability of navigating in most cluttered places, such as disaster situations during the flight, we gradually place cuboid and cylindrical
scenarios, let alone in the regular artificial world. The video of this obstacles to mimic newly built buildings, walk through the area as large
experiment is Movie 2. moving obstacles, and hold and move a drone as natural disturbances.
Next, we shut down all the ground localization anchors (only used
Formation navigation in the wild in this experiment) to imitate the loss of global positioning.
This experiment demonstrates the extensibility of the proposed Because safety and efficiency are two main concerns of transpor-
unified trajectory planning by adding a formation penalty to GPPs. tation systems, we evaluate the minimum distance to collision and
Formation flight is widely used in drone light shows and has been the total number of completed deliveries (total reached goals) during
Movie 2. Flying through dense forest. Movie 3. Formation navigation in the wild.
Furthermore, multidrone tracking improves the robustness to oc- is a lower-complexity systematic solution. The simulation platform
clusion as shown in Fig. 6D because the object position can be ac- is a personal computer with an Intel Core i7 10700K CPU (central
quired by multiple drones through communication. Drones will try to processing unit) running at 4.8 GHz and with 24-GB RAM (random
receive and fuse as many observations as possible from itself and access memory) at 3200 MHz, on which drones run in independent
others to improve occlusion resistance. From the results in Fig. 6, the threads in parallel to maintain consistency with the real-world,
human can move forward without worrying about drone collision or decentralized system architecture.
losing the target. The video of this experiment is Movie 5. Figure 7A gives the visualization of planned trajectories in
two challenging scenarios, i.e., flying through a narrow gate and an
Benchmark comparisons obstacle-rich area at a velocity of 2 m/s. The negative effect of lacking
We compare the proposed approach against two state-of-the-art temporal trajectory optimization reveals that both MADER and EGO-
planners, i.e., MADER (37), and our previous work, EGO-Swarm (33). Swarm generate detours for later drones to wait for their priors. The
Both planners belong to the category of decentralized, asynchronous proposed planner shows the most smoothest trajectories because
trajectory planning methods for drone swarms. Here, MADER drones can adjust time profiles to achieve spatial collision avoidance.
shows impressive collision avoidance with both densely placed static We assess the trajectory-planning performance considering four
and dynamic obstacles. Besides, EGO-Swarm validated in the wild different metrics under various desired velocities and average
Swarm playground
To encourage more involvement and further development, all the codes
are included in the Supplementary Materials to inspire user-friendly
running and interaction, which is named the swarm playground. In
this playground, users can watch a swarm of 40 drones fly freely to
given goals (Fig. 8A), watch seven drones form a centered hexagon
Movie 5. Multi-drone tracking with target occlusion. (Fig. 8B), or watch drones swap positions under either predefined
(Fig. 8C) or endless random goals (Fig. 8D) on a circle. Goals can be being the only dependency installed. The video of the swarm play-
given by users as well in a select-and-set way, as in the video game ground is Movie 6.
Command & Conquer: Red Alert 2 (2000). Furthermore, users can
more deeply take part in the planning process by acting as a tracked
object (Fig. 8E) or dynamic obstacles that drones must avoid (Fig. 8F), DISCUSSION
using one or multiple Microsoft Xbox Controllers (50). All the static In this work, a modular and hierarchical system achieving swarm
obstacles in the playground are randomly generated. The system intelligence based on high-level individual intelligence is pro-
parameters—including drone numbers, flight velocity, start, and goal posed and validated, in which all drones are developed with the
positions—can be reconfigured following the tutorials. In addition, capability of sensing the environment and planning a locally
if new objectives are added, users are encouraged to evaluate the optimal trajectory. This framework is adopted because we focus
correctness of problem formulation and parameter settings before on fully autonomous navigation in real-world unstructured fields
real-world deployment. The code can be effortlessly deployed on without prior knowledge while satisfying TEEM (as discussed in
Ubuntu 16.04, 18.04, and 20.04 with the Robot Operating System Introduction).
triggered planning, and a high degree of freedom in our trajectory boundaries and minimum control effort given {q, T}. Its control
representation. Similarly, deadlock is also reported to hardly oc- effort optimization is given by
cur in other trajectory planning methods (53) in normal situations,
t M
unless under conditions with special environment geometry, such as 2
min ∫t 0 ‖p (s)(t ) ‖2 dt (2)
being inside a narrow and long tube. p(t)
In summary, our proposed planner follows a goal-chasing scheme
in which users can give goals at any time during the tasks. Such a where t ∈ [t0, tM] is the domain of the current trajectory. Note that
scheme can seamlessly connect to high-level decision-making and smoothness maximization is done through control effort minimiza-
task assignment modules with outputs that are always preferred tion because we use a jerk-control system model.
goals for each robot (54, 55). Furthermore, the proposed multi- Furthermore, MINCO is advanced in converting the given pa-
objective trajectory planner allows high-level modules to focus on rameters {q, T} to polynomial coefficients c and time profile Tp with
task abstraction without having to worry about common require- a linear complexity O(M). A more specific correspondence can be
ments such as safety and dynamical feasibility. expressed as
M(T ) c = b(q ) , T p = T
(3)
MATERIALS AND METHODS
System architecture where b(q) ∈ ℝ2Ms × 3 and M(T) ∈ ℝ2Ms × 2Ms is a nonsingular banded
Following the single-to-swarm approach, a decentralized scheme is matrix for any T ≻ 0 as shown in (56). Recovering a trajectory en-
naturally constructed, in which each drone is equipped with full joys linear complexity via banded PLU factorization. The gradi-
autonomy for maximal navigation quality. The system architecture ents for the polynomial coefficients is also propagated to MINCO
( )
t M t M
min ∫t 0 Jdt + ∫t 0 ‖ H ⋅ H‖22 + max ( G ⋅ G, 0) 3 dt (6) This integral can be analytically calculated because the MINCO
q,T
trajectory can be represented as piece-wise polynomials according
to Eq. 3.
⇓ Minimizing total time
A shorter flight time is desirable (1) in most cases, so we also minimize
min ∑ i ⋅ (J(t i ) + ‖ H ⋅ H(t i ) ‖22 + max ( G ⋅ G(t i ) , 0) 3) (7) the weighted total flight time, which gives the total time penalty Jt as
q,T i=0
J t = sum(T) (10)
We omit arguments q, T, and t in Eqs. 6 and 7 for simplicity.
In these equations, H and G are user-defined weights with appro- Dynamical feasibility
priately large entries. ti = t0 + (tM − t0)i/ indicates a finite number For differentially flat multicopters, dynamical feasibility is guaranteed
of sampled timestamps, where + 1 equals the sample number, and by restricting magnitudes of the trajectory derivatives. In our work,
i is the interval value for integral evaluation. If any integral in J we limit the amplitude of velocity, acceleration, and jerk by adding
has a closed-form expression, like smoothness and total time, a penalty if these derivatives exceed the physical thresholds, which are
analytical results should be used. The Eq. 7 can be written in a
user-friendly form ax {(ṗ ( t2i ) − v2m
m
J d,v = ∑ ) , 0}
3
(11)
i=0
min ∑ x Jx (8) 3
q,T x ax {(p¨ ( t2i ) − a2m
m
J d,a = ∑ ) , 0} (12)
i=0
Furthermore, stationed facilities with ground-truth positions can 8 GB of RAM. In our experiments, except for multiview videoing,
also be incorporated into the optimization to ensure global consist CPU and GPU usages are all below 40%, which allows for consider-
ency as in the “Intensive reciprocal avoidance evaluation” section. able computing reserves for extra potential usage.
Note that global frames are required to be roughly consistent initially; 4) Sensors. We address the basic sensor settings to miniaturize
otherwise, the nonlinear optimization lacks reliable initialization. the drone size while retaining high accuracy. We use a grayscale and
Beyond improved localization accuracy, this approach brings almost depth camera Intel Realsense D430 (71, 72) and an IMU from the
no extra communication burden because other drone positions are FCU. The D430 camera outputs depth images for mapping and stereo
calculated from trajectories, and UWB shares different radio fre- grayscale images for localization. The UWB module is a Nooploop
quencies with trajectory broadcasting networks. In our systematic LTPS (73) with a DW1000 radio chip (74) inside.
solution, we use VINS (visual-inertial navigation system) (5) as the 5) Wireless communication modules. We test and implement
VIO and the Ceres Solver (65) for optimization. Evaluations of two topological structures: (i) a star shape using a single-access-point
effectiveness from our real-world experiments and a corresponding TP-LINK TL-XVR6000L router with an EDIMAX EW-7822UCL
block diagram are presented in the Supplementary Materials. (75) USB WiFi adapter and (ii) a decentralized peer-to-peer ad hoc
Hierarchical safety guarantee network using an AzureWave AW-CB375NF (76) via PCIe (peripheral
Because the safety constraints are transferred to penalties, the out- component interface express) interface. The first structure shows
put trajectory from the solver can still be infeasible, so a postcheck higher bandwidth, whereas the second is more suitable for a large
after trajectory planning is required. If a safety constraint is violated, swarm scale as assessed in the Supplementary Materials.
the planner increases its weight and then makes another trial to
improve the possibility of finding a satisfactory solution. If it is still
infeasible after several trials, the current planning is terminated, SUPPLEMENTARY MATERIALS
www.science.org/doi/10.1126/scirobotics.abm5954
16. CAL FIRE, California department of forestry and fire protection, www.fire.ca.gov/incidents/ 48. F. Augugliaro, A. P. Schoellig, R. D’Andrea, Generation of collision-free trajectories for a
(2021). quadrocopter fleet: A sequential convex programming approach, IEEE/RSJ International
17. D. Mackenzie, It’s a bird, it’s a plane, it’s a ... spy? Science 335, 1433 (2012). Conference on Intelligent Robots and Systems (IEEE, 2012), pp. 1917–1922.
18. A. Kamagaew, J. Stenzel, A. Nettsträter, M. ten Hompel, Concept of cellular transport 49. J. Park, J. Kim, I. Jang, H. J. Kim, Efficient multi-agent trajectory planning with feasibility
systems in facility logistics, in Proceedings of the 2011 International Conference on guarantee using relative bernstein polynomial, IEEE International Conference on Robotics
Automation, Robotics and Applications (IEEE, 2011), pp. 40–45. and Automation (IEEE, 2020), pp. 434–440.
19. J. Alonso-Mora, S. Baker, D. Rus, Multi-robot formation control and object transport 50. Microsoft, Xbox Wireless Controller, www.xbox.com/en-US/accessories/controllers/
in dynamic environments via constrained optimization. Int. J. Rob. Res. 36, 1000–1021 xbox-wireless-controller (2021).
(2017). 51. J. A. DeCastro, J. Alonso-Mora, V. Raman, D. Rus, H. Kress-Gazit, Collision-free reactive
20. D. Falanga, S. Kim, D. Scaramuzza, How fast is too fast? The role of perception latency mission and motion planning for multi-robot systems. Robot. Res. 459–476 (2018).
in high-speed sense and avoid. IEEE Robot. Autom. Lett. 4, 1884–1891 (2019). 52. J. Van Den Berg, S. J. Guy, M. Lin, D. Manocha, Reciprocal n-body collision avoidance.
21. F. Gao, L. Wang, B. Zhou, X. Zhou, J. Pan, S. Shen, Teach-repeat-replan: A complete Robot. Res. 3–19 (2011).
and robust system for aggressive flight in complex environments. IEEE Trans. Robot. 36, 53. J. Alonso-Mora, T. Naegeli, R. Siegwart, P. Beardsley, Collision avoidance for aerial vehicles
1526–1545 (2020). in multi-agent scenarios. Auton. Robot. 39, 101–121 (2015).
22. W. Hönig, J. A. Preiss, T. S. Kumar, G. S. Sukhatme, N. Ayanian, Trajectory planning 54. M. Coppola, K. N. McGuire, C. De Wagter, G. C. de Croon, A survey on swarming
for quadrotor swarms. IEEE Trans. Robot. 34, 856–869 (2018). with micro air vehicles: Fundamental challenges and constraints. Front Robot. AI 7, 18
23. J. A.-Mora, P. Beardsley, R. Siegwart, Cooperative collision avoidance for nonholonomic (2020).
robots. IEEE Trans Robot. 34, 404–420 (2018). 55. J. Alonso-Mora, S. Samaranayake, A. Wallar, E. Frazzoli, D. Rus, On-demand high-capacity
24. Intel, Intel Drone Light Shows, https://inteldronelightshows.com/ (2021). ride-sharing via dynamic trip-vehicle assignment. Proc. Natl. Acad. Sci. U.S.A. 114,
25. High Great, High Great Drone Light Shows, www.hg-fly.com/en/ (2021). 462–467 (2017).
26. CollMot Entertainment, CollMot Entertainment Drone Light Shows, https://collmot.com/ 56. Z. Wang, X. Zhou, C. Xu, F. Gao, Geometrically constrained trajectory optimization for
(2021). multicopters [v2], arXiv preprint arXiv:2103.00190 (2021).
27. C. W. Reynolds, Flocks, herds and schools: A distributed behavioral model, Annual 57. Y. Nesterov, Lectures on Convex Optimization, vol. 137 (Springer, 2018).
Conference on Computer Graphics and Interactive Techniques (1987), pp. 25–34. 58. FAST Lab, An Open-Source L-BFGS Solver, https://github.com/ZJU-FAST-Lab/LBFGS-Lite
28. S. Hauert, S. Leven, M. Varga, F. Ruini, A. Cangelosi, J.-C. Zufferey, D. Floreano, Reynolds (2021).
software and did some early work on localization correction. Q.W. wrote an early version of materials availability: All data needed to support the conclusions of this manuscript are
swarm tracking. T.Y. designed the power management module of the drone and edited an included in the main text or Supplementary Materials and in an online dataset (66).
early version of the videos. H. Lu polished the manuscript. Y.C. gave several suggestions
about UWB usage and helped with several tests. C.X. provided people and sites for drone Submitted 5 October 2021
testing. F.G. directed the research, provided the primary idea and funding with some key Accepted 22 February 2022
suggestions about software and hardware debugging, and revised the manuscript. Published 4 May 2022
Competing Interests: The authors declare that they have no competing interests. Data and 10.1126/scirobotics.abm5954
Science Robotics (ISSN ) is published by the American Association for the Advancement of Science. 1200 New York Avenue NW,
Washington, DC 20005. The title Science Robotics is a registered trademark of AAAS.
Copyright © 2022 The Authors, some rights reserved; exclusive licensee American Association for the Advancement of Science. No claim
to original U.S. Government Works