Skip to main content
Advertisement
  • Loading metrics

Analysis of emergent patterns in crossing flows of pedestrians reveals an invariant of ‘stripe’ formation in human data

Abstract

When two streams of pedestrians cross at an angle, striped patterns spontaneously emerge as a result of local pedestrian interactions. This clear case of self-organized pattern formation remains to be elucidated. In counterflows, with a crossing angle of 180°, alternating lanes of traffic are commonly observed moving in opposite directions, whereas in crossing flows at an angle of 90°, diagonal stripes have been reported. Naka (1977) hypothesized that stripe orientation is perpendicular to the bisector of the crossing angle. However, studies of crossing flows at acute and obtuse angles remain underdeveloped. We tested the bisector hypothesis in experiments on small groups (18-19 participants each) crossing at seven angles (30° intervals), and analyzed the geometric properties of stripes. We present two novel computational methods for analyzing striped patterns in pedestrian data: (i) an edge-cutting algorithm, which detects the dynamic formation of stripes and allows us to measure local properties of individual stripes; and (ii) a pattern-matching technique, based on the Gabor function, which allows us to estimate global properties (orientation and wavelength) of the striped pattern at a time T. We find an invariant property: stripes in the two groups are parallel and perpendicular to the bisector at all crossing angles. In contrast, other properties depend on the crossing angle: stripe spacing (wavelength), stripe size (number of pedestrians per stripe), and crossing time all decrease as the crossing angle increases from 30° to 180°, whereas the number of stripes increases with crossing angle. We also observe that the width of individual stripes is dynamically squeezed as the two groups cross each other. The findings thus support the bisector hypothesis at a wide range of crossing angles, although the theoretical reasons for this invariant remain unclear. The present results provide empirical constraints on theoretical studies and computational models of crossing flows.

Author summary

You may have noticed that pedestrians in a crosswalk often form multiple lanes of traffic, moving in opposite directions (180°). Such spontaneous pattern formation is an example of self-organized collective behavior, a topic of intense interdisciplinary interest. When two groups of pedestrians cross at an intersection (90°), similar diagonal stripes appear. Naka (1977) conjectured that the stripes are perpendicular to the mean walking direction of the two groups. This facilitates the forward motion of each group and reduces collisions. We present the first empirical test of the hypothesis by studying two groups of participants crossing at seven different angles (30° intervals). To analyze the striped patterns, we introduce two computational methods, a local Edge-cutting algorithm and a global Pattern-matching technique. We find that stripes are indeed perpendicular to the mean walking direction at all crossing angles, consistent with the hypothesis. But other properties depend on the crossing angle: the number of stripes increases with crossing angle, whereas the spacing of stripes, the number of pedestrians per stripe, and the crossing time all decrease. Moreover, the width of individual stripes is “squeezed” in the middle of the crossing. Future models of crowd dynamics will need to capture these properties.

Introduction

Collective motion in groups of humans, as well as other social organisms, has increasingly become a subject of analysis and modeling [17]. Currently, characteristic patterns of collective motion are understood as emergent behavior resulting from the collective dynamics of interactions between individuals. Studies of human crowd dynamics have important applications to improving pedestrian traffic flow, safety management, and the prevention of crowd disasters [812]. Analyses of real-life mass events have been used to model crowd behavior in situations such as religious gatherings, rock concerts, sporting matches, and transportation hubs [1316], with a critical goal of averting life-threatening crushes, stampedes, and trampling [14, 17, 18]. A first step to successful modeling is a better understanding of actual crowd behavior by analysis of crowd dynamics and pattern formation in human data. In this paper, we develop a computational analysis of spontaneous stripe formation in crossing flows of pedestrians.

Pedestrian traffic flow has been studied empirically in a wide variety of situations, using both experimental methods and motion tracking of real crowds. The simplest case is uni-directional flow in a corridor, in which properties such as the dependence of speed on density have been analyzed [1924]. Collision avoidance between pedestrians has been investigated in pairs of walkers [25, 26] and multiple walkers [27]. Bottlenecks occur when a large group attempts to pass through a narrow opening [21, 2833], as in Black Friday sales or fire emergencies, which can lead to jamming and crushes. Other empirical studies have examined pedestrian flow through a T-junction [34, 35], bidirectional flows [36], multi-directional flows [37, 38], a pedestrian crossing through a dense static crowd [39, 40], and a bottleneck leading to a 1D corridor [41].

Crossing flows can be described as two streams of pedestrians walking in different directions, passing through each other at a crossing angle α > 0° (where 0° is walking in the same direction). Many real-world situations produce crossing flows, such as streams of pedestrians crossing at a sidewalk intersection, or subway commuters passing each other when entering and exiting a metro car. A special case of crossing flows, called counterflow, occurs when the crossing angle is 180°. Self-organized spatial patterns have been observed when two groups cross each other. In counterflow, the formation of stable lanes is regularly reported in both human experiments [3, 38, 4246] and numerical simulations [4759], in which alternating lanes of pedestrian traffic are aligned with the walking directions of the two groups (180° apart). A jamming transition can occur above a critical flow density [49, 53, 56, 57]. More generally, at other crossing angles the formation of stripes is observed, but the alternating stripes are not aligned with the walking directions of the two groups. The familiar case of orthogonal flows (α = 90°) has been widely studied [60], and the formation of diagonal stripes is found in human crowds [55, 61] and in simulation [42, 54, 55, 6267]. In a recent study, body orientation of crossing flows of agents has been explicitly measured to study its dependence on density [68]. However, the analysis of striped patterns in crossing flows of humans at other crossing angles remains underdeveloped.

Naka [61] first reported stripes at acute and obtuse crossing angles in pedestrian crowds, and hypothesized that stripes form at an orientation that is perpendicular to the bisector of the crossing angle. Abstractly, a stripe is a traveling wave that moves in the mean direction of the two flows, such that individual pedestrians travel forward with a stripe and laterally within it [43]. A striped pattern facilitates overall pedestrian flow by reducing collision-avoidance maneuvers, thereby increasing the average walking speed. Only a few subsequent human studies have tested oblique crossing angles [6971], but stripe patterns were not analyzed. The bisector hypothesis thus remains to be tested experimentally.

Striped patterns in oblique crossing flows have been reproduced in simulation, consistent with the bisector hypothesis [43, 72]. In one system, the inclination of the stripe to the bisector was found to increase with the velocity difference between two orthogonal flows [54]. The mechanism responsible for the formation of self-organized stripes in orthogonal flows has been studied theoretically [6467]. A mean field analysis shows the underlying mechanism to be a linear instability of the randomly uniform state in the intersecting region compared to the formation of diagonal striped patterns [64, 66, 67]. The ‘wake’ of a pedestrian has been proposed as the microscopic mechanism for stripe formation, a density perturbation created in the perpendicularly moving flow [65]. The inclination of the striped patterns was related to the velocity difference between the two groups, producing a ‘chevron’ effect [64, 66]. Absence of striped patterns has also been observed when three or more groups of people intersect [7375].

The purpose of the present research is to experimentally test the bisector hypothesis by analyzing stripe formation at a variety of crossing angles, without spatial constraints. We seek to answer several theoretically-motivated questions: (i) Can stripe orientation be predicted as perpendicular to the bisector for all crossing angles? (ii) Do other stripe properties depend on crossing angle? (iii) What are the stripe dynamics during crossing flows? (iv) Does spontaneous stripe formation generalize from continuous crossing flows in defined corridors to small crowds without boundary conditions on spatial position, density, or visibility?

We addressed these questions as part of the PEDINTERACT Project [39], in which two different sets of subjects participated (36 on Day 1, 38 on Day 2). The setup appears in Fig 1 (also see S1 Video). In the experiment, two groups of participants (18 or 19 per group) walked through each other at seven different crossing angles (0° to 180°, at 30° intervals); there were approximately 17 trials per angle. On each trial, the groups were positioned in two starting boxes oriented at the designated crossing angle, and were instructed to walk in the direction they were facing to the other side of the room. To investigate whether striped patterns would emerge in the absence of spatial boundary conditions, we did not use opaque corridors as in many previous studies [43, 62, 64, 70]. Head position was recorded with a motion-capture system at 120 Hz. Sample traces for all pedestrians in a typical trial appear in Fig 2.

thumbnail
Fig 1. Photograph of our experimental set-up to study crossing flows.

Agents participating in our experiment are shown in this photograph for a typical trial with crossing angle 120°. The three stages of the trial are shown here, viz. (a) before crossing (b) during crossing and (c) after crossing.

https://doi.org/10.1371/journal.pcbi.1010210.g001

thumbnail
Fig 2. Illustration of a trial of crossing flow from our experiments.

Traces of all the pedestrians involved for a typical trial has been shown with expected value of crossing angle equal to 60°. Three different instances of the trial has been shown here viz. before crossing (T1), during crossing (T2) and after crossing (T3). The actual values of time frames are T1 = 2.3 sec, T2 = 6.55 sec and T3 = 10.8 sec from the beginning of the trial. The two groups of pedestrians are denoted by blue and red dots. The tails behind each of the dots are basically the distances travelled by the pedestrians in previous 1.25 sec.

https://doi.org/10.1371/journal.pcbi.1010210.g002

Because the empirical analysis of crossing flows is quite underdeveloped, we describe a number of computational methods for analyzing the characteristics of stripes in human data. In particular, we present a novel approach to identify the formation of stripes, called the Edge-cutting algorithm. Using this algorithm we were able to measure the local properties of individual stripes such as their orientation, width and size. We also use an independent method to characterize global stripe properties, a pattern matching technique that fits a two dimensional sinusoidal function (e.g. Gabor function) to the positions of pedestrians in the two groups. This method assumes the existence of a periodic pattern of stripes and then finds the geometric properties of the pattern from a fitting procedure. The two methods are complementary, in the sense that the edge-cutting algorithm requires the whole history of the crossing and provides the full dynamics of the stripes, whereas the pattern matching method can be performed on a single snapshot. The stripe orientations obtained by the edge-cutting algorithm and the pattern matching technique are compared to each other, and to the hypothesis that the stripes are perpendicular to the bisector of the crossing angle.

In sum, the present paper makes two major contributions: (i) we present experimental data on crossing flows of pedestrians that support the bisector hypothesis, and (ii) we introduce and discuss methodological tools to detect the formation and presence of striped patterns and to estimate their geometric properties.

Results

When two groups of people cross each other, striped patterns emerge, as schematically illustrated in Fig 3. The primary goal of the present research was to characterize the properties of these emergent stripes, based on numerical analysis of participant trajectories. The actual crossing angle α between the mean walking directions of the two groups was measured from the data. The properties of stripe orientation γ relative to the crossing angle bisector, and stripe spacing λ are illustrated in Fig 3 (right). We begin by introducing two independent computational methods devised to analyze the geometric properties of the stripes, (i) the Edge-cutting algorithm and (ii) the Pattern-matching technique.

thumbnail
Fig 3. Schematic representation for the formation of stripes and definition of orientation γ and physical separation λ of stripes.

Formation of stripes as a consequence of two groups crossing each other. In this schematic diagram the crossing angle between the two groups is α. The figure has been shown for three instances viz. before crossing (T1), during crossing (T2) and after crossing (T3). The two groups before crossing are denoted by blue and red squares, whose direction of motion is denoted by arrows of the same color. The green dotted arrow denotes the bisector of the crossing angle. The orientation γ of the stripes is measured counter-clockwise from the bisector. λ is the spatial separation between two stripes from the same group. For specific definitions of γ and λ see Fig 6.

https://doi.org/10.1371/journal.pcbi.1010210.g003

Identifying stripes using edge-cutting algorithm

For purposes of the first method, we define a stripe as a subset of participants from one group that is not penetrated by participants from the other group. Specifically, the virtual connections or edges between the participants in a stripe are never crossed or ‘cut’ by the trajectory of a participant from the other group. The principal output of the Edge-cutting algorithm is the identification of the participants who belong to each stripe (see Materials and method for details). This analysis indeed revealed the spontaneous emergence of striped patterns and the stripes were successfully identified. The dynamics of stripe formation was also observed, as illustrated for two typical trials in Fig 4. The Edge-cutting algorithm also yields the time of the initial edge-cut Ti at the start of crossing (left column of Fig 4) and the time of the final edge-cut Tf at the end of crossing (right column of Fig 4). Animations of the Edge-cutting process for these two trials appear in the supplementary material (S2 and S3 Videos).

thumbnail
Fig 4. Pictorial representation of the edge-cutting algorithm.

Figure demonstrates the working process of the edge-cutting algorithm as a sequence of time. Here we show the process for two typical trials with α = 89.8° and α = 116.9°. Red and blue arrows indicate the direction of motion of the two groups represented by red and blue dots respectively. The lines connecting the dots in each of the groups are considered as the virtual bonds or ‘edges’ which are suppressed when cut by a pedestrian on the other group (see Materials and methods). The figures are shown for three instances, viz. Ti, (Ti + Tf)/2 and Tf. Ti and Tf denote the instances of time when the first and last edge-cut take place respectively. The edge-cutting process for the entire course of time for these two trials are shown as videos in supplementary materials (S2 and S3 Videos).

https://doi.org/10.1371/journal.pcbi.1010210.g004

Characterizing stripes using pattern-matching technique

The Pattern-matching technique estimates the orientation and width of a set of stripes, assuming that the stripes are parallel and equally spaced. This method fits a two-dimensional spatial frequency function f, based on a sinusoidal Gabor function, to the positions of pedestrians at a time T. The free parameters of orientation γ, wavelength λ, and phase ψ, are chosen by maximizing C, the fit of the function to pedestrian positions, where positive values (peaks) are assigned to one group and negative values (troughs) to the other (see Materials and methods for details). The fitting can be applied to all pedestrians or to a subset (e.g. one group). The output of this fitting procedure for all pedestrians in two representative trials appears in Fig 5, where and refer to the orientation and wavelength of stripes in the whole crowd.

thumbnail
Fig 5. Output of the pattern matching technique.

The panels on the left show fitting of pedestrian positions for the same trials shown in Fig 4. Fitting was done using the parametric sine curve f and the transformed coordinates (x′, y′). The blue and red parts of the plot represent the crests and troughs of the sine function respectively. The outputs of the fitting are , and for the typical trial with α = 89.8° and , and for the typical trial with α = 116.9°. (see Materials and methods) The panels on the right show variation of as a function of and keeping ψ fixed to the value obtained from the fitting shown in the left panel. The region of occurrence of high values of is shown in yellow. The function was maximised to fit the sine function f. The maximum value of for the trial with α = 89.8, as obtained by our optimisation procedure is 1.132, which occurred for and . Whereas, for the trial with α = 116.9° we obtained the maximum value of , which occurred for and .

https://doi.org/10.1371/journal.pcbi.1010210.g005

The two methods are complementary. The edge-cutting algorithm requires the whole history of the crossing event and yields in return the full dynamics of stripes. It estimates the local spatial properties of individual stripes at each time point, without assuming any prior knowledge about them. The pattern-matching technique requires only a single snapshot, and recovers the global spatial properties of orientation and wavelength. The prior assumptions of parallel, equally spaced stripes help to match the instantaneous pattern, as long as the actual stripes are close to this ideal. We will see now how both approaches allow us to gain insight into the striped structure.

Stripe orientation

Based on previous empirical observations and modeling, there are reasons to expect that the observed stripes would be parallel and perpendicular to the bisector of the crossing angle, as illustrated in Fig 3. This bisector hypothesis thus predicts γ = 90° for all crossing angles α. However, it is possible that the stripes for one group (blue in Fig 3) are not parallel to those for the other group (red), such that γblueγred; also that individual stripes within a group are not parallel. We thus estimated the orientation of stripes using the global and local methods: (i) the Pattern-matching technique allowed us to estimate the overall stripe orientation (Fig 6a), as well as the orientation for each group separately and , (Fig 6b); (ii) the Edge-cutting algorithm enabled us to estimate the orientation of individual stripes γL and γR, (Fig 6c). We report each of these measurements of stripe orientation in turn.

thumbnail
Fig 6. Summary of different methods to estimate orientation γ and physical separation λ of the stripes.

The arrows in blue and red represents the direction of motion of the two groups. The schematic diagrams are shown for an arbitrary crossing angle. The dashed green arrow indicates the bisector of the crossing angle between the two group direction vectors. The lines in blue and red show the stripes from the two groups. γ is the angle between the direction of stripes and the bisector of crossing angle, always measured counterclockwise. (a) Estimation of orientation of the stripes and physical separation between two stripes from the same group using the parametric sinusoidal fitting. In doing this calculation it was assumed that stripes from the two groups are parallel to each other and are equispaced, as shown in the figure. (b) Orientation of the stripes from the two groups when we assume that stripes from the same group are parallel to each other and are equispaced. and denote the orientation of stripes whose group direction vectors are left and right to the direction of bisector respectively. Using the same convention, and are the spatial separation between the stripes in those cases. This calculation was also done by fitting the two dimensional sine curve. (c) Estimation of orientation of the individual stripes that were found using the edge-cutting algorithm, for the two groups. γL or γR denote the orientation of individual stripes whose group direction vector is left or right to the direction of bisector respectively.

https://doi.org/10.1371/journal.pcbi.1010210.g006

Global stripe orientation and using the Pattern-matching technique.

In the first analysis, we estimated the overall orientation of all stripes to the bisector, on the assumption that the stripes for the two groups were parallel and equally spaced (see Fig 6a), using the pattern matching technique. The analysis was performed at a suitable time T between the crossing midpoint (Ti + Tf)/2 and the final crossing point Tf, when the periodic pattern of stripes was most clearly defined (see Discussion). The resulting values of are represented in box plots in Fig 7a (blue bars). Note that the median values are very close to the predicted angle of 90° for all crossing angles, with deviations less than 3° in all conditions. A set of t-tests comparing the mean value of to 90° at each crossing angle was significant only for α = 63.8°, t(17) = −2.550, p = 0.0207; no other conditions were significant. Overall, this finding is consistent with the bisector hypothesis. A one-way analysis of variance (ANOVA) on was also performed, with crossing angle α as the factor (excluding the 0° condition). The result found that stripe orientation did not depend significantly on crossing angle, F(5, 99) = 2.301, p = 0.0504, η2 = 0.1.

thumbnail
Fig 7. Orientation γ of the stripes using different methods.

(a) Figure shows boxplots for obtained values of , , from the pattern-matching technique and γL, γR from the edge-cutting algorithm. Outliers are shown by black dots. The dashed line corresponds to 90°. The boxplots were made using the various values of γ evaluated at the same time instant. This instant was chosen to be the time when the periodicity of the stripes from the two groups was best maintained (see Discussion). For detailed definitions of , , , γL and γR see Fig 6 and Materials and methods. (b) Boxplots for the difference in obtained values of orientations as estimated by separate-group analysis using pattern-matching technique. The values of and are the instantaneous values, which are shown in (a) (brown and orange bars).

https://doi.org/10.1371/journal.pcbi.1010210.g007

The second analysis added one degree of freedom by estimating the orientation of the stripes to the bisector for each group separately , on the weaker assumption that only the stripes within one group are parallel. We thus fit the sinusoidal function f to the pedestrian positions separately for the two groups, yielding estimates of stripe orientation for the group heading to the left of the bisector, and for the group heading to the right (Fig 6b). We first estimated these values at the same instant that the overall orientation was estimated, and the results appear in the boxplots in Fig 7a (brown and orange bars). The median values are again close to 90° for all but one crossing angle, although the variability is greater because only half the pedestrian data contributed to each fit. One-way ANOVAs found no influence of crossing angle on , F(5, 100) = 0.614, p = 0.689, η2 = 0.029, or on , F(5, 100) = 0.521, p = 0.76, η2 = 0.025. The within-trial difference between and is represented in Fig 7b. The median values at each crossing angle lie close to 0°, and the deviations are less than 5°. A set of t-tests comparing to 0° at each crossing angle found no significant differences (all p’s > 0.1), indicating that the stripes for the left and right groups tend to be parallel within a trial.

We then calculated and as a function of time, and obtained the time-average of these quantities, and , during the interval (Ti + Tf)/2 to Tf for each time frame of our data (see Discussion). Boxplots of the time-averaged values appear in Fig 8a. Median angles are again close to the expected value of 90° for both left and right groups, with deviations less than 8° for acute crossing angles and less than 2° for obtuse angles. One-way ANOVAs did not find a significant effect of crossing angle α on either , F(5, 100) = 0.934, p = 0.462, η2 = 0.045, or , F(5, 100) = 0.399, p = 0.848, η2 = 0.019. A set of t-tests comparing to 0° at each crossing angle found no significant differences (all p’s > 0.16). A series of one-sample Kolmogorov-Smirnov tests have also confirmed that follows a normal distribution (all p’s > 0.47). The data for has been shown as boxplots in S8 Fig. Together, these results indicate that the stripes formed by the two groups are generally parallel and perpendicular to the bisector of the crossing angle, as measured by the pattern-matching technique.

thumbnail
Fig 8. Time averaged orientation of stripes.

(a) Boxplots for and . and are the orientations of stripes in a trial as obtained from separate-group analysis using pattern matching technique. (b) Boxplots for 〈γLt and 〈γRt, where γL and γR are estimated from the per-stripe analysis using edge-cutting algorithm.

https://doi.org/10.1371/journal.pcbi.1010210.g008

Individual stripe orientation (γL and γR) based on the Edge-cutting algorithm.

Finally, we performed an analysis of each individual stripe based on the output of the Edge-cutting algorithm. The orientations of stripes in the left and right groups are denoted γL and γR, respectively (see Fig 6c). We first measured these values at the same instant that the overall orientation was estimated, and the results appear in the boxplots in Fig 7a (light-green and dark-green bars). The medians for individual stripes are again close to the expected value of 90° and comparable to the other techniques, with the exception of the most acute crossing angle (α = 26.1°).

Because the configuration of stripes changed over time (e.g. Fig 4), we also measured the individual stripe orientations at different time points and computed time-averaged values, 〈γLt and 〈γRt, during the interval (Ti + Tf)/2 to Tf for each time frame of our data. The results of this analysis appear in the boxplots in Fig 8b. Although there is much more variability in individual stripe orientations than in the pattern-matching estimates (Fig 7a), the median values for both left and right groups are again quite close to the expected value of 90°, consistent with the bisector hypothesis.

Other stripe properties

We also used the global and local methods to estimate other geometric properties of the observed stripes, including their physical spacing, width, number, and size (number of pedestrians per stripe).

Stripe spacing (λ) using the pattern-matching technique.

We used the Pattern-matching technique to estimate the spacing of stripes, on the assumption that the stripes in the analysis are parallel and equally spaced. The physical separation between the centers of stripes corresponding to the same group was estimated by the wavelength λ of the sinusoidal function f, which was fitted to the pedestrian position data as described in the previous section. The first analysis fit the data from the whole crowd to obtain , the overall spacing between stripes from the same group (see Fig 6a), at the same instant that the overall orientation was estimated. The results appear in the boxplot in Fig 9a (blue bars). The median is near 2m at most crossing angles, but drops to 1.3m in the counterflow condition. A one-way ANOVA found that depended significantly on crossing angle α, F(5, 100) = 3.426, p = 0.0067, η2 = 0.15. A trend analysis revealed significant linear through 5th-order trends (all p’s < 0.01), indicating that the relationship was irregular, not monotonic (see S3 Fig). In the second analysis, we fit each group independently to estimate the stripe spacing for the left and right groups, , (see Fig 6b), at the same instant. These results also appear in Fig 9(a) (brown and orange bars), and exhibit a similar drop in stripe width in the counterflow condition. One-way ANOVAs found a significant effect of crossing angle on , F(5, 100) = 3.817, p = 0.0033, η2 = 0.16, but not on , F(5, 100) = 1.781, p = 0.124, η2 = 0.082, likely due to the higher variability in the latter group. A trend analysis found no significant trends for either or (all p’s > 0.08, see S3 Fig).

thumbnail
Fig 9. Boxplots for λ as estimated from the pattern matching technique.

λ is the spatial separation between two alternate stripes from the same group. (a) The boxplots were made over all the trials for obtained values of , and at the instant when the periodicity of the two groups was best maintained. , and are defined in Materials and methods. (b) Boxplots for the difference between obtained values of spatial separations from the whole-crowd and separate-group analyses under the pattern matching procedure. (c) Time-averaged difference of physical separation , where and are the physical separations between stripes in a trial as estimated from the separate-group analysis using pattern matching technique.

https://doi.org/10.1371/journal.pcbi.1010210.g009

To compare the overall spacing of the crowd with the separate spacing in each group, we computed the absolute difference between them on each trial, and . The median differences (Fig 9b) are generally between 0.5m and 1m for acute and orthogonal crossing angles, but less than 0.2m for obtuse crossing angles. One-way ANOVAs confirmed that these differences significantly depended on crossing angle: for , F(5, 100) = 3.648, p = 0.0045, η2 = 0.154; for , F(5, 100) = 5.796, p < 0.001, η2 = 0.224. Finally, we compared the stripe spacing in the left and right groups on each trial by computing the time-average of the difference , during the interval (Ti + Tf)/2 to Tf for each time frame of our data. The results suggest that stripe spacing differed between groups by more than 0.6m at acute crossing angles, but by less than 0.4m at larger angles (Fig 9c). A one-way ANOVA on confirmed a significant dependence on crossing angle, F(5, 100) = 4.26, p = 0.0015, η2 = 0.175.

Stripe width, number, and size based on the edge-cutting algorithm

To characterize the dynamic behaviour of the stripes as the two groups crossed, we analyzed the variation in stripe width as a function of time. Precisely, we wanted to investigate the dynamic adjustments made by the pedestrians within a stripe to accommodate the incoming pedestrians from the other group. Once individual stripes were identified with the Edge-cutting algorithm, the width of each stripe was estimated by constructing a minimum bounding box for the stripe and taking its width dimension (see Materials and methods). The dynamic variation in stripe width is plotted as a function of scaled time in Fig 10 for two different trials. Stripe width decreases at the onset of edge-cutting (time = 0) to a minimum before the last edge is cut (time = 1) and then increases again, as if the stripes are ‘squeezed’ in space during the crossing interval.

thumbnail
Fig 10. Width of stripes as a function of time.

Figure shows variation of stripe width as a function of time for all the stripes from a trial for two typical trials with (a) α = 89.8° and (b) α = 116.9°. Time t has been scaled as . Thus, t = Ti and t = Tf correspond to the scaled values of 0 and 1 respectively, which are shown by vertical dashed lines in the figure. For almost all the cases, we see that the width of the stripe attains a global minimum within the interval 0 and 1, which represents the ‘squeezing’ of stripes.

https://doi.org/10.1371/journal.pcbi.1010210.g010

The Edge-cutting algorithm also enables us to analyze the number of stripes that emerged during group crossing. The mean number of stripes decreased monotonically as the crossing angle α increased, as represented in Fig 11. This finding implies that stripe size (number of pedestrians per stripe) conversely increased with crossing angle, as suggested by the graph in S5 Fig. Overall, the size of the identified stripes ranged from 1 to 15 participants in this study.

thumbnail
Fig 11. Mean number of stripes emerging from a group.

Figure shows the variation of this quantity with crossing angle α. The mean was estimated over all the trials of our experiments. The number decreases with increasing α. The error-bars indicate the corresponding standard errors of mean.

https://doi.org/10.1371/journal.pcbi.1010210.g011

Discussion

In this section we discuss the formation of striped patterns and their geometric properties as observed and estimated from our experimental data. This is followed by an evaluation of the two computational methods we used to derive our findings.

Did we observe stripe formation?

Analyzing the formation of stripes was the main goal of this research. In our experiments, we found that stripe formation occurs even in small groups of pedestrians with fewer than 20 members, crossing in different directions without spatial constraints. This demonstrates that continuous flows in constrained channels are not necessary for self-organized pattern formation, which can be attributed to local interactions. We should point out that, there could have been a number of outcomes. For example, the two groups could have avoided without even penetrating each other, resulting in no formation of stripes. Large difference in velocities of the two groups could result in this scenario; thus the velocity of the two groups plays a crucial role in this context. Another possibility might be that crossing groups produced single isolated pedestrians, i.e., all the virtual connections between the pedestrians from one group were destroyed by pedestrians from the other group. This situation would also result in absence of stripe formation. The two groups avoiding each other and the isolation of single pedestrians are the two extreme possibilities of outcomes from our experiments. In reality we saw that the two groups indeed penetrate each other. The edge-cutting algorithm revealed the groups of around 20 participants, divided into 4 to 7 subgroups, as shown in Fig 11. This confirms that not all pedestrians from a group end up being isolated as a consequence of crossing. The identification of the participants belonging to a stripe was then used to calculate the orientation and width of the stripe. Several examples of the edge-cutting process are shown in Figs 4 and 12.

thumbnail
Fig 12. Examples of the edge-cutting process.

Edge-cutting process for two trials with (a) α = 63.8° and (b) α = 154.1°. The blue and red arrows denote the directions of motion for the two groups of pedestrians shown by blue and red dots respectively. The instances shown in this figure goes forward in time from (i) to (iii) and backward in time from (iii) to (v). In (i) the instance shown is Ti − 1, when all the edges within a group are intact. (ii) Shows the situation when the edges have started to cut and stripes are gradually being formed at (Ti + Tf)/2. (iii) Shows the situation at Tf + 1 when all probable edge-cuts have taken place and the stripes have completely been formed. (iv) and (v) shows the instances as in (ii) and (i) respectively but with the visualisation of all the stripes that are completely formed only after Tf.

https://doi.org/10.1371/journal.pcbi.1010210.g012

Do the stripe properties depend on crossing angle?

We were primarily interested in the effect of crossing angle on the orientation γ of the stripes with respect to the bisector of the crossing angle. Based on previous observations and simulations, the expected value of γ = 90° should be invariant over different values of crossing angle α. The results obtained from our experimental data using several methods of measurement are shown in Fig 7a. The deviation of the median value of γ remained less than 3° at all crossing angles, which is in good agreement with the bisector hypothesis.

Spatial separation λ between two stripes from the same group was output from the pattern matching technique. We compared the values of λ estimated using whole-crowd and separate-group analysis in Fig 9a as a function of α.

Estimations of individual stripe properties based on the Edge-cutting algorithm revealed that the mean number of stripes that emerges from a group decreases with α, as shown in Fig 11. This implies that the mean size of a stripe should show an increase with α. In S5 Fig we have shown the plot of mean size of a stripe as a function of the crossing angle α. The mean stripe size indeed increases with α. Thus the edge-cutting algorithm is very useful to establish the dependence of individual stripe properties on the crossing angle.

Comparison of assumptions and results for the whole-crowd and separate-group analyses using the pattern matching technique

To perform pattern matching using a two dimensional sinusoid we make two different assumptions about the formation of stripes. In our analysis of finding and , we assumed that the orientation of the two groups are parallel to each other and the stripes formed are periodic and equispaced. However we kept in mind that in reality this might not always be true. The orientation of the stripes for the two groups could be different and have different spacing. Thus, in a preliminary analysis we estimated stripe orientation and their physical separation for the two groups separately as a function of time. In this approach we assumed that the stripes within one group are parallel to each other and equispaced. The time window which was selected for this analysis was from Ti to Tf. The two timescales Ti and Tf were estimated from the Edge-cutting algorithm, and they approximately denote the beginning and end of interaction, between the two groups.

and for each groups show some fluctuations near Ti i.e. when the stripes have just started to form (see S4 Fig). The fluctuations reduce with time and the values of and approach a more steady value near Tf i.e. when the stripes have been formed. Thus we calculate and , i.e., the time averages of and (shown in Fig 8(a)) and the time-averaged difference (shown in Fig 9c) from (Ti + Tf)/2 to Tf i.e. when and remain approximately steady.

The differences of median values of and from the expected value of 90° are less than 2° for cases with an obtuse angle, and less than 8° for cases with an acute crossing angle with no statistical effect of crossing angle. This approximately justifies our earlier assumption about the orientation of stripes from two groups being parallel to each other. The time averaged difference in stripe spacing between the two groups also shows low median values—less than 0.8 m for all the crossing angles. This also justifies our assumption of equispaced stripes from two groups when using the pattern matching technique.

We also make a comparative analysis of the differences in values of physical spacing of the stripes at the same time instant obtained by whole-crowd and separate-group analyses under the pattern matching technique. The results for and are shown in Fig 9b. The median values of the differences are less than 0.2 m for obtuse crossing angles, but are higher for acute crossing angles.

There was a possibility of ‘chevron’ effect to create the differences in observed values of and . But due to the small size of our groups, the pedestrians might tend to move faster while leaving the crossing region—resulting in the absence of chevron effect. The non-uniformity in the velocities of the agents both within the group and across the groups could also lead to deformation of stripes. One explanation could be the duration of time when the two groups keep interacting with each other. For lower values of α this duration is higher (see S6 Fig), which results in deformation in the symmetric structure of the stripes. There could also be an effect of the size of the environment where the experiments were performed. Because of limitation of space used for the experiments, the two groups start interacting immediately after the commencement of trials for lower crossing angles. So there is a possibility that the agents participating for trials with acute crossing angle (e.g. 30°) are still accelerating when reaching the crossing region, which clearly is not the case for trials with higher crossing angles. To investigate this further one needs to perform an analysis with larger number of people in a bigger environment and eventually, with a flow of people—not just two groups crossing each other.

To analyse the statistical dependence of obtained results on the two methods under pattern matching technique we performed ANOVAs for each of the crossing angles separately. For , and ANOVAs reveal no dependence of these quantities on the two methods for each of the crossing angles. For each of the cases the p-value is greater than 0.145. For , and , the results were seen to be statistically independent of the two methods except for the case α = 89.8°, as could also be seen from Fig 9a. Except α = 89.8°, the p-values are greater than 0.266. The results of the ANOVAs are shown in supplementary material (S1 and S2 Tables).

Comparing results between pattern matching technique and the edge-cutting algorithm

Using the edge-cutting algorithm we have conducted a per-stripe analysis, where properties of individual stripes were studied. This helps us in a minimal way to explore the apparent asymmetry in the stripes from the two groups, which has been discussed earlier. The edge-cutting algorithm gives us the knowledge of stripes formed viz. the pedestrians belonging to a stripe. Using this output we compute the orientation and width of each of the stripes by implying rotating calipers algorithm (see Materials and methods). The orientations γL and γR were computed as a time series. The time averaged orientation 〈γLt and 〈γRt were computed in the time interval (Ti + Tf)/2 to Tf. The boxplots over all the stripes and all the trials are shown in Fig 8b. The difference of the median values of these average quantities from the expected orientation (90°) are less than 5° for obtuse crossing angles, but are a bit higher for acute crossing angles—a trend similar to previously discussed observations. The values of γL and γR computed at the same instant as when were computed, are shown in Fig 7a. In all the cases we observe that for obtuse crossing angles the stripe orientations obtained by the edge-cutting algorithm are not very different from that obtained by the pattern matching technique. However, for the acute crossing angles the differences are a bit higher—possible for reasons which have already been discussed. The width of the stripes as estimated from the per stripe analysis are not actually comparable to the physical separation of the stripes as computed by pattern matching technique. The stripes consisted of different numbers of people—this causes an irregularity while we attempt to compute their individual orientation. As a consequence, it would be inappropriate to compare these values with the outputs of the pattern matching technique, where the symmetry and periodicity of the stripes were assumed. However, we see that the median values of the average quantities 〈γLt and 〈γRt are not very far (approximately within 10° for all crossing angles) from the expected value (90°), which was computed assuming the symmetry and regularity of the stripes. This shows consistency across the methods that we have used to study stripe properties.

Why did we use two different methods?

The two computational methods that we present in this paper have never been used before to study striped patterns in crossing flows, to the best of our knowledge. We used the two methods, viz. the edge-cutting algorithm and pattern matching technique, to study the formation and geometric properties of the stripes. The edge-cutting algorithm takes into consideration the entire trajectories of the pedestrians, whereas for the pattern matching technique the instantaneous positions of the pedestrians are sufficient. Only the edge-cutting algorithm can identify a stripe and the pedestrians belonging to it. This yields a better definition of individual stripes and allows refined analysis of individual stripes, and is thus a spatially local method. Besides, this algorithm provides the full dynamics of individual stripes, and is the most appropriate to study dynamical effects such as the ‘squeezing effect’ of Fig 10 that we shall discuss shortly after. When the stripes are very small (less than 3 participants) or are not sufficiently elongated (see Materials and methods), their geometric properties are not well defined and we excluded them from our per stripe analysis. On the other hand, the pattern matching technique uses a two-dimensional parametric sinusoid and is thus a spatially global method. This idea was inspired by Gabor functions, which have been used to model the spatial frequency response of the mammalian visual system [76]. We assume the existence of a periodic pattern of parallel stripes and then use this method to look for it; these assumptions have been borne out by the similarity of orientation and spacing when measured in the whole crowd and separately for the two groups. For our small-scale data the pattern matching technique is essential to study the orientation of the stripes.

How efficient is the pattern matching technique?

The pattern matching technique that we have used to find the orientation γ of stripes and their spacial separation λ, was based on maximising C. C is obtained by fitting a two-dimensional sinusoid f on the coordinates of the pedestrians (see Materials and methods). Therefore C could be treated like a scoring function which indicates the quality of fitting. For the case when we assume that stripes from the two groups are parallel to each other and alternately equispaced (to find , ), the maximising function is denoted by and when we fitted the two groups separately (to find , ), this function was denoted by .

Importance of C and λ.

For best fittings one would get and , and for the worst case (disordered input points) the sinusoidal function would not fit—it would either over-fit or under-fit the data points. Over-fitting or under-fitting could be identified by the obtained value of spatial separation λ between the stripes. The obtained value of λ was therefore very crucial to justify the pattern matching technique. From edge-cutting algorithm one could have an approximate idea of the spatial separation between two stripes for a trial (see Materials and methods). λ would be very low or very high compared to this approximate value in case of over-fitting and under-fitting respectively. The quality of the pattern matching technique is therefore estimated both in terms of C and by the optimised value of λ. Fig 5 (right) shows the variation of as a function of for two typical trials. In Fig 13 we have shown boxplots for the values of C for each of the crossing angles, as obtained by whole-crowd and separate-group analysis under the pattern matching technique. Higher values of C indeed signify a better fitting. From Fig 13 we see that the median values of both and increase with α. One-way ANOVAs on C found a significant effect of crossing angle on , F(5, 100) = 17.53, p < 0.001, η2 = 0.467, on , F(5, 100) = 7.955, p < 0.001, η2 = 0.285, and on , F(5, 100) = 3.665, p = 0.0043, η2 = 0.155.

thumbnail
Fig 13. Boxplots for the maximising function of pattern matching technique.

(a) Boxplots for and , where is the maximising function of pattern matching procedure of whole-crowd analysis and is the same with separate group-analysis. and are the maximum possible values of the maximising functions in these two cases, which are 2 and 1 respectively. (b) Boxplots for the time-averaged values of and .

https://doi.org/10.1371/journal.pcbi.1010210.g013

Estimating residual error of the fitting.

To study the accuracy of the pattern matching procedure to find and , we calculate the residual errors. Ideally one would expect all the data points to lie within the distance to , where is the wavelength of the fitted sine curved f. We calculated the residual error of pattern matching technique as the distance of the data points from the crest or trough of the fitted sine function f. The results are shown in Fig 14. The normalised distribution of this distance shows a Gaussian peak at the origin. We fit the data for each of the cases using the functional form of Gaussian distribution. From the fittings, we estimate the standard deviations. For α = 179.9° the standard deviation of the fitted curve was and for the remaining crossing angles this value is on average. From the data of residual error, we found that for α = 179.6°, 92.4% of the data points are accumulated between the distances and , and for the remaining crossing angles, on an average 85.3% of the data is within this range. This surely establishes the efficiency of pattern fitting to a great extent. Besides, this also underlines a difference in stability between lanes and stripes (discussed later).

thumbnail
Fig 14. Accuracy of the pattern matching procedure.

Figure shows Normalised distributions for the distances of pedestrian positions from the crest or troughs of the fitted 2D sinusoid i.e. the residual errors. The distributions show a Gaussian peak at the origin for each α. The data were fitted according to a Gaussian curve and the fitted curves are shown by solid lines.

https://doi.org/10.1371/journal.pcbi.1010210.g014

Periodicity of the two groups.

The periodic arrangement of stripes that are seen to form in our experiments have been a point of concern for the pattern matching technique. An important aspect of our pattern fitting procedure is to choose the instant of time for which the position of pedestrians are considered and fitted. For higher values of α this instant is usually when all the edges have been cut and all possible clusters have been formed, which is Tf—an output from the Edge-cutting algorithm. However, for lower values of α the periodicity of the two groups of pedestrians appears to be destroyed at Tf. For such trials, a suitable time is chosen which is less than Tf but higher than (Ti + Tf)/2. The principal motivation of choosing such a time-scale is to protect the periodicity of the two groups and to ensure the formation of stripes up to such an extent that the position of pedestrians could be considered for sinusoidal fitting (see Materials and methods). In Fig 5 we have shown pedestrian positions from the two groups for two typical trials and the fitted sine curves f, demonstrating the periodicity of the stripes.

Comparison of lanes and stripes

The striped patterns that are seen for counter flows (i.e. α = 179.6° for our case) are known in the literature as lanes. Our results confirm that lanes (which are parallel to the direction of motion) are more stable than stripes (which in general are not aligned with the direction of motion). From Fig 9, we see that all λ measurements coincide better for counter flows and for this structure, the pedestrians accept a lower distance between the lanes (minimum of λ). Typically the distance between neighboring stripes is of the order of 0.8 to 1.1 m when the motion of pedestrians is not parallel to the direction of the stripes. While for lanes, the distance between the centers of lanes is rather 0.6 m—which, given the width of pedestrians, seems close to the minimum possible value if pedestrians intend to avoid collision. Higher stability of lanes compared to the stripes was also established when we estimate the residual error of sinusoidal fitting. We found that, 7% more of data points lie between the expected range for counter flows, than compared to the other crossing angles, as could also be seen from Fig 14. In Fig 15 we show all the stripes for a typical trial of counterflow. We also show the minimum bounding boxes of each stripe that has been computed using the Rotating Calipers algorithm for per-stripe analysis (see Materials and methods for details).

thumbnail
Fig 15. Stripes for a typical trial of counter flow.

The red and blue dots denote the group of pedestrians that move along the direction of arrows shown in the same colors. The rectangular boxes in blue and red are minimum bounding boxes of the stripes that is used for per-stripe analysis. Individual stripe orientations γL and γR are also shown. The dashed green line indicates the bisector of the crossing angle. The dashed black lines enclosing each stripe are the convex hulls of pedestrian locations within that stripe. The stripe with 2 pedestrians was excluded from per-stripe analysis.

https://doi.org/10.1371/journal.pcbi.1010210.g015

Squeezing behaviour of the stripes: Future investigations

The macroscopic dynamics of the stripes, accessible thanks to the edge-cutting algorithm, also show intriguing behaviour. When the two groups cross each other, the stripes that are formed get ‘squeezed’ in order to accommodate in space the incoming group. Microscopically, each of the pedestrians within a stripe adjust their motion when they encounter a pedestrian from the opposite group. In Fig 10 we have shown width of all the stripes from two typical trials as a function of a scaled time for each crossing angle α. The time is scaled in such a way that the scaled value of 0 and 1 correspond to Ti and Tf of the trial. It is observed from Fig 10 that between the interval 0 and 1 i.e. the beginning and end of interactions, the width of the stripes decreases, attains a global minimum and then increases again. This indicates some interesting underlying microscopic behaviour of the agents, which results in the squeezing behaviour as a macroscopic property of the stripes. In our subsequent research we would be interested to determine the underlying mechanism responsible for this behaviour. It would also be appealing to find out whether a following behaviour is present among the pedestrians leading to the formation of stripes, which we plan to work in our next research.

Conclusion

We conducted experimental trials for crossing flows of pedestrians without any spatial constraints of motion. In spite of having small number of participants we observed the formation of emerging striped patterns for each value of the crossing angle. Edge-cutting algorithm was implemented to detect the formation of stripes. Striped patterns for counter flows i.e lanes are seen to be more stable than those for other crossing angles. We have used a pattern matching technique and the edge-cutting algorithm to study a few properties of the stripes formed and compare them with each other and with hypothesized effects. The observed values for the orientation of stripes from edge-cutting algorithm are in good agreement with the expected result which justifies that our assumption about the regularity and symmetry of the striped patterns are reasonable enough. The maximised values of as obtained by us signify the regularity of the striped patterns from the two groups. While performing numerical simulations to model the scenario of crossing flows, the quantity would act as a parameter to evaluate the effectiveness of the simulation technique in reproducing the observed behaviour. We not only confirmed that stripe orientation is predicted by the bisector hypothesis at all crossing angles, but we also discovered several unexpected effects. First we showed that the average number of stripes within a group decreases with the crossing angle alpha. Second, we found that the spacing, number, and size of stripes depended significantly on crossing angle. Third, we observed a squeezing effect visible in the time evolution of the stripes. The macroscopic dynamics of the stripes motivates us to study the microscopic behaviour of the individual pedestrians as our next investigation.

Materials and methods

Ethics statement

The ethical approval for using live participants was obtained from The Operational Committee for the Evaluation of Legal and Ethical Risks (COERLE—n° 2016–008). The document could be found at S1 Document. Written consents were taken from the participants who volunteered for the experimental trials.

Experimental details

The participants of the experiments were divided into two groups (with similar spatial densities). They were instructed to move along a direction which was announced before the commencement of each trial, such that the two groups cross each other at a particular angle. For 7 different expected values of crossing angles, viz. [0°, 30°, 60°, 90°, 120°, 150° and 180°], we performed approximately 17 trials at each angle, a total of 116 trials (See Table 1). During each trial the head trajectory of each pedestrian was recorded as a time series. Each trial lasted about 15–25 seconds. The experiment was performed in a rectangular hall (20m × 30m) with a tracking area of 15m × 20m. The positions of the pedestrians were recorded at 120 Hz using VICON—an infrared camera system. The pedestrians were equipped with head-mounted reflective markers detectable by the VICON motion capture system. The center of the tracking was considered as the origin of a two-dimensional Cartesian coordinate system, which was used as a reference to represent the position of the pedestrians at every time step. Table 1 summarizes the various details of the experiments, i.e. the number of pedestrians and number of trials for each value of the crossing angle. In Fig 16 we have schematically shown our experimental set-up.

thumbnail
Fig 16. Schematic representation of the experimental set-up.

Figure shows the experimental set-up that we have constructed to study crossing flows of two groups of people. The dashed squares acted as visual references as the direction of motion for the participants. At the beginning of each trial, the participants were located in one these squares (S7 Fig) and were asked to reach the other side of the hall, crossing the other group.

https://doi.org/10.1371/journal.pcbi.1010210.g016

For our experiments, we searched for participants on campus of University of Rennes, France. The participants had no visual or locomotive impairments. The experiments were performed over 2 days. On the first day, we could gather 36 participants and on the next day the number was 38. These two numbers are very close to each other and we did not find any effect of this on our results. If the size of the groups were much larger, the characteristics of the stripes formed would be different too. But 36 compared to 38 is so little, that we can assume that it makes no difference. It would certainly be interesting to bridge between our small-scale study and with a larger group of people or even a continuous flow of people.

The participants were unaware of the actual motivation of the experiments. The participants were recruited using a mailing list that is usually utilized to search for volunteers, mostly from the campus. It is indeed true that we could not eliminate the possibility that some participants might know each other. Importantly, however, they were not allowed to communicate during the experimental trials, and we did not observe any obvious sign of communication between the participants. At the beginning of each day we assigned a random number to each of the participants and then they were divided into groups based on ranking. After half of the trials, we switched the group assignment strategy depending on odd or even numbers. This was done to minimize the likelihood that familiarity would influence stripe formation. In addition, participants were instructed not to stand near their friends, although we could not verify whether this request was obeyed. Thus the random partition of groups was crucial to reduce the effect of familiarity on our results.

The direction of motion was facilitated by visual references that were drawn by tape on floor of the hall. For each trial, the two groups of participants were initially located within a square shaped region. These squares on the floor of the hall were drawn by dashed lines and could be seen in Fig 1 (also see S7 Fig). The participants were instructed to ‘walk straight across the room and pass through another group of participants’. The orientation of the departure square of each group was giving a complementary hint about the direction to follow. In Fig 16 all the square shaped boxes are shown which were drawn on the floor of the hall to act as visual references for the motion of groups.

The data obtained from the experiments were low-pass filtered to reduce oscillations due to the gait movement of the walking pedestrians. We used a forward-backward 4-th order butterworth filter to reduce these unwanted oscillations. The traces of pedestrians shown in Fig 2 are plotted using the filtered trajectories. For all the analysis presented in this paper, we have used the filtered data.

Observed values of crossing angle α

During the experiments the participants followed visual references for their movement, instead of a secluded corridor. As a consequence the actual direction of motion of the groups and hence the actual value of the crossing angle is a bit different from what it was expected i.e. the expected values. Therefore we calculate the observed values of crossing angle α (see S1 Fig), and show all of our findings in terms of them. To calculate the observed values of the crossing angle α we consider the two barycenters of the initial and final positions of all the participants in a group for a trial. The line connecting these two points gives the actual direction of motion of a group, from which we evaluate the observed crossing angle α. We then compute medians over all the trials and use these median values in all of our analysis. In Table 1 we mention the median values of the observed crossing angle α. We also expect the individual pedestrians to make some personal adjustments in their trajectories to reach their goal. Thus we measure how much a pedestrian actually deviates from his/her originally assigned trajectory. The normalised distributions of this measurement show Gaussian behaviour (see S2 Fig). The mean value of the angular deviations in each case is less than 2°.

Edge-cutting algorithm: Detection of the stripes

In the beginning of the trial, at time t = 0, we assume that each group of pedestrians forms a complete graph with clustering coefficient = 1 i.e. all the individuals are connected to each other within the group by an ‘edge’. The basis of such an assumption is the correlated movements of pedestrians in a group [77]. With the progression of time, when the two groups meet and cross each other, the edge between two pedestrians from one group may be cut by a pedestrian from the other group. This situation is detected by the edge-cutting algorithm. Once all the probable edge-cuttings are over, each group is left with more than one cluster having a complete graph. The size of these clusters are ≥1. Fig 17 schematically represents the scenario of the edge connecting the individuals P and Q from the same group being cut by the individual R from the other group. The conditions for the edge being destructed are three-fold and as follows:

  1. (i).
  2. (ii).
  3. (iii). β(t) × β(t − 1) < 0,

where the angle β is defined in Fig 17. Simultaneous satisfaction of these three conditions detects the edge-cutting. Conditions (i) and (ii) ensure that the pedestrian R is able to cut the edge between P and Q. When these two conditions are satisfied, the angle β between and is measured as a time series, and if it changes sign we confirm that the edge is destructed. Condition (iii) allows us to detect the time of edge-cutting as well. For a trial, the instant when the first (initial) edge-cut takes place is denoted by Ti and the instant of the last (final) edge-cut is denoted by Tf. The two timescales Ti and Tf are outputs from the Edge-cutting algorithm, and they have been used extensively in the analysis of stripe orientations.

thumbnail
Fig 17. Schematic representation of the edge-cutting algorithm.

The ‘edge’ between the pedestrians P and Q belonging to the same group is cut by the pedestrian R belonging to the other group.

https://doi.org/10.1371/journal.pcbi.1010210.g017

Pattern matching: Fitting 2D parametric sinusoidal curves

To estimate the orientation of the parallel stripes and their physical separation we implied a pattern matching technique. We use a two dimensional parametric sinusoidal function f for this method and fit this function on the pedestrian positions. The goal of the pattern matching technique was to (i) estimate the angle γ between the stripes and the bisector of the crossing angle and (ii) to estimate the physical separation λ between the stripes from the same group. In all the cases discussed in this paper, the orientation γ of the stripes were measured counterclockwise from the bisector of the crossing angle α. The data obtained by experiments were given a transformation such that x′, the new x-axis coincided with the bisector of the crossing angle, this is illustrated in Fig 18. This transformation was applied so that the orientation γ could be directly evaluated from pattern matching. The function f was fitted on the transformed coordinates of the pedestrians (x′, y′). The fitting was achieved by maximising a function C, which is the mean of sum of values of f as fitted on the pedestrian positions.

thumbnail
Fig 18. Transformation of coordinates.

This diagram schematically represents the transformation given to the experimentally obtained data such that the transformed x-axis, i.e., x′ is along the bisector of the two group direction vectors. The arrows in blue and red indicate the two group direction vectors and the dotted green arrow indicates the bisector. θB is the angle between the bisector and the original x-axis. A clockwise rotation by an angle θB in this case makes the bisector as the new x-axis. The transformed axes x′ and y′ are shown by green arrows. The bold line in purple represents a stripe, which makes an angle γ (measured anti-clockwise) with the bisector of group direction or the x′-axis. The purpose of the pattern matching technique is to find out the orientation of stripes γ.

https://doi.org/10.1371/journal.pcbi.1010210.g018

For the pattern matching procedure when we assume that the stripes from the two groups are parallel to each other and are equispaced, we denote quantities with a bar as a way of representation. In this case the sinusoidal function f was given by the form (1) where, , is the wavelength of the sine function and ψ denotes the phase offset. To find the orientation of the parallel stripes, we fit f to the position (x′, y′) of the pedestrians. The fitting was performed using an optimisation strategy, where we maximise , which is defined as (2) where is the total number of pedestrians. The first summation sign denotes the sum over the position of pedestrians from one group and the second summation for the position of pedestrians from the other group. The maximum possible value of is 2, which occurs for the ideal case when the position of pedestrians from the two groups could be fitted exactly on the crests and troughs of the sinusoidal curve respectively. Maximisation of by fitting f on pedestrian positions gives us the orientation of the stripes and spatial separation between two stripes from the same group. Evaluation of and is done under the assumption that the stripes from the two groups are parallel to each other and are equispaced. Pictorial representation of and is shown in Fig 6a.

For a randomly oriented set of points, the pattern matching technique would over-fit or under-fit the data—that could be detected by the obtained value of . In our case, before performing the pattern matching procedure, we imply the edge-cutting algorithm to obtain the number of stripes that are formed in a trial. Combining this knowledge with the width of the crossing region, we get an approximate estimate for the value of spatial separation . This helps us to identify any over-fitting or under-fitting. For the trial with α = 89.9° shown in Figs 4 and 5, the width of the crossing region is 8.06 m. From the edge-cutting algorithm we get that the two groups of this trial gets divided into a total of 9 subgroups. Therefore, approximate estimate for the wavelength of fitted sinusoid is . From the pattern fitting we obtained , which is quite close to the approximate estimate. The fitted sine functions f for two typical trials and variation of as a function of and for the same trials are depicted in Fig 5.

To find the orientation of stripes for the two groups in a trial separately, we used the same fitting function f as in Eq (1) and the function which was maximised to obtain the fitting in this case was (3) where the summation was performed over the position of pedestrians from one group at a time. is the number of pedestrians in the group. The maximum possible value of is 1, which in this case occurs for the ideal situation when the pedestrian positions from the group under consideration fall exactly on the crests of the sine curve represented by f. This analysis was performed as a time sequence between (Ti + Tf)/2 and Tf. Maximisation of by fitting f on the pedestrian positions gives us the orientation of the stripes and the spatial separation between the stripes from the same group. This computation was done under the assumption that the stripes from the same group are parallel to each other and have equal spacing between them.

While fitting the parallel stripes from the two groups separately we differentiate them by using the notations and . denotes the orientation of the stripes whose group direction vector lies to the left (L) of the direction of bisector and similarly, for the one whose group direction vector lies to the right (R) of the direction of bisector. Similarly, we use the notations and to denote the spatial separation between the stripes from the same group, according to the orientation of its group direction vector with respect to the bisector. Pictorial demonstration of , , and are shown in Fig 6b. Following the same convention, the functions that were maximised to obtain (, ) and (, ) were denoted as and respectively.

For the segregation of the groups according to whether they lie to the left or right of the bisector of the crossing angle, it is therefore important to determine the direction of the bisector. This direction is estimated using the two group direction vectors. But for the case of crossing angle 180°, determining the direction of the bisector is not possible. However we realise that the experimentally observed value of the crossing angle α is never exactly equal to 180°. Thus estimating the direction of bisector for these cases is also pretty straight-forward.

Finding individual stripe width and orientation

From the Edge-cutting algorithm we could successfully identify the stripes that are formed. In our attempt to find the individual stripe orientations at each instant we construct the minimum bounding box of the stripes using Rotating Calipers algorithm [78, 79]. The orientation of the stripe was calculated along the length of the box. The width of the rectangular box gives an estimate of the width of each of the stripes. The aspect ratio of the minimum bounding box for a stripe, calculated as the ratio of its width to length, gives an idea of the suitability of that stripe to be considered for the estimation of orientation. The value of aspect ratio closer to 1 denotes a uniformly shaped stripe. Whereas, lower value of aspect ratio indicates a sufficiently elongated stripe suitable for finding the orientation. In Fig 19, we show two typical stripes with their respective minimum bounding boxes calculated using the Rotating Calipers algorithm. We applied a cut-off on aspect ratios of the stripes and considered only those stripes which had an aspect ratio less than 0.5. Choosing this cut-off lets us consider almost 90% of the stripes, and they are all sufficiently elongated (see S9 Fig). The time window which was selected for this calculation was from (Ti + Tf)/2 to Tf. The orientation of individual stripes were also estimated as the angle between the stripes and the bisector of the group direction vectors, as depicted in Fig 6c. The angle is measured counterclockwise from the bisector. We use the notations γL and γR to differentiate the orientation of stripes whose group direction vector lie to the left and right of the bisector respectively.

thumbnail
Fig 19. Constructing the minimum bounding box of a stripe.

Two typical stripes are shown with aspect ratios (a) 0.999 and (b) 0.266. The red boxes denote the minimum bounding boxes and the polygons shown by black lines are the convex hulls of the points in the stripes. The stripe with the aspect ratio closer to 1 (a) is not suitable for the estimation of orientation. The stripe with the lower aspect ratio (b) is inclined at an angle of 76.01° with respect to the x-axis.

https://doi.org/10.1371/journal.pcbi.1010210.g019

Supporting information

S1 Table. Results of ANOVAs for , and for each α.

Table summarizes the results of the ANOVA tests that were performed for each α with , and to check their statistical dependencies on whole-crowd and separate-group analyses under the pattern matching technique.

https://doi.org/10.1371/journal.pcbi.1010210.s001

(PDF)

S2 Table. Results of ANOVAs for , and for each α.

Table summarizes the results of the ANOVA tests that were performed for each α with , and to check their statistical dependencies on whole-crowd and separate-group analyses under the pattern matching technique.

https://doi.org/10.1371/journal.pcbi.1010210.s002

(PDF)

S1 Fig. Observed values of the crossing angle α.

Figure shows boxplots for the observed values of the crossing angle α. The dashed lines denote the corresponding values of the expected crossing angle.

https://doi.org/10.1371/journal.pcbi.1010210.s003

(EPS)

S2 Fig. Normalised distributions of δ for each α.

The quantity δ is a measure of the deviations that a pedestrian makes with his/her originally instructed direction of motion as indicated by the visual references during the trials. We calculate δ at every instant of a pedestrian’s trajectory as the angle between the trajectory of that pedestrian and his/her expected direction of motion. Anti-clockwise (clockwise) deviations are considered as positive (negative). δ is estimated for all the pedestrians at all the positions along their trajectories. Normalised distributions of δ is shown in this figure. The data for each α were fitted according to the curve f(x) = a exp[−b(xc)2]. The quantity c (in unit of °) gives the mean of each distribution. The solid lines indicate the best fitting curves. For each α we get |c| < 2°.

https://doi.org/10.1371/journal.pcbi.1010210.s004

(EPS)

S3 Fig. Mean values of , and as a function of α.

Figure shows the mean values of the observed quantities , and as a function of the crossing angle α. The error-bars indicate the corresponding standard errors of mean. Trend analyses show that dependence of on α is irregular, not monotonic; whereas and show no significant trends.

https://doi.org/10.1371/journal.pcbi.1010210.s005

(EPS)

S4 Fig. Time sequence of and estimated separately for the two groups in a trial.

The plots are shown for two typical trials with (a) α = 63.8° and (b) α = 154.1°. The time window for which the data is shown is between 0 and the respective values of Tf for both the trials. Ti and Tf are evaluated from the Edge-cutting algorithm and are shown by vertical green lines in the plot. For plots in the left panel, the dashed horizontal lines indicate 90°, the expected value of stripe orientation and for plots in the right panel, the dashed horizontal lines indicate the value of as estimated from the pattern matching technique by considering the two groups together.

https://doi.org/10.1371/journal.pcbi.1010210.s006

(EPS)

S5 Fig. Mean size of stripes as a function of α.

The size of a stripes is defined as the number of pedestrians belonging to that stripe. The mean size of a stripe increases with the increase of crossing angle. The error-bars indicate the corresponding standard errors of mean.

https://doi.org/10.1371/journal.pcbi.1010210.s007

(EPS)

S6 Fig. Mean crossing time as a function of α.

Crossing time for each trial is defined as TfTi, where Ti and Tf are estimated from the edge-cutting algorithm. Ti and Tf denotes the time when the first and last edge-cut takes place for the trial. The mean crossing time over all the trials decreases with the increase of crossing angle. The error-bars indicate the corresponding standard errors of mean.

https://doi.org/10.1371/journal.pcbi.1010210.s008

(EPS)

S7 Fig. Squares on the surface of experimental trials.

This figure is basically the snapshot of video in the next item at time 00:00. Before the onset of the trial, the participants are seen to wait within the dashed squares, which are clearly pointed out by light-green lines.

https://doi.org/10.1371/journal.pcbi.1010210.s009

(PDF)

S8 Fig. Boxplots for the values of .

Median values of for each crossing angle are seen to be very close to 0°. and are the orientations of stripes in a given trial as obtained from separate-group analysis using pattern matching technique. One-sample Kolmogorov-Smirnov tests confirm that the data is normally distributed. A series of t-tests have confirmed that the mean values are not significantly different from 0°.

https://doi.org/10.1371/journal.pcbi.1010210.s010

(EPS)

S9 Fig. Fraction of stripes considered as a function of aspect ratio cut-off value for individual stripe measurements.

We see that for the cut-off value of 0.5, approximately 90% of all the stripes could be considered for per-stripe analysis.

https://doi.org/10.1371/journal.pcbi.1010210.s011

(EPS)

S1 Video. Video of the experimental trial which is shown in Fig 1.

https://doi.org/10.1371/journal.pcbi.1010210.s012

(MP4)

S2 Video. Edge-cutting process for a trial with α = 89.8° which is shown in Fig 4.

In this video we show the edge-cutting process for a typical trial with α = 89.8°, the one which has been shown in Fig 4. The time frames are shown in scales of .

https://doi.org/10.1371/journal.pcbi.1010210.s013

(MP4)

S3 Video. Edge-cutting process for a trial with α = 116.9° which is shown in Fig 4.

Same as the previous item with with α = 116.9°.

https://doi.org/10.1371/journal.pcbi.1010210.s014

(MP4)

Acknowledgments

The authors gratefully thank A. Sorel, A. Cretual, G. Dachner, and T. Wirth for their help in conducting the experimental trials. A. Marin is also acknowledged for helping in data processing from the camera system.

References

  1. 1. John A, Schadschneider A, Chowdhury D, Nishinari K. Collective effects in traffic on bi-directional ant trails, 2004 J Theor Biol 2004 231(2): 279–285. pmid:15380392
  2. 2. Gautrais J, Ginelli F, Fournier R, Blanco S, Soria M, Chaté H et al. Deciphering Interactions in Moving Animal Groups. PLoS Comput Biol 2012 8(9): e1002678. pmid:23028277
  3. 3. Moussaïd M, Guillot EG, Moreau M, Fehrenbach J, Chabiron O, Lemercier S et al. Traffic Instabilities in Self-Organized Pedestrian Crowds. PLoS Comput Biol 2012 8(3): e1002442.
  4. 4. Perna A, Granovskiy B, Garnier S, Nicolis SC, Labédan M, Theraulaz G et al. Individual Rules for Trail Pattern Formation in Argentine Ants (Linepithema humile). PLOS Comput Biol 2012 8(7): e1002592. pmid:22829756
  5. 5. Fujii K, Kawasaki T, Inaba Y, Kawahara Y. Prediction and classification in equation-free collective motion dynamics. PLOS Comput Biol 2018 14(11): e1006545. pmid:30395600
  6. 6. Störmbom D, Dussutour A. Self-organized traffic via priority rules in leaf-cutting ants. PLoS Comput Biol 2018 14(10): e1006523.
  7. 7. Rio KW, Dachner GC, Warren WH. Local interactions underlying collective motion in human crowds. 2018 Proc R Soc B, 285: 20180611. pmid:29769363
  8. 8. Thompson P A, Marchant E W. A computer model for the evacuation of large building populations. Fir Saf J 1995 24(2): 131–148.
  9. 9. Helbing D, Farkas I, Vicsek T. Simulating dynamical features of escape panic. Nature 2000 407: 487–490. pmid:11028994
  10. 10. Pedestrian and Evacuation Dynamics, edited by Schreckenberg M and Sharma SD. Berlin: Springer; 2002.
  11. 11. He G-Q, Yang Y, Chen Z-H, Gu C-H. A review of behavior mechanisms and crowd evacuation animation in emergency exercises. J Zhejiang Univ—Sci 2013 C 14: 477–485.
  12. 12. Bohannon J. Directing the herd: Crowds and the science of evacuation. Science 2005 310(5746): 219–221. pmid:16223999
  13. 13. Hoogendoorn SP, Hauser M, Rodrigues N. Applying Microscopic Pedestrian Flow Simulation to Railway Station Design Evaluation in Lisbon, Portugal. Transp Res Rec J Transp Res Board 2004 1878(1): 83–94.
  14. 14. Helbing D, Johansson A, Al-Abideen H Z. Dynamics of crowd disasters: An empirical study. Phys Rev E 2007 75: 046109.
  15. 15. Johansson A, Helbing D, Al-Abideen H Z, Al-bosta S. From crowd dynamics to crowd safety: A video-based analysis. Adv Complex Syst 2008 11(4): 497–527.
  16. 16. Bain N, Bartolo D. Dynamic response and hydrodynamics of polarised crowds. Science 2019 363(6422): 46–49. pmid:30606837
  17. 17. Batty M, DeSyllas J, Duxbury E, The Discrete Dynamics of Small-Scale Spatial Events: Agent-Based Models of Mobility in Carnivals and Street Parades. Int J Geograph Inf Sci 2003 17: 673–697.
  18. 18. Lee R S, Hughes R L, Exploring Trampling and Crushing in a Crowd, J Transp Eng 2005 131(8): 575–582.
  19. 19. Seyfried A, Steffen B, Klingsch W, Boltes M. The fundamental diagram of pedestrian movement revisited. J Stat Mech 2005 P10002.
  20. 20. Chattaraj U, Seyfried A, and Chakroborty P. Comparison of pedestrian fundamental diagram across cultures. Adv Complex Syst 2009 12(3): 393–405.
  21. 21. Seyfried A, Boltes M, Kähler J, Klingsch W, Portz A, Rupprecht T et al. Enhanced Empirical Data for the Fundamental Diagram and the Flow Through Bottlenecks. In: Klingsch W, Rogsch C, Schadschneider A, Schreckenberg M (editors) Pedestrian and Evacuation Dynamics 2008; pp 145–156. Springer, Berlin, Heidelberg.
  22. 22. Jezbera D, Kordek D, Kříž1 J, Šeba P and Šroll P. Walkers on the circle. J Stat Mech 2010 L01001.
  23. 23. Yanagisawa D, Tomoeda A, Nishinari K. Improvement of pedestrian flow by slow rhythm. Phys Rev E 2012 85: 016111. pmid:22400629
  24. 24. Jelić A, Appert-Rolland C, Lemercier S, Pettré J. Properties of pedestrians walking in line: Fundamental diagrams. Phys Rev E 2012 85: 036111.
  25. 25. Olivier A-H, Marin A, Crétual A, Pettré J. Minimal predicted distance: A common metric for collision avoidance during pairwise interactions between walkers. Gait Posture 2012 36(3): 399–404. pmid:22560717
  26. 26. Olivier A-H, Marin A, Crétual A, Pettré J. Collision avoidance between two walkers: Role-dependent strategies. Gait Posture 2013 38(4): 751–756. pmid:23665066
  27. 27. Meerhoff LA, Pettré J, Lynch SD, Crétual A, Olivier A-H. Collision Avoidance With Multiple Walkers: Sequential or Simultaneous Interactions? Front Psychol 2018 9:2354. pmid:30555380
  28. 28. Hoogendoorn S, Daamen W. Pedestrian behavior at bottlenecks. Transp Sci 2005 39(2): 147–159.
  29. 29. Kretz T, Grünebohm S, and Schreckenberg M. Experimental study of pedestrian flow through a bottleneck. J Stat Mech 2006 P10014.
  30. 30. Seyfried A, Passon O, Steffen B, Boltes M, Rupprecht T, Klingsch W. New insights into pedestrian flow through bottlenecks. Transp Sci 2009 43(3): 395–406.
  31. 31. Faure S, Maury B. Crowd motion from the granular standpoint. Math Models Methods Appl Sci 2015 25: 463–493.
  32. 32. Garcimartín A, Parisi D, Pastor J, Martn-Gómez C, Zuriguel I. Flow of pedestrians through narrow doors with different competitiveness. J Stat Mech 2016 043402 (2016).
  33. 33. Nicolas A, Bouzat S, Kuperman MN. Pedestrian flows through a narrow doorway: Effect of individual behaviours on the global flow and microscopic dynamics. Transport Res B-Meth 2017 99: 30–43.
  34. 34. Zhang J, Klingsch W, Schadschneider A and Seyfried A. Transitions in pedestrian fundamental diagrams of straight corridors and T-junctions. J Stat Mech 2011 6 P06004.
  35. 35. Zhang J, Klingsch W, Schadschneider A, Seyfried A. Experimental Study of Pedestrian Flow Through a T-Junction. In: Kozlov V, Buslaev A, Bugaev A, Yashina M, Schadschneider A, Schreckenberg M. (editors) Traffic and Granular Flow 2011. Springer, Berlin, Heidelberg.
  36. 36. Sharifi MS, Song Z, Esfahani HN, Christensen K. Exploring heterogeneous pedestrian stream characteristics at walking facilities with different angle intersections. Physica A 2020 540:123112.
  37. 37. Lian L, Mai X, Song W, Richard YKK, Wei X and Ma J. An experimental study on four-directional intersecting pedestrian flows. J. Stat. Mech. 2015 P08024.
  38. 38. Cao S, Seyfried A, Zhang J, Holl S and Song W. Fundamental diagrams for multidirectional pedestrian flows. J Stat Mech 2017 033404.
  39. 39. Appert-Rolland C, Pettré J, Olivier A-H, Warren W, Duigou-Majumdar A, Pinsard E et al. Experimental Study of Collective Pedestrian Dynamics. Collective Dynamics 2020 5: 1–8. ISSN: 2366–8539.
  40. 40. Nicolas A, Kuperman M, Ibañez S, Bouzat S, Appert-Rolland C. Mechanical response of dense pedestrian crowds to the crossing of intruders. Sci Rep 2019 9: 105. pmid:30643181
  41. 41. Adrian J, Boltes M, Holl S, Sieben A, Seyfried A. Crowding and Queuing in Entrance Scenarios: Influence of Corridor Width in Front of Bottlenecks. Collective Dynamics 2020 5: 189–196.
  42. 42. Hoogendoorn S, Daamen W. Self-Organization in Pedestrian Flow. In: Hoogendoorn SP, Luding S, Bovy PHL, Schreckenberg M, Wolf DE (editors) Traffic and Granular Flow 2003. Springer, Berlin, Heidelberg.
  43. 43. Helbing D, Buzna L, Johansson A and Werner T. Self-organised pedestrian crowd dynamics: Experiments, simulations and design solutions. Transp Sci 2005 39(1): 1–24.
  44. 44. Kretz T, Grünebohm A, Kaufman M, Mazur F and Schreckenberg M. Experimental study of pedestrian counterflow in a corridor. J Stat Mech 2006 P10001.
  45. 45. Zhang J, Klingsch W, Schadschneider A and Seyfried A. Ordering in bidirectional pedestrian flows and its influence on the fundamental diagram. J Stat Mech 2012 P02002.
  46. 46. Feliciani C and Nishinari K. Empirical analysis of the lane formation process in bidirectional pedestrian flow. Phys Rev E 2016 94: 032304. pmid:27739694
  47. 47. Helbing D and Molnar P. Social force model for pedestrian dynamics. Phys Rev E 1995 51: 4282. pmid:9963139
  48. 48. Fukui M and Ishibashi Y. Self-organized phase transitions in cellular automaton models for pedestrians. J Phys Soc Jpn 1999 68: 2861–2863.
  49. 49. Muramatsu M, Irie T and Nagatani T. Jamming transition in pedestrian counter flow. Phys A Stat Mech 1999 267(3): 487–498.
  50. 50. Helbing D. Traffic and related self-driven many-particle systems Rev Mod Phys 2001 73: 1067.
  51. 51. Burstedde C, Klauck K, Schadschneider A Zittarz J. Simulation of pedestrian dynamics using a 2-dimensional cellular automaton. Phys A Stat Mech 2001 295: 507–525.
  52. 52. Blue VJ, Adler JL, Cellular automata microsimulation for modeling bi-directional pedestrian walkways. Transp Res B-Meth 2001 35(3): 293–312. url: https://ideas.repec.org/a/eee/transb/v35y2001i3p293-312.html
  53. 53. Tajima Y, Takimoto K, Nagatani T. Pattern formation and jamming transition in pedestrian counter flow. Phys A Stat Mech 2002 313(3): 709–723.
  54. 54. Dzubiella J, Löwen H. Pattern formation in driven colloidal mixtures: Tilted driving forces and re-entrant crystal freezing. J Phys Condens Matter 2002 14: 9383–9395.
  55. 55. Hoogendoorn S, Bovy PHL. Simulation of pedestrian flows by optimal control and differential games. Optim Control Appl Meth 2003 24: 153–172.
  56. 56. Isobe M, Adachi T, Nagatani T. Experiment and simulation of pedestrian counter flow. Phys A Stat Mech 2004 336(3): 638–650.
  57. 57. Nagai R, Fukamachi M, Nagatani T. Experiment and simulation for counterflow of people going on all fours. Phys A Stat Mech 2005 358(2): 516–528.
  58. 58. Cristń J,Méndez , Campos D. General scaling in bidirectional flows of self-avoiding agents. Sci Rep 2019 9, 18488.
  59. 59. Khelfa B, Korbmacher R, Schadschneider A, Tordeux A. Heterogeneity-induced lane and band formation in self-driven particle systems. Sci Rep 2022 12, 4768. pmid:35306506
  60. 60. Bode NWF, Chraibi M, Holl S. The emergence of macroscopic interactions between intersecting pedestrian streams Trans. Res. B. 2019 119:197.
  61. 61. Naka Y. Mechanism of cross passenger flow—Study on Complicated Passenger Flow in Railway Station (Part I) (in Japanese). Trans Arch Inst Jpn 1977 258: 93–102.
  62. 62. Ondrej J, Pettré J, Olivier AH, Donikian S. A Synthetic-Vision Based Steering Approach for Crowd Simulation. ACM Trans Graphics 2010 29(4): 123.
  63. 63. Yamamoto K, Okada M. Continuum Model of Crossing Pedestrian Flows and Swarm Control Based on Temporal/Spatial Frequency. In: 2011 IEEE International Conference on Robotics and Automation (ICRA). pp. 3352–3357.
  64. 64. Cividini J, Appert-Rolland C, Hilhorst HJ. Diagonal patterns and chevron effect in intersecting traffic flows. EPL 2013 102(2): 20002.
  65. 65. Cividini J, Appert-Rolland C. Wake-mediated interaction between driven particles crossing a perpendicular flow. J Stat Mech 2013 P07015.
  66. 66. Cividini J, Hilhorst HJ and Appert-Rolland C. Crossing pedestrian traffic flows, the diagonal stripe pattern and the chevron effect. J Phys A Math Theor 2013 46: 345002.
  67. 67. Cividini J, Hilhorst HJ. Stripe formation instability in crossing traffic flows. J Phys A Math Theor 2014 47: 445002.
  68. 68. Zanlungo F, Feliciani C, Yücel Z, Nishinari K, Kanda T. Analysis and modelling of macroscopic and microscopic dynamics of a pedestrian cross-flow. arxiv:2112.12304v2 [preprint] 2022. Available from: https://arxiv.org/abs/2112.12304.
  69. 69. Guo RY, Wong SC, Huang HJ, Zhang P, LAM WHK. A microscopic pedestrian-simulation model and its application to intersecting flows. Physica A 2010 389: 515.
  70. 70. Wong S, ASCE M, Leung WL, Chan SH, Lam WHK, Yung NHC et al. Bidirectional Pedestrian Stream Model with Oblique Intersecting Angle. J Transp Eng 2010 136(3): 234–242.
  71. 71. Aghabayk K, Radmehr K, Shiwakoti N. Effect of Intersecting Angle on Pedestrian Crowd Flow under Normal and Evacuation Conditions. Sustainability 2020 12(4): 1301.
  72. 72. Dong HR, Meng Qi, Yao XM, Yang XX and Wang QL. Analysis of dynamic features in intersecting pedestrian flows. Chinese Phys B 2017 26:098902.
  73. 73. Helbing D. Verkehrsdynamic [Traffic Dynamics]. Berlin: Springer-Verlag Berlin Heidelberg; 1997.
  74. 74. Helbing D, Molnar P. Self-organisation phenomena in pedestrian crowds. In: Schweitzer F. (editor). Self-organisation of Complex Structures: From Individual to Collective Dynamics. London: Gordon and Breach; 1997 pp. 569–577.
  75. 75. Helbing D, Vicsek T. Optimal self-organisation. New J Phys 1999 1: 13.
  76. 76. Marčelja S. Mathematical description of the responses of simple cortical cells. J Opt Soc Am 1980 70(11): 1297–1300.
  77. 77. Henderson LF. The Statistics of Crowd Fluids. Nature 1971 229: 381–383. pmid:16059256
  78. 78. Shamos MI. Computational geometry. Ph.D. Thesis, Yale University, New Haven, Connecticut, 1978. Available from http://euro.ecom.cmu.edu/people/faculty/mshamos/1978ShamosThesis.pdf.
  79. 79. Toussaint GT. Solving Geometric Problems with the Rotating Calipers. Proc MELECON 1983, Athens. Available from https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.155.5671.