Background

We performed a illustrative simulation analysis of the effect of invidual heterogeneity on collective movement dynamics. We chose a slightly simplified version of the Couzin et al. (2002) agent based model, which combines simple individual behaviors of long-range attraction and intermediate-range alignment to nearest neighbors. These simple rules yield large-scaled emergent structure, such as swarming, parallel groupings, and even toroidal swarms.

Model

Behavior rules

  1. Repulsion: Other individuals within a radius of repulsion \(r_r\) of individual \(i\) cause the individual to move away, via: \[v_i(t+1) = -\sum_{i \neq j}^{n_r} {{\bf r}_{i,j}(t) \over {|{\bf r}_{i,j}(t)|}}\] where \(n_r\) are the number of individuals within radius \(r_r\), and the summand is the unit vector in the direction from target \(j\) to subject \(i\). This is a hard aversion mechanism (e.g.~individuals can not share space) that takes priority over all other rules.

  2. Detection: If there are no neighbors at distance \(< r_r\), then the subject selects a new direction based on a combination of attempting to align to \(n_l\) individuals in the “zone of alignment” and an attempt to approach \(n_a\) individuals in the “zone of attraction”. Individuals in zones are specifed by radii: (orientation occurs at \(r_r < |r_{i,j}| \leq r_l\) and \(r_l < |r_{i,j}| \leq r_a\)), but also within a cone of detection, which simply excludes those individuals directly behind the subject within an angle sweep of \(\beta\).

  3. Orientation: The contribution to the new direction of “orientation” is given by \[{\bf d}_{a,i}(t+1) = \alpha \sum_{i \neq j}^{n_o} {{\bf v}_j(t) \over {|{\bf v}_j(t)|}} + (1-\alpha){\bf v}_i(t)\] i.e., the direction contribution is an average of all the velocity vectors of the other individuals in the zone of alignment mixed with the individual’s previous step with a parameter of sociality \(0 < \alpha < 1\).

  4. Attraction: The contribution of “attraction” is given by \[{\bf d}_{a,i}(t+1) = \alpha \sum_{i \neq j}^{n_a} {{\bf r}_{i,j}(t) \over {|{\bf r}_{i,j}(t)|}} + (1-\alpha){\bf r}_i(t)\] i.e. an \(\alpha\) weighted combination of movement towards all other individuals within the radius and previous movement. A value \(\alpha = 1\) means movement is entirely dictated by neighbors, \(\alpha = 0\) is independence of movement.

  5. Combining Orientation and Alignment: The rule for combining these two directional nudges is simple: If \(n_o > 0\) and \(n_a = 0\) then \({\bf v}_i{t+1} = d_o\); if \(n_a > 0\) and \(n_o = 0\) then \({\bf v}_i{t+1} = d_a\); if \(n_a > 0\) and \(n_o > o\), then \({\bf v}_i{t+1} = {1\over2}(d_a + d_o)\); otherwise \({\bf v}_i(t) = {\bf v}_i(t-1)\)

This model is very similar to the one developed and explored by Couzin et al. (2002) with the very important addition of “sociability” via the \(\alpha\) parameter. Also, it is in 2D rather than 3D and with toroidal boundary conditions.

Parameterization and heterogeneity

We used two different combinations of \(r_l\) and \(r_a\) that produced each swarming and directed movement as group behaviors in the lack of individual heterogeneity (Table XX). Emergent directed movement consists of parallel movement with a high level of synchrony in velocity and cohesion. In contrast, swarming behavior is characterized by poor alignment but cohesion (proximity) among individuals (see Figure XX).

In exploration of individual heterogeneity in behavioral rules, we let three of the parameters vary across individuals: the radius of orientation \(r_l\), the speed \(v\), and the degree of sociability \(\alpha\). These parameters represent, broadly, three distinct aspects of movement and individual interaction, namely: \(v\) - movement, \(r_l\) - detection range, and \(\alpha\) - influence of neighbors. We used truncated normal distributions with increasing coefficients of variation (c.v. = s.d. / mean) from 0 (no heterogeneity) to 1 (maximum heterogeneity), increasing by 0.1 (See summary table below).

We explore two mean scenario outcomes: Swarming and Directed Alignments. To add individual heterogeneity, we allow each of these to vary among individuals as truncated normal distributions with increasing coefficients of variation (c.v. = s.d. / mean) from 0 (no heterogeneity) to 1 (maximum heterogeneity), increasing by 0.2 (See summary table below).

parameter Directed Swarming c.v.
\(r_l\) (units) 13 ? 0-1
\(v\) (units / tick) 0.3 ? 0-1
\(\alpha\) 1 ? 0-1
\(r_r\) 1 1 0
\(n\) 30, 100 30, 100 0
\(\beta\) 90 90 0

Under the “Directed” parameter values (and homogeneity) the population falls into a stable, parallel movement with a high level of synchrony and cohesion. Under the “Swarming” parameterization, the population collapses into one large dynamic swarm, with, however, considerably individual variation in directions.

We ran 20 simulations with \(N = 100\) individuals at each combination of parameter values and heterogeneity levels for a time range from 0 to 10000 time units, taking XX snapshots from time 6000-10000 to let the system attain stationarity.

All simulations were performed in NetLogo.

Emergent properties

We collected several response metrics from the simulations - each of which corresponds to a measure of the “collectiveness” of the emergent movement - and plotted these against heterogeneity in the three paremeters (sociability, speed, and interaction distance).

These include:

  1. Spatial point properties:
    1. Nearest neighbor distance mean \(D_{mean}\) reflects the stength of inter-individual bonds
    2. Nearest neighbor distance sd \(D_{sd}\) reflects the varaibility inter-individual bonds
    3. Number of isolated individuals \(N_{iso}\) - This is a count of individuals whose nearest neighbor distances was greater than the mean detection threshold \(r_l\)
  2. Velocity vector properties:
    1. Speed sd \(V_{sd}\) reflects the variability in the aggregated movement behavior
    2. Angular correlation \(\rho\). We defined this as: \[\rho = \overline{\cos(\theta - \overline{\theta})}\] where \(\theta\) is the vector of orientations of all the individuals and overlines represent means. Values close to 1 indicate complete alignment, while values close to 0 indicate totally random orientations.
  3. Group properties: All of these properties are based on medioid partitioning of clusters, using optimum average silhouette width to determine the number of groups (Henning and Liao 2013)1 using the pamk package in R (Henning 2015)2. Out of this grouping we collected the following statistics:
    1. Number of groups - mean \(N_{mean}\) The larger the nubmer of groups, the less cohesive the aggreagations.
    2. Number of groups - sd \(N_{sd}\). The variation is taken across both snapshots of the simulation and replicates of simulations.

We explored variation in these variables against increasing individual heterogeneity in the three parameters. Broadly, we expect that the emergent collective properties will break down with greater heterogeneity, but the extent of the robustness of those properties is difficult to predict a priori.

All analyses and visualizations were performed in R3.

Results

Snapshots

Some snapshots from simulation runs with \(n=100\):

Qualitatively, it is difficult to differentiate between a “swarm” and the “heterogeneous directed”. Generally - there are more isolated individuals and looser structure in the high heterogeneity simulations.

(Click on the tabs to see the different plots!)

Homogeneous swarm

Heterogeneous swarm

Homogeneous aligned

Heterogeneous aligned

Effects of heterogenity

In all the figures below, the y-axis is the collective variable of interest, the x-axis in each panel is the heterogeneity in SOCIABILITY, the panels left to right are heterogeneity in SPEED, the different colors represent heterogeneity in ALIGNMENT RADIUS. Where relevant, the upper panels are the SWARMING scenario, the lower panels are the ALIGNED scenatio. The dashed lines are the n=30 scenario, the solid line is n=100.

Nearest neighbor measures

Nearest neighbor distances increase, variability increases, and the number of isolates increases

Nearest neighbor mean

Nearest neighbor standard deviation

number of isolates

NOTE - NOT SURE WHAT RADIUS TO USE! AM USING 5 HERE.

Velocity Measures

Velocity mean

Very minimal effects on mean speed (as expected) …

Velocity standard deviation

But VERY LARGE effects on the standard deviation of the speed.

Group Properties

For group statistics, I only show the \(n=100\) results

Group size mean

Group size standard deviation


  1. Hennig, C. and Liao, T. (2013) How to find an appropriate clustering for mixed-type variables with application to socio-economic stratification, Journal of the Royal Statistical Society, Series C Applied Statistics, 62, 309-369.

  2. Hennig, C. (2015). fpc: Flexible Procedures for Clustering. R package version 2.1-10. https://CRAN.R-project.org/package=fpc

  3. Core Team (2017). R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria. URL https://www.R-project.org/.