Table of Contents
Fetching ...

Redirecting counter-moving swarms through collision

Jason Hindes, Chinthan B. Prasad, Loy McGuire, Ira B. Schwartz

Abstract

Multi-swarm systems, where two or more swarms of mobile agents occupy the same region of space with different parameters and goals, occur in a variety of biological, engineering, and defense applications. Composites of multiple swarms can produce hybrid spatiotemporal patterns, which compared to single swarming systems, are relatively unexplored. In this work, we develop a framework for studying the collision of counter-moving swarms, each with its own preferred, stable velocity before collision. We show that redirection of such swarms after collision occurs when a stable velocity synchronized state of the multi-swarm composite exists. Using a rigid-body approximation, we are able to extract how scatter-redirection transitions scale with swarm parameters in a variety of scenarios from reciprocal and non-reciprocal systems to symmetric and antagonistic parameter values. Our results compare well to simulations of both particle modeled agents and wheeled robots.

Redirecting counter-moving swarms through collision

Abstract

Multi-swarm systems, where two or more swarms of mobile agents occupy the same region of space with different parameters and goals, occur in a variety of biological, engineering, and defense applications. Composites of multiple swarms can produce hybrid spatiotemporal patterns, which compared to single swarming systems, are relatively unexplored. In this work, we develop a framework for studying the collision of counter-moving swarms, each with its own preferred, stable velocity before collision. We show that redirection of such swarms after collision occurs when a stable velocity synchronized state of the multi-swarm composite exists. Using a rigid-body approximation, we are able to extract how scatter-redirection transitions scale with swarm parameters in a variety of scenarios from reciprocal and non-reciprocal systems to symmetric and antagonistic parameter values. Our results compare well to simulations of both particle modeled agents and wheeled robots.
Paper Structure (14 sections, 20 equations, 5 figures)

This paper contains 14 sections, 20 equations, 5 figures.

Figures (5)

  • Figure 1: Snapshots of two swarms that are redirected upon collision: (a) before, (b) during, and (c) after. In (a), each swarm travels as a fixed-formation flock with a velocity equal to the preferred velocity of the respective swarm. In (b), the swarms collide and form a transient mill. In (c), the swarms form a stable composite that travels at a uniform velocity, which is different than the preferred velocities of either swarm. The agents are simulated, differential-drive robots with target-velocity controls given by Eqs.(\ref{['eq:BasicPhysics']}) . The arrows indicate representative velocities for agents within each swarm (blue and red). Note that in this case, the collision is head on.
  • Figure 2: Outcomes for two-swarm collisions with simulated, wheeled robots as the preferred velocity of the red swarm is varied. Shown are trajectories in the $(x,y)$ plane for agents within each swarm: red and blue. The outcomes are: (a) scattering after collision, (b) redirection with a stable composite, and (c) weak instability of a two-swarm composite. Arrows in panel (a) show the direction of motion as time evolves.
  • Figure 3: Bifurcation of symmetric swarms with head-on collision. (a) Time-averaged distance between the centers of mass for two swarms after collision vs. the red swarm's preferred velocity. Blue markers represent robot simulations (Sec.\ref{['sec:CoppeliaSim']}) with different numbers of red agents: $N_{\text{R}}\!=\!13$ (stars), $N_{\text{R}}\!=\!7$ (circles), and $N_{\text{R}}\!=\!3$ (diamonds); $N_{\text{B}}\!=\!20$ for each. Curves and magenta stars are predictions from Eq.(\ref{['eq:RigidBodyCompact']}) and Eq.(\ref{['eq:RGAbifurcation']}), respectively. (b) Bifurcation value of the red-swarm preferred velocity relative to the value required for reversal vs. the number of red agents. Robot and particle simulation results are shown with blue circles and red squares, respectively. Predictions from solving Eq.(\ref{['eq:RigidBodyCompact']}) and Eq.(\ref{['eq:RGAbifurcation']}) are plotted with a solid curve. Other parameters are specified in Sec.\ref{['sec:Reversal']}.
  • Figure 4: Scaling for reversal when two symmetric swarms collide for a wide range of model parameters. (a) Minimum number of red agents needed to reverse a blue swarm vs. the number of blue-swarm agents. Each plot label corresponds to a different set of ($\alpha$,$\;u_{\text{B}}$,$\;l^{(b)}$) parameters, detailed in Sec.\ref{['sec:Reversal']}. (b) Difference between the preferred velocities of red and blue swarms at bifurcation vs. the combined swarm size. Predictions from Eq.(\ref{['eq:LinearInN']}) are plotted with lines for each series. The top and bottom series correspond to $l^{(b)}\!=\!0.1$ and $l^{(b)}\!=\!0.5$, respectively. Other parameters are specified in Sec.\ref{['sec:Reversal']}.
  • Figure 5: Redirection at general angles. Robot and Eqs.(\ref{['eq:BasicPhysics']}) simulations are plotted in blue and red, respectively. (a) Maximum redirection angle (radians) for symmetric swarms with orthogonal collision vs. the size of the red swarm relative to the blue. Each series corresponds to different $\alpha u_{\text{B}}$: $0.45$ (squares), $0.25$ (circles and stars), and $2.4$ (triangles), as specified in Sec.\ref{['sec:SymmetricGenAngles']}. Curves represent Eq.(\ref{['eq:MaximumAngle']}) predictions. (b) Maximum number of red agents that can be embedded in a blue swarm for the antagonistic scenario. Each series corresponds to different ($\alpha_{\text{R}}$, $\alpha_{\text{B}}$, $a_{\text{RB}}$, $l^{(b)}_{\text{BB}}$): red triangles and blue circles ($4$, $3.3$, $0.06$, $0.1$), red squares ($4.5$, $3.5$, $0.046$, $0.2$), and red stars ($4.5$, $3$, $0.035$, $0.5$). Lines are predictions from Eq.(\ref{['eq:AntagCond']}). Other parameters are specified in Sec.\ref{['sec:Antagonistic']}. Note that for both (a) and (b), $\bold{u}_{\text{B}}\!=\!u_{\text{B}}\hat{\bold{x}}$.