Hi,
I am currently using the Tour API (RouteXL 200 License) and I am struggling to resolve a problem with time restrictions.
I have multiple waypoints with different time slots (restrictions) and I have to guarantee (only for some waypoints) that the time of ready/due restrictions is respected. Essentially I have to prioritize some waypoints than other.
When the API returns “feasible:false” it’s like the restrictions are ignored and some of the waypoints are put far away the time limit.
How the API manages the tour when some restrictions cannot be respected?
How can I say that some restrictions are more important than other?
I attach an example:
- The first address is my starting point, I don’t have the need to come back there so I don’t repeat this address at the end
- The waypoints with 0 - 840 can be moved freely during the day
- The waypoints with different restrictions must be reached within that limits
Input:
[
{
"address": "VIA ARCADE 8 31050 POVEGLIANO TREVISO ITALIA",
"lat": "45,76137",
"lng": "12,20447",
"restrictions": {}
},
{
"address": "VIA VITTORIO VENETO 133 31030 CARBONERA TREVISO ITALIA",
"lat": "45,68214",
"lng": "12,27692",
"servicetime": 45,
"restrictions": {
"ready": 0,
"due": 840
}
},
{
"address": "VIA CAVOUR 87 31027 SPRESIANO TREVISO ITALIA",
"lat": "45,7838",
"lng": "12,2568",
"servicetime": 45,
"restrictions": {
"ready": 0,
"due": 840
}
},
{
"address": "via brigata emilia 5 PERO (31030 ) - ( ) 31030 BREDA DI PIAVE TREVISO ITALIA",
"lat": "45,70293",
"lng": "12,34391",
"servicetime": 45,
"restrictions": {
"ready": 0,
"due": 840
}
},
{
"address": "VIA SAN GIACOMO 16 31030 BREDA DI PIAVE TREVISO ITALIA",
"lat": "45,71329",
"lng": "12,32967",
"servicetime": 45,
"restrictions": {
"ready": 0,
"due": 840
}
},
{
"address": "VIA SAN PIO X 4 31030 BREDA DI PIAVE TREVISO ITALIA",
"lat": "45,72239",
"lng": "12,33244",
"servicetime": 45,
"restrictions": {
"ready": 0,
"due": 840
}
},
{
"address": "VIALE FELISSENT 53 31100 TREVISO TREVISO ITALIA",
"lat": "45,69289",
"lng": "12,25875",
"servicetime": 45,
"restrictions": {
"ready": 120,
"due": 210
}
},
{
"address": "VIA GORIZIA Varago 3 31020 VILLORBA TREVISO ITALIA",
"lat": "45,73547",
"lng": "12,30984",
"servicetime": 45,
"restrictions": {
"ready": 240,
"due": 330
}
}
]
Output:
{
"id": "45B61HDc",
"count": 8,
"feasible": false,
"route": {
"0": {
"name": "VIA ARCADE 8 31050 POVEGLIANO TREVISO ITALIA",
"arrival": 0,
"distance": 0
},
"1": {
"name": "VIA CAVOUR 87 31027 SPRESIANO TREVISO ITALIA",
"arrival": 8,
"distance": 7.5
},
"2": {
"name": "VIA VITTORIO VENETO 133 31030 CARBONERA TREVISO ITALIA",
"arrival": 69,
"distance": 22.3
},
"3": {
"name": "VIALE FELISSENT 53 31100 TREVISO TREVISO ITALIA",
"arrival": 118,
"distance": 26.5
},
"4": {
"name": "via brigata emilia 5 PERO (31030 ) - ( ) 31030 BREDA DI PIAVE TREVISO ITALIA",
"arrival": 178,
"distance": 37.2
},
"5": {
"name": "VIA SAN GIACOMO 16 31030 BREDA DI PIAVE TREVISO ITALIA",
"arrival": 227,
"distance": 39.3
},
"6": {
"name": "VIA SAN PIO X 4 31030 BREDA DI PIAVE TREVISO ITALIA",
"arrival": 274,
"distance": 40.7
},
"7": {
"name": "VIA GORIZIA Varago 3 31020 VILLORBA TREVISO ITALIA",
"arrival": 322,
"distance": 43.5
}
}
}