Snowplow Optimization


As we all know, we are currently witnessing a polar vortex sweeping through many cities throughout North America which has been causing major issues for transportation, (ie cars or bikes). Although Calgary has been dealing with this problem for a long time, other cities must develop strategies for shoveling snow to allow cars to continue their usual routine. However this can be difficult as many factors must be taken into account. This process becomes vital due to the fact that if major roads remained closed for long periods of time, very few people will able to complete their daily work. This Project seeks to develop solutions for removing snow by optimizing routes taken by snowplows. These routes will be created by taking into account the priority level of the road (how often it’s used), how long the road takes to clear, how opportunities clearing that road creates (Etc.). Although this is a problem a human could solve given enough time. These problems are very time sensitive in the real world and artificial intelligence is a very powerful tool that can solve these problems more efficiently.


This project was made possible through a multi step process. In the first step the user can input a graph of the city with data on various roads and intersection into a program that can convert this data into an csv file. This program also has the capabilities to take in existing csv files and edit them allowing for more complete data as the weather changes. This csv file can taken as an input to the artificial intelligence, which will use genetic testing to determine the optimal solution. This is done by testing several strategies to find solutions and ranking them on their effectiveness. The most effective strategies are chosen and adjusted a little to allow for enough varying that they can be tested again. The most effective strategies in this group will provide a more effective solution. This process can be iterated hundreds of times every few minutes to provide the most optimal solution. This program will then convert this solution into another csv file that can be read by yet another program to visualize the solution thoroughly.

Share this project: