ERO: Déneiger Montréal

Python

This group project is part of the Elements of Operational Research (ERO) courses.
The goal is to provide a customer with a solution to minimize the cost of clearing operations on a typical day.
The team is therefore tasked with studying ways to minimize the travel of road clearing devices in Montreal, while ensuring that the entire assigned area is addressed.

This problem is divided into two sub-problems with graphs.

The first problem is to carry out aerial drone analysis of snow levels.
Thus, the problem boils down to having a drone roam the streets of the city of Montreal.
The city is modelled by a graph, where each node represents an intersection, and each edge represents a street.

The second problem comes after the first one: we consider that the drone has detected 5 neighborhoods to plow.
We now have to find the optimal path in each of these neighborhoods, as well as the number (and type among two proposed types) of snow plows needed to minimize the total cost, while keeping a consistent clearing time.
Optimizations can then be made: Snow plows can help clear another neighbourhood once their work is done, for example.

Images