Traffic manager
The app requires Python 3, JRE 15.0, Windows 10, and the Webots robot simulator to be installed.
We introduce a traffic management system which provides opportunity for simulation of current town's traffic part. A user can change roads and number of cars to see (using Webots) what will happen with these parameters. In this repository we show the results obtained for the analysis of traffic in Minsk after building the third line of Minsk metro.
- Clone this repository.
- Provide your own
.osm
file instead ofminsk.osm
if you wish. Check if your file meets the requirements. - Run the necessary executable files depending on what are you going to do.
- Replace
minsk.osm
with another file with the same name. - Run
ourCreator.bat
. - Open the file
world.wbt
in Webots. - Add the SumoInterface node, then set the
netConvert
property tofalse
andnetFiles
to%MAP_PATH%/world_net
where%MAP_PATH%
stands for the path to the project folder. - Configure the traffic lights in both
NETEDIT
and Webots (if necessary). - Start the simulation in Webots.
- Run
first_part.bat
to create thesumo.net.xml
file. - Edit
sumo.net.xml
using theNETEDIT
utility or the way you like. To openNETEDIT
you may rundo_netedit.bat
. - Create a file
routes.txt
in theraw
folder. The file must have the following format: the first line contains the number of cars, succeeding lines contain either+
or-
standing for either start or finish nodes respectively, the node name (taken fromNETEDIT
) and its priority. (All fields are separated by spaces.) - Run
trips.bat
to generate cars and trips for them. - Now you're free to start the simulation. Go to items [3 - 6] from Variant A.
- Run
clearer.bat
to remove all files except theosm
one. - Go to Variants A or B.
- Dmitriy Tarasenko (@dmitars): managed the project, wrote documentation, wrote Java code for trips rendering, designed executable files and project structure.
- Daniil Lebedev (@alphaver): designed the scheme of traffic, changed the map depending on real traffic lights and crossroads positions.
- Viktor Graskov (@ViktorHi): designed
.jar
files for the modification of roads, decoding the file and trips rendering, wrote Java code for them, collected the data.