This preliminary paper discusses the creation of an agent based model for a signalized traffic intersection derived from a previously developed mathematical vehicle-following micro-simulation model. The results of the agent based model are compared to the results from the mathematical model for verification purposes. The agent based model is then used to show the effects of inclement weather on vehicle throughput at a traffic intersection and to show how increasing the signal intervals in these conditions can help to partially restore traffic throughput to normal condition levels. This effort is just part of the many simulation and modeling efforts that will be required as autonomous vehicles as well as person controlled vehicles begin to share the roadway. The role of IoT will become extremely important and even more so, as driving conditions are exacerbated by unforeseen and environmentally hazardous roadway conditions making intercommunication between vehicles and infrastructure even more critical.
The flow of vehicles through signalized intersections (hereafter referred to as “intersections”) is important to the overall flow of traffic in many cities. The rate at which vehicles move through intersections depends on a variety of factors, two of major factors being signal light timing (i.e.―how long the light stays green) and weather [
Many macroscopic models exist for modelling traffic flow on a large scale [
Many microsimulation models for traffic have been investigated over the years [
The Generalized Force Model (GFM) uses the concept of social forces to describe driver behavior (also called generalized forces) [
d v α d t = f α 0 ( v α ) + f α , α − 1 ( x α , v α ; x α − 1 , v α − 1 ) (1)
A thorough description of how these forces are modelled will be given in the following sections. The parameters of this model were calibrated using real world vehicle following data and the model ran to see how it agrees with real world observations [
The software platform used to implement the ABM was AnyLogic [
Everything in the environment is roughly to scale for an average low volume traffic intersection. The width of each lane is 3 metres, which falls between the typical ranges for North American roads, 2.7 to 4.6 m [
In this model the traffic signals are also treated as agents since they have behaviours that affect other agents in the environment, namely changing color. The traffic signal agents are much simpler than the vehicle agents described subsequently. They follow a simple state machine transitioning between red and green. For simplicity the amber, or slow-down, state found in real world traffic signals was not implemented. Each direction is given equal time priority in this model for simplicity; although this is often not the case in real world traffic systems this does not affect the results since we are looking for changes in throughput based on changing conditions, not trying to estimate the throughput of an actual intersection.
AnyLogic uses connections between agents to allow interactions. Vehicles are connected to the traffic signal for their lane. When a traffic signal goes green it sends a “go” message to all connected vehicles and they start moving based on the GVM model described above. When the signals transition back to red they send a “stop” message to all connected agents and they stop instantly. Once a vehicle passes a traffic signal the connection is released which prevents vehicles already past the signal from stopping. The stopping behaviour is not realistic but the focus of this model is how vehicles accelerate through intersections based on how the vehicle in front of them is behaving and it is assumed the dynamics of stopping will not have a large effect on traffic throughput. This model assumes that no accidents occur at the intersection.
Setup: The vehicle agents are the primary focus of this model. As shown in
As described in the previous section each vehicle is connected to the traffic signal agent for its lane. Every vehicle is also connected to the one directly in front of it in traffic, with the exception of the leading vehicles. This connection allows each vehicle to monitor the position and speed of the one in front of it, and use this information to adjust their own acceleration behaviors. The leading cars are a special case; they simply accelerate freely to their target velocity. When the signals transition back to red they send a “stop” message to all connected agents and they stop instantly.
Acceleration Behaviour: Once the traffic signal turns green and sends the “go” message every vehicle in that lane starts accelerating based on Equation (1). The first part of this equation describes the acceleration force pushing the vehicle (α) forward at any time, t:
f α 0 ( v α , t ) = v α 0 – v ( t ) τ α (2)
v α 0 – v ( t ) represents the difference between the vehicles current and target velocity and τ α represents the acceleration time which is one-third of the time it takes a freely accelerating vehicle to reach 95% of its target velocity [
The second part of Equation (1) describes the repulsion force that limits the acceleration of the vehicle (α) at any time (t) based on the position and velocity of the leading vehicle (α-1) [
f α , α − 1 = V ( s α , v α ) − v α 0 τ α + Δ v α Θ ( Δ v α ) τ ′ α e − [ s α − s ( v α ) ] / R ′ α (3)
This equation has a lot going on so it will be broken down into parts and each part will be described individually.
V ( s α , v α ) is an optimal velocity function that returns the velocity the vehicle would like to be travelling at based on the current distance from the leading vehicle s α , and the desired safe distance that it would like to keep ( s α ( v α ) ) . As long as the optimal velocity is below the original target velocity this will provide a negative force, as expected. The desired safe distance is calculated using the following formula [
s α ( v α ) = d α + T α v α (4)
The parameter d α represents the minimum safe distance any vehicle wants to keep from the one in front of it. The parameter T α represents the headway, or reaction time the driver needs to stop and v α is the current velocity of the vehicle. This causes the vehicles to desire a larger safe distance at higher velocities, which is logical. The safe distance is implemented as a dynamic parameter in AnyLogic, so any time it is called in the model it is evaluated based on the current values from Equation (4), the only one that changes during a model run being v α . The optimal velocity function can be described using the following equation:
V ( s α , v α ) = v α 0 { 1 − e − [ s α − s ( v α ) ] R α } (5)
The parameter R α represents the acceleration interaction range. This can be roughly interpreted as the distance range where the vehicle in front of you affects your acceleration [
The second part of Equation (3) adds additional braking forces when the following vehicle is travelling faster than the vehicle in front of it. This helps to prevent accidents in the model and also is a normal part of driving behaviour; if a person is approaching a vehicle travelling slower than them they will slow down to avoid a collision. The parameters τ ′ α and R ′ α are the braking time and range, similar to the corresponding acceleration parameters. The braking time is lower than the acceleration time because vehicles can stop much faster than they accelerate, and the braking range is much longer than the acceleration range because a leading vehicle will cause a braking reaction over a larger distance than an acceleration reaction. The Heaviside function causes this additional braking force to only have effect when the following car is moving faster than the leader, and the exponential term causes this reaction to disappear as the distance between the vehicles increases.
All of these equations come together in Equation (1) to give the acceleration at each time step for each vehicle in the model. In the AnyLogic model the acceleration values are calculated at the end of each time step and used to update vehicle velocities, which affects how far each vehicle will move on the next time step. Each model run goes for one full cycle of the traffic signals. The position of the vehicles moving through the intersection is monitored using the graphic from
Taking Weather into Account: One of the goals for this model is to see how inclement weather affects traffic throughput. In order to test this some method of simulating bad weather was needed. This was achieved by putting weather factors on certain model parameters that are affected by poor weather. The parameters affected by this scaling factor are the accelerating time, braking time, and desired minimum safe distance between vehicles. In bad weather drivers will also reduce their target velocity. This value was not modified with the same weather factor described above; it was simply reduced by a constant value.
After all of the behaviours described above were implemented and tested in AnyLogic the next step was to do some model runs and see if the behaviour of the vehicles in the model match the results from the original paper. To do this all the behavioural parameters from the original paper were used. The parameters they found by calibrating the model against real world data were: v α 0 = 16.98 m / s , τ α = 2.45 s , d α = 1.38 m , T α = 0.74 s , τ ′ α = 0.77 s , R α = 5.59 m , R ′ α = 98.78 m [
Each curve represents the velocity of an individual vehicle agent in the simulation. The profiles are not identical but show the same basic pattern of vehicle motion. The main difference being in the mathematical simulation the vehicles near the back of the line seem to stay at zero velocity for a long time whereas in the ABM all the vehicles start to move with some small velocity from the get go. Overall the ABM simulation results agree nicely with the results from the paper (Note: the original paper for the GFM did not have any figures showing the velocity or acceleration profiles so these profiles were taken from another paper that was comparing the GFM to another mathematical model [
Next the acceleration profiles were compared. The results from the mathematical model and the ABM simulation can be seen in
following models. In
After doing enough testing to be satisfied that the ABM simulations were giving results similar to the original paper the next step was to use the model to analyze the effect of changing the traffic signal timing on vehicle throughput in the intersection. The model was run over a range of signal timing intervals and the number of vehicles through the intersection in one period (NS and EW traffic both getting a chance to go) was recorded. These tests showed that the longer the signal timing period the larger the vehicle throughput per second was. As the signal timing period increased there were diminishing returns on the vehicle throughput gains. This result is intuitive because the gain in throughput happens due to less vehicle time spent accelerating/decelerating and more time spent at full speed. The acceleration/deceleration effect becomes smaller and smaller as the signal timing period increases, hence the diminishing returns.
The next test for the model was to see how a change in weather conditions would affect the vehicle throughput, and to see if increasing the signal timing period could help to restore normal weather throughput. For normal weather conditions the target velocity was set to 16.67 m/s (60 km/h) and the weather factor set to one (1.0). To simulate inclement weather a couple different value of the weather factor were tried. In doing a literature search it was difficult to find test results that showed a consistent value for the reduction in vehicle capabilities during bad weather. One study done in Minnesota measured a start-up delay of 50% (from 2 to 3 seconds) [
The results for the different weather factors show that the vehicle throughput of the intersection is inversely proportional to the severity of the weather. The model also suggests that increasing the signal period will not fully restore the normal weather throughput; it can only help to partially restore it.
In conclusion, this brief paper has summarized the implementation and testing of an ABM for vehicle traffic through a single lane traffic intersection. The development of the model was discussed with details of how each part of the original mathematical model was implemented using AnyLogic. The verification
tests show that the model accurately re-creates the results from the original model. After verification the model was used to test the effect of inclement weather on vehicle throughput in the intersection. The model shows that inclement weather decreases vehicle throughput and that for all weather parameters tested increasing the signal period improves vehicle throughput.
The next step for this model would be to extend it to multiple signalized intersections to better simulate urban traffic flow. The behavior of the traffic signal agents could also be improved to include an amber phase, and also left-turn signals. From the literature reviewed for this project it appears that the effect of inclement weather on traffic flow, although always negative, varies in degree from city to city. Collecting real-world data from the city the model is being applied to would also improve the results by making the weather effect parameters more accurate.
Ongoing modeling and simulation efforts would include the impact of shared sensor data as well as integration of a hybrid simulation where a fraction of the vehicles are autonomous. A potential difficulty or perhaps potential benefit is that the autonomous vehicles may have significantly greater knowledge of their environment [
As with many agent based models one of the objectives is to provide insight into scenarios that may arise and to explore policies or mitigations that may have a beneficial effect.
Duff, M. and McLeod, R.D. (2018) An Agent Based Model to Analyze the Effects of Traffic Signal Timing on Vehicle Throughput in Incle- ment Weather. Open Access Library Jour- nal, 5: e4523. https://doi.org/10.4236/oalib.1104523