Numerical simulations of inhomogeneous traffic flow under bilateral cruise control

  • This webpage is the complementary material for our paper:
    Liang Wang, Francoise Tisseur, Gilbert Strang cand Berthold K.P. Horn*, "Stability analysis of a chain of non-identical vehicles under bilateral cruise control," submitted to IEEE Transactions on Automatic Control.

  • inhomogeneous traffic

    Fig. 1: The simulations of inhomogeneous traffic flow containing non-identical vehicles. The black "block" denotes the car whose \(k_{d}\in(0.05, 0.15)\) and \(k_{v}\in(0.2,0.4)\) randomly. The red "block" denotes the car whose \(k_{d}\in(0.2, 0.4)\) and \(k_{v}\in(0.05,0.15)\) randomly.


  • In the previous bilateral cruise control (BCC) model, i.e., $$a_n(t) = k_d\bigl(d_{n}(t)-d_{n+1}(t)\bigr) + k_v\bigl(r_{n}(t)-r_{n+1}(t)\bigr),$$ identical feedback gains \(k_d\) and \(k_v\) are used for all vehicles in the traffic flow. In this study, we analyze the "inhomogeneous" traffic flow. The BCC vehicles are non-identical, i.e., $$a_n(t) = k_d^{(n)}\bigl(d_{n}(t)-d_{n+1}(t)\bigr) + k_v^{(n)}\bigl(r_{n}(t)-r_{n+1}(t)\bigr).$$ Different vechicles can use different feedback gains, i.e., {\(k_d^{(n)}, k_v^{(n)}\)} chosen by car \(n\) itself. See section III (in pp. 3) of our paper for more detailed explanations.

  • See also the MATLAB code used for the above demo. In the numerical simulation, we set: $$\text{Time step: }\quad \Delta t = 0.1\, \text{sec.},$$ $$\text{minimum speed: }\quad V_{\text{min}} = 0\, \text{m/sec.},$$ $$\text{maximum speed: }\quad V_{\text{max}} = 44.44\, \text{m/sec.} = 160\, \text{km/hour},$$ $$\text{minimum acceleration/decelration: }\quad a_{\text{min}} = -5\, \text{m/sec}^2,$$ $$\text{maximum acceleration/decelration: }\quad a_{\text{max}} = +5\, \text{m/sec}^2,$$ $$\text{car length: }\quad \ell = 5\, \text{m}.$$ If car collision occurs between car n and car n+1, then car n+1 moves at the speed of car n "magically" in the next iteration of the simulation.

  • In the simulation, vehicles of two types are mixed randomly. For the first type of (totally 16) vehicle (black curves in Fig. 1 and red squares in Fig.2), relatively large proportional gain is used: \(k_{d}^{(n)}\) is chosen as a random number between \(0.2\) to \(0.4\) 1/sec\(^{2}\), and the derivative gain \(k_{v}^{(n)}\) is chosen as a random number between \(0.05\) to \(0.15\) 1/sec. For the second type of (totally 16) cars (red curves in Fig. 1 and red squares in Fig. 2), relatively small proportional gain is used: \(k_{d}^{(n)}\) is chosen as a random number between \(0.05\) to \(0.15\) 1/sec\(^{2}\), and the derivative gain \(k_{v}^{(n)}\) is chosen as a random number between \(0.2\) to \(0.4\) 1/sec.

  • Initially, the space between cars is set as a random number between \(5\) to \(45\) meters, and the speed is randomly chosen from \(20\) to \(30\) m/sec. In the first \(100\) sec., the first car, i.e., the bold curve and solid square in Fig. 1, is moving at the constant speed of \(25\) m/sec. At \(100\) sec., the first car brakes suddenly at \(-5\) m/sec\(^{2}\) for \(2\) sec., and then speeds up again at \(5\) m/sec\(^{2}\) for another \(2\) sec. (See the first curve in Fig. 2).

  • The following figure shows the trajectories of the cars in the relative reference frame of the "space-time" domain which moves at \(25\) m/sec. The black curves are trajectories of black "blocks" in Fig. 1. The red curves are trajectories of red "blocks" in Fig. 1. The "bold" black curve corresponds to the trajectory of the "solid" black block in Fig. 1.

  • Fig. 2: The trajectories of traffic flow in a relative reference frame which moves at \(25\) m/sec. Red curves correspond to cars whose \(k_{d}\in(0.05, 0.15)\) and \(k_{v}\in(0.2,0.4)\) randomly. Black curves correspond to cars whose \(k_{d}\in(0.2,0.4)\) and \(k_{v}\in(0.05, 0.15)\) randomly. At \(100\) sec., the first car (bold black curve) brakes hardly for \(2\) sec.


  • In summary, the stability of BCC traffic guarantees that perturbations in the initial condition dissipate. Due to the system's stability, the induced perturbations by the sudden brake of the first car are also suppressed effectively. See the following Fig. 3 and Fig. 4. (i.e., s)

  • Fig. 3: The initial state and traffic flow after \(20\) sec. of the simulation shown in Fig. 1. The perturbations in the initial traffic state dissipate due to the stability of BCC.


    Fig. 4: The traffic flow at \(102\) sec. and \(122\) sec. of the simulation shown in Fig. 1. The perturbations due to sudden brake of the first car also dissipate.



    o The corresponding MATLAB code