Systems 11 00412
Systems 11 00412
Systems 11 00412
Article
Multi-Trip Vehicle Routing Problem with Time Windows and
Resource Synchronization on Heterogeneous Facilities
Rui Xu *, Shumin Li and Jiayan Wu
Abstract: Inspired by long-distance road transport in industrial logistics in China, this paper studies
a simultaneous loading scheduling and vehicle routing problem over a multi-workday planning
horizon. Industrial cargo often requires specialized facilities, and these facilities vary in performance
and quantity and are subject to available time constraints. Consequently, achieving coordinated
optimization of vehicle routing and loading scheduling becomes a significant challenge in practice.
We describe the studied problem as a multi-trip vehicle routing problem with time windows and
resource synchronization on heterogeneous facilities. First, we develop a mixed integer programming
model in a multi-workday setting to minimize the total travel distance and the number of vehicles.
Moreover, a three-phase heuristic approach is developed. An initial solution is constructed using
a sequential strategy in the first phase, and then an adaptive large neighbourhood search and a
post-optimization procedure based on ejection chains are, respectively, designed to optimize the
two hierarchical objective functions. Finally, extensive computational experiments are conducted
to demonstrate the effectiveness of the proposed method. Specifically, the research results indicate
that in long-distance road transport in industrial scenarios, expanding the planning horizon from a
single workday to a multi-workday period could significantly reduce logistics operational costs and
improve service quality.
Keywords: vehicle routing problem with time windows; multi-trip; heterogeneous facilities;
hierarchical objectives; three-phase heuristic
associated with each trip. In addition, this problem also addresses a critical yet often over-
looked aspect of the multi-trip vehicle routing problem (MTVRP): the scarcity of loading
and unloading facilities. The above two factors should be taken into account in industrial
logistics because the loading and unloading operations are time-consuming and rely on
scarce facilities. As a result, any scheduling plan that disregards resource synchronization
is inherently suboptimal or infeasible [3]. Acknowledging the importance of these resource
constraints is essential in formulating a feasible and optimal scheduling plan.
The MTVRPTWRS problem is NP-hard as it presents a variant problem of the tra-
ditional vehicle routing problem with resource synchronization. Introducing resource
synchronization constraints implies a complex scheduling problem embedded within the
vehicle routing problem [4]. In the MTVRPTWRS problem, we need to assign multiple
trips to a single vehicle and arrange the sequences for the loading operations mapped
by each trip. Constrained by the time windows, the vehicle must depart from the depot
within a specific time interval, thereby necessitating the completion of the loading operation
within the designated timeframe. To guarantee a feasible schedule, a comprehensive check
is required to evaluate the assignment of available vehicles, the arrangement of loading
operations, and the planning of each vehicle trip. These characteristics pose challenges to
building efficient mathematical models and designing tailored algorithms.
In this study, we consider the hierarchical objectives that prioritize minimizing the
total travel distance (TTD), followed by minimizing the number of vehicles (NV). The
manufacturer’s primary focus is on minimizing TTD since the distribution cost highly
depends on TTD, which has a critical impact on improving enterprise efficiency. When
logistics costs are minimized, the manufacturer then aims to minimize the number of
dispatched vehicles. This consideration stems from the fact that each vehicle is typically
operated by a regular driver. The driver’s familiarity with the entire process, particularly
the loading operations, contributes to increased operational efficiency and higher-quality
delivery service.
The main contributions of this paper are threefold: (1) We introduce a novel variant of
VRP in the industrial logistics environment called MTVRPTWRS with hierarchical objec-
tives, which considers the impact of the availability of loading facilities on the subsequent
routing plan. By incorporating realistic factors, the established model can significantly
enhance the feasibility and quality of the scheduling plan. (2) We formulate this problem as
a mixed-integer linear programming (MILP) model, with the objectives of minimizing TTT
as the primary objective and minimizing NV as the secondary objective. Subsequently, we
devise a three-phase heuristic to solve the problem and use IRACE to adjust the parameters
of the proposed heuristic. (3) We conduct computational experiments on a new set of test
instances for the MTVRPTWRS problem, which is designed based on the classical VRPTW
test instances. The experimental results indicate that the proposed three-phase heuristic
efficiently solves the MTVRPTWRS problem and performs well on the test instances.
The remainder of this paper is organized as follows. A brief review of the relevant
literature is provided in Section 2. In Section 3, we present the problem description and
establish a corresponding MILP model. In Section 4, we develop a three-phase heuristic to
solve the MTVRPTWRS problem, and the performance is evaluated through computational
experiments in Section 5. We conclude this paper and provide some promising directions
for future research in Section 6.
2. Literature Review
Some recent studies have focused on the MTVRP and the vehicle routing problem
with resource synchronization, respectively [5,6]. However, there is a scarcity of research
that jointly addresses the features of “multi-trip” and “resource synchronization” in vehicle
routing problems. To the best of our knowledge, only Huang et al. [7] studied a variant of
MTVRP with resource synchronization related to urban waste collection. In the following
subsections, we comprehensively review relevant studies on MTVRP and the vehicle
routing problem with resource synchronization.
Systems 2023, 11, 412 3 of 22
Sets
H The set of workdays, H = {1, . . . , | H |}
V The set of vertices, V = {0, n + 1} ∪ Vc
Vc The set of customers, Vc = {1, . . . , n}
A The set of arcs, A = {(i, j)|i, j ∈ V, i 6= j}
K The set of vehicles, K = {1, . . . , |K |}
M The set of facilities, M = {1, . . . , | M |}
The set of virtual replicas of loading facilities, where each facility with multiple
VM available periods is treated as a distinct entity with a single available period,
V M = {1, . . . , | M|| H |}
The set of trips, R = {1, . . . , | R|}, the number of trips in R does not exceed the
R
number of customers |Vc | n o
J The set of the loading operations mapped by the set of trips, J = J1 , . . . , J| R|
The set of virtual trips whose mapped loading operations could be used as the first
MS virtual loading operation for different facilities on different workdays,
MS = {| R| + 1, . . . , | R| + | M|| H |}
The set of virtual trips whose mapped loading operations could be used as the last
ME virtual loading operation for different facilities on different workdays,
ME = {| R| + | M|| H | + 1, . . . , | R| + 2| M || H |}
The set of virtual trips, where each trip can be used as the first virtual trip for a
KS
vehicle, KS = {| R| + 2| M|| H |, . . . , | R| + 2| M|| H | + |K |}
The set of virtual trips, where each trip can be used as the last virtual trip for a
KE
vehicle KE = {| R| + 2| M|| H | + |K | + 1, . . . , | R| + 2| M|| H | + 2|K |}
Parameters
qi The demand of customer i
[ ei , li ] The service time window of customer i
si The service duration at customer i
tij The time travelled from node i to node j
cij The distances travelled from node i to node j, tij = cij numerically
TH The working duration of a workday
TM The available duration of the facilities on a workday
Q The maximum capacity of a vehicle
M A large number
Decision variables
A binary variable is equal to 1 if arc (i, j) ∈ A is travelled during trip r and 0
xijr
otherwise
A binary variable is equal to 1 if the mapped loading operation of trip r and u are
yrumh
processed sequentially on the facility m on the hth workday and 0 otherwise
A binary variable is equal to 1 if node i is visited by trip r, and the mapped loading
zirmh
operation is executed on the facility m on the hth workday and 0 otherwise
A binary variable is equal to 1 if the trip r and u are executed sequentially by
gruk
vehicle k
Dk A binary variable is equal to 1 if at least one non-virtual trip is assigned to vehicle k
A continuous variable represents the beginning time of the loading operation
br
mapped by trip r
wir A continuous variable represents the service beginning time at customer i in trip r
Auxiliary variable
Ur The set of customers visited by trip r
φr The quantity of cargo loaded by a vehicle during trip r
Lmh The working duration of facility m on the hth workday
Prm The processing time of the loading operation Jr on facility m
[ ar , dr ] The processing time window for the loading operation Jr
VPr The trip duration in which trip r occupies the assigned vehicle
Consequently, the loading operation is expected to be completed within this period. The
processing time window is precisely defined by Definition 1, and the detailed computation
rules can be found in Appendix A.
Definition 1. (Processing time window). The processing time window of the loading operation Jr
mapped by trip r is represented by [ ar , dr ] , where ar denotes the earliest expected finish time of Jr
and dr represents the latest completion time, also referred to as the due date.
In the middle level, the loading scheduling subproblem aims to assign loading operations
associated with the trip set R to different facilities. For convenience, we consider the same
facility on different working days as distinct virtual facilities and introduce a set of virtual
replicas of loading facilities. Each facility with multiple available periods is treated as a
distinct entity with a single availability period, denoted as V M = {1, . . . , | M || H |}.
By integrating the routing plan and loading scheme, we determine two crucial time
points for each trip: the beginning time of the loading operation and the time of return to
the depot. We define the vehicle utilization period VPr for trip r as the timeframe spanning
from the start of the loading operation to the vehicle’s arrival back at the depot. If trip r is
assigned to vehicle k, it will occupy the vehicle during VPr , while the remaining periods can
be scheduled for other trips. At the highest level, the trip scheduling subproblem involves
generating a trip scheme that assigns and arranges trips on different vehicles, ensuring
non-overlapping vehicle utilization periods for multiple trips assigned to the same vehicle.
min NV = ∑ Dk (2)
k∈K
Equation (1) is the primary objective, which is to minimize TTD, and Equation (2) is
the secondary objective, which is to minimize NV.
2. Constraints related to the routing design subproblem
Constraint (3) mandates that each customer is visited exactly once. Constraint (4)
specifies the capacity of the vehicle. Constraint (5) enforces flow conservation across all
customer nodes. Constraints (6) and (7) ensure that each trip begins at node 0 and ends
at node n + 1. Constraint (8) guarantees that virtual trips have no access to customers.
Constraint (9) represents the classical sub-tour elimination constraint. Constraint (10)
considers the time continuity of adjacent arcs within a trip. Constraints (11) and (12)
impose hard time window constraints for customers and the depot.
3. Constraints related to the loading scheduling subproblem
troducing a very large positive value M. Constraint (17) prohibits virtual trips from
accessing any customers. Constraint (18) mandates that non-virtual loading operations
must have both a predecessor and a successor, ensuring proper sequencing and connec-
tivity. Constraints (19) and (20) specify that the loading sequence at each facility should
start with a virtual loading operation from the set MS and end with another virtual loading
operation from the set ME. Constraint (21) enforces that delivery can only begin after
the completion of loading operations. Constraint (22) ensures that subsequent loading
operations at any facility commence no earlier than the completion of the preceding loading
operation. Constraints (23) and (24) guarantee that each loading operation starts and ends
within the available period of facilities on a given workday.
4. Constraints related to the trip scheduling subproblem
1 2 3 4 5 6 7 8 9 10 11
qi 4 4 2 8 3 4 3 2 6 5 3
si 5 4 2 8 3 4 3 2 6 5 3
ei 50 60 10 20 20 20 30 10 10 20 40
li 90 90 30 40 60 80 70 20 40 90 90
The solution for the MTVRPTWRS problem comprises a routing plan, a loading
scheme, and a trip scheme. The optimal routing plan is presented in Table 3 and Figure 1.
Table 4 details the attributes of the mapped loading operations, including the processing
workday has a working duration 𝑇𝐻 of 50 and an available duration 𝑇𝑀 of 30. Two facil-
ities are available, with loading speeds of 2 and 1, respectively.
1 2 3 4 5 6 7 8 9 10 11
𝑞 4 4 2 8 3 4 3 2 6 5 3
time and the processing time window. Furthermore, Figure 2 visualizes the loading and trip
𝑠 5 4 2 8 3 4 3 2 6 5 3
schemes through Gantt charts, offering a clear overview. For more detailed information,
𝑒 50 60 10 20 20 20 30 10 10 20 40
Tables 5 and 6 present comprehensive data on the loading and trip schemes in tabular form.
𝑙 90 90 30 40 60 80 70 20 40 90 90
Table 3. The results of the routing plan (TTD = 104).
The solution for the MTVRPTWRS problem comprises a routing plan, a loading
scheme, and
Tripa trip scheme. The optimal
Travel Time τrouting
r plan is presented
Quantity of Cargo φrin Table 3 and
Trip Figure 1.
Sequence
Table 4 details
r1 the attributes of the20 mapped loading operations,
4 includinghthe
0, 1, processing
2, 12i
time and the
r2 processing time window.
27 Furthermore, Figure
10 2 visualizes the loading
h0, 3, 4, 12i and
r3 through Gantt charts,
trip schemes 31 offering a clear overview.
10 For moreh0,detailed
5, 6, 7, 12iinfor-
r4
mation, Tables 29
5 and 6 present comprehensive data on8the loading and triph0, 8,schemes
9, 12i in
r5 18 8 h0, 10, 11, 12i
tabular form.
Thevisualization
Figure1.1.The
Figure visualizationof
ofthe
therouting
routingplan
plan(TTD
(TTD==104).
104).
Table 3.
Table Theresults
4. The attributes of the
of the loading
routing planoperations.
(TTD = 104).
Figure 2. GanttFigure
chart2.of
Gantt chart of
loading loading and
scheme scheme and
trip trip scheduling
scheduling (NV(NV
= =3).
3).
The routing plan involves visiting 11 customers distributed across five trips. As an
example, the sequence of the trip 𝑟 is <0,1,2,12>. The TTD is the total travel time for all
trips, totalling 104. Based on the routing plan, we derive a set of loading operations with
distinct attributes, illustrated in Table 4.
Figure 2 illustrates a Gantt chart displaying the loading scheme and trip scheme. On
Systems 2023, 11, 412 11 of 22
The routing plan involves visiting 11 customers distributed across five trips. As an
example, the sequence of the trip r1 is <0,1,2,12>. The TTD is the total travel time for all
trips, totalling 104. Based on the routing plan, we derive a set of loading operations with
distinct attributes, illustrated in Table 4.
Figure 2 illustrates a Gantt chart displaying the loading scheme and trip scheme. On
the first workday, the loading operation J2 is processed at facility M1, while J4 and J3 are
sequentially handled at facility M2. On the second workday, J5 is processed at M1, and
J1 is processed at M2. Examining Table 4, we observe that the processing time window of
J4 is 0, 9, indicating that it must be completed between 0 and 9 to serve customers 8 and 9
within their requested time windows. In the current loading scheme, the loading operation
J4 is completed at time 4, aligning with the required processing time window and enabling
the subsequent trip to be feasibly executed. In the trip scheme, three vehicles are assigned
to five trips: vehicle k1 executes trips r2 and r1 sequentially, vehicle k3 executes trips r4
and r5 sequentially, and vehicle k2 exclusively handles trip r3 . The routing plan depicted
in Figure 1 and the loading and trip schemes showcased in Figure 2 comprises a solution
featuring a TTD of 104 and an NV of 3.
4. Solution Approach
The MTVRPTWRS problem is NP-hard and the issue studied in this paper arises from
real-world scenarios, often characterized by large-scale instances that require obtaining feasible
solutions within a limited solving time. When using exact methods to solve the mathematical
formulation presented in Section 3, only very small problem instances can be tackled. Addi-
tionally, these exact methods typically rely on state-of-the-art commercial MIP solvers, which
may not be suitable for practitioners. Instead, heuristic algorithms and simulation methods
have become the primary approach for solving vehicle routing problems in practical scenar-
ios [20–22]. Therefore, our solution approach is based on a three-stage heuristic framework,
allowing us to efficiently handle real-world-sized instances and achieve high-quality solutions
in a reasonable amount of time without the need for an additional solver.
Our solution approach comprises three phases. In the first phase, we utilize a se-
quential strategy to address the routing design and loading scheduling subproblems and
construct the initial routing plan and loading scheme. In the second phase, we employ
the Adaptive Large Neighborhood Search (ALNS) algorithm to minimize the TTD and
acquire an optimized routing plan alongside a feasible loading scheme. To enhance the
exploration capabilities of ALNS, we integrate a strategy enabling it to search in infeasible
regions, complemented by an augmented cost function with penalty terms. Notably, the
trip scheduling subproblem is not considered during the first and second phases, and trips
are individually assigned to vehicles by default.
The feasible routing plan and loading scheme obtained in the second phase become
the input for the third phase. In this final phase, we adopt a post-optimization procedure
based on ejection chains to construct a trip scheme and further optimize the loading scheme
Our solution approach comprises three phases. In the first phase, we utilize a sequen-
tial strategy to address the routing design and loading scheduling subproblems and construct
the initial routing plan and loading scheme. In the second phase, we employ the Adaptive
Large Neighborhood Search (ALNS) algorithm to minimize the TTD and acquire an opti-
mized routing plan alongside a feasible loading scheme. To enhance the exploration ca-
pabilities of ALNS, we integrate a strategy enabling it to search in infeasible regions, com-
Systems 2023, 11, 412 plemented by an augmented cost function with penalty terms. Notably, the trip scheduling 12 of 22
subproblem is not considered during the first and second phases, and trips are individu-
ally assigned to vehicles by default.
The feasible routing plan and loading scheme obtained in the second phase become
the input
correspondingly tofor the third the
improve phase. In this final
objective NV.phase,
To we adopt a post-optimization
streamline procedure
the third phase, we incorporate
based on ejection chains to construct a trip scheme and further optimize the loading
the processing time window to swiftly evaluate the feasibility of each trip
scheme correspondingly to improve the objective NV. To streamline the third phase, we
within different
loading andincorporate
trip schemes.
the processing time window to swiftly evaluate the feasibility of each trip
within different loading
For a comprehensive and tripof
overview schemes.
our proposed three-phase heuristic approach, please
For a comprehensive overview of our proposed three-phase heuristic approach,
refer to Figure 3.
please refer to Figure 3.
Step 2. Generate the set of mapped loading operations J from the set of trips R obtained in
Step 1. Compute the processing time Prm and processing time window [ ar , dr ] of
each mapped loading operation based on the attributes of the trip r.
Step 3. Sort the loading operations in non-decreasing order according to their due dates and
obtain a list of unscheduled loading operations, denoted as CJ.
Step 4. Assign the loading operations in CJ to the different facilities with minimum slack
j
time in turn. The slack time SLmh of the loading operation Jr on the facility m and
j
the hth workday is defined as SLmh = br + Prm − dr . A negative value of slack time
indicates that the loading operation is completed later than the due date. If the slack
time on all the facilities is negative, assign the loading operation to the facility and
order with the largest value of slack time; otherwise, assign it to the facility with the
smallest positive slack time.
Systems 2023, 11, 412 13 of 22
In the above equation, the first term represents the primary objective TTD, the second
term is the penalty cost function for violating the customer time window constraints, and
the third is the penalty cost function for violating the available duration of facilities. Lhm
denotes the total working duration of facility m on the hth workday, which is the sum of
the processing times of all loading operations assigned to facility m on that workday. The
parameters α and β correspond to different penalization factors.
An adaptive learning mechanism is employed to effectively guide the search process
and generate a high-quality feasible solution by the end of the second phase. The penal-
ization parameters α and β are initially set to α0 and β 0 , respectively, and their values
are constrained within the intervals ( amin , αmax ) and ( β min , β max ). The search process is
divided into segments consisting of 100 iterations each, with the penalization coefficients
remaining constant throughout each segment. At the end of every segment, the value of α
is updated based on the following criteria: if the number of infeasible solutions obtained
within the segment exceeds the threshold ρ1 , α is multiplied by 1 + λ; if the number falls
below the threshold ρ2 , α is divided by 1 + λ. The adjustment of parameter β follows
the same rules as α. For the setting of the above parameter values, please refer to the
experimental part of Section 5.
the trip is within the limit, all customers along the trip are removed. This process is
repeated until the desired number of customers nq , is reached.
3. Related customer removal: This operator attempts to improve the solution by remov-
ing a set of customers with high relatedness and rearranging their insertion positions.
The relatedness RL(i, j) between the customer i and j consists of distance and time
terms, defined as follows RL(i, j) = cij + wi − w j , where wi and w j denote the start
time of service at customer i and j. The process begins by selecting a customer at
random. Subsequently, a customer is randomly chosen from the request bank for
comparison. The remaining unremoved customers are then sorted in non-decreasing
order based on the relatedness with the compared customer, giving higher preference
to the candidate with lower relatedness. The process is repeated until the desired
number of nodes nq have been removed.
4. Worst removal: This operator aims to enhance the solution by identifying a
new insertion position for the customer with the high customer insertion cost.
The customer insertion cost of customer i, denoted as cost(i, S)− , is calculated as
cost(i, S)− = f (S) − f −i (S), where f (S) and f −i (S) denote the augmented cost func-
tion before and after removing customer i from the current solution S, respectively.
The remaining unremoved customer are then sorted in non-increasing order according
to customer insertion cost, giving higher priority to the candidate customer with the
higher customer insertion cost. The process is repeated until the desired number of
nodes nq have been removed.
5. Facility tardiness removal: This operator aims to decrease the overtime value of
a facility by removing customers in the trip associated with the loading operation
assigned to the facility. If the total processing time of assigned loading operations on
a facility surpasses the available duration of the facility for a given workday, it will
be considered overtime. The process is repeated until either the number of removed
customers reaches nq or all facilities across all workdays are within the designated
available period. Generally, there is a higher possibility of removal for customers with
greater demand.
For the repair operator, we propose the following two operators.
1. Greedy insertion: this operator always selects customer i from requests bank B with
the smallest insertion cost Cost(i, s)+ , and inserts it into the corresponding trip and
position. The process is repeated until all customers stored in requests bank B are
successfully inserted into the trip. The value of the change in the augmented cost
function f (S), represented by ∆ f i,r , indicates the impact of inserting customer i into
trip r. If inserting customer i into trip r would violate the vehicle capacity constraint,
then ∆ f i,r is set to +∞. The insertion cost Cost(i, s)+ of customer i is defined as the
minimum ∆ f i,r among all possible trips, denoted as Cost(i, s)+ = min∆ f i,r .
r∈R
2. Two-regret insertion: The operator prioritizes customer i with the highest regret value
RVi . The process is repeated until all customers stored are reinserted into the solution.
Firstly, compute the value ∆ f i,r for inserting customer i in all candidate trips and
sort them in non-decreasing order. If the index of ∆ f i,r among all candidate trips is
j, denote it as ∆ f i,r j . Then the regret value RVi represents the difference between the
insertion cost of the best trip ∆ f i,r1 , and the second-best route ∆ f i,r2 , calculated as
RVi = ∆ f i,r2 − ∆ f i,r1 .
the MTVRPTWRS problem. This approach dynamically updates the weights of opera-
tors based on their historical performance, increasing the possibility of selecting more
effective operators.
Considering 100 iterations as a segment, the weight of each operator remains constant
within the segment and is uniformly updated at the segment’s end. Let w j,p represent
the weight of operator j in segment p. The weight of operator j in segment p + 1 is then
calculated as follows:
ϕ j,p
w j,p+1 = (1 − γ)w j,p + γ , (32)
max 1, σj,p
where ϕ j,p denotes the score accumulated by operator j in segment p, σj,p represents the
cumulative times that operator j is selected in segment p, and γ ∈ (0, 1) controls the speed
of weight adjustment. Following the approach presented by Ropke and Pisinger [24], we
set γ = 0.1.
Within the segment p, if the operator i is selected in a given iteration, the cumulative
times θ j,p of its selection is incremented by one, and the cumulative score ϕ j,p is updated
based on the following three cases:
ϕ j,p + ξ 1 , i f f (Snew ) < f (Sbest ),
ϕ j,p = ϕ + ξ2, i f f (Sbest ) < f (Snew ) < f (S), (33)
j,p
ϕ j,p + ξ 3 , i f f (S) < f (Snew ) but be accepted,
where Sbest indicates the globally best solution found so far, S represents the current solution
being compared, Snew denotes the newly recreated solution. In the first case, when a new
globally best solution is generated, then the scores of the removal and repair operator
involved are increased by ξ 1 . In the second case, when a new solution better than the
current solution is found, then the scores are increased by ξ 2 . In the third case, a new
solution inferior to the current solution is constructed but is accepted with the probability
e−( f (Snew )− f (S))/TP , then the scores are increased by ξ 3 . The third solution acceptance
criterion is derived from the simulated annealing algorithm, known as the Metropolis
criterion. This criterion prevents the algorithm from getting stuck in local optima and
enhances its exportation. The temperature parameter, TP, is initially set to TPinitial and
gradually decreases as TP = TP ∗ cooling, where 0 < cooling < 1. We set the TPinitial to
a value that ensures a 50% probability of accepting a solution 5% worse than the current
solution, as described in Ropke and Pisinger [24].
The pseudocode of the ALNS algorithm for the second phase is described as shown in
Algorithm 1.
Algorithm 1 ALNS algorithm
1: Sbest = S0 ; S = S0 ; TP = TPinitial //S0 denote the initial solution
2: while termination conditions are not met do:
3: select removal and repair operators adaptively
4: Snew = Removal AndRepair (S)
5: if f (Snew ) < f (Sbest ) then:
6: Sbest = Snew ; S = Snew ;
7: end if
8: if f (Snew ) < f (S) then:
9: S = Snew
10: else if f (Snew ) > f (S) then:
11: accepted S = Snew with probability e−( f (Snew )− f (S))/TP
12: end if
13: update the scores of operators and penalty coefficient, TP = TP ∗ cooling
14: end while
15: return Sbest
Systems 2023, 11, 412 16 of 22
Step 7. Compute the conflict time of trip r at different insertion positions and obtain the list
of candidate insertion position KL. The insertion position of a trip consists of the
inserted vehicle k and the inserted position j, and the conflict time is an indicator to
evaluate different insertion positions. The smaller the conflict time corresponds to a
more favourable position. The order of the executed trips of vehicle k is denoted by
Bk . Insert the trip r into the jth position of the sequence Bk . If the vehicle use period
of trip r does not overlap with the preceding line in the use period, then the
overlapping period with the succeeding trip is recorded as the conflict time. Each
insertion position is stored in the form of [k, j, con f lict time] in KL.
Step 8. If the list KL is empty, the insertion fails and skip to Step 11; otherwise, select the
insertion position with the shortest conflict time.
Step 9. If the conflict time of the insert position is zero, insert the trip into that position
directly, skip to Step 3, and initialize the number of ejections to 0; otherwise, eject the
succeeding trip, which conflicts with trip r after inserted.
Step 10. If the number of ejections reaches the maximum number, skip to Step 11; otherwise,
the current number of ejections increases by one, and the ejected trip is used as the
trip r to be inserted, and skip to Step 4.
Step 11. Restore the solution to the solution when vehicle k is not removed, remove vehicle k
from the sequence CK, and skip to Step 2.
Step 12. Output the final solution.
5. Computational Experiments
The addressed MTVRPTWRS problem originates from a tobacco manufacturing com-
pany in China, and the proposed solution is applicable to this industrial enterprise. How-
ever, due to confidentiality restrictions, we could not use the actual Tobacco Manufacturing
Instances. Thus, to assess and analyze the performance of the proposed three-phase al-
gorithm, we design test instances for the MTVRPTWRS based on Solomon’s VRPTW
benchmark and employ IRACE to tune the parameters of the algorithm. We conduct three
distinct sets of experiments, outlined as follows: (1) The first set of experiments aims to
analyze the contributions of different components to the objective. (2) The second set of
experiments compares the detailed performance across various test instances. (3) The third
set of experiments evaluates the benefits of the weekly scheduling plan compared to those
of the daily scheduling plan, particularly in long-distance logistics scenarios.
The proposed algorithm was implemented in python and executed on a powerful
desktop PC equipped with a 2.3 gigahertz Pentium processor and 512 gigabytes of RAM.
The test instances were adapted from the classical Solomon instances, which are detailed in
Section 5.1. We run the algorithm ten times for each instance to ensure reliable results. In
the case of the three-phase heuristic, the second phase concludes either after a maximum
runtime of 3600 s or if no improved solutions are obtained for 200 consecutive iterations.
After conducting preliminary testing, we established specific values for the penalization
coefficient bounds, thresholds, and renewal factor in our experiments. The lower bound
for the penalization coefficient was set at αmin = β min = 1, and the upper bound was set
at αmax = β max = 20. Furthermore, we assigned ρ1 = 30 and ρ2 = 60. as the respective
thresholds. Finally, we adopted a renewal factor of λ = 2.
The original VRPTW test instances already include customer and vehicle information,
so only parameters related to the planning horizon and facilities need to be added. In
all three types of instances, the following settings are applied uniformly: the planning
horizon consists of 5 workdays, i.e., | H | = 5, there are 2 machines, i.e., | M| = 2, and the
values (δ1 , δ2 ) are set to (8, 10). However, the working duration TH and available periods
of facilities TM differ across instances due to variations in the time windows of the depot in
different types. Detailed information can be found in Table 7.
C2 R2 RC2
TH 700 200 200
TM 560 160 160
As observed from Table 9, the ALNS in the second phase effectively reduces TTD,
while the post-optimization procedure effectively reduces the number of vehicles. However,
the performance varies significantly across different instances. Upon optimization by ALNS,
the TTD objective exhibits a substantial improvement, averaging 38.65%. Notably, the
extent of improvement varies widely among different instances, ranging from a minimum
improvement of 28.01% for the cluster-distributed C2 instances to over 43% for the R2
and RC2 instances. Subsequently, the post-optimization procedure further reduces the
number of vehicles used, achieving an average reduction of 14.68%. Specifically, in the C2
instances, the average reduction in the number of vehicles amounts to 28.37%. However,
the reduction in the number of vehicles is not significant in the R2 and RC2 instances.
Table 10. The indicators about vehicles and trips on different instances.
Vehicle Trip
Number of Trips Vehicle Utilization TTP PTP VPP
C2 1.42 62.36% 41.91% 0.46% 44.79%
R2 1.06 54.15% 46.26% 2.06% 51.23%
RC2 1.04 51.77% 44.18% 1.99% 49.76%
Average 1.17 56.20% 44.35% 1.53% 48.81%
As observed in Table 10, the C2 instance exhibits an average of 1.42 trips executed
by vehicles, with a vehicle utilization rate of 62.35%, notably higher than the R2 and RC2
instances. On average, each trip in the R2 and RC2 instances occupies 51.23% and 49.76%
of the planning horizon, respectively. Furthermore, the time window constraint requires
vehicles to initiate each trip within a specific time interval, which poses challenges in
assigning multiple trips to the same vehicle when individual trips are time-consuming.
However, in the C2 instance, the proportion of time intervals within the planning horizon
is slightly lower than in the R2 and RC2 instances, facilitating the allocation of multiple
trips to the same vehicle and improving vehicle utilization.
Lower vehicle utilization is highly undesirable. For vehicles from a third-party lo-
gistics company, lower utilization necessitates additional third-party vehicles, leading to
Systems 2023, 11, 412 20 of 22
5.5. Comparison between the Weekly Scheduling Plan and the Daily Scheduling Plan
The weekly scheduling plan employed in this study differs from the traditional daily
scheduling plan primarily in terms of the planning horizon. The former focuses on planning
routes and scheduling loading operations for customers over a week, while the latter
encompasses route planning for all customers within a single workday. Generally, the
weekly scheduling plan offers greater flexibility and enables a more cost-effective routing
plan and loading scheme. This section compares these two scheduling plans to validate
this proposition.
Under the daily scheduling plan, the routing plan and loading scheme must be
designed based on the specific customer demand for each workday. The total distance
travelled under this plan is the cumulative distance covered by vehicles across different
working days, and the number of vehicles used is determined by merging trips that do not
conflict with the planning horizon.
As evident from Table 11, adopting the weekly scheduling plan instead of the daily
scheduling plan yields an average reduction of 34.22% in the total distance travelled and
a decrease of 33.52% in the number of vehicles used. The weekly scheduling plan offers
the advantage of enabling vehicles to visit geographically close customers on different
workdays during the same trip. This flexibility contributes to the construction of a more
efficient routing plan. Conversely, such a capability is unattainable within the constraints
of the daily scheduling plan.
Table 11. The Comparison between the weekly scheduling plan and the daily scheduling plan.
6. Conclusions
This paper investigates a new variant of VRP in industrial logistics that considers time
windows, resource synchronization on heterogeneous facilities, multi-trip, and hierarchical
objectives consisting of minimizing TTD and minimizing the NV. To address this prob-
lem, we decompose it into three subproblems: routing design, loading scheduling, and trip
scheduling. We analyze the interrelation between these subproblems and adopt hierarchical
objectives, followed by proposing a MILP model and a three-phase heuristic to solve the
problem. Experimental results demonstrate the ALNS and post-optimization effectiveness
within the three-phase heuristic algorithm, which can effectively optimize TTD and NV
objectives. Furthermore, our findings reveal that the weekly scheduling plan surpasses the
traditional daily scheduling plan in long-distance logistics scenarios. It achieves significant
reductions in both TTD and NV objectives, with an average decrease of 34.22% in TTD
and 33.52% in NV. These results highlight the importance of incorporating the weekly
scheduling plan to improve efficiency in industrial logistics.
In industrial logistics scenarios, the scarcity of loading and unloading resources pro-
foundly impacts the subsequent routing process, underscoring the need for our research to
provide feasible and high-quality scheduling plans for enterprises operating under tight
Systems 2023, 11, 412 21 of 22
Author Contributions: Conceptualization, R.X.; supervision, R.X.; methodology, R.X. and J.W.;
validation: J.W.; software: J.W.; writing—original draft preparation, J.W.; formal analysis, S.L.;
resources, S.L.; data curation, S.L.; writing—review and editing, R.X., S.L. and J.W. All authors have
read and agreed to the published version of the manuscript.
Funding: This research was funded by the Guangdong Provincial Key Laboratory (Grant
No.2020B121201001), the National Natural Science Foundation of China (Grant No.62106098/62272210),
and the Stable Support Plan Program of Shenzhen Natural Science Fund (Grant No. 20200925154942002).
Data Availability Statement: The data presented in this study are available in [article].
Acknowledgments: The authors would like to acknowledge the support and inspiration provided
by the Business Data Laboratory at the School of Business, Hohai University. The authors are grateful
to the anonymous reviewers for greatly improving the quality of this paper.
Conflicts of Interest: The authors declare no conflict of interest.
Appendix A
Inspired by the work of Battarra, Monaci and Vigo [9] in solving MTVRP with time
windows, we define the processing time window. The processing time window of the
loading operation Jr consists of a earliest desired completion time ar and a due date dr ,
which can be obtained by the following derivation rules of the processing time window.
Derivation rules of processing time window
D E
Step 1. It is assumed that the visiting sequence of trip r is σr = i0 , i1 , . . . , i|Ur | , in+1 . Then the earliest
service start time ar,i|U | and the latest service start time dr,i|U | at customer node i|Ur | could be
r r
obtained from Equations (A1) and (A2), respectively.
dk,i j = min li j , dk,i( j+1) − ti j ,i( j+1) − si j . (A4)
Step 4. If j > 0, let j = j − 1 and skip to Step3; otherwise, output the results as follows:
ar = ar,i0 ,dr = dr,i0 .
References
1. Drexl, M. Synchronization in Vehicle Routing—A Survey of VRPs with Multiple Synchronization Constraints. Transp. Sci. 2012,
46, 297–316. [CrossRef]
2. Fleischmann, B. The Vehicle Routing Problem with Multiple Use of Vehicles; Fachbereich Wirtschaftswissenschaften, Universität
Hamburg: Hamburg, Germany, 1990.
3. Ebben, M.J.R.; van der Heijden, M.C.; van Harten, A. Dynamic transport scheduling under multiple resource constraints. Eur.
J. Oper. Res. 2005, 167, 320–335. [CrossRef]
Systems 2023, 11, 412 22 of 22
4. Grangier, P.; Gendreau, M.; Lehuédé, F.; Rousseau, L.-M. The vehicle routing problem with cross-docking and resource constraints.
J. Heuristics 2019, 27, 31–61. [CrossRef]
5. Prins, C. A simple and effective evolutionary algorithm for the vehicle routing problem. Comput. Oper. Res. 2004, 31, 1985–2002.
[CrossRef]
6. Taillard, É.D.; Laporte, G.; Gendreau, M. Vehicle Routeing with Multiple Use of Vehicles. J. Oper. Res. Soc. 1996, 47, 1065–1070.
[CrossRef]
7. Mingozzi, A.; Roberti, R.; Toth, P. An Exact Algorithm for the Multitrip Vehicle Routing Problem. INFORMS J. Comput. 2013,
25, 193–207. [CrossRef]
8. Cattaruzza, D.; Absi, N.; Feillet, D.; Vidal, T. A memetic algorithm for the Multi Trip Vehicle Routing Problem. Eur. J. Oper. Res.
2014, 236, 833–848. [CrossRef]
9. Battarra, M.; Monaci, M.; Vigo, D. An adaptive guidance approach for the heuristic solution of a minimum multiple trip vehicle
routing problem. Comput. Oper. Res. 2009, 36, 3041–3050. [CrossRef]
10. Pan, B.; Zhang, Z.; Lim, A. Multi-trip time-dependent vehicle routing problem with time windows. Eur. J. Oper. Res. 2021,
291, 218–231. [CrossRef]
11. Asbach, L.; Dorndorf, U.; Pesch, E. Analysis, modeling and solution of the concrete delivery problem. Eur. J. Oper. Res. 2009,
193, 820–835. [CrossRef]
12. Grimault, A.; Bostel, N.; Lehuédé, F. An adaptive large neighborhood search for the full truckload pickup and delivery problem
with resource synchronization. Comput. Oper. Res. 2017, 88, 1–14. [CrossRef]
13. Schmid, V.; Doerner, K.F.; Hartl, R.F.; Salazar-González, J.-J. Hybridization of very large neighborhood search for ready-mixed
concrete delivery problems. Comput. Oper. Res. 2010, 37, 559–574. [CrossRef]
14. Schmid, V.; Doerner, K.F.; Hartl, R.F.; Savelsbergh, M.W.P.; Stoecher, W. A Hybrid Solution Approach for Ready-Mixed Concrete
Delivery. Transp. Sci. 2009, 43, 70–85. [CrossRef]
15. Grimault, A.; Lehuédé, F.; Bostel, N. A two-phase heuristic for full truckload routing and scheduling with split delivery
and resource synchronization in public works. In Proceedings of the 2014 International Conference on Logistics Operations
Management, Rabat, Morocco, 5–7 June 2014; pp. 57–61.
16. El Hachemi, N.; El Hallaoui, I.; Gendreau, M.; Rousseau, L.-M. Flow-based integer linear programs to solve the weekly log-truck
scheduling problem. Ann. Oper. Res. 2015, 232, 87–97. [CrossRef]
17. El Hachemi, N.; Gendreau, M.; Rousseau, L.-M. A heuristic to solve the synchronized log-truck scheduling problem. Comput.
Oper. Res. 2013, 40, 666–673. [CrossRef]
18. Huang, N.; Li, J.; Zhu, W.; Qin, H. The multi-trip vehicle routing problem with time windows and unloading queue at depot.
Transp. Res. Part E Logist. Transp. Rev. 2021, 152, 102370. [CrossRef]
19. Froger, A.; Jabali, O.; Mendoza, J.E.; Laporte, G. The electric vehicle routing problem with capacitated charging stations. Transp.
Sci. 2022, 56, 460–482. [CrossRef]
20. He, P.; Li, J. Vehicle routing problem with partly simultaneous pickup and delivery for the cluster of small and medium enterprises.
Arch. Transp. 2018, 45, 35–42. [CrossRef]
21. Kłodawski, M.; Jacyna, M.; Vasek, R.; Klimek, P.; Jachimowski, R.; Szczepański, E.; Lewczuk, K. Route Planning with Dynamic
Information from the EPLOS System. Teh. Glas. 2020, 14, 332–337. [CrossRef]
22. Peng, Y.; Mo, Z.; Liu, S. Passenger’s routes planning in stochastic common-lines’ multi-modal transportation network through
integrating Genetic Algorithm and Monte Carlo simulation. Arch. Transp. 2021, 59, 73–92. [CrossRef]
23. Dogramaci, A.; Surkis, J. Evaluation of a Heuristic for Scheduling Independent Jobs on Parallel Identical Processors. Manag. Sci.
1979, 25, 1208–1216. [CrossRef]
24. Ropke, S.; Pisinger, D. An Adaptive Large Neighborhood Search Heuristic for the Pickup and Delivery Problem with Time
Windows. Transp. Sci. 2006, 40, 455–472. [CrossRef]
25. Glover, F. New ejection chain and alternating path methods for traveling salesman problems. In Computer Science and Operations
Research; Balci, O., Sharda, R., Zenios, S.A., Eds.; Pergamon: Amsterdam, The Netherlands, 1992; pp. 491–509.
26. Lim, A.; Zhang, X. A Two-Stage Heuristic with Ejection Pools and Generalized Ejection Chains for the Vehicle Routing Problem
with Time Windows. INFORMS J. Comput. 2007, 19, 443–457. [CrossRef]
27. Nagata, Y.; Bräysy, O. A powerful route minimization heuristic for the vehicle routing problem with time windows. Oper. Res.
Lett. 2009, 37, 333–338. [CrossRef]
28. López-Ibáñez, M.; Dubois-Lacoste, J.; Pérez Cáceres, L.; Birattari, M.; Stützle, T. The irace package: Iterated racing for automatic
algorithm configuration. Oper. Res. Perspect. 2016, 3, 43–58. [CrossRef]
29. Demir, E.; Bektaş, T.; Laporte, G. An adaptive large neighborhood search heuristic for the Pollution-Routing Problem. Eur. J. Oper.
Res. 2012, 223, 346–359. [CrossRef]
30. Masson, R.; Lehuédé, F.; Péton, O. The Dial-A-Ride Problem with Transfers. Comput. Oper. Res. 2014, 41, 12–23. [CrossRef]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual
author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to
people or property resulting from any ideas, methods, instructions or products referred to in the content.