Argentinska Intersection

=Situation= Argentinska street is one of the important roads in Prague that connects Bubenské nábřeží with bridge “Barikádníků”. It leads from city centre and other parts of city outside to the northern part of the country, and to Germany or Poland. Moreover, Argentinska street connects hospital “Na Bulovce” with city centre and other parts. For emergency vehicles it is the way how to get faster, where help is needed.

=Problem Definition=

There is traffic on the road during mornings and evenings, which makes people wait sometimes hours to get out and more important makes difficult pass for emergency vehicles.

Purpose of Simulation
In the scope is part of Argentinska street from Bubenské nábřeží till Dělnická street plus street Za Viaduktem, part of Jateční and part of Tusarova street as they have influence on the whole situation of Argentinska traffic. The purpose of the simulation is to find ways how to make traffic less. In order to do it will be checked, first, if it is possible to change lights more efficiently for cars flow. Second, answer the question – if we can add only one line only to one direction, which direction we have to choose: to city centre or from city centre?

Tool for simulations
For this simulation was used NetLogo 6.0.4. This software is suitable for multi-agent system.

Brief process of simulation

 * Data collection. Data will be collected manually (observation) and from HERE traffic API. Manually for morning, midday and evening during 30 mins each part of the day within one week. At the end of data collecting the average distribution will be made based on the data.
 * Real situation simulation
 * Based on simulation of real situation will be checked the efficiency of lights changes
 * The hypothetical model of adding one more line will be created based on simulation of real situation
 * Summary

=Model= For the purpose of this simulation, the intersections of the streets Argentinska, Delnicka, Jatecni, Tusarova and Za Viaduktem were simulated. World size was set to {{-30,..,30},{-30,..,30}}Where roads are grey, and sidewalks are brown. Roads with determined flows are with arrows of direction. Around roads and sidewalks there are houses and trees. Breeds of the Model:
 * The cars coming from Argentinska street down (to city center) and then turn right to street Za Viaduktem.
 * The number of cars going from Delnicka are not that significant, from right flow cars should go up on Argentinska and from left flow should go down on Argentinska.
 * The cars coming from Argentinska street up (from city center) have four flows. Cars from left flow go left to the street Za Viaduktem. Cars from right flow go left to Jatecni street. Two lines in the middle are going up on Argentinska street.
 * Then from Argentinska cars can go right first on Tusarova street and go right on Delnicka
 * This simulation allows the cars to change lines, when it is possible
 * breed [cars car]
 * breed[houses house]
 * breed[trees tree]
 * breed[crossings crossing]
 * breed [pedestrians pedestrian]
 * breed[lightsR lightR]
 * breed [lightsL lightL]
 * breed [lightsU lightU]
 * breed [lightsD lightD]
 * breed[lightsK lightK]
 * breed [lightsM lightM]
 * breed [lightsN lightN]
 * breed [lightsO lightO]

Cars
Cars are coming from the start point - beginning of Argentinska up, Argentinska down, Delnicka street. They are using roads that are displayed in grey colors in this simulation. Cars will stop, if any other car or pedestrians are in front of it, or if there is red light in front. And then disappear in the simulation at the end of Za Viaduktem, Tusarova, Delnicka and Argentinska up.
 * speed        car's current speed
 * maxSpeed    each car has its own maximum speed depending on the global maximum speeed (little bit lower or higher)
 * will-turn?    whether car is going to turn or not
 * will-stop?    whether the car will stop
 * direction     direction of flow

Lights
There are two intersection with lights. First intersection Argentinska – Delnicka. Second intersection is more complicated between streets Argentinska, Jatecni and Za Viaduktem. Lights on the street Argentinska have longer green light as they are more important for city network. Lights interval controls light change

Simulation
The target of simulation is to find the most effective light-change time and reduce number of cars, that are waiting to pass the intersection. The traffic usually appears during pick time, which is morning - when all people are going to work and evening - when they are coming back respectively. That is why the simulation was set with data which represent evening situation. During evening cars are slightly moving on main Argentinska street : 

To find optimal time for lights the light interval was set as slider to control it during simulation run. The code for lights controlling and for change of Light D as example:  /Each light has its own breed: =Conclusion= Based on simulation the optimal time for each light was set as below
 * breed[lightsR lightR] - Argentinska and Delnicka intersection (Argentinska up)
 * breed [lightsL lightL] - Argentinska and Delnicka intersection (Argentinska down)
 * breed [lightsU lightU] - Argentinska -> Za Viaduktem
 * breed [lightsD lightD] - Argentinska and Delnicka intersection (From Delnicka to Argentinska)
 * breed[lightsK lightK] - Argentinksa and Jatecni intersection (From Jatecni to Argentinska)
 * breed [lightsM lightM] - Argentinksa and Jatecni intersection (From Argentinska right line to Jatecni)
 * breed [lightsN lightN] - Argentinksa and Jatecni intersection (From Argentinska left line to Za Viaduktem)
 * breed [lightsO lightO] - Argentinksa and Jatecni intersection (Two main lines of Argentinska direct)

Intersection Argentinska – Delnicka
green – 26s red - 20s green – 15s red - 42s
 * car lights for Argentinska street
 * car lights for Delnicka street

Intersection Argentinska, Za Viaduktem, Jatecni
green – 35s red - 35s
 * car lights for Argentinska street main flow

green – 32s red - 24s
 * car lights for Za Viaduktem street

green - 20s red - 51s
 * car lights for Jatecni street

=Code= Code in nlogo