Walking model#

Let \(x_i \left( t \right) = \left( X_i \left( t \right), Y_i \left( t \right) \right)\) be the position of a walker \(i\) at time \(t > 0\) in a crowd of \(N\) individuals (i.e. \(i = 1, ... , N\)).

Our modeling approach relies on a set of Newton-like Ordinary Differential Equations (ODEs) to describe the dynamics:

(1)#\[\ddot{x}_i = F ( x_i, \dot{x}_i ) + \sum_{i \neq j, i = 1}^{N} K (x_i, x_j ) + E(x_i) \, .\]

Positions and velocities are intended in the 2D plane. Here are the key components:

  • \(F\) regulates propulsion as \(F = \frac{v_d ( x_i ) - \dot{x}_i}{\tau}\), where \(v_d ( x_i )\) is a “desired velocity field” and \(\tau\) is a relaxation time.

  • \(K\) is a pairwise interaction kernel, of form \(K ( x_i,x_j ) = A \exp \left( \frac{- \left| x_i - x_j \right|^2}{R^2} \right) \frac{x_i - x_j}{\left| x_i - x_j \right|} \theta ( x_i - x_j, v_d)\). It embodies a repulsion force from \(x_j\) to \(x_i\), which comes into play only when \(x_j\) is within the view cone of \(x_i\). The parameter \(R\) represents the typical interaction radius, and the view cone is determined by \(\theta ( x_i - x_j, v_d)\), which is zero if the angle between \(v_d\) and \(x_i - x_j\) exceeds a certain threshold (e.g., 80 degrees) and 1 otherwise.

  • \(E\) accounts for the repulsion caused by obstacles. It is represented as \(E = B \sum_{k} \exp \left(- \frac{d_{i,k}}{R_k^\prime} \right) \vec{n_k}\), where \(d_{i,k}\) is the distance between the walker \(i\) and the obstacle \(k\), \(\vec{n}\) is the normal vector pointing towards the obstacle and \(R^\prime\) is a distance scale representing the “impermeability” of the obstacle.