September 2019 - January 2020
This is a mobility research project focused on developing a program that is capable of creating circuits of roads using straight segments, curves, roundabouts, intersections, and traffic lights. It also allows you to modify parameters such as vehicle flow, the probability of exiting a roundabout, and traffic light timings in order to determine the optimal combination for real-world traffic management.
The idea for this project came from wondering whether the roads in our cities are as efficient as possible and if there might be ways to improve them.
This program was created using open-source tools: Blender, a software for creating 3D models, along with Unity and C# to develop the logic and inner workings of the objects. Visual Studio was used as the code editor.
The logic is divided into three systems: the road network, the autonomous vehicles, and the simulation and results extraction system. In addition, you can save the project, which is convenient when working on large-scale projects.
Another aspect of this project is the study of different elements, such as intersections and roundabouts, and their application to a real case. In this instance, the chosen site was a roundabout in Manresa. This step was essential for determining the accuracy of the program and for improving its functionality.
Finally, the developed tool can be applied in different cities to provide potential solutions to traffic problems.
Additionally, the knowledge acquired over the years through online resources has been fundamental to the development of this project.
The road structure is mainly composed of the road itself, sidewalks/fences, path points and connection points.
From the path points and the road itself, a navigation mesh is defined to define the area in which vehicles can travel from point A to point B. By adding a car spawner, we can observe the results. Finally, a simple detector is implemented to avoid collisions; however, we still need to address the issue of vehicles getting stuck in dead ends.
Thanks to the connection points located at the end of the road modules, you can expand the road system to replicate any desired configuration with dynamic baking of the navigation mesh.