CHAPTER 1 INTRODUCTION
1.4 Structure of the Thesis
In this chapter, we have introduced the background of the DARP problem. The static and dynamic problems were described, and the objectives of this work were also presented.
Chapter 2 provides a literature review of previous studies for this problem. As DARP problem is an NP-hard problem, it is difficult to find an exact solution. In the static problem, a quick and simple heuristic is proposed to find an approximated
solution. Since in the dynamic setting of the problem, the operator has to respond in real-time in short duration, the insertion method should be fast enough to serve real-time requests.
Chapter 3 describes the two sub-problems in solving DARP problem in regardless of static and dynamic. In the routing sub-problem, cheapest insertion heuristic (CI) is introduced together with an exchange improvement. In the scheduling sub-problem, the assumptions and execution of three different strategies are discussed.
Chapter 4 explains how different strategies are implemented in solving the DDARP.
The real-time requests can be inserted to the existing routes under different dynamic strategies.
Chapter 5 compares the results using the proposed strategies in scheduling decision.
A set of DDARP test instances is generated by simulations. The result of the simulation using different dynamic strategies are compared and analyzed.
Chapter 6 summarizes the study and recommends for the further research.
The flow of the study is shown in Figure 1.1.
Problem Definition
Literature Review
Coding and Simulation
Analysis and Evaluations of Results
Conclusions and Recommendations
Routing Heuristics
Scheduling and Waiting Strategies Initial routes for
Static Problem
Methodology for Dynamic Dispatching
Scenarios
Figure 1.1 Flow of the study
CHAPTER 2
LITERATURE REVIEW
Section 2.1 describes the problem definition and formulation for the DARP problem. In addition, the difference between DARP and PDPTW problem will be explained later. In section 2.2, we review some efficient heuristics methods for solving the static DARP problem. As real-time requests appear during the operating period, the meta-heuristics methods may not be fast enough to find a solution, different routing methods to respond real-time requests will be discussed in section 2.3. Finally, we have made a summary in section 2.4.
2.1 Similarity and Dissimilarity of DARP and PDPTW
The DARP problems will be described in this section. In section 2.1.1, we describe the notation of variables which will be used in this study. In section 2.1.2, the similar mathematical formulation between DARP and PDPTW problems is given.
Although the DARP and PDPTW are similar in mathematical formulation, they have their own characteristics. The comparison of two problems will be compared in section 2.1.3. In addition, the time windows setting for the problems will be discussed in section 2.1.4.
2.1.1 Notation of variables
In the DARP problem, the operator is responsible to provide services to customers.
Once a customer i is going to travel from a pickup location Oi, delivery location Di. According to the trip purpose, the customer can choose either a desired pickup time (DPTi), for example, if he or she would like to return home from shopping; or a desired delivery time (DDTi), for example, if he or she goes to school from home. The time window constraints for each request can then be expanded.
To guarantee the quality of service, this information can be used to generate a set
of time window constraints that must be satisfied by the vehicle route. First, the direct ride time (DRTi) can be calculated between the origin and destination under operating speed without deviation; the maximum ride time (MRTi) has a equation in terms of DRTi. Since the operator cannot arrive at the location for each request with a desired time, a maximum wait state for the desired pickup or delivery for each user is assumed to be a constant, WS, that the time for serving the locations are acceptable within the time interval. Finally, the boundary of the pickup time, earliest pickup time (EPTi) and latest pickup time (LPTi), and the delivery time, earliest delivery time (EDTi) and latest delivery time (LDTi) can be expressed as a function of DPTi or DDTi, MRTi, DRTi, WS.
In the view of considering each request as a paired of pickup and delivery locations, each location j would have a service time interval [aj, bj]. When considering pickup location of the request i, [aj, bj] refers to the time window of [EPTi, LPTi]. However, [aj, bj] refers to the time window of [EDTi, LDTi] for delivery location of the request i.
M denotes as number of operating vehicles serving the total requests in the system. Aj and Dj are the arrival time and departure time of location j for the vehicle. The notation of the set of data is shown in Table 2.1. These notations will facilitate the description of mathematical formulation that follows.
Table 2.1 Notations of input of customer requests
Oi Origin location of request i
Di Destination location of request i DPTi Desired pickup time of request i DDTi Desired delivery time of request i
WS Maximum wait state for pickup or delivery DRTi Direct ride time of request i
MRTi Maximum ride time of request i EPTi Earliest pickup time of request i LPTi Latest pickup time of request i EDTi Earliest delivery time of request i LDTi Latest delivery time of request i aj Earliest service time of location j bj Latest service time of location j
M Number of operating vehicles
Aj Arrival time of the vehicle at location j
2.1.2 Mathematical formulation
Since the mathematical formulations between DARP and PDPTW problems are similar, we modified this formulation from a survey of PDPTW by Mitrovic-Minic (1998).
There are some conditions that should be satisfied in a solution of the DARP.
(a) A pair of pickup and delivery locations for a request is served by the same vehicle (pairing constraint)
(b) For a pair of pickup and delivery locations, the pickup is always served before the delivery (precedence constraint)
(c) A vehicle can be waited at its initial location or at any pickup or delivery location
(d) All of the time windows constraints must be satisfied (hard time window constraint)
(e) The total distance traveled by the operating vehicles is minimized
Assume a complete graph G = (V, A), where V = {O1, O2,…, ON, D1, D2,…, DN} and A={(xi,xj):xi,xj∈V,i≠ j} in Euclidean distance. Each vertex pair (ON, DN) stands for request transportation from origin ON to destination DN.
In this problem, the operator serve the requests by using M vehicles, which start from and end at a fixed location, depot. Let N customers are known in advance, the operator should provide services for those customers with minimum operating costs.
For simplicity, we do not discuss the properties for the pickup or delivery locations in this section, but consider on using efficient strategies to generate paths to serve all the locations.
The mathematical formulation of DARP problem is shown below. In the static problem, the operator has a resource of a set of m vehicles, M, with a fixed capacity of C . The vehicles start and end at a depot, d(m), to serve N known customers. For a m
request i asks for service, he or she would have a pair locations, origin Oi and destination Di. In the views of service locations, the time windows at each location j
must be within [aj, bj], which refers to Table 2.1 as the earliest pickup or delivery time and the latest pickup or delivery time according to the properties of the locations, respectively, with a load of lj units. For each different stop locations, j and k, the direct travel time and travel cost of them are tjk and cjk, respectively. Set P is a set of all + pickup locations, when P denotes as a set of all delivery locations and− P=P+∪P−. Q includes P and the location of the depot. Three types of variables are also used: first, the binary flow variablesXmj,k which will be set to 1 when the vehicle serves from location j to k. Next, Tj is the time when finished services at location j. Also, the variableLjis the load after location j is serviced.
∑ ∑
Equation (1) is the objective to minimize total operating cost containing number of operating vehicles and total travel distance.
∑
+∈P
of operating vehicles are planned to depart from the depot, that is, number of operating vehicles required for providing services. Xmj,k will be discussed in Equation (18).
Cm is the fixed cost of operating vehicles and Cj,k is the cost travel from location j to location k; therefore, Cm is much larger than Cj,k.
The descriptions the constraints are as follow:
Equation (2) to Equation (5) is the flow constraints, Equation (6) is the pairing constraints, Equation (7) is the precedence constraints, Equation (8) to Equation (10) are the compatibility between routes and schedules, Equation (11) and Equation (12) are the time windows constraints, Equation (13) to Equation (15) are the compatibility between routes and capacity of the vehicles and Equation (16) and Equation (17) are the capacity constraints. Descriptions of each equation are as below.
Equation (2) Vehicle m is in the location j and goes to a unique stop location k.
Equation (3) Number of vehicles enter and leave location j.
Equation (4) When the vehicle m starts from the depot, the next location must all be a pickup point.
Equation (5) When the vehicle m is towards the depot, the precedent location should be a delivery point.
Equation (6) Pairing constraints. When Oi is placed to the vehicle m, its relevant destination, Di should also be existed in the same vehicle.
Equation (7) Precedence constraints. The time of the vehicle m serves the destination Di must be less than or equal to the time serves at the associated origin Oi plus the direct ride time between Oi and Di. Equation (8) When the vehicle m leaves from j and goes to k, the time for that
vehicle at k will be large than or equal to the time of the vehicle
serves at location j plus the direct ride time between j and k.
Equation (9) When the vehicle m starts from the depot and goes to a pickup point location j, the time for that vehicle at j will be large than or equal to the time of the vehicle starts at the depot plus the direct ride time between d(m) and j.
Equation (10) When the vehicle m finishes serving the last delivery location j and goes back to the depot d(m), the time for that vehicle at j will be large than or equal to the time of the vehicle serves at location j plus the direct ride time between j and d(m).
Equation (11) to (12) The time of the vehicle m arrive to the indicated locations must be in the boundary of [aj, bj].
Equation (13) When it is the situation from location j to k which is a pickup point, the total capacity of the vehicle at j must be the total load at location j plus the load at location k.
Equation (14) When the vehicle leaves j and goes to k which is a delivery point, the total capacity of the vehicle at k is the total load at location j minus the load at location k.
Equation (15) When the vehicle starts at the depot d(m) towards a pickup location j, the total capacity of the vehicle at j is the total load at d(m) plus the load at location j.
Equation (16) The total load for the vehicle m when departed from the depot is 0.
Equation (17) The total load in location j must be larger than or equal to the load at location j and less than or equal to the capacity limit of the vehicle m.
Equation (18) When the route passes from j to k using vehicle m, the value
m k
Xj, will be 1, otherwise the value will be 0.
2.1.3 Comparison of the problems
This section compares the differences between the DARP and PDPTW problems.
DARP is a generalized PDPTW problem, while their mathematical formulations are similar. Nevertheless, DARP focuses on carrying passengers while PDPTW is for courier services. The comparison between both of the problems is shown in Table 2.2.
They are mainly different in zone size, maximum delivery duration, capacity constraints
and time windows constraints.
Table 2.2 Comparison between DARP and PDPTW problems
DARP PDPTW
Formulations Mathematically similar
(as shown in equations (1) to (18))
Capacity constraints
Number of seats of
vehicles Size of vehicles
Time window constraints
User can specify either
DPT or DDT User specified DDT
Maximum delivery duration
Specified by the system e.g. MRT is a function of
DRT
Specified by the customer e.g. urgent and non-urgent
parcels
Service Area Within a city
With a distance reached in a reasonable working hour
(e.g. 8 hrs)
(1) Capacity Constraints
As DARP focuses on carrying passengers, the capacity for the vehicles is the number of seats for passengers. However, PDPTW aims to carry as many freight as possible in a reasonable service time, and the capacity for the vehicles is size of the vehicle that can carry more freights in operating period.
(2) Time Windows Constraints
It is possible in DARP to allow passengers to specify their desired pickup time (DPT) or desired delivery time (DDT) according to their trip purposes, e.g. passengers specify DPT when return home from shopping or specify DDT as they go to see a movie. In contrast, customers normally only specify their desired delivery time for courier services. Generally, customers can ask for the k-h delivery services, e.g. 4-h delivery services, the parcels are acceptable to be delivered within the k hour period.
(3) Maximum Delivery Duration
In DARP, passengers specify their origin and destination, also their DDT or DPT The operator then expand the maximum delivery duration under their operating speed, i.e. the MRT is a function of DRT.
In PDPTW, when the customers specify the k-h delivery services, the k period will be the maximum delivery duration for deliveries. The decision for k hour durations are usually a consideration of parcels urgency.
(4) Service Area
DARP usually works within a city. Since passengers do not want to take a public vehicle mode for a long time, DARP is rarely successful for long distance transports.
Instead, short distance transports have potential to attract passengers to take services, e.g. similar to taxi for door-to-door services but cheaper in price.
PDPTW works with a distance reached in a reasonable working hour. Customers specify the origin and destination for delivery services, the distance between them can be either long or short, the total time window period will also be long or short according to the properties of the parcels, e.g. urgent or non-urgent parcels.
2.1.4 Time windows setting
Owing to the difference time window settings between DARP and PDPTW problems, this section will describe the setting of both problems. In section 2.1.4.1, time windows setting in DARP is illustrated. On the other hand, the time windows setting in PDPTW problem is followed in section 2.1.4.2.
2.1.4.1 Time windows setting in DARP
For the definition of the notations, readers can refer to Table 2.1 in section 2.1.1.1 We adopt the settings by Diana and Dessouky (2004). Customers can choose either a
desired pickup time (DDT) or a desired delivery time (DDT) in this problem and a pair of origin-destination locations with their trip purposes. For example, when customer i wants to return home from shopping, he or she would specify a desired pickup time (DPTi), or the customer wants to present a specific place at a specific time, such as goes to see a movie at a fixed time, he or she would like to arrive to the destination at a specific delivery time, the desired delivery time for user i (DDTi) will be formed.
The calculations for the time windows of the request will be described in follow.
The direct ride time (DRTi) can first be calculated by the direct distance from the origin to the destination of customer i under a fixed operating speed. Second, the maximum ride time (MRTi) for the customer is then assumed to be obtained by equation (19).
) ,
max(B A DRT DRT WS
MRTi = + × i i + (19)
where A and B are user-specified constants (e.g. A = 2, B = 20 minutes); therefore, MRTi
is a linear function of DRTi. WS is the maximum waiting state for pickup or delivery locations as introduced in Table 2.1. (e.g. WS = 30 minutes). Generally, the MRTi can be obtained by the equation on the left side; however, MRTi may be smaller than WS in some cases using that equation, for example, the MRTi is 20 minutes where WS is 30 minutes; therefore, the constraint of WS becomes meaningless in this situation. To avoid MRTi becoming smaller than WS in some cases, another equation is used where WS is a function of MRTi.
A set of time windows, EPTi, LPTi, EDTi, LDTi, for customer i can be obtained by using the DPTi or DDTi, MRTi and DRTi. WS is maximum waiting state for each request. Figure 2.1 shows the time windows for the user i who specified earliest pickup time, where the time windows could be computed as
i
i DPT
EPT = (20)
WS EPT
LPTi = i+ (21)
i i
i EPT DRT
EDT = + (22)
i i
i EPT MRT
LDT = + (23)
Figure 2.1 Time windows for the DPT-specified requests
Figure 2.2 shows the time windows for the request i who specified latest delivery time, in which the time windows could be computed as
i
i DDT
LDT = (24)
WS LDT
EDTi = i− (25)
i i
i LDT DRT
LPT = − (26)
i i
i LDT MRT
EPT = − (27)
Figure 2.2 Time windows for the DDT-specified requests MRTi
EPTi LPTi EDTi LDTi
time DRTi
WS DRTi
WS
MRTi
EPTi LPTi EDTi LDTi
time
2.1.4.2 Time Windows Setting in PDPTW
We choose Mitrovic-Minic and Laporte (2004) as an instance of generating time windows for PDPTW problems. When concerning courier services, operators divide the maximal service time into k-hour service type, including 1-h requests, 2-h requests and 4-h requests. Customers first indicate their origins and destinations, as well as the length of duration for their requests.
Figure 2.3 shows the setup method for this scenery for the customer i. As a vehicle is assigned to serve the customer i, it has to finish the pickup and delivery services within the maximum service time ki, which is similar to the MRTi in DARP problem. Again, the DRTi is obtained by the direct distance and operating speed.
Compared to one of the time window settings in DARP problem, the time windows here are only considered to be the relationships between the EPTi, MRTi and DRTi. The EPTi is the time when the request occurs, the LDTi will be the EPTi plus k-hour, LDTi = EPTi + ki. The EDTi can be calculated by EPTi and DRTi, that is, EDTi = EPTi + DRTi. Finally, the LPTi can be found as LPTi = LDTi – DRTi.
Figure 2.3 An example of setting up time windows in PDPTW problems
2.2 Static Problems
DARP problem is an NP-hard problem and difficult to solve because of its paired constraints and precedence constraints. Psarafits (1983) proposed a dynamic
i
i k
MRT =
LPTi LDTi
Time DRTi
DRTi
) (DDTi
EPTi EDTi
programming approach that could find an exact solution, but the problem size was limited to less than and equal to 9 customers with user-specified time windows on departure and arrival time. In practice, the customer sizes must be larger, it would be hundreds or even thousands requests combined with PDP pairs and also time window constraints, therefore, this problem cannot be solved for an exact solution in polynomial time (Mitrovic-Minic 1998). However, some papers used heuristic methods to find nearly exact solution in short time.
Heuristics for solving the Dial-a-ride problem have been studied for a number of decades. The examples of the heuristics method are cheapest insertion heuristic (Jaw et al. 1986; Madsen et al. 1995), new regret heuristic (Diana and Dessouky 2004) and tabu heuristic (Cordeau and Laporte 2003a; Mitrovic-Minic et al. 2004)
One of the mostly cited references in this area is due to Jaw et al. (1986). They proposed the Advanced Dial-A-Ride with Time Windows (ADARTW) algorithm for the Dial-A-Ride Problem (DARP) of advance-request, with multiple vehicles and service quality constrains. In their algorithm, the time windows for each customer i are determined with the customers specified desired pick-up time (DPTi) or desired delivery time (DDTi), by calculating the values of earliest pick-up time (EPTi), latest pick-up time (LPTi), earliest delivery time (EDTi), latest delivery time (LDTi). In their assumptions, the vehicle capacity was limited, and loading and unloading time were specified for picking-up and delivering customers and the vehicles were not allowed to idle when carrying customers. In the algorithm, for a number of customers, the sequence of insertion was labeled with the order of earliest pick-up times EPTi
One of the mostly cited references in this area is due to Jaw et al. (1986). They proposed the Advanced Dial-A-Ride with Time Windows (ADARTW) algorithm for the Dial-A-Ride Problem (DARP) of advance-request, with multiple vehicles and service quality constrains. In their algorithm, the time windows for each customer i are determined with the customers specified desired pick-up time (DPTi) or desired delivery time (DDTi), by calculating the values of earliest pick-up time (EPTi), latest pick-up time (LPTi), earliest delivery time (EDTi), latest delivery time (LDTi). In their assumptions, the vehicle capacity was limited, and loading and unloading time were specified for picking-up and delivering customers and the vehicles were not allowed to idle when carrying customers. In the algorithm, for a number of customers, the sequence of insertion was labeled with the order of earliest pick-up times EPTi