Note: Let's not reinvent the wheel. Everyone already knows its an NP-Hard Problem, so it's best to use a well used existing solution. The goal is to use our intelligence to optimize the solution, not solve the traveling salesman problem.
Figure 1: Black are the points of origin of the Volunteers and Blue are the targets. (We will be using map data and not grids!)
The goal is to find optimal routes for multiple Volunteers visiting a set of a known locations. The Volunteers originate from different base stations. (When there's only one volunteer, it reduces to the Traveling Salesman Problem.)
Optimal Route Definition (Tentative): Minimize the length of the longest single route among all volunteers.
- Total Time/Day of every volunteer.
- Maximize number of non-target households between target locations. E.g. Red Team volunteer has house (7) and House (3) as targets, but visits 1 and 4 as bonus.
NOTE: Constraint 2 is currently not a priority.
- Route Management API that can be updated with new Volunteers or New Locations