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
.osmfile instead ofminsk.osmif you wish. Check if your file meets the requirements. - Run the necessary executable files depending on what are you going to do.
- Replace
minsk.osmwith another file with the same name. - Run
ourCreator.bat. - Open the file
world.wbtin Webots. - Add the SumoInterface node, then set the
netConvertproperty tofalseandnetFilesto%MAP_PATH%/world_netwhere%MAP_PATH%stands for the path to the project folder. - Configure the traffic lights in both
NETEDITand Webots (if necessary). - Start the simulation in Webots.
- Run
first_part.batto create thesumo.net.xmlfile. - Edit
sumo.net.xmlusing theNETEDITutility or the way you like. To openNETEDITyou may rundo_netedit.bat. - Create a file
routes.txtin therawfolder. 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.batto generate cars and trips for them. - Now you're free to start the simulation. Go to items [3 - 6] from Variant A.
- Run
clearer.batto remove all files except theosmone. - 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
.jarfiles for the modification of roads, decoding the file and trips rendering, wrote Java code for them, collected the data.