Trying to work out the most appropriate routing algorithm to use for this situation. Even better if it's available as part of pgrouting or similar..
Here's the requirements:
- Specified date/time for start point
- Specified date/time for end point
- Constant speed of travelling
- Possibility for a few additional minutes added per hour of travelling
- Take into account impedences/weights of certain routes
- The number of stages / legs doesn't matter
- Preferable not to retraverse stages / legs but can be done if required
- Start / end point could be the same
- The algorithm should return the top 3 matching routes (if possible)
The idea is that the routing algorithm would work out a near optimal route to take that will take from the start time until the end time. So for example, if the start time is 9am and the finish time is 12pm then a 3hr3min route would take preference to a 2hr route.