ken.bakke@gicsoft.com

Introducing slack or wait time into passenger routing problem using VRP

Discussion created by ken.bakke@gicsoft.com on Oct 20, 2010
Latest reply on Oct 22, 2010 by ken.bakke@gicsoft.com
I am trying to schedule transportation for passengers to appointments at a facility.  I am having problems controlling the wait time on the resulting route effectively.  My test problem consists of 3 passengers located at various locations within 10 minutes of the single facility.  One of the passengers has a 7:00 am appointment and the other two have a 10:00 appointment.  I constructed the problem with six total orders and three order pairs as follows:

Orders:
Passenger 1 - pickup quanity 1 located within 10 minutes of facility, service time .5
Passenger 2 - pickup quanity 1 located within 10 minutes of facility, service time .5
Passenger 3 - pickup quanity 1 located within 10 minutes of facility, service time .5
Facility 1 - delivery quanity 1, TimeWindowStart1 = 7:00, TimeWindowEnd1 = 7:05, service time .1
Facility 2 - delivery quanity 1, TimeWindowStart1 = 10:00, TimeWindowEnd1 = 10:05, service time .1
Facility 3 - delivery quanity 1, TimeWindowStart1 = 10:00, TimeWindowEnd1 = 10:05, service time .1

Order Pairs:
Passenger 1,Facility 1, MaxTransitTime = 60
Passenger 2,Facility 2, MaxTransitTime = 60
Passenger 3,Facility 3, MaxTransitTime = 60

I have also included a depot and a single route.

When I solve this problem, Passenger 1 and Facility 1 are unassigned.  The route created is:
Passenger 2 - Arrive at: 9:46
Passenger 3 - Arrive at 9:56
Facility 2 - Arrive at 10:04
Facility 3 - Arrive at 10:05

If I increase the MaxTransitTime in the order pairs to 240, the problem will solve with the resulting solution:

Passenger 1 - Arrive at: 6:51 - Depart at 6:51
Facility 1 - Arrive at 7:05 - Depart at 7:05
Passenger 2 - Arrive at 7:16 - Depart at 7:17
Passenger 3 - Arrive at 7:27 - Depart at 7:27
Facility 2 - Arrive at 7:35 - Depart at 10:00 - Wait time 145
Facility 3 - Arrive at 10:00 - Depart at 10:00

I need to control the location of the wait time.  It is obvious that my original set of constraints can easily be met if there is a mechanism to ask the vehicle to wait between Facility 1 and Passenger 2.  How can I accomplish this?  Am I missing some type of configuration that allows slack or wait time?

Outcomes