Multi-Agent Coordination Fluid Flow Modeling and Experimental Evaluation
Reliability is a critical aspect of multi-agent system coordination as it ensures that the system functions correctly and consistently. If one agent in the system fails or behaves unexpectedly, it can negatively impact the performance and effectivene…
Authors: Harshvardhan Uppaluru, Mohammad Ghuran, Hossein Rastgoftar
1 Multi-Agent Coordination Fluid Flo w Modeling and Experimental Ev aluation Harshv ardhan Uppaluru, Mohammad Ghufran, and Hossein Rastgoftar Abstract —Reliability is a critical aspect of multi-agent system coordination as it guarantees the system’ s accurate and consistent functionality . If one agent in the system fails or behaves unexpect- edly , it can negatively impact the performance and effectiv eness of the entire system. Ther ef ore, it is important to design and implement multi-agent systems with a high le vel of r eliability to ensure that they can operate safely and move smoothly in the presence of unfor eseen agent failure or lack of communication with some agent teams moving in a shared motion space. This paper presents a novel navigation model that, in an ideal fluid- flow , divides agents into cooperativ e (non-singular) and non- cooperative (singular) agents, with cooperative agents sliding along streamlines safely enclosing non-cooperative agents in a shared motion space. A series of flight experiments utilizing crazyflie quadcopters will experimentally validate the suggested model. I . I N T RO D U C T I O N Robotics research has long drawn inspiration from nature. Researchers hav e examined how animals mo ve, communicate, and interact with their en vironments in order to build robots capable of performing similar tasks. Biomimicry , the idea of designing and building technology inspired by nature, has resulted in the dev elopment of efficient robots that can adapt in response to their en vironment. Our inspiration stems from the flow of a fluid around a rock offering a glimpse into how robots can navigate around obstacles in their en vironments. For example, the principles of fluid dynamics can be applied to the design of a robot’ s mov ement, allowing it to mov e smoothly and efficiently around obstacles. A. Related W ork Multi-Agent Systems (MAS) hav e been deployed in a plethora of robotics applications such as search and rescue missions [1], forest robotics [2], and surveillance [3], due to their significant advantages when compared to a single agent. Such MAS must be equipped with robust algorithms that can safely navigate around both static and dynamic obstacles in order for all agents to successfully complete the cooperative job . V arious collision-free path planning works hav e been previously published such as collision cone [4], navigation functions [5], velocity obstacle concept [6], [7], flocking [8] and sampling based methods [9]. Flow-based control strategies for marine robots in gyre-like flo ws have been previously studied [10], [11]. Artificial Potential Fields (APF) [12]–[14] is a simple and mathematically elegant technique originally proposed for manipulators and mobile robots in an operational space. Combining a positi ve potential around goal location and Authors are with the Department of Aerospace and Mechanical Engi- neering, Univ ersity of Arizona, T ucson, AZ, 85721 USA e-mail: { huppaluru, ghufran1942, hrastgoftar } @arizona.edu. a negativ e potential around obstacles, this method guides the robot toward its goal by following the gradients of potential field while steering away from obstacles. A well-known issue of such an approach is getting trapped in local minima and in a real-world dynamic en vironment it has been shown that APF is inefficient [15]. Control Barrier Functions (CBFs) ha ve emerged as a poten- tial mathematical tool for safety assurances [16]. Using system dynamics, CBFs can be used to define a admissible region in the robot’ s workspace, and the robot’ s control inputs are then calculated to ensure that the robot’ s state remains within this region at all times. CBFs for a safe behavior in multi- agent robotics was studied previously [17] and a decentralized supervisory controller based on CBFs has been presented [18]. A combination of CBFs with Control L yapunov Functions (CLFs) via quadratic programming was studied for cruise control applications [19]. W e ha ve recently developed an advanced physics-based automation system for the safe and efficient coordination of large-scale multi-agent systems, ev en in the face of disturbances and unexpected failures [20]– [23]. This inno vati ve approach is composed of tw o opera- tion modes: Homogeneous Deformation Mode (HDM) and Failure Resilient Mode (FRM). By applying the principles of continuum mechanics, we have successfully formalized the transitions between these two modes, enabling a robust response to varying operating conditions. B. Contributions This work presents a novel approach to ensuring the safe and resilient coordination of multiple agent teams moving collectiv ely in a shared motion en vironment. Drawing inspira- tion from ideal fluid-flow models, each team treats its agents as cooperative particles within an ideal fluid-flow field while considering other teams’ agents as singular points in the field. T o ensure inter-agent collision av oidance and safely wrap the non-cooperativ e agents, the cooperative agents slide along the streamlines of an ideal fluid-flow field. The proposed approach will be experimentally validated using Crazyflie quadcopters in an indoor flight space. Compared to existing literature and the authors’ previous work, this paper offers the follo wing key contributions: Contribution 1: The work extends the experimental ev al- uation of navigation presented in [23], which in vestigated a single failed quadcopter , by modeling and experimentally validating na vigation in multi-agent systems in the presence of multiple non-concurrent failures and obstacles with arbitrary sizes and geometries. 2 Contribution 2: The proposed navigation approach estab- lishes a nov el paradigm for collision avoidance, wherein: (i) each obstacle is treated as a rigid body whose boundary is determined by a streamline enclosing it; and (ii) collision av oidance is ensured by defining agents desired trajectories along the streamlines that safely wrap obstacles. Contribution 3: The work models and experimentally validates na vigation for multiple agent teams simultaneously coordinating within a shared motion space. In particular , this work presents algorithmic approaches for navigation in the presence of stationary and dynamic obstacles, encompassing various situations such as Stationary Non-Concurrent Fail- ures (SNCF), Time-V arying Non-Cooperati ve (TVNC), T ime- V arying Cooperativ e (TVC), and Stationary Obstacle-Laden En vironments (SOLE) containing many obstacles with arbi- trary sizes and geometries that are randomly distributed. Contribution 4: The proposed SOLE fluid-flow navigation approach applies the existing mesh generation techniques [24], mainly used in computational fluid dynamics, to con vert a highly-constrained motion space, populated with a random number of obstacles of arbitrary size and geometry into an obstacle-free planning space, and ensure collision avoidance by planning the agent coordination in the planning space. T o the best of authors’ knowledge, this is the first work that lever - ages computational fluid dynamics (CFD) mesh generation principles to ensure collision-free multi-agent coordination within a highly-constrained motion en vironment. C. Organization The remaining sections of the paper are organized as follows: A detailed description of our proposed methods is presented in Section II. The proposed model will be used in Section III to present fi ve different operation modes under different communication and constraint protocols. Section IV outlines the experimental setup and presents the results of the experiments. W e finally conclude the paper in Section V with thoughts about future directions. I I . M E T H O D O L O G Y W e consider a MAS represented by the set V = { 1 , · · · , 𝑁 } , which is subsequently clustered into 𝑚 distinct groups. These groups are identified by the set M = { 1 , · · · , 𝑚 } . Let V 𝑙 be a set defining agents of cluster 𝑙 ∈ M ; consequently , the set ¯ V 𝑙 = V \ V 𝑙 defines agents that do not belong to cluster 𝑙 ∈ M Although, V remains time-in v ariant, the number of agents in V 𝑙 can vary with time, suggesting that V 𝑙 may lose or absorb agents at any giv en time 𝑡 . T o safely plan coordination of V 𝑙 ’ s agents, in the presence of agents belonging to ¯ V 𝑙 , we consider V 𝑙 ’ s agents as finite number of particles of an ideal fluid-flow field while ¯ V 𝑙 ’ s agents are either considered as “singularity points” or “rigid bodies” that are safely wrapped by the streamlines. For the ideal fluid-flow field, used for planning of coordination of V 𝑙 ’ s agents, we define potential filed 𝜙 𝑙 ( 𝑥 , 𝑦 , 𝜃 𝑙 , 𝑡 ) and stream field 𝜓 𝑙 ( 𝑥 , 𝑦 , 𝜃 𝑙 ( 𝑡 ) , 𝑡 ) , where 𝑥 and 𝑦 are position components, 𝑡 denotes time, and 𝜃 𝑙 ( 𝑡 ) is the bulk motion direction of cluster 𝑙 ∈ M . Note that both potential and stream functions satisfy the Laplace equation: Fig. 1: Schematic of the desired path of agent 𝑖 ∈ V 𝑙 . 𝜙 𝑙 𝑥 𝑥 + 𝜙 𝑙 𝑦 𝑦 = 0 , ∀ 𝑙 ∈ M (1a) 𝜓 𝑙 𝑥 𝑥 + 𝜓 𝑙 𝑦 𝑦 = 0 , ∀ 𝑙 ∈ M (1b) For the sake of simplicity , we use 𝜙 𝑖 𝑙 ( 𝑡 ) and 𝜓 𝑖 𝑙 ( 𝑡 ) to denote 𝜙 𝑖 𝑙 ( 𝑡 ) = 𝜙 𝑙 ( 𝑥 𝑖 , 𝑦 𝑖 , 𝜃 𝑙 , 𝑡 ) and 𝜓 𝑖 𝑙 ( 𝑡 ) = 𝜓 𝑙 ( 𝑥 𝑖 , 𝑦 𝑖 , 𝜃 𝑙 , 𝑡 ) to specify the corresponding potential and stream coordinates of agent 𝑖 ∈ V 𝑙 positioned at ( 𝑥 𝑖 , 𝑦 𝑖 ) at time 𝑡 . Path Planning Strategy: Ev ery agent 𝑖 ∈ V 𝑙 can a void inter - agent collision and hitting ¯ V 𝑙 ’ s agents when it slides along lev el curve 𝜓 𝑙 ( 𝑥 𝑖 , 𝑦 𝑖 , 𝜃 𝑙 ( 𝑡 ) , 𝑡 ) = ¯ 𝜓 𝑖 ,𝑙 ( 𝑡 ) constant [22]. Therefore, the tangent vector to the desired sliding path of agent 𝑖 ∈ V 𝑙 is obtained by ˆ T 𝑖 ( 𝑥 , 𝑦 , 𝑡 ) = 𝜕 𝜓 𝑙 ( 𝑥 𝑖 , 𝑦 𝑖 , 𝜃 𝑙 , 𝑡 ) 𝜕 𝑦 − 𝜕 𝜓 𝑙 ( 𝑥 𝑖 , 𝑦 𝑖 , 𝜃 𝑙 , 𝑡 ) 𝜕 𝑥 𝑇 , (2) for ev ery 𝑖 ∈ V 𝑙 and 𝑙 ∈ M (See Fig. 6). for ev ery 𝑖 ∈ V 𝑙 and 𝑙 ∈ M (See Fig. 6). The desired velocity of agent 𝑖 ∈ V 𝑙 is giv en by V 𝑖 = 𝑣 𝑙 ˆ T 𝑖 , ∀ 𝑖 ∈ V 𝑙 , 𝑙 ∈ M , (3) and we use the Algorithm 1 to update z 𝑖 at any time 𝑡 . Theorem 1. Let 𝑥 𝑖 , 0 , 𝑦 𝑖 , 0 denote the position of agent 𝑖 ∈ V 𝑙 in the 𝑥 − 𝑦 plane and 𝜃 𝑙 ( 𝑡 0 ) = 𝜃 𝑙 0 denote the bulk motion dir ection of ag ents in V 𝑙 at initial (r efer ence) time 𝑡 0 for every 𝑙 ∈ M . Define 𝜙 𝑖 𝑙 ( 𝑡 0 ) = 𝜙 𝑖 𝑙, 0 = 𝜙 𝑙 ( 𝑥 𝑖 , 0 , 𝑦 𝑖 , 0 , 𝜃 𝑙 0 , 𝑡 0 ) and 𝜓 𝑖 𝑙 ( 𝑡 = 𝑡 0 ) = 𝜓 𝑖 𝑙, 0 = 𝜓 𝑙 ( 𝑥 𝑖 , 0 , 𝑦 𝑖 , 0 , 𝜃 𝑙 0 , 𝑡 0 ) as the initial potential and str eam coordinates of agent 𝑖 ∈ V 𝑙 for every 𝑙 ∈ M , and 𝑟 𝑚𝑖 𝑛, 0 = min i,j i ≠ j ( 𝜙 𝑖 𝑙, 0 − 𝜙 𝑗 𝑙 , 0 ) 2 + ( 𝜓 𝑖 𝑙, 0 − 𝜓 𝑗 𝑙 , 0 ) 2 (4) as the minimum separ ation distance between ag ents in the 𝜙 𝑙 − 𝜓 𝑙 plane, and 𝜁 𝑚 𝑎 𝑥 = max 𝑥 , 𝑦 𝜕 𝜙 𝑙 𝜕 𝑥 2 + 𝜕 𝜙 𝑙 𝜕 𝑦 2 ! . (5) Assume that the trajectory tracking contr ol err or of each individual agent does not exceed 𝜂 and every agent can be enclosed by a ball of r adius 𝜇 . Then, inter-agent collision avoidance is guaranteed, if the sliding speed ¤ 𝜙 𝑖 𝑙 = 𝑣 𝑙 is the same for every agent in V 𝑙 , and 𝑟 2 𝑚𝑖 𝑛, 0 𝜁 𝑚 𝑎 𝑥 ≥ 4 ( 𝜂 + 𝜇 ) 2 (6) 3 Pr oof. According to equation (14), a one-to-one mapping between infinitesimal elements in ( 𝑑 𝜙 𝑙 − 𝑑 𝜓 𝑙 ) and ( 𝑑𝑥 − 𝑑 𝑦 ) planes exists; they can be related by 𝑑 𝜙 𝑙 𝑑 𝜓 𝑙 = J 𝑑𝑥 𝑑 𝑦 (7) where J is the Jacobian matrix defined as follows: J ( 𝑥 , 𝑦 ) = " 𝜕 𝜙 𝑙 𝜕 𝑥 𝜕 𝜙 𝑙 𝜕 𝑦 𝜕 𝜓 𝑙 𝜕 𝑥 𝜕 𝜓 𝑙 𝜕 𝑦 # (8) Under Cauchy-Reimann conditions, we can write J 𝑇 J = 𝜕 𝜙 𝑙 𝜕 𝑥 2 + 𝜕 𝜙 𝑙 𝜕 𝑦 2 ! I 2 , where I 2 ∈ R 2 × 2 is the identity matrix. W e can therefore write: 𝑑 𝜙 2 𝑙 + 𝑑 𝜓 2 𝑙 = 𝑑𝑥 𝑑 𝑦 J 𝑇 J 𝑑𝑥 𝑑 𝑦 = 𝜙 2 𝑙 𝑥 + 𝜙 2 𝑙 𝑦 𝑑𝑥 2 + 𝑑 𝑦 2 . (9) If the 𝑥 and 𝑦 coordinates along the stream line of every agent 𝑖 ∈ V 𝑙 satisfies 𝑑𝑥 2 + 𝑑 𝑦 2 ≥ 𝑑 𝜙 2 𝑙 + 𝑑 𝜓 2 𝑙 𝜁 𝑚 𝑎 𝑥 , (10) then, ( 𝑑 𝑚𝑖 𝑛 ( 𝑡 ) ) 2 ≥ ( 𝑟 𝑚𝑖 𝑛 ( 𝑡 ) ) 2 𝜁 𝑚 𝑎 𝑥 , ∀ 𝑡 (11) where 𝑟 𝑚𝑖 𝑛 ( 𝑡 ) = min i,j i ≠ j 𝜙 𝑖 𝑙 ( 𝑡 ) − 𝜙 𝑗 𝑙 ( 𝑡 ) 2 + 𝜓 𝑖 𝑙 ( 𝑡 ) − 𝜓 𝑗 𝑙 ( 𝑡 ) 2 , ∀ 𝑡 , (12a) 𝑑 𝑚𝑖 𝑛 ( 𝑡 ) = min i,j i ≠ j 𝑥 𝑖 ( 𝑡 ) − 𝑥 𝑗 ( 𝑡 ) 2 + 𝑦 𝑖 ( 𝑡 ) − 𝑦 𝑗 ( 𝑡 ) 2 , ∀ 𝑡 . (12b) When the sliding speed ¤ 𝜙 𝑖 𝑙 = 𝑣 𝑙 is the same for every agent 𝑖 ∈ V 𝑙 , it’ s agents move as particles of a rigid-body in the 𝜙 𝑙 − 𝜓 𝑙 plane, and thus, inter-agent distances in the 𝜙 𝑙 − 𝜓 𝑙 plane are time-in variant. As a result, the minimum separation distance of the desired formation in the 𝜙 𝑙 − 𝜓 𝑙 plane can be assigned at reference time 𝑡 0 , when the failed agent no-fly zone first appears. Therefore, 𝑝 𝑚𝑖 𝑛, 0 = 𝑝 𝑚𝑖 𝑛 ( 𝑡 ) and Eq. (13) simplifies to ( 𝑑 𝑚𝑖 𝑛 ( 𝑡 ) ) 2 ≥ 𝑟 𝑚𝑖 𝑛, 0 2 𝜆 𝑚 𝑎 𝑥 , ∀ 𝑡 (13) Since 𝑑 𝑚𝑖 𝑛 ( 𝑡 ) ≥ 2 ( 𝜂 + 𝜇 ) is the collision av oidance condition at any time 𝑡 , the inter-agent collision av oidance is assured, if Eq. (6) is satisfied. Remark 1 . W e note that the ideal fluid-flow coordination is defined ov er a 2 -D plane, which is called 𝑥 − 𝑦 plane in this paper . Ho we ver , e very agent 𝑖 ∈ V is free to move along a direction that is normal to the 𝑥 − 𝑦 plane, while 𝑥 and 𝑦 components of its desired position is restricted to slide along a streamline determined by Eq. (2). For better clarification, Fig. 2 shows how a multi-agent system, moving in a 3 -D space, Fig. 2: T wo-dimensional fluid flow coordination in a 3 - dimensional motion space where obstacles are wrapped by vertical cylinders [25]. can apply the ideal fluid flow model to safely wrap obstacles specified as vertical cylinders [25]. Solutions: Given abov e problem setting, we will dev elop analytic and numerical solutions with the details provided in Sections II-A and II-B to define the potential fiction 𝜙 𝑙 and stream function 𝜓 𝑙 for group coordination of V 𝑙 ’ s agents. The analytical approach will be used when ¯ V 𝑙 ’ s agents are dynamic, and thus, potential and stream curves are time- varying. The analytic method considers ¯ V 𝑙 ’ s agents as sin- gularity points that are excluded by combining irrational fluid flow patterns. On the other hand, the numerical solution will be applied to safely plan coordination V 𝑙 in the presence of many static obstacles, with arbitrary size and geometry , that are randomly distributed in the motion space, to maximize the motion space usability while ensuring collision av oidance. Navigation Modes: By applying the proposed fluid flow guidance, this paper implements and experimentally ev aluates collision-free navig ation of multiple groups of agents under (i) Stationary Non-Concurrent Failures (SNCF), (ii) Time- V arying Non-Cooperativ e (TVNC), (iii) T ime-V arying Coop- erativ e (TVC), and Stationary Obstacle-Laden En vironment (SOLE) scenarios, with the properties listed in T able I. A. Analytic Approac h Assuming the agents in V operate in the 𝑥 − 𝑦 plane, we represent the position of agent 𝑖 ∈ V by complex variable z 𝑖 = 𝑥 𝑖 + j 𝑦 𝑖 . In order to safely plan a collision-free coordination for agents in V 𝑙 , in the presence of agents in ¯ V 𝑙 , we treat agents in V 𝑙 as a finite number of particles in a time-varying ideal fluid-flow field. This ideal flo w field is defined by combining uniform flow and doublet flow in the 𝑥 − 𝑦 plane. Therefore, agents in V 𝑙 perceiv e agents in ¯ V 𝑙 as a collection of singularities in the 𝑥 − 𝑦 plane and exclude them by employing vertical cylinders. These cylinders are derived by defining the following complex function: f z 𝑖 e − j 𝜃 𝑙 ( 𝑡 ) , 𝑡 = 𝜙 𝑙 ( 𝑥 𝑖 , 𝑦 𝑖 , 𝜃 𝑙 ( 𝑡 ) , 𝑡 ) + j 𝜓 𝑙 ( 𝑥 𝑖 , 𝑦 𝑖 , 𝜃 𝑙 ( 𝑡 ) , 𝑡 ) = ( 1 − 𝛽 𝑙 ) z 𝑖 e − j 𝜃 𝑙 + 𝛽 𝑙 ℎ ∈ ¯ V 𝑙 z 𝑖 e − j 𝜃 𝑙 − z ℎ ( 𝑡 ) + Δ 2 ℎ z 𝑖 e − j 𝜃 𝑙 − z ℎ ( 𝑡 ) ! , (14) This equation applies to every cluster 𝑙 ∈ M and agent 𝑖 ∈ V 𝑙 , where 𝛽 𝑙 ∈ { 0 , 1 } is a binary variable, 𝜃 𝑙 ( 𝑡 ) is a time dependent angle that determines the bulk motion direction of cluster 𝑙 ∈ 4 T ABLE I: Properties of the inv estigated fluid-flow navigation problems. Scenarios 𝜃 𝑙 ( 𝑙 ∈ M ) V 𝑙 ( 𝑙 ∈ M ) 𝛽 𝑙 ( 𝑙 ∈ M ) 𝑚 SNCF T ime-In variant T ime-V arying 𝛽 𝑙 = 1 𝑚 = 2 TVNC T ime-V arying Time-In variant 𝛽 𝑙 = 1 𝑚 = 2 TVC T ime-V arying Time-In variant 𝛽 𝑙 ∈ { 0 , 1 } 𝑚 > 1 SOLE T ime-In variant T ime-In variant 𝛽 𝑙 = 1 𝑚 = 1 M , and Δ ℎ ∈ R + is the chosen exclusion radius such that the size of agent ℎ ∈ ¯ V 𝑙 is properly incorporated. Because Eq. (14) establishes a nonsingular transformation between z 𝑖 = 𝑥 𝑖 + j 𝑦 𝑖 and 𝜙 𝑖 𝑙 + j 𝜓 𝑖 𝑙 for ev ery 𝑖 ∈ V 𝑙 and 𝑙 ∈ M , ( 𝑥 𝑖 , 𝑦 𝑖 ) can be uniquely obtained based on ( 𝜙 𝑖 𝑙 ( 𝑡 ) , 𝜓 𝑖 𝑙 ( 𝑡 ) ) at any time 𝑡 by 𝑥 𝑖 = 𝑔 1 ( 𝜙 𝑖 𝑙 , 𝜓 𝑖 𝑙 , 𝜃 𝑙 , 𝑡 ) (15a) 𝑦 𝑖 = 𝑔 2 ( 𝜙 𝑖 𝑙 , 𝜓 𝑖 𝑙 , 𝜃 𝑙 , 𝑡 ) (15b) W e use 𝑔 1 and 𝑔 2 in Algorithm 1 for presenting the position update law . Algorithm 1 Position Update Algorithm for Every Cluster 𝑙 ∈ M under Fluid-Flow Navigation Strategy . 1: Get: T ime increment Δ 𝑡 , Δ ℎ and z ℎ for every ℎ ∈ ¯ V 𝑙 , 𝛽 𝑙 ∈ { 0 , 1 } , 𝜃 𝑙 sliding speed 𝑣 𝑙 , and current position z 𝑖 of ev ery agent 𝑖 ∈ V 𝑙 . 2: Obtain: Next position z ′ 𝑖 = 𝑥 ′ 𝑖 + j 𝑦 ′ 𝑖 . 3: for 𝑖 ∈ V 𝑙 do 4: Compute current 𝜙 𝑖 𝑙 ( 𝑡 ) and 𝜓 𝑖 𝑙 ( 𝑡 ) using Eq. (14). 5: Compute next potential 𝜙 ′ 𝑖 𝑙 : 𝜙 𝑖 𝑙 = 𝜙 𝑖 𝑙 + 𝑣 𝑙 Δ 𝑡 . 6: Compute next stream 𝜓 ′ 𝑖 𝑙 : 𝜓 𝑖 𝑙 = 𝜓 𝑖 𝑙 . 7: Compute next 𝑥 ′ 𝑖 : 𝑥 ′ 𝑖 = 𝑔 1 𝜙 ′ 𝑖 𝑙 , 𝜓 ′ 𝑖 𝑙 , 𝜃 𝑙 , 𝑡 . 8: Compute next 𝑦 ′ 𝑖 : 𝑦 ′ 𝑖 = 𝑔 2 𝜙 ′ 𝑖 𝑙 , 𝜓 ′ 𝑖 𝑙 , 𝜃 𝑙 , 𝑡 . 9: end for B. Numerical Approac h For the numerical solution, we propose to establish a non- singular mapping between an obstacle-laden “motion space”, specified by position components 𝑋 = 𝑥 cos 𝜃 𝑙 + 𝑦 sin 𝜃 𝑙 and 𝑌 = 𝑦 cos 𝜃 𝑙 − 𝑥 sin 𝜃 𝑙 , and an obstacle-free “planning space” that is defined by coordinates 𝜙 𝑙 and 𝜓 𝑙 , where 𝑋 + j 𝑌 = z 𝑒 − j 𝜃 𝑙 and 𝜃 𝑙 is constant. By using the method presented in [24], 𝑋 ( 𝜙 𝑙 , 𝜓 𝑙 ) and 𝑌 ( 𝜙 𝑙 , 𝜓 𝑙 ) , defined ov er the planning space, are obtained by solving 𝑎 𝑋 𝜙 𝑙 𝜙 𝑙 − 2 𝑏 𝑋 𝜙 𝑙 𝜓 𝑙 + 𝑐 𝑋 𝜓 𝑙 𝜓 𝑙 = 0 , 𝑙 ∈ M , (16a) 𝑎𝑌 𝜙 𝑙 𝜙 𝑙 − 2 𝑏 𝑌 𝜙 𝑙 𝜓 𝑙 + 𝑐𝑌 𝜓 𝑙 𝜓 𝑙 = 0 , 𝑙 ∈ M , (16b) where 𝑎 = 𝑋 2 𝜓 𝑙 + 𝑌 2 𝜓 𝑙 , 𝑏 = 𝑋 𝜙 𝑙 𝑋 𝜓 𝑙 + 𝑌 𝜙 𝑙 𝑌 𝜓 𝑙 , and 𝑐 = 𝑋 2 𝜙 𝑙 + 𝑌 2 𝜙 𝑙 . For better clarification, Fig. 5 shows an obstacle-laden en- vironment with eight obstacles. The streamlines shown by the black curves and the potential lines shown by the red curves are both obtained numerically by solving partial differential equations (16) that are defined ov er the “planning” space. As shown in Fig. 5, an agent follo wing the streamline shown by green can safely a void an obstacle in the motion space, thus, the path planning strategy presented in Section II can be used by every agent to safely warp obstacles by sliding along a streamline. W e implement the proposed numerical approach over a rectangular motion space defined by P = { ( 𝑋 , 𝑌 ) : 𝑋 ∈ [ 𝑋 𝑚𝑖 𝑛 , 𝑋 𝑚 𝑎 𝑥 ] , 𝑌 ∈ [ 𝑌 𝑚𝑖 𝑛 , 𝑌 𝑚 𝑎 𝑥 ] } (17) where ( 𝑋 𝑚𝑖 𝑛 , 𝑌 𝑚𝑖 𝑛 ) , ( 𝑋 𝑚𝑖 𝑛 , 𝑌 𝑚 𝑎 𝑥 ) , ( 𝑋 𝑚 𝑎 𝑥 , 𝑌 𝑚𝑖 𝑛 ) , and ( 𝑋 𝑚 𝑎 𝑥 , 𝑌 𝑚 𝑎 𝑥 ) are positions of the P ’ s corners. Obstacles are defined by subset O ⊂ P , and di vided into 𝑛 𝑜 subsets O 1 through O 𝑛 𝑜 ( O = O 1 Ð · · · O 𝑛 𝑜 ). Obstacle subset O 𝑗 consists of finite number of compact obstacle zones whose 𝑌 components of their center of mass are the same and equal to ¯ 𝑌 𝑗 . Giv en P and O , N = P \ O define the navigable space. The navigable space is divided into 𝑛 𝑜 + 1 navigable channels N 0 , · · · , N 𝑛 𝑜 , where N 𝑗 = [ 𝑋 𝑚𝑖 𝑛 , 𝑋 𝑚 𝑎 𝑥 ] × ¯ 𝑌 𝑗 , ¯ 𝑌 𝑗 + 1 − O , 𝑗 = 0 , · · · , 𝑛 𝑜 , (18) × is Cartesian product symbol, ¯ 𝑌 0 = 𝑌 𝑚𝑖 𝑛 , and ¯ 𝑌 𝑛 𝑜 + 1 = 𝑌 𝑚 𝑎 𝑥 . For better clarification, we consider the av ailable floor area of the SMAR T lab as a rectangular motion space with 𝑋 𝑚𝑖 𝑛 = 𝑌 𝑚𝑖 𝑛 = − 2 . 5 and 𝑋 𝑚 𝑎 𝑥 = 𝑌 𝑚 𝑎 𝑥 = 2 . 5 (See Fig. 3). For the flight experiments, we consider 8 cylinders, based by rectangles and diamonds, as static obstacles as shown in Fig. 9. The obstacles are divided into three group O 1 with ¯ 𝑌 1 = − 1 . 15 , O 2 with ¯ 𝑌 2 = − 0 . 20 , and O 3 with ¯ 𝑌 3 = 1 . 10 . The four navigable channels N 0 , N 1 , N 2 , and N 3 , obtained Eq. (18), are colored in purple, yellow , red, and blue, respectively . Solution: T o obtain 𝜙 𝑙 and 𝜓 𝑙 values o ver N , we first define the boundary of navigable channel N 𝑗 , that is denoted by 𝜕 N 𝑗 , as follows: 𝜕 N 𝑗 = 𝜕 N 1 , 𝑗 Ø 𝜕 N 2 , 𝑗 Ø 𝜕 N 3 , 𝑗 Ø 𝜕 N 4 , 𝑗 , 𝑗 = 1 , · · · , 𝑛 𝑜 , (19) where 𝜕 N 1 , 𝑗 , 𝜕 N 2 , 𝑗 , 𝜕 N 3 , 𝑗 , and 𝜕 N 4 , 𝑗 define the bottom, right, top, and left boundaries of N 𝑗 , respectively . W e uni- formly distribute 𝑛 𝑗 nodes along boundaries 𝜕 N 2 , 𝑗 and 𝜕 N 4 , 𝑗 while 𝑝 nodes distributed ov er the boundaries 𝜕 N 1 , 𝑗 and 𝜕 N 3 , 𝑗 are the same for ev ery navigable channel (for every 𝑗 ∈ { 0 , · · · , 𝑛 𝑜 } ). As a result, the planning space is also di vided into 𝑛 𝑜 + 1 rectangles denoted by S 0 through S 𝑛 𝑜 where 𝜕 S 𝑗 denotes the boundary of the 𝑗 -th rectangle in the planning space. W e generate a uniform grid of size 𝑝 × 𝑛 𝑗 ov er S 𝑗 Ð 𝜕 S 𝑗 , for e very 𝑗 ∈ { 0 , · · · , 𝑛 𝑜 } , as shown in Fig. 4. The boundary conditions of the planning space are then defined as follows: 𝑋 ( 𝜙 𝑙 , 𝜓 𝑙 ) = 𝜙 𝑙 ( 𝜙 𝑙 , 𝜓 𝑙 ) ∈ 𝜕 N 1 , 𝑗 Ð 𝜕 N 3 , 𝑗 𝜙 𝑚𝑖 𝑛 ( 𝜙 𝑙 , 𝜓 𝑙 ) ∈ 𝜕 N 4 , 𝑗 𝜙 𝑚 𝑎 𝑥 ( 𝜙 𝑙 , 𝜓 𝑙 ) ∈ 𝜕 N 2 , 𝑗 (20a) 𝑌 ( 𝜙 𝑙 , 𝜓 𝑙 ) = 𝜓 𝑙 ( 𝜙 𝑙 , 𝜓 𝑙 ) ∈ 𝜕 N 2 , 𝑗 Ð 𝜕 N 4 , 𝑗 𝜓 𝑚𝑖 𝑛 ( 𝜙 𝑙 , 𝜓 𝑙 ) ∈ 𝜕 N 1 , 𝑗 𝜓 𝑚 𝑎 𝑥 ( 𝜙 𝑙 , 𝜓 𝑙 ) ∈ N 3 , 𝑗 (20b) for 𝑗 = 0 , · · · , 𝑛 𝑜 , where ¯ 𝑌 𝑗 ≤ 𝜓 𝑙 ≤ ¯ 𝑌 𝑗 + 1 , 𝜙 𝑚𝑖 𝑛 = 𝑋 𝑚𝑖 𝑛 , 𝜙 𝑚 𝑎 𝑥 = 𝑋 𝑚 𝑎 𝑥 , 𝜓 𝑚𝑖 𝑛 = 𝑌 𝑚𝑖 𝑛 , and 𝜓 𝑚 𝑎 𝑥 = 𝑋 𝑚 𝑎 𝑥 . I I I . O P E R A T I O N M O D E S W e use the foundations provided in Section II to dev elop algorithms for implementations SNCF , TVNC, TVC, and SOLE operation modes in this section. 5 Fig. 3: The SMAR T lab floor is defined as the motion space P and divided into four na vigable channels using Eq. (18). Fig. 4: Transformation between N 𝑗 (the 𝑗 -th na vigable chan- nel) and the S 𝑗 . A. SNCF Navigation For the SNCF navigation model, set V is divided into V 1 and V 2 = ¯ V 1 , where V 1 ( 𝑡 ) and V 2 ( 𝑡 ) are disjoint subsets of V defining the “healthy” and “faulty” agents, respectiv ely , at time 𝑡 . Definition 1. W e define 𝑡 fail ≥ 𝑡 0 as the most recent time when the status of failure of the agents has changed. For the SNCF coordination, we make the following assump- tions: Fig. 5: Left: Motion space with streamlines sho wn by black and potential lines shown by red. Right: Planning space. The green curve in the motion space is an streamline used by an agent 𝑖 ∈ V 𝑙 to av oid collision with obstacles (the projection of the agent 𝑖 ’ s path is a horizontal line in the planning space). Assumption 1. Angle 𝜃 1 ( 𝑡 ) is constant at any time 𝑡 ≥ 𝑡 0 , wher e 𝑡 0 is the start time of the SNCF coor dination. Assumption 2. W e assume that either the sliding speed 𝑣 𝑙 , used in Eq. (3) , is sufficiently larg e, or the geometry of the domain enclosing ℎ ∈ ¯ V 𝑙 is spacious enough, such that every faulty agent ℎ ∈ V 2 r emains inside a stationary vertical cylinder after its failur e is detected. For the SNCF , we define potential and stream functions only for the healthy agents. Thus, potential function 𝜙 1 , stream function 𝜓 1 , 𝛽 1 , and 𝜃 1 are denoted by 𝜙 , 𝜓 , 𝛽 , and 𝜃 , respec- tiv ely , and substituted in Eq. (14) to compute the potential and stream functions under SNCF . By imposing Assumptions 1 and 2, potential function 𝜙 ( 𝑥 , 𝑦 , 𝑡 fail ) and stream 𝜓 ( 𝑥 , 𝑦 , 𝑡 fail ) are piece-wise time-inv ariant and remains spatially-varying at any time 𝑡 ≥ 𝑡 fail until the status of agents’ failures change. W e apply Algorithm 2 to safely plan coordination of healthy agents under the SNCF strategy . Algorithm 2 Algorithm for SNCF Fluid-Flow Navigation. 1: Get: Initial time 𝑡 0 , number of time steps denoted by 𝑛 , time increment Δ 𝑡 , healthy agent set V 1 ( 𝑡 0 ) , faulty agent set V 2 ( 𝑡 0 ) , time increment Δ 𝑡 , Δ ℎ = Δ for ev ery ℎ ∈ V 2 , 𝜃 𝑙 , 𝑣 𝑙 , initial position z 𝑖 ( 𝑡 0 ) of ev ery healthy agent 𝑖 ∈ V 1 , and initial position z ℎ ( 𝑡 0 ) of every faulty agent ℎ ∈ V 2 2: Set: 𝛽 = 1 , 𝑘 = 1 , 𝑡 ℎ = 𝑡 0 . 3: while 𝑘 < 𝑛 do 4: if V 2 ( 𝑡 𝑘 ) ≠ V 2 ( 𝑡 𝑘 − 1 ) then 5: 𝑡 fail ← 𝑡 𝑘 6: Update 𝜙 ( 𝑥 , 𝑦 , 𝑡 fail ) . 7: Update 𝜓 ( 𝑥 , 𝑦 , 𝑡 fail ) . 8: end if 9: 𝜙 ( 𝑥 , 𝑦 , 𝑡 𝑘 ) ← 𝜙 ( 𝑥 , 𝑦 , 𝑡 fail ) . 10: 𝜓 ( 𝑥 , 𝑦 , 𝑡 𝑘 ) ← 𝜓 ( 𝑥 , 𝑦 , 𝑡 fail ) . 11: Obtain z 𝑖 ( 𝑡 𝑘 + 1 ) for every 𝑖 ∈ V 1 ( 𝑡 𝑘 ) by Algorithm 1. 12: Return z 𝑖 ( 𝑡 𝑘 + 1 ) . 13: z 𝑖 ( 𝑡 𝑘 ) ← z 𝑖 ( 𝑡 𝑘 + 1 ) for every 𝑖 ∈ V 1 ( 𝑡 𝑘 ) . 14: 𝑘 ← 𝑘 + 1 . 15: end while B. TVNC Navigation For the TVNC navigation model, set V is di vided into time- in variant subsets V 1 and V 2 = ¯ V 1 , where V 1 and V 2 define “cooperativ e” and “non-cooperati ve” agents, respectively . The noncooperativ e agents ha ve a predefined trajectories in the motion space whereas the cooperative agents uses the na vi- gation model, presented in Algorithm 1, to safely update their positions and reach their target positions. Similar the SNCF coordination model, we denote potential function 𝜙 1 , stream function 𝜓 1 , 𝛽 1 , and 𝜃 1 by 𝜙 , 𝜓 , 𝛽 , and 𝜃 , respectiv ely , and substitute them in Eq. (14) to compute the potential and stream functions. Let z 𝑖 , 𝑓 = 𝑥 𝑖 , 𝑓 + j 𝑦 𝑖 , 𝑓 be the known target position of cooperativ e agent 𝑖 ∈ V 1 , then, then angle 𝜃 , assigning the bulk motion direction of V 1 is obtained by 𝜃 ( 𝑡 ) = 𝜃 𝑙 = arg 𝑖 ∈ V 1 z 𝑖 , 𝑓 − z 𝑖 ( 𝑡 ) ! , ∀ 𝑡 ≥ 𝑡 0 , 𝑙 ∈ M , (21) 6 Fig. 6: The virtual box B 𝑖 with side lengths 2 𝛿 and 𝑣 𝑙 𝑛 𝜏 Δ 𝑡 used by agent 𝑖 ∈ V 𝑙 to estimate the possibility of colliding an agent 𝑗 ∈ ¯ V 𝑙 . where 𝑡 0 is the initial time. W e use Algorithm 3 to safely plan coordination of ev ery agent 𝑖 ∈ V in a shared motion space. Algorithm 3 Algorithm for TVNC Fluid-Flow Navigation. 1: Get: Initial time 𝑡 0 , time increment Δ 𝑡 , 𝜖 > 0 , Δ ℎ for e very ℎ ∈ ¯ V 𝑙 , 𝜃 𝑙 , 𝑣 𝑙 , initial position z 𝑖 ( 𝑡 0 ) of e very cooperativ e agent 𝑖 ∈ V 1 . 2: Set: 𝛽 = 1 , 𝑘 = 0 . 3: while Í 𝑖 ∈ V 1 z 𝑖 ( 𝑡 𝑘 ) − z 𝑖 , 𝑓 > | V 1 | 𝜖 for e very 𝑖 ∈ V 1 do 4: Get z ℎ ( 𝑡 𝑘 ) for ev ery ℎ ∈ V 2 . 5: Compute 𝜃 ( 𝑡 𝑘 ) by Eq. (21). 6: Update 𝜙 ( 𝑥 , 𝑦 , 𝜃 ( 𝑡 𝑘 ) , 𝑡 𝑘 ) and 𝜓 ( 𝑥 , 𝑦 , 𝜃 ( 𝑡 𝑘 ) , 𝑡 𝑘 ) . 7: Obtain z 𝑖 ( 𝑡 𝑘 + 1 ) for every 𝑖 ∈ V 1 by Algorithm 1. 8: Return z 𝑖 ( 𝑡 𝑘 + 1 ) . 9: z 𝑖 ( 𝑡 𝑘 ) ← z 𝑖 ( 𝑡 𝑘 + 1 ) for every 𝑖 ∈ V 1 . 10: 𝑘 ← 𝑘 + 1 . 11: end while C. TVC Navigation For the TVC navig ation, we enable ev ery agent 𝑖 ∈ V 𝑙 to check if there is a possibility of colliding with an agent ℎ ∈ ¯ V 𝑙 within the next 𝑛 𝜏 time steps. T o this end, we define virtual box B 𝑖 ( 𝑡 ) ⊂ C for e very agent 𝑖 ∈ V 𝑙 , with side lengths 2 𝛿 and 𝑣 𝑙 𝑛 𝜏 Δ 𝑡 , to check possibility of collision with an agent 𝑗 ∈ ¯ V 𝑙 within the next 𝑛 𝜏 Δ 𝑡 seconds. T o formally specify collision av oidance condition, we define condition 𝜁 as follows: Ü 𝑙 ∈ M Ü 𝑖 ∈ V 𝑙 Ü 𝑗 ∈ ¯ V 𝑙 z 𝑗 ∈ B 𝑖 , ( 𝜁 ) where “ Ô ” is used to specify “at least one”. Note that 𝜁 is satisfied, if there exists at least one agent 𝑗 ∈ ¯ V 𝑙 that is inside one of the safety boxes of V 𝑙 ’ s agents. Therefore, 𝛽 𝑙 is specified as follows: 𝜁 = ⇒ Û 𝑙 ∈ M ( 𝛽 𝑙 = 1 ) , (22a) ¬ 𝜁 = ⇒ Û 𝑙 ∈ M ( 𝛽 𝑙 = 0 ) , (22b) where “ Ó ” is used to specify “include all”; “ = ⇒ ” means “implies that”; and “ ¬ ” is the “neg ation” symbol. For the TVC, we use Algorithm 4 to safely plan coordination of e very agent 𝑖 ∈ V in a shared motion space. Algorithm 4 Algorithm for TVC Fluid-Flow Navigation. 1: Get: Initial time 𝑡 0 , number of sample times denoted by 𝑛 , time increment Δ 𝑡 , Δ ℎ for every ℎ ∈ ¯ V 𝑙 , 𝑣 𝑙 , 𝛿 , 𝑛 𝜏 , initial position z 𝑖 ( 𝑡 0 ) of e very agent 𝑖 ∈ V 𝑙 and every cluster 𝑙 ∈ M . 2: Set: 𝑘 = 0 . 3: Set: 𝛽 𝑙 ( 𝑡 0 ) = 0 , · · · , 𝛽 𝑙 ( 𝑡 𝑛 ) = 0 for every 𝑙 ∈ M . 4: for 𝑘 ∈ { 0 , · · · , 𝑛 } do 5: for 𝑙 ∈ M do 6: if 𝜁 is satisfied then 7: 𝛽 𝑙 ( 𝑡 𝑘 ) = 1 . 8: Get z ℎ ( 𝑡 𝑘 ) for ev ery ℎ ∈ ¯ V 𝑙 . 9: end if 10: Compute 𝜃 𝑙 ( 𝑡 𝑘 ) by Eq. (21). 11: Update 𝜙 𝑙 ( 𝑥 , 𝑦 , 𝜃 ( 𝑡 𝑘 ) , 𝑡 𝑘 ) and 𝜓 𝑙 ( 𝑥 , 𝑦 , 𝜃 ( 𝑡 𝑘 ) , 𝑡 𝑘 ) . 12: Obtain z 𝑖 ( 𝑡 𝑘 + 1 ) for every 𝑖 ∈ V 𝑙 by Algorithm 1. 13: Return z 𝑖 ( 𝑡 𝑘 + 1 ) . 14: z 𝑖 ( 𝑡 𝑘 ) ← z 𝑖 ( 𝑡 𝑘 + 1 ) for every 𝑖 ∈ V 𝑙 . 15: end for 16: 𝑘 ← 𝑘 + 1 . 17: end for D. SOLE Navigation For the SOLE navig ation, we consider operation of a single agent team in an obstacle-laden environment, thus, 𝑚 = 1 and V = V 1 = { 1 , · · · , 𝑁 } defines the identification numbers of the agents, 𝜙 ( 𝑥 , 𝑦 ) = 𝜙 1 ( 𝑥 , 𝑦 ) and 𝜓 ( 𝑥 , 𝑦 ) = 𝜓 1 ( 𝑥 , 𝑦 ) denote the potential and stream function, and 𝜃 = 𝜃 1 is constant. W e propose the Algorithm 5 to obtain safe trajectories of every 𝑖 ∈ V by follo wing the motion strategy presented in Section II. Note that “C 𝜃 ” and “S 𝜃 ” in line 15 of Algorithm 5 stand for “ cos 𝜃 ” and “ sin 𝜃 ”, respectiv ely . I V . E X P E R I M E N T S A N D D I S C U S S I O N W e experimentally e valuate the performance of the proposed algorithms and validate the results on a group of tiny quad- copters (The multimedia of our experiments is available at Y ouT ube (Link)). The experimental setup includes 4 major components sho wn in Fig. 7: (i) Motion Capture System (MCS), (ii) Ground Control Station (GCS), (iii) Crazyradio P A, and (iv) Crazyflie 2 . 1 . The MCS captures the position of the each crazyflie in 3 -D space and sends the information to the GCS through an ethernet cable at 100Hz. The GCS is an Intel i 7 11 -th gen desktop, with 16 GB of RAM running Ubuntu 20 . 04 and R OS Noetic. GCS is also installed with the Crazyswarm [26] R OS stack built by USC-A CT Lab and acts as a centralized planner for the system. The GCS uses the information from MCS to compute the desired states for each crazyflie and then transmits the data to the onboard controller through Crazyradio P A. W e conducted flight tests at the Uni versity of Arizona’ s Scalable Mov e and Resilient Transv ersability (SMAR T) lab’ s indoor flying area with a volume of 5m × 5m × 2m equipped with 8 7 Algorithm 5 Algorithm for SOLE Fluid-Flow Navigation 1: Get: Initial time 𝑡 0 , number of sample times denoted by 𝑛 , time increment Δ 𝑡 , O 1 through O 𝑛 𝑜 , initial positions z 𝑖 , 0 = 𝑥 𝑖 , 0 + j 𝑦 𝑖 , 0 of ev ery 𝑖 ∈ V , 𝜙 𝑚𝑖 𝑛 , 𝜙 𝑚 𝑎 𝑥 , 𝑝 , and 𝜃 . 2: Set: 𝑘 = 0 . 3: Δ 𝜙 = ( 𝜙 𝑚 𝑎 𝑥 − 𝜙 𝑚𝑖 𝑛 ) / 𝑝 . 4: Determine navigable channels by Eq. (18). 5: Specify boundary conditions using Eq. (20). 6: Obtain 𝑋 ( 𝜙, 𝜓 ) and 𝑌 ( 𝜙, 𝜓 ) over P numerically , by solving Eq. (16). 7: Obtain 𝑋 𝑖 , 0 = 𝑥 𝑖 , 0 cos 𝜃 + 𝑥 𝑖 , 0 sin 𝜃 for ev ery 𝑖 ∈ V . 8: Obtain 𝑌 𝑖 , 0 = 𝑦 𝑖 , 0 cos 𝜃 − 𝑥 𝑖 , 0 sin 𝜃 for ev ery 𝑖 ∈ V . 9: Compute associated ( 𝜙 𝑖 ( 𝑡 0 ) , 𝜓 𝑖 ( 𝑡 0 ) ) ∈ S for ev ery 𝑖 ∈ V . 10: for 𝑘 ∈ { 0 , · · · , 𝑛 } do 11: for 𝑖 ∈ V do 12: 𝜙 𝑖 ( 𝑡 𝑘 + 1 ) ← 𝜙 𝑖 ( 𝑡 𝑘 ) + Δ 𝜙 . 13: 𝜓 𝑖 ( 𝑡 𝑘 + 1 ) ← 𝜓 ( 𝑡 𝑘 ) . 14: Obtain ( 𝑋 𝑖 , 𝑌 𝑖 ) associated with ( 𝜙 𝑖 , 𝜓 𝑖 ) . 15: z 𝑖 ( 𝑡 𝑘 + 1 ) ← ( 𝑋 𝑖 𝐶 𝜃 − 𝑌 𝑖 𝑆 𝜃 ) + j ( 𝑋 𝑖 𝑆 𝜃 + 𝑌 𝑖 𝐶 𝜃 ) . 16: Return z 𝑖 ( 𝑡 𝑘 + 1 ) . 17: z 𝑖 ( 𝑡 𝑘 ) ← z 𝑖 ( 𝑡 𝑘 + 1 ) for every 𝑖 ∈ V . 18: end for 19: 𝑘 ← 𝑘 + 1 . 20: end for Fig. 7: An ov ervie w of the experiment setup. VICON motion capture cameras. W e assume that all crazyflies are flying at the altitude of 1 m . A. Stationary Non-Concurrent F ailur es (SNCF) Experiment For this experiment, we follow the approach presented in Section III-A where Δ ℎ = 0.4m (Eq. (14)). The CFs are uniquely identified using the set V = { 1 , · · · , 6 } . As indicated in T able I, we have 𝑚 = 2 . At time 𝑡 0 , M = { 1 , 2 } , V is divided into V 1 = { 1 , · · · , 6 } and V 2 = ∅ . Until the first failure, the CFs all move together represented as solid lines (See Fig. 8(a)). At 𝑡 fail 1 = 2s, CF 4 , chosen randomly , is subjected to failure and is wrapped by a green cylinder representing the unsafe zone (See Fig. 8(a)). At this instant, V 1 = { 1 , 2 , 3 , 5 , 6 } and V 2 = V \ V 1 = { 4 } . The desired paths for all CFs belonging to V 1 are computed based on algorithm 2. W e deploy another failure, CF 5 , in the system at 𝑡 fail 2 = 12s (See Fig. 8(b)). The sets V 1 and V 2 are updated: V 1 = { 1 , 2 , 3 , 6 } and V 2 = { 4 , 5 } . The desired paths for the healthy CFs are again computed until V 1 ’ s CFs hav e completely passed the unsafe-zones (See Fig. 8(b)). (a) (b) (c) (d) Fig. 8: (a) Location of healthy CFs at the time of first failure. The green circle corresponds to the unsafe-zone of CF 4 . (b) Desired (dashed line) versus actual (solid line) paths tracked by CF to avoid unsafe-zones. (c) Desired (dashed line) vs actual (solid line) paths undertaken by CFs. W e can see V 1 taking adv antage of the recovery algorithm in order to a void any collision with non-cooperativ e CFs in set V 2 . (d) Desired (dashed line) vs actual (solid line) paths tracked by CFs using algorithm 4 when 𝑁 = 6 . B. T ime-V arying Non-Cooperative (TVNC) Experiment In this experiment, we e v aluate the performance of the algorithm 3 proposed in Section III-B using 𝑚 = 2 groups of crazyflies. Specifically , at time 𝑡 0 , the set V = { 1 , · · · , 6 } is di vided into time-in variant subsets V 1 = { 1 , 2 , 3 } and V 2 = { 4 , 5 , 6 } . The aim of agents in V 2 , known as non-cooperative agents, is to reach their goal locations quickly . Therefore, trajectories of V 2 ’ s agents are predefined, as indicated in Fig. 8(c) (See the green, c yan, and black paths). Howe ver , the agents belonging to V 1 , termed as cooperativ e agents, use the fluid-flow navig ation function to safely plan paths in the shared motion space. As shown in Fig. 8(c), cooperati ve CFs 1 , 2 , and 3 reach their target locations by following the red, blue, and pink paths. C. T ime-V arying Cooperative (TVC) According to Section III-C and 4, we define the set V = { 1 , · · · , 6 } to uniquely identify all CFs. CFs are divided into two groups identified by V 1 = { 1 , 2 , 3 } and V 2 = { 4 , 5 , 6 } . For this e xperiment, we choose 𝑣 𝑙 = 0.3m/s, 𝛿 = 0 . 15 , and 𝑛 𝜏 = 3 . W e hav e experimentally ev aluated the scenario when 𝜃 is varying in time but constant for each individual group 8 Fig. 9: Desired (dashed line) vs Actual (solid line) paths tracked by crazyflies using Algorithm when 𝑁 = 4 . of agents. This approach ensures that each agent in a group mov e parallel to other agents in the group. Figure 8(d) plots the result of our experiment. D. Stationary Obstacle-Laden En vir onment (SOLE) Experi- ment In this experiment, we hav e an obstacle-laden environment as shown in Figure 9. W e follow the approach presented in Section III-D and define the set V = { 1 , 2 , 3 , 4 } . By imple- menting Algorithm 5, CF quadcopters 1 through 4 follow the paths shown in Fig. 9 to safely pass through obstacles. V . C O N C L U S I O N In this work, we proposed multiple recovery algorithms based on ideal fluid-flow for collision-free coordination be- tween multiple groups of agents. Our algorithms were able to handle different scenarios including stationary non-concurrent failures, time-varying non-cooperati ve failures, and time- varying cooperative failures. Experimental results using teams of crazyflies displayed the advantage of our proposed al- gorithms in handling different situations. Future work on this direction include incorporating reinforcement learning techniques. R E F E R E N C E S [1] D. S. Drew , “Multi-agent systems for search and rescue applications, ” Curr ent Robotics Reports , vol. 2, no. 2, pp. 189–200, 2021. [2] L. F . Oli veira, A. P . Moreira, and M. F . Silva, “ Advances in forest robotics: A state-of-the-art survey , ” Robotics , vol. 10, no. 2, p. 53, 2021. [3] J. J. Acevedo, B. C. Arrue, I. Maza, and A. Ollero, “ A decentralized al- gorithm for area surveillance missions using a team of aerial robots with different sensing capabilities, ” in 2014 IEEE International Confer ence on Robotics and Automation (ICRA) . IEEE, 2014, pp. 4735–4740. [4] V . Sunkara, A. Chakravarth y , and D. Ghose, “Collision av oidance of arbitrarily shaped deforming objects using collision cones, ” IEEE Robotics and Automation Letters , vol. 4, no. 2, pp. 2156–2163, 2019. [5] H. G. T anner and A. Boddu, “Multiagent navigation functions revisited, ” IEEE T ransactions on Robotics , vol. 28, no. 6, pp. 1346–1359, 2012. [6] J. V an den Berg, M. Lin, and D. Manocha, “Reciprocal velocity obsta- cles for real-time multi-agent navigation, ” in 2008 IEEE international confer ence on robotics and automation . Ieee, 2008, pp. 1928–1935. [7] J. V an Den Berg, S. J. Guy , M. Lin, and D. Manocha, “Optimal reciprocal collision av oidance for multi-agent navigation, ” in Pr oc. of the IEEE International Confer ence on Robotics and A utomation, Anchorage (AK), USA , 2010. [8] F . R. In ´ acio, D. G. Macharet, and L. Chaimowicz, “United we move: Decentralized se gregated robotic swarm navigation, ” in Distributed Autonomous Robotic Systems: The 13th International Symposium . Springer , 2018, pp. 313–326. [9] B. Ichter , J. Harrison, and M. Pav one, “Learning sampling distributions for robot motion planning, ” in 2018 IEEE International Confer ence on Robotics and Automation (ICRA) . IEEE, 2018, pp. 7087–7094. [10] G. Knizhnik, P . Li, X. Y u, and M. A. Hsieh, “Flow-based control of marine robots in gyre-like environments, ” in 2022 International Confer ence on Robotics and Automation (ICRA) . IEEE, 2022, pp. 3047–3053. [11] G. Knizhnik, P . Li, M. Y im, and M. A. Hsieh, “Flow-based rendezvous and docking for marine modular robots in gyre-like en vironments, ” 2023. [12] O. Khatib, “Real-time obstacle avoidance for manipulators and mobile robots, ” in Autonomous robot vehicles . Springer, 1986, pp. 396–404. [13] M.-H. Kim, J.-H. Heo, Y . W ei, and M.-C. Lee, “ A path planning algorithm using artificial potential field based on probability map, ” in 2011 8th International Confer ence on Ubiquitous Robots and Ambient Intelligence (URAI) . IEEE, 2011, pp. 41–43. [14] F . Chen, P . Di, J. Huang, H. Sasaki, and T . Fukuda, “Evolutionary artificial potential field method based manipulator path planning for safe robotic assembly , ” in 2009 International Symposium on Micro- NanoMechatr onics and Human Science . IEEE, 2009, pp. 92–97. [15] O. Montiel, U. Orozco-Rosas, and R. Sep ´ ulveda, “Path planning for mobile robots using bacterial potential field for avoiding static and dynamic obstacles, ” Expert Systems with Applications , vol. 42, no. 12, pp. 5177–5191, 2015. [16] M. Jankovic, “Robust control barrier functions for constrained stabiliza- tion of nonlinear systems, ” Automatica , vol. 96, pp. 359–367, 2018. [17] U. Borrmann, L. W ang, A. D. Ames, and M. Egerstedt, “Control barrier certificates for safe swarm behavior , ” IF AC-P apersOnLine , vol. 48, no. 27, pp. 68–73, 2015. [18] Y . Chen, A. Singletary , and A. D. Ames, “Guaranteed obstacle a voidance for multi-robot operations with limited actuation: A control barrier function approach, ” IEEE Contr ol Systems Letters , v ol. 5, no. 1, pp. 127–132, 2020. [19] A. D. Ames, J. W . Grizzle, and P . T abuada, “Control barrier function based quadratic programs with application to adaptiv e cruise control, ” in 53rd IEEE Conference on Decision and Contr ol . IEEE, 2014, pp. 6271–6278. [20] H. Rastgoftar and E. Atkins, “Physics-based freely scalable continuum deformation for uas traf fic coordination, ” IEEE T ransactions on Contr ol of Network Systems , vol. 7, no. 2, pp. 532–544, 2019. [21] H. Rastgoftar, “Fault-resilient continuum deformation coordination, ” IEEE Tr ansactions on Control of Network Systems , vol. 8, no. 1, pp. 423–436, 2020. [22] H. Uppaluru, H. Emadi, and H. Rastgoftar, “Resilient multi- uas coordination using cooperativ e localization, ” Aer ospace Science and T echnology , vol. 131, p. 107960, 2022. [Online]. A vailable: https://www .sciencedirect.com/science/article/pii/S1270963822006344 [23] M. Romano, H. Uppaluru, H. Rastgoftar, and E. Atkins, “Quadrotor formation flying resilient to abrupt vehicle failures via a fluid flow navigation function, ” arXiv preprint , 2022. [24] K. A. Hoffmann and S. T . Chiang, “Computational fluid dynamics for engineers, vol. i, ” W ichita, Engineering Education System , pp. 124–137, 1993. [25] H. Emadi, H. Uppaluru, and H. Rastgoftar, “ A physics-based safety recovery approach for fault-resilient multi-quadcopter coordination, ” in 2022 American Control Conference (ACC) . IEEE, 2022, pp. 2527– 2532. [26] J. A. Preiss, W . Honig, G. S. Sukhatme, and N. A yanian, “Crazyswarm: A large nano-quadcopter swarm, ” in 2017 IEEE International Confer- ence on Robotics and Automation (ICRA) . IEEE, 2017, pp. 3299–3304.
Original Paper
Loading high-quality paper...
Comments & Academic Discussion
Loading comments...
Leave a Comment