Route not feasible : why?


I sent this route to api:

I get this as a response: not feasible.

{id: g05245M2, count: 10, feasible: false, route: {0: {name: starting, arrival: 0, distance: 0}, 1: {name: 1, arrival: 21, distance: 20.6}, 2: {name: 8, arrival: 49, distance: 34.1}, 3: {name: 7, arrival: 70, distance: 41.9}, 4: {name: 3, arrival: 88, distance: 44.5}, 5: {name: 2, arrival: 110, distance: 50.5}, 6: {name: 6, arrival: 140, distance: 67}, 7: {name: 5, arrival: 155, distance: 67}, 8: {name: 4, arrival: 170, distance: 67}, 9: {name: arrival, arrival: 229, distance: 120.2}}}

If I delete one step, or add another, it works.

Why ? Is there a problem with my request ?


The ready and due times are not adding any value here but hamper the feasibility. All stops have a ready time of 300 (05:00) and a due time of 180 (03:00), while the whole route can be done in 229 minutes. Is there any special reason you have these restrictions?

Note: you can import the JSON locations input on the website, and create a route from that, for better understanding of what is happening.

This restriction is because the visited point are closed during lunch (12h-14h, and the route start at 9h)
The restrictions are set by my users

The infeasible comes from the last location before the return point, that is:

8: {name: 4, arrival: 170, distance: 67}

The arrival 170 is before its inverted time restriction of due 180, so that’s good and no waiting time is added. However, with its service time of 15 the departure time becomes 185, which makes it infeasible as the lunch closure has started.

So, it seems to be a specific issue, with inverted time restrictions only. The algorithm does not add waiting time for a due time, only for ready time. This is something we’ll look into, we either need to add waiting time or mark the route feasible.