Next Article in Journal
A Review of Offshore Renewable Energy in South America: Current Status and Future Perspectives
Next Article in Special Issue
A Model to Manage the Lane-Changing Conflict for Automated Vehicles Based on Game Theory
Previous Article in Journal
Assessing Shock Propagation and Cascading Uncertainties Using the Input–Output Framework: Analysis of an Oil Refinery Accident in Singapore
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Adaptive Tabu Search Algorithm for Solving the Two-Dimensional Loading Constrained Vehicle Routing Problem with Stochastic Customers

1
School of Traffic & Transportation Engineering, Central South University, Changsha 410075, China
2
School of Engineering, Deakin University, Waurn Ponds, VIC 3216, Australia
*
Author to whom correspondence should be addressed.
Sustainability 2023, 15(2), 1741; https://doi.org/10.3390/su15021741
Submission received: 26 November 2022 / Revised: 13 January 2023 / Accepted: 13 January 2023 / Published: 16 January 2023
(This article belongs to the Special Issue Maritime and Inland Waterways Transportation)

Abstract

:
In practical logistic distributions, uncertainties may exist in each distribution process, and sometimes suppliers have to take undesirable measures to deal with the subsequent schedule variances. In light of the uncertainty of customers in logistics distribution and the widely applied two-dimensional loading patterns in transportation, we propose and formulate a two-dimensional loading-constrained vehicle routing problem with stochastic customers (2L-VRPSC), where each customer has a known probability of presence and customers’ demands are a set of non-stackable items. A stochastic modeling platform of 2L-VRPSC is established based on a Monte Carlo simulation and scenario analysis to minimize the expected total transportation cost. To achieve this, an enhanced adaptive tabu search (EATS) algorithm incorporating the multi-order bottom-fill-skyline (MOBFS) packing heuristic is proposed, where the EATS algorithm searches for the optimal routing combination and the MOBFS checks the feasibility of each route and guides the EATS to search for feasible solutions. The widely used two-dimensional loading-constrained vehicle routing problem (2L-VRP) benchmarks under different loading configurations considering items’ sequential and rotation constraints are applied for experiments, which demonstrates the comparable efficiency of the proposed EATS-MOBFS for solving 2L-VRP. Furthermore, the results and analysis of experiments based on the new 2L-VRPSC instances verify the versatility of the proposed solving approach, which is capable of providing more practical solutions to some real-life scenarios with customers’ uncertain information.

1. Introduction

Vehicle routing problem (VRP) and its extensions are classical NP-hard combinatorial optimization problems, which are deemed key components of logistics management and distribution and have been widely studied in operational research [1,2]. In real-world scenarios, such as transporting delicate furniture and household appliances, these rectangular-shaped products cannot be stacked on each other because of the fragility and the height of the freights. These products are normally regarded as rectangular shapes with known length and width, and they cannot be stacked up or overlap in the vehicle’s compartment space, which must be reasonably located to ensure a high utilization rate of the carriage space. As such, the VRP needs to simultaneously concern routing and packing problems, engendering the two-dimensional loading-constrained vehicle routing problem (2L-VRP). The aim of solving the problem is to design the optimal routing combination with minimum cost for given vehicles while satisfying the loading constraints, where customers’ demands are sets of rectangular weighed items and vehicles are characterized by a two-dimensional loading space with a specified loading capacity [3].
In recent years, 2L-VRP has received increasing attention for operation research due to its practical value and high complexity. 2L-VRP was first presented in [3], where an exact method was proposed for solving small-scale 2L-VRP instances. Thereafter, a large number of research attempts have been devoted to designing efficient two-dimensional packing heuristics and routing optimization methods in order to improve the solving efficiency for the large-scale problem. In [4], the authors first proposed a heuristic approach that combined Tabu search with a Touching-Perimeter-rule-based packing algorithm, which solved large-scale instances with up to 255 customers. Other heuristic methods, such as genetic algorithm [5,6], extended guided Tabu search [7], promise routing memory packing [8] and variable neighborhood search algorithm [9], have been presented to efficiently solve 2L-VRP. In these pieces of work, only the unrestricted and sequential loading configurations of 2L-VRP were studied. However, allowing items to rotate during the packing process has many practical applications. Lately, the authors in [10] proposed a biased-randomized algorithm to solve the unrestricted 2L-VRP with and without item rotations, while the two-dimensional sequential loading configuration was not studied. In [11], the authors studied four classes of 2L-VRP, including item rotation and sequential loading, and a saving-based ant colony optimization (ACO) algorithm was designed to solve the problem. This is the first published research that deals with the four classes of 2L-VRP, namely, unrestricted oriented loading (2|UO|L), unrestricted rotation-allowed loading (2|UR|L), sequential oriented loading (2|SO|L) and sequential rotation-allowed loading (2|SR|L). Recently, a simulated annealing method [12] was proposed for solving four classes of 2L-VRP, which improved loads of best-known solutions. Thus far, a large number of extended 2L-VRPs have received research attention, e.g., 2L-VRP with backhauls [13], 2L-VRP with heterogeneous fleet [14,15], 2L-VRP with split delivery [16] and three-dimensional constrained vehicle routing problem [17,18,19]. Nevertheless, the above research generally considers that the geographic location, demand, central depot, vehicle driving status and other information of customers are known in advance and do not change. This, however, may not be consistent with some real-world scenarios involved with uncertain information. In this context, deterministic models for 2L-VRP cannot capture these uncertainties observed in practice.
As stated in [20], the uncertain vehicle routing problem contains two kinds of important uncertain information: information quality and information evolution. Information evolution refers to the fact that some information may not be known in advance and will be revealed over time during the transportation process, which is known as the dynamic VRP. Information quality refers to the uncertainty of some information; for example, the distribution of some information, which is usually modeled as a probability function. This is generally known as the stochastic VRP (SVRP). Taking the uncertainty and the prior knowledge of the uncertain information into account is of significant importance for optimizing the routing schedule that avoids infeasibility and saves transportation costs.
At present, one of the most common solution frameworks for stochastic routing problems is prior optimization. It models the problem in two stages: determining a set of prior routes with uncertain information and making decisions as deterministic information is obtained based on pre-determined policies. Generally, stochastic programming with recourse (SPR) and chance-constrained programming (CCP) are used to determine the “prior solution” [21]. In the CCP, the problem is solved so that the probability of route failure is below a certain level, and the cost of failures is ignored. In the SPR, it determines the first-stage solution that minimizes the expected cost of the second-stage solution. Although the SPR is more difficult to solve than the CCP, the SPR objectives are more meaningful [21]. Therefore, most of the research focused on studies using the SPR approach to address the SVRP. For example, Refs. [22,23,24] studied the VRP with stochastic customers, stochastic travel time and stochastic demand, respectively, which were modeled as stochastic programming and the corresponding solution algorithms were proposed. However, the above studies did not consider the loading problem, which limited the applicability of these studies to certain scenarios, where each customer consists of a certain number of weighed items with a given width and length.
In [25], the authors investigated a SVRP with uncertain demands, where a discrete probability distribution was adopted to characterize the height and width. In this work, the authors presented a two-stage stochastic program to describe this problem and proposed an inter L-shaped method to solve it. Guimarans et al. in [26] studied a 2L-VRP considering stochastic travel time, which was modeled as a two-stage stochastic program. However, only the 2|UO|L and 2|UR|L loading configurations were studied in this work, while the two-dimensional sequential loading configuration was not considered. It is also commonly encountered, for example, in less-than-truckload operations, where a stable set of customers is served on a regular basis, but not every customer requires a visit every day; namely, the presence of customers is probabilistic.
With the aforementioned problems and main purpose of this study, the main contribution of this study is fourfold: (i) By addressing the characteristics of customer-presence uncertainty and two-dimensional patterns in logistics distribution, this study investigates novel extensions of the vehicle routing problem known as the 2L-VRPSC. (ii) A stochastic programming model of 2L-VRPSC is first proposed based on Monte Carlo simulation and scenario analysis. (iii) To solve this problem, an enhanced adaptive tabu search algorithm incorporating a multi-order bottom-fill-skyline packing heuristic, i.e., EATS-MOBFS, is proposed, where multiple neighborhood operators are designed. Monte Carlo simulation and scenario analysis are integrated into the search process to assess the performance of the obtained solutions and provide guidance to the algorithm during the solution-searching process. (iv) Benchmark instances of 2L-VRPSC are generated by extending the classical 2L-VRP benchmark instances. The experimental results verify the applicability of the proposed model and solution approach for dealing with customers’ uncertainties in 2L-VRPSC, which can provide more practical and economic solutions to scenarios with customer presence uncertainty.
The remainder of this paper is organized as follows. Section 2 describes 2L-VRPSC and presents its mathematical formulation. Section 3 presents the EATS-MOBFS method for solving the 2L-VRPSC. Extensive computational results are presented in Section 4, followed by the conclusions in Section 5.

2. Mathematical Formulation of the 2L-VRPSC

2.1. Problem Description

In the 2L-VRPSC, there is a central depot, several vehicles and customers, where the presence or absence of a customer is probabilistic. To save time and resources consumed for re-routing, distribution companies usually adopt a pre-optimization strategy; namely, the distribution companies follow the pre-designed routes and directly skip the customer that does not require service and move on to the next customer. Therefore, the purpose of the 2L-VRPSC is to reasonably arrange the routes and customer service order to meet the loading constraints for the purpose of minimizing the total expected cost of the final scheduling plan.
Therein, the assumptions of the 2L-VRPSC are listed as follows: (i) the demand of every customer is known beforehand, but the presence or absence of a customer is uncertain; (ii) the geographical information of the customers and the depot is known, and all nodes in the distribution network are completely connected; and (iii) the attributes of homogeneous vehicles are known.

2.2. Stochastic Programming Model of the 2L-VRPSC

The Monte Carlo method is adopted in this study to simulate customer uncertainties, and a scenario reduction approach is applied to generate a reasonable number of scenarios with good tractability and fidelity, as well as diverse characteristics. Then a stochastic programming model is developed based on the obtained scenarios.

2.2.1. Customer Uncertainty Modeling Based on Monte Carlo Simulation

Due to the fact that the complexity of simulation grows exponentially with the number of customers, we adopt the Monte Carlo method [27,28] to generate scenarios to simulate the uncertainty of customers according to the discrete probability distribution of all customers. Specifically, for each customer, assuming that the probability that customer i requires service is p i , a random number u i 0 , 1 is generated by using the random sampling method. If u i > p i , customer i requires service; otherwise, the customer does not need service. For each scenario, each customer is sampled to generate the probability that requires service; namely, each scenario s corresponds to a set of random variables u 1 , u 2 , , u i , , u n 1 , u n i V 0 . After a finite number of samples, a large number of scenarios are generated to simulate the uncertainty of customers.
However, for a given solution τ with n customers, the number of the scenario can be up to 2 n , and such large-scale scenarios will lead to a heavy computation burden. To balance the diversity and fidelity, the size of the scenarios is reduced via the scenario-reduction techniques according to the probability and the correlation among scenarios [29,30]. The simultaneous backward reduction technique [31] is adopted to approximate the original system with high confidence and promote the diverse characteristics of the generated scenarios, which is described in Algorithm 1 below. In Algorithm 1, terms s and s are used to denote different scenarios. Specifically, the distances between all the scenarios are calculated (line 1). Here the distance between scenario s and s is defined as D T s , s = i = 1 n ( a i s a i s ) 2 , i V 0 , where a i s is a binary variable that indicates whether customer i is served in scenario s. Afterward, the probability of each pair of the nearest scenarios is calculated, and the pair with the lowest probability is selected (Algorithm 1 line 4). The scenario pair with the lowest probability will be eliminated, and the probability of all other scenarios will be updated (Algorithm 1 line 5). This process is repeated until the desired number of remaining scenarios is obtained.
Algorithm 1: Scenario Reduction.
Sustainability 15 01741 i001

2.2.2. Formulation of the 2L-VRPSC

In this study, the 2L-CRPSC is described as a complete undirected graph G = ( V , E ) . Therein, V = V 0 0 consists of n customers ( V 0 = 1 , 2 , , n ) and a depot (node 0). Each customer i ( i V 0 ) consists of m i rectangular items with a total weight of q i . Each item of customer i is denoted by a pair of indices ( i , b ) , and its width and length are denoted by w i b and l i b ( b = 1 , 2 , , m i ) , respectively. A fleet of K homogeneous vehicles is available, and each vehicle has a maximum capacity Q and a rectangular loading surface with width W and length L. Additional notations are described as follows:
Sets and parameters:
V p , V a :Set of customers that require service and do not require service ( V p V a = V 0 , V p V a = ).
S:Set of preserved scenarios, indexed by s and s ( s , s S ).
R:Set of feasible routes, where R k represents a feasible route visited by vehicle k.
σ i :Parameter that indicates the order that customer i is visited along the route ( i R k ).
d i j :Distance (i.e., travel cost) between node i and node j ( ( i , j ) E ).
Variables:
z i j k :Binary variable, z i j k = 1 if and only if vehicle k travels from node i to node j, 0 otherwise.
x i b , y i b :Integer variables that define the coordinate of the bottom-left corner of item b belonging to customer i in a vehicle.
Ω i b :Integer variable that indicates whether item b of customer i has been rotated.
Let p i be the probability that customer i requires service (assuming independence between customers), then the probability of scenario s S can be expressed as follows:
P ( s ) = i V p p i j V a ( 1 p j ) .
The objective of the 2L-VRPSC problem is to find a prior solution with minimal expected length. Based on the customer uncertainty modeling method described in Section 2.2.1, we simulate solution τ to construct a desired number of scenarios so as to calculate the expected length E ( L τ ) , i.e.,
Minimize E ( L τ ) = s S P ( s ) L τ , V a ( s ) ,
where L τ , V a ( s ) is the length of solution structure corresponding to scenario s, in which the customers V a that do not require service are skipped. Figure 1 illustrates an example of the prior solution and scenario with nine customers. In the example, customers 2 and 7 do not require service, and thus, vehicles skip them and visit other customers in the same order as they appear in the prior solution.
In the proposed approach, the prior solution is built satisfying the following constraints:
j V 0 z 0 j k = i V 0 z i 0 k , k K ,
k K i V z i j k = 1 , j V 0 ,
i V z i u k = j V z u j k , u V 0 , k K ,
k K j V 0 z 0 i k K ,
i : ( i , j ) E q i z i j k Q , k K ,
Constraint (3) ensures that all vehicles departing the depot have to return to the depot. Constraint (4) enforces that each customer is visited exactly once. Constraint (5) is the flow conservation constraint. Constraint (7) ensures that each vehicle is not overloaded. Constraint (6) guarantees that the maximum number of vehicles is not exceeded.
Additionally, the packing feasibility of every route must be guaranteed. In this paper, four different two-dimensional loading configurations with respect to sequential and rotation constraints are considered. The formulation of the loading constraints that adopted from [3], are defined as follows:
0 x i b ( W w i b ) ( 1 Ω i b ) + ( W l i b ) Ω i b , i V 0 , b 1 , , m i ,
0 y i b ( L l i b ) ( 1 Ω i b ) + ( L w i b ) Ω i b , i V 0 , b 1 , , m i ,
x i b + w i b ( 1 Ω i b ) + l i b Ω i b x j b , or x j b + w j b ( 1 Ω j b ) + l j b Ω i b x i b , i , j V 0 , b 1 , , m i , b 1 , , m j ,
y i b + l i b ( 1 Ω i b ) + w i b Ω i b y j b , or y j b + l j b ( 1 Ω j b ) + w j b Ω i b y i b , i , j V 0 , b 1 , , m i , b 1 , , m j ,
x i b + w i b ( 1 Ω i b ) + l i b Ω i b x j b , or y j b + l j b ( 1 Ω j b ) + w j b Ω j b y i b , or x j b + w j b ( 1 Ω j b ) + l j b Ω j b x i b , i , j R k : σ ( i ) < σ ( j ) , b 1 , , m i , b 1 , , m j .
Constraints (8) and (9) enforce that each item must be placed in the loading space. Constraints (10) and (11) enforce that any two items to be transported by the same vehicle do not overlap. The first-in-last-out (FILO) requirements are modeled by constraint set (12).

3. The Proposed EATS-MOBFS Method for the 2L-VRPSC

3.1. Framework of the Solution Mechanism

With the proven superior performance of the tabu search algorithm in a broad range of optimization problems [32,33] and the fact that some packing heuristics have shown high efficiency for solving large-scale two-dimensional packing problems, an EATS-MOBFS is proposed in this study for efficiently solving the 2L-VRPSC, where the EATS searches for the optimal routing combination while the MOBFS checks the feasibility of each route and guides the EATS searches to feasible solutions. To deal with the stochastic nature of the 2L-VRPSC, Monte Carlo simulation and scenario analysis methods are integrated for the solution-searching process of the algorithm to calculate the total expected transportation cost.
The framework of the solution approach is shown in Algorithm 2. Specifically, the solution approach first constructs a feasible initial solution (Algorithm 2 line 1) and iteratively improves the initial solution by performing a non-tabu move or a move that satisfies the aspiration criterion (i.e., better than an incumbent best solution) in each iteration. In each iteration, a neighborhood operator is selected based on the self-adaptive mechanism (Algorithm 2 line 6). Therein, each operator is associated with a weight and is selected periodically and probabilistically according to its performance in the previous iterations ( p u iterations). After p u iterations (i.e., inner-layer iterations), a diversification mechanism based on the remove-reinsert strategy inspired by large neighborhood search [34] is called to avoid the algorithm being trapped at a local optimum (Algorithm 2 line 20). Moreover, Monte Carlo simulation is called to estimate the expected transportation cost in lines 2 and 11, and MOBFS is evoked to examine the loading feasibility of the solution in lines 1 and 9. In the following, the key components of the solution approach will be detailed, including initial solution construction in Section 3.1.1, neighborhood operators in Section 3.1.2, adaptive weight adjustment in Section 3.1.3, diversification mechanism in Section 3.1.4 and the proposed MOBFS in Section 3.2.    
Algorithm 2: The proposed solution approach for the 2L-VRPSC.
Sustainability 15 01741 i002

3.1.1. Initial Solution Construction

In this study, an insertion-based mechanism is utilized to construct the feasible initial solution. Algorithm 3 provides the pseudocode for the initialization process. Specifically, the customers are first sorted in descending order based on the total area of their items, and K empty routes are generated (Algorithm 3 line 1). Afterward, each customer i is sequentially assigned to the route that has the smallest unoccupied loading surface that does not violate the loading constraints (i.e., can accommodate the items of customer i) (Algorithm 3 line 4–5). If a feasible route is found, the customer is inserted into the position of this route with the minimum incremental cost. Otherwise, if customer i cannot be inserted into any of the K routes, the position of customer i and a randomly selected customer will be exchanged, and the former procedure is restarted under the new customer sequence (Algorithm 3 line 7).
Algorithm 3: Initial Solution Generator.
Sustainability 15 01741 i003

3.1.2. Neighborhood Operators

It is widely believed that the performance of the tabu search (TS) algorithm is greatly dependent on the neighborhood operators. To overcome the dependence of the algorithm on a single neighborhood, six neighborhood operators derived from the segment exchange (SE) [9] and move combination (MC) [9] are adopted. It is noteworthy that the loading feasibility of each route must be checked by invoking the proposed MOBFS heuristic in each iteration. During each search for candidate solutions, infeasible operations, which violate the two-dimensional loading constraints or vehicle capacity, are not allowed.
Segment exchange (SE): This operator first selects two segments of customers (i.e., a sequence of customers) from different randomly chosen routes and then exchanges the positions of two segments of customers. Note that if the resulting solution is infeasible, the exchange is canceled. Moreover, considering the weights of items and loading constraints, a longer segment leads to a lower probability with, which this segment can have a successful exchange. To increase the probability of obtaining a feasible solution, the exchange is only executed between segments of the same length. Based on these considerations, the segment length is limited to two and three customers, and the corresponding neighborhood operators are denoted as SE2 and SE3, respectively.
Move combination (MC): This operator randomly selects two types from the six move types presented in Figure 2, which is marked as MC2. For each selected type, it repeatedly tries to execute a random move until the new resulting solution obtained by this move is feasible. The detailed move types are described as follows, which correspond to Figure 2a–f, respectively. More details about the move types can be found in [9,12,35].
Intra-swap [35]: This operator tries to swap the positions of two customers selected from the same route.
Inter-swap [9]: This neighborhood operator swaps the positions of two customers selected from different routes.
Intra-shift [35]: For this operator, one customer is selected and removed from the current route and then inserted into another position of this route.
Inter-shift [35]: For this operator, one customer is selected and removed from the current route and then inserted into another route.
Intra-2opt [9]: For a given route, two non-adjacent segments of customers are deleted, the middle segment of the route is reversed, and then two new segments of customers are generated and added to re-connect the route.
Inter-2opt [9]: Two segments of customers from two different routes are eliminated so that each route is divided into two parts; then, the first part of each route is concatenated with the second part of the other route to generate two new routes. If a route is empty, the other route is split into two new routes.
Specifically, under the 2|UO|L and 2|UR|L settings, switching the service order of customers within the same route will not result in loading-infeasible solutions since the FILO constraints are not considered, and thus intra-route moves do not need to examine the loading feasibility. While the sequential constraints are imposed, the feasibility of the resulting solutions constructed by the intra-route and inter-route moves have to be examined, and only the solution satisfying the loading constraints can be accepted during the process.
In order to balance the computation burden and quality of solutions, the EATS algorithm performs each individual operator one or two times. As a result, six neighborhood operators, SE21 (perform SE2 once), SE22 (perform SE2 twice), SE31, SE32, MC21 and MC22, are derived.

3.1.3. Adaptive Weight Adjustment

In this study, each neighborhood operator is assigned a weight, and a self-adaptive mechanism is utilized to select neighborhood operators periodically. The weight of each neighborhood operator is based on the score, which measures how well the neighborhood operator has performed in the previous iterations (predefined by p u iterations). After p u iterations, the weight of each neighborhood operator is initially identical and calculated as follows:
ω ( i ) = ( 1 r ) ω ( i ) , if θ ( i ) ) = 0 ( 1 r ) ω ( i ) + r π ( i ) θ ( i ) , otherwise
where the reaction factor r controls the influence of the recent success of an operator on its weight. θ ( i ) denotes the number of times the neighborhood operator i has been used during the p u iterations. π ( i ) is the score of neighborhood operator i, which is initially set to zero and updated according to its performance during each iteration as follows: (i) increase δ 1 if the chosen neighborhood operator generates a new solution that is better than the current best solution; (ii) increase δ 2 if the chosen neighborhood operator generates a better solution compared to the current one.

3.1.4. Diversification Mechanisms

The main advantage of tabu search is that it can avoid revisiting recent solutions via the tabu list, while it emphasizes relatively small and local neighborhoods [36]. Based on this consideration, a diversification mechanism is integrated to enhance the exploration capability of EATS, which is inspired by the remove-reinsert strategy in the large neighborhood search [34]. The basic idea of the remove-reinsert method is to reconstruct the obtained local optimum solution by ruining the incumbent best solution first and then reconstructing a new feasible solution. First, several similar customers are removed from the solution according to the Shaw removal heuristic [37], expecting to create a new, perhaps better, solution by the reinsertion process. To quantify the similarity of two customers, a relatedness indicator r ˜ ( i , j ) is proposed as follows:
r ˜ ( i , j ) = α 1 ( d i j d m a x ) + α 2 q i q j + α 3 ( 1 K i K j min K i , K j )
where d m a x denotes the maximal distance over all d i j ( i , j N ) , which is used for standardizing d i j . Term K i denotes the set of vehicles able to serve customer i, and K i denotes the number of vehicles in set K i . Terms α 1 , α 2 , α 3 are weight coefficients.
As shown in (14), the relatedness indicator consists of three aspects: (i) the distance between customers, (ii) the difference in demands between customers, and (iii) the difference in the number of vehicles that can serve customers.
In the reinserting process, the customers that have been removed from the solution are first sorted in descending order according to the total area of their items and reinserted into the partial solution one by one. The route and position of a customer are decided by the same insertion-based rule used in the initial solution construction (Section 3.1.1). When a customer cannot be inserted into any route, other customers in a partial solution are randomly erased one by one until the given customer can be inserted into the partial solution successfully. Then the mechanism restarts the reinserting process with the erased customers. The reinserting process is repeated until a complete solution is found. The pseudocode Algorithm 4 for the removal process is shown as follows. The removal process initially selects a customer i randomly (Algorithm 4 line 1). Then it repeatedly chooses an already selected customer, j, and selects a new customer that is most related to i (Algorithm 4 line 4–7). The process stops when ρ customers have been chosen. Moreover, a determination parameter ϕ ( ϕ 1 ) (Algorithm 4 line 7) introduces some randomness into the request selection process (a high value of ϕ corresponds to low randomness).   
Algorithm 4: Removal Operation.
Sustainability 15 01741 i004

3.2. The Proposed MOBFS Method for Two-Dimensional Loading

In this study, we investigated four classes of the 2L-VRPSC with respect to different loading configurations. A MOBFS packing heuristic is proposed, which is extended from a bottom-left-fill algorithm and a skyline-based heuristic. The MOBFS method considers not only the area of items but also the length and width of the items as the sorting criterion to generate the loading sequence (Algorithm 5 line 1). When sequential loading constraints are imposed, we will first sort all the items by the reverse visiting order of its customers and then use the above sorting rules to sort the rectangles of each customer (Algorithm 5 line 3). Thereafter, these two heuristics are called in sequence (Algorithm 5 line 4). Specifically, the sophisticated skyline-based heuristic will be called only if the BLF fails to produce a feasible loading solution. If neither heuristic can find a feasible packing solution, a tabu search procedure will be called by swapping two non-tabu items to generate a new sequence (Algorithm 5 line 9). The pseudocode of the presented MOBFS heuristic for two-dimensional loading is shown in Algorithm 5. Detailed improvements in the packing heuristics are described in the following subsections.    
Algorithm 5: The proposed MOBFS algorithm for two-dimensional loading.
Sustainability 15 01741 i005

3.2.1. Improved Bottom-Left-Fill Heuristic

The first heuristic that we use is the modified classical bottom-left-fill (BLF) [38], obtained by generalizing this method to the four classes of the two-dimensional loading configurations. In the BLF heuristic, it maintains a list of locations to indicate where the items may be placed from the bottom left. Each sorted item is then placed in the lowest and leftmost position available that satisfies all constraints.
As shown in Figure 3, the numbers indicate the locations where item 5 may be placed. When item 5 is placed, it may be placed under item 4 according to the BLF method, which violates the sequential loading constraint that may be required in the unloading process. To overcome this drawback, we enhance the BLF by introducing a covering strategy, which enforces the FILO constraint without undermining its high performance in the packing process. Specifically, after each item is placed into the truck, the covering operations, as shown in Figure 4, is implemented first to form a new virtual item. Thereafter, the list of locations is updated, and the process of placing the items in the specified order is repeated, which is described as follows:
If the next placed item i completely covers the placed item k, then items i and k are combined into one article, as article i, the information belonging to item k becomes 0. The length of article i is equal to item i, while the height is equal to the sum of items 3 and 4. As shown in Figure 4, item 3 is completely covered by item 4, so items 3 and 4 are combined into article 4.
As such, the improved BLF heuristic is capable of handling four classes of loading configurations. Under the 2|UO|L and 2|SO|L settings, we only check the placement of an item in a position without rotation, while the covering strategy is implemented under the 2|SO|L setting. Under the 2|UR|L and 2|SR|L settings, the placement of an item in a position is checked first with the item’s original orientation and the placement with a 90 item rotation will be checked only if the attempted placement turns out to be infeasible. Moreover, the covering strategy is implemented only under the 2|SO|L and 2|SR|L settings.

3.2.2. Improved Skyline-Based Heuristic

The skyline-based heuristic was first proposed to solve the two-dimensional rectangle packing problem, and the key is selecting the position of the items on the loading surface. A set of selection criteria were proposed for this purpose, and more details can be found in [9].
One of the selection criteria is selecting the placement with minimum local waste at every stage of the packing process. However, this wasted space measure is only a measure of the actual number of wasted space segments, ignoring a measure of the total area of wasted space segments. Therefore, we further quantify the wasted area and propose the wasted-area-based selection criterion to determine the positions of items, i.e., if there are multiple candidate positions with the same number of wasted space segments, the algorithm will select the position with the minimum total wasted area. It is motivated by the assumption that if the area of wasted space is minimized at every stage of the packing process, the remaining unplaced items will be more likely to be placed. The four types of wasted space are given in Figure 5a–d.
Let w m i n and h m i n be the minimum width and height of the remaining rectangular items, respectively. The pattern area in case (a) is always considered wasted space. The pattern areas in cases (b) and (c) are considered wasted if the length of the gap is less than w m i n . The pattern area in case (d) is wasted if the gap is less than h m i n .
Based on the above improvements, we apply the skyline-based heuristic to the four classes of two-dimensional loading configurations. Under the 2|UO|L and 2|SO|L settings in which item rotation is not allowed, it only evaluates the feasibility and area of the wasted space for each pair item-position without rotation. Under the 2|UR|L and 2|SR|L settings, it evaluates the feasibility, wasted area of rotation and non-rotation to decide the placement position and whether to rotate so as to improve the utilization of the wasted space in the packing process.

4. Computational Experiments

The experiments and experimental results based on a number of widely used 2L-VRP benchmarks and 2L-VRPSC instances are presented, which are compared with a few existing methods. The algorithm is coded in MATLAB 2018b, and all experiments are executed on a desktop PC with Intel Core i5-5200U(2.20 GHz) and 8 gigabytes of RAM running on a Windows 7 operating system.

4.1. Testing Instances and Parameters

The 2L-VRP benchmarks generated in [4] incorporate a fleet of vehicles with a 40 × 20 squared units for loading and a maximum capacity of weight. According to the characteristics of the demanded items, the instances of 2L-VRP are categorized into 5 classes, as shown in Table 1. Table 2 shows the details of the number of customers (denoted by n), total number of items (denoted by M = i = 1 n m i ), and the number of vehicles (denoted by | K | ). More details can be found in Ref [3], and all 2L-VRP instances can be downloaded from http://www.or.deis.unibo.it/research.html, accessed on 10 May 2020.
We run the proposed EATS-MOBFS method 10 times for each instance with the same parameters. Therein, the parameters of the proposed EATS-MOBFS algorithm are determined using the Irace package presented in [39]. The irace package is a general-purpose configurator and only requires the definition of a configuration scenario. Given a set of representative instances and a set of possible values for each parameter, the Irace package determines an appropriate combination of values for the parameter configuration. The Irace package iteratively applies a racing procedure in which several configurations are incrementally evaluated on bigger subsets of the training instance set. Specifically, the Irace package uses an iterative racing method or automatic configuration consisting of three steps: (i) sampling new configurations according to a particular distribution, (ii) selecting the best configurations from the newly sampled configurations by means of racing and (iii) updating the sampling distribution to drive the sampling toward the best configuration. These steps are repeated until the termination criterion is met. More details about the Irace package can be found in [39].
For the Irace scenario configuration, instances with 15, 30, 50 and 71 customers are taken as representative instances for parameter tuning. Each parameter of the EATS is provided with a set of possible values in a specified range for tuning. Namely, δ 1 and δ 2 ( δ 1 > δ 2 ) range from 0 to 50. Parameters r and μ are set from 0 to 1. Parameters α 1 , α 2 and α 3 range from 0 to 10. Afterward, a parameter combination is selected based on the best average result for the testing instances. Specifically, the weight adjustment algorithm is controlled by three parameters, δ 1 , δ 2 and r, which are set to 33, 13 and 0.25, respectively. In the diversification procedure, the removal process is controlled by three parameters: α 1 , α 2 and α 3 , which are 9, 2 and 5, respectively. Parameter μ is set to 0.4 for controlling the maximum number of customers that can be removed in the diversification procedure, and a random number ρ , 1 ρ min ( 15 , μ · n ) determines the exact number of removed customers, where n is the total number of customers. In addition, the inner-layer iterations are set to 50; the outer-layer iterations are set to 5000.

4.2. Computational Results

4.2.1. Results on the 2L-VRP Benchmark Instances

Moreover, four classes of 2L-VRP are tested and compared with existing methods, as shown in Table 3, Table 4, Table 5, Table 6, Table 7 and Table 8. Table 4, Table 5, Table 6 and Table 7 present the results obtained by our method under the 2|UO|L, 2|SO|L, 2|UR|L, 2|SR|L settings, respectively. Therein, “Gap” denotes the percentage gap between the Cost and BKS (best-known solution) (Gap(%) = 100 × (Cost-BKS)/BKS).
Table 3 compares the best average cost of the classes (Classes 2–5) for each test instance (Instance 1–20) against the previous approaches, which shows our approach is capable of yielding comparable solutions under the 2|UO|L and 2|SO|L settings. Under the 2|UO|L setting, the overall performance of the proposed EATS-MOBFS method slightly outperforms those of GRASP × ELS and EGTS + LBFH. In comparison to GRASP × ELS and EGTS + LBFH, the proposed approach is able to produce better solutions for 6, 19 out of 20 instances, respectively. Under the 2|SO|L setting, our approach is superior to that of EGTS + LBFH and has gained comparable results compared with those obtained by PRMP and BR-LNS. Specifically, our approach can yield better solutions for 20 out of 20 instances compared with EGTS + LBFH.
As shown in Table 4, the best results were obtained by our approach on some instances of Classes 2–5 under the 2|UO|L setting, which shows the proposed EATS-MOBFS method has reached the best-known solutions for 9, 8, 8 and 10 instances in Classes 2–5, respectively. In addition, the average percentage gaps between the solutions obtained by the proposed EATS-MOBFS method and the best-known solutions (BKS) are 0.72%, 1.01%, 0.91% and 0.88% for the instances in Classes 2–5, respectively. It infers that the proposed hybrid heuristic incorporating EATS and MOBFS is efficient for solving the 2L-VRP under the 2|UO|L setting. Moreover, Table 5 presents the best results obtained by our method on some instances of Classes 2–5 under the 2|UR|L setting, which shows the proposed EATS-MOBFS method has reached the best-known solutions for 8, 10, 7 and 10 testing instances in Classes 2–5, respectively. In addition, the average percentage gaps between the solutions obtained by our method and BKS are 0.56%, 0.50%, 0.54% and 0.54% for the instances in Classes 2–5, respectively. It infers that the proposed hybrid heuristic is efficient for solving the 2L-VRP under the 2|UR|L setting.
Table 6 and Table 7 present the best results obtained by our method on some instances of Classes 2–5 for 2L-VRP under the 2|SO|L and 2|SR|L settings, respectively. Table 5 shows that our EATS-MOBFS method can obtain high-quality solutions for all instances, where the average percentage gaps between the solutions obtained by our method and the BKS are 0.59%, 0.90%, 0.96% and 0.90% for the instances in Classes 2–5, respectively. Under the 2|SR|L setting, the corresponding average percentage gaps are 0.46%, 0.83%, 0.66% and 0.68%, respectively. It is worth noting that the EATS-MOBFS method has reached the best-known solutions for almost 10 instances in each class. It infers that the proposed hybrid heuristic is efficient for solving the 2L-VRP under the 2|SO|L and 2|SR|L settings.
As illustrated in Table 8, the results obtained by the proposed EATS-MOBFS under the 2|UR|L and 2|SR|L settings are compared with the existing heuristic approaches, which shows that the proposed approach is capable of producing comparable results under the 2|UR|L and 2|SR|L settings. Specifically, the overall performance of the proposed EATS-MOBFS method outperforms that of ACO under the 2|UR|L setting. In comparison to ACO, our approach is able to produce better solutions for 11 out of 20 instances. Under the 2|SR|L setting, our approach is superior to that of ACO and has produced comparable results compared with those obtained by BR-LNS. The proposed approach yields better solutions for 11 out of 20 instances compared with ACO.
To sum up, the proposed approach produces satisfactory performances in solving the 2L-VRP under all four loading configurations, where the average percentage gaps between the solutions obtained by the EATS-MOBFS method and the best-known solutions are 0.97%, 0.48%, 1.14% and 0.64%, respectively. Particularly, our approach has reached the best-known solutions for 34, 35, 25 and 36 out of 80 instances under four settings, respectively. It can be observed that the average percentage gaps over the best-known solutions are smaller under the 2|UR|L and 2|SR|L settings compared with the 2|UO|L and 2|SO|L settings. Namely, the performance of our approach is more satisfactory under the 2|UR|L and 2|SR|L settings, while the performance is inferior to the existing state-of-art methods under the 2|UO|L and 2|SO|L settings. We can also observe that for some large-scale instances, our proposed approach shows a slight disadvantage over the existing methods. This is because the 2L-VRPSC is much more complex than the 2L-VRP with the consideration of the uncertainty of customers. Thus, the proposed solution approach designed for the 2L-VRPSC is more complex, with the specific strategies integrated into the initialization and neighborhood search process, which may undermine the exploration ability of the algorithm when solving the 2L-VRP. Furthermore, the algorithms designed for the simpler 2L-VRP have less computational burden and may find better solutions within the same time window.

4.2.2. Results of the 2L-VRPSC Benchmark Instances

In this section, we extend the Class 2 2L-VRP benchmarks described in the previous section to generate a large stochastic instance pool. Specifically, four classes of stochastic 2L-VRPSC instances are generated by varying the probability that customers require service p = 0.2 , 0.4 , 0.6 , 0.8 . Here, we only test the performance of the approach under the 2|UO|L setting, with the results presented in Table 9. To verify the necessity of considering customer uncertainty, we use the value of the stochastic solution (VSS) to measure the extra cost due to ignoring the customers’ uncertainty. The VSS index is defined as the difference between the expected results of using the expected value problem solution (EEV) and the here-and-now solution (HN), where the value of HN is the objective value obtained by stochastic programming model and the value of EEV represents the expected cost of the scenarios ignoring the customers’ uncertainty. See [43,44,45,46] for more information about these indices.
As shown in Table 9, the values of VSS, EEV and HN indices for each instance are given. It can be observed that the value of the VSS index for each instance is greater than zero, which is consistent with our expectation that ignoring the uncertain information raised in the distribution operations incurs extra costs. Meanwhile, the direct application of the distribution schemes ignoring uncertainty may lead to costly ad-hoc arrangements for re-routing, which may substantially increase the actual operating costs and time. On the contrary, the application of distribution schemes considering the customers’ uncertainty is conducive to the distribution companies to gaining familiarity with the distribution route and can have a good estimate of the time used to reach each customer so as to improve customers’ satisfaction and distribution efficiency.
We can also observe that the average values of the VSS index are 73.6, 59.8, 40.5 and 18.6 under the probabilities of 0.2, 0.4, 0.6 and 0.8, respectively. A lower probability of the presence of customers results in a higher value for VSS, EEV and HN indices. These observations suggest that a lower probability of the presence of customers will aggravate the uncertainty of the distribution scheme, which incurs a significant increase in the transportation cost. Additionally, the increased number of customers in the distribution scheme causes a significant increase in the transportation cost when customer uncertainty is considered. In terms of computational time, in our experiments, the average computational time for all 2L-VRPSC instances under the deterministic and stochastic settings are 1019 and 1380 s, respectively. Particularly, the computational time is affected by the size of scenarios generated from the Monte Carlo simulation, which contributes to the trade-off between the model fidelity and computational burden.

4.2.3. Validation and Efficiency of the Adaptive and Diversification Mechanisms

To verify the performance of the adaptive weight adjustment and diversification mechanisms of our proposed EATS algorithm, we select one of two 2L-VRPSC instances under the probability of 0.8. Under the same parameters combination, the proposed EATS-MOBFS is compared with ATS-MOBFS (without a diversification mechanism) and ETS-MOBFS (without adaptive weight adjustment), with the comparison results presented in Table 10. For conciseness, these three algorithms are abbreviated as EATS, ATS and ETS, respectively.
We can observe that the presented EATS approach shows superiority with respect to solution quality compared with the ATS and ETS algorithms. Compared with ATS and ETS algorithms, the proposed EATS algorithm is capable of producing better solutions for 8 and 6 out of 10 instances, which indicates the adaptive weight adjustment and diversification mechanism have a positive impact on the interplay between intensification and diversification. The better performance of ETS over ATS may be due to the fact that the diversification mechanism can avoid trapping into a local optimum to some extent. Additionally, the average computational time of ATS is slightly shorter than EATS and ETS, which is attributed to the fact that the diversification process is time-consuming to destroy and repair the solution structure. This slight increase in computation time is acceptable given that the diversification mechanism can diversify the search and guide the algorithm search for better solutions.

5. Conclusions

This paper studies a stochastic variant of the 2L-VRP, where each customer has a probability of presence and customers’ demands are considered non-stackable rectangular-shape items. A stochastic programming model of the 2L-VRPSC has been established based on Monte Carlo simulation and scenario analysis. An enhanced adaptive tabu search algorithm incorporating a MOBFS packing heuristic has been proposed, which solved four classes of 2L-VRPSC with different loading configurations, namely, unrestricted oriented loading (2|UO|L), unrestricted rotated loading (2|UR|L), sequential oriented loading (2|SO|L) and sequential rotated loading (2|SR|L).
The performance of the proposed approach is verified through experiments on the 2L-VRP and 2L-VRPSC instances, which are compared with existing methods. The experimental results demonstrate the effectiveness and versatility of solving the 2L-VRPSC and 2L-VRP. The comparison between existing methods shows the efficiency of the proposed EATS-MOBFS method for solving the 2L-VRP with different loading configurations, except for some large-scale instances. Moreover, the proposed model is capable of providing more practical solutions for real-life scenarios with uncertain information. Meanwhile, the comparative results indicate that the adaptive weight adjustment and diversification mechanism have a positive impact on the interplay between intensification and diversification. Observations show that a lower presence probability of customers and a larger number of customers will increase the transportation cost in the 2L-VRPSC.
This work has opened up several directions for future research. First, although this research’s high-quality solutions have been obtained by the proposed approach, there is still room for improvement. Such improvements can include further enhancing the neighborhood operators in EATS and introducing more exclusive packing strategies. Second, in this paper, we have studied the 2L-VRP with stochastic customers under different loading configurations, while the investigations of the 2L-VRP with other uncertainties, such as stochastic demands, stochastic items and travel time, are yet to be carried out.

Author Contributions

Conceptualization, Z.Z. and B.J.; methodology, Z.Z. and B.J.; software, Z.Z.; validation, Z.Z., B.J. and S.S.Y.; formal analysis, B.J. and S.S.Y.; resources, Z.Z. and B.J.; writing—original draft preparation, Z.Z.; writing—review and editing, Z.Z., B.J. and S.S.Y.; visualization, Z.Z. and B.J.; supervision, B.J.; project administration, B.J. and S.S.Y.; funding acquisition, B.J. and S.S.Y. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by Grant from Hubei Provincial Key Laboratory for Operation and Control of Cascaded Hydropower Station under No. 2022KJX02, Central South University under Grant No. 202045007, and National Natural Science Foundation of China under Grant No. 62003091.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The datasets generated during and/or analysed during the current study are available from the corresponding author on reasonable request.

Acknowledgments

The authors are grateful to the farmers for their support in participating in this study.

Conflicts of Interest

The authors declare that they have no conflict of interest.

References

  1. Toth, P.; Vigo, D. Vehicle Routing: Problems, Methods, and Applications; SIAM: Sitges, Spain, 2014. [Google Scholar]
  2. Li, J.; Wang, F.; He, Y. Electric vehicle routing problem with battery swapping considering energy consumption and carbon emissions. Sustainability 2020, 12, 10537. [Google Scholar] [CrossRef]
  3. Iori, M.; Salazar-González, J.J.; Vigo, D. An exact approach for the vehicle routing problem with two-dimensional loading constraints. Transp. Sci. 2007, 41, 253–264. [Google Scholar] [CrossRef] [Green Version]
  4. Gendreau, M.; Iori, M.; Laporte, G.; Martello, S. A Tabu search heuristic for the vehicle routing problem with two-dimensional loading constraints. Netw. Int. J. 2008, 51, 4–18. [Google Scholar] [CrossRef] [Green Version]
  5. Sbai, I.; Limam, O.; Krichen, S. An effective genetic algorithm for solving the capacitated vehicle routing problem with two-dimensional loading constraint. Int. J. Comput. Intell. Stud. 2020, 9, 85–106. [Google Scholar] [CrossRef]
  6. Escobar-Falcón, L.; Alvarez-Martinez, D.; Wilmer-Escobar, J.; Granada-Echeverri, M. A specialized genetic algorithm for the fuel consumption heterogeneous fleet vehicle routing problem with bidimensional packing constraints. Int. J. Ind. Eng. Comput. 2021, 12, 191–204. [Google Scholar] [CrossRef]
  7. Leung, S.C.; Zhou, X.; Zhang, D.; Zheng, J. Extended guided tabu search and a new packing algorithm for the two-dimensional loading vehicle routing problem. Comput. Oper. Res. 2011, 38, 205–215. [Google Scholar] [CrossRef]
  8. Zachariadis, E.E.; Tarantilis, C.D.; Kiranoudis, C.T. Integrated distribution and loading planning via a compact metaheuristic algorithm. Eur. J. Oper. Res. 2013, 228, 56–71. [Google Scholar] [CrossRef]
  9. Wei, L.; Zhang, Z.; Zhang, D.; Lim, A. A variable neighborhood search for the capacitated vehicle routing problem with two-dimensional loading constraints. Eur. J. Oper. Res. 2015, 243, 798–814. [Google Scholar] [CrossRef]
  10. Dominguez, O.; Juan, A.A.; Faulin, J. A biased-randomized algorithm for the two-dimensional vehicle routing problem with and without item rotations. Int. Trans. Oper. Res. 2014, 21, 375–398. [Google Scholar] [CrossRef]
  11. Fuellerer, G.; Doerner, K.F.; Hartl, R.F.; Iori, M. Ant colony optimization for the two-dimensional loading vehicle routing problem. Comput. Oper. Res. 2009, 36, 655–673. [Google Scholar] [CrossRef]
  12. Wei, L.; Zhang, Z.; Zhang, D.; Leung, S.C. A simulated annealing algorithm for the capacitated vehicle routing problem with two-dimensional loading constraints. Eur. J. Oper. Res. 2018, 265, 843–859. [Google Scholar] [CrossRef]
  13. Pinto, T.; Alves, C.; Valério de Carvalho, J. Variable neighborhood search algorithms for the vehicle routing problem with two-dimensional loading constraints and mixed linehauls and backhauls. Int. Trans. Oper. Res. 2020, 27, 549–572. [Google Scholar] [CrossRef] [Green Version]
  14. Rivero, O.L.D.; Pérez, A.A.J.; De La Nuez Pestana, I.A.; Ouelhadj, D. An ILS-biased randomization algorithm for the two-dimensional loading HFVRP with sequential loading and items rotation. J. Oper. Res. Soc. 2016, 67, 37–53. [Google Scholar] [CrossRef] [Green Version]
  15. Sabar, N.R.; Bhaskar, A.; Chung, E.; Turky, A.; Song, A. An adaptive memetic approach for heterogeneous vehicle routing problems with two-dimensional loading constraints. Swarm Evol. Comput. 2020, 58, 100730. [Google Scholar] [CrossRef]
  16. Ferreira, K.M.; de Queiroz, T.A.; Toledo, F.M.B. An exact approach for the green vehicle routing problem with two-dimensional loading constraints and split delivery. Comput. Oper. Res. 2021, 136, 105452. [Google Scholar] [CrossRef]
  17. Rajaei, M.; Moslehi, G.; Reisi-Nafchi, M. The split heterogeneous vehicle routing problem with three-dimensional loading constraints on a large scale. Eur. J. Oper. Res. 2021, 299, 706–721. [Google Scholar] [CrossRef]
  18. Koch, H.; Schlögell, M.; Bortfeldt, A. A hybrid algorithm for the vehicle routing problem with three-dimensional loading constraints and mixed backhauls. J. Sched. 2020, 23, 71–93. [Google Scholar] [CrossRef]
  19. Chen, Z.; Yang, M.; Guo, Y.; Liang, Y.; Ding, Y.; Wang, L. The split delivery vehicle routing problem with three-dimensional loading and time Windows constraints. Sustainability 2020, 12, 6987. [Google Scholar] [CrossRef]
  20. Psaraftis, H.N. A dynamic programming solution to the single vehicle many-to-many immediate request dial-a-ride problem. Transp. Sci. 1980, 14, 130–154. [Google Scholar] [CrossRef]
  21. Gendreau, M.; Jabali, O.; Rei, W. 50th anniversary invited article—Future research directions in stochastic vehicle routing. Transp. Sci. 2016, 50, 1163–1173. [Google Scholar] [CrossRef]
  22. Rajabi-Bahaabadi, M.; Shariat-Mohaymany, A.; Babaei, M.; Vigo, D. Reliable vehicle routing problem in stochastic networks with correlated travel times. Oper. Res. 2021, 21, 299–330. [Google Scholar] [CrossRef]
  23. Xia, X.; Liao, W.; Zhang, Y.; Peng, X. A discrete spider monkey optimization for the vehicle routing problem with stochastic demands. Appl. Soft Comput. 2021, 111, 107676. [Google Scholar] [CrossRef]
  24. Gee, S.B.; Arokiasami, W.A.; Jiang, J.; Tan, K.C. Decomposition-based multi-objective evolutionary algorithm for vehicle routing problem with stochastic demands. Soft Comput. 2016, 20, 3443–3453. [Google Scholar] [CrossRef]
  25. Côté, J.F.; Gendreau, M.; Potvin, J.Y. The vehicle routing problem with stochastic two-dimensional items. Transp. Sci. 2020, 54, 453–469. [Google Scholar] [CrossRef]
  26. Guimarans, D.; Dominguez, O.; Panadero, J.; Juan, A.A. A simheuristic approach for the two-dimensional vehicle routing problem with stochastic travel times. Simul. Model. Pract. Theory 2018, 89, 1–14. [Google Scholar] [CrossRef]
  27. Ahmed, B.S.; Enoiu, E.; Afzal, W.; Zamli, K.Z. An evaluation of Monte Carlo-based hyper-heuristic for interaction testing of industrial embedded software applications. Soft Comput. 2020, 24, 13929–13954. [Google Scholar] [CrossRef] [Green Version]
  28. Oscar, V.; Aguilasocho-Montoya, D.; Álvarez-García, J.; Simonetti, B. Using Markov-switching models with Markov chain Monte Carlo inference methods in agricultural commodities trading. Soft Comput. 2020, 24, 13823–13836. [Google Scholar]
  29. Niknam, T.; Azizipanah-Abarghooee, R.; Narimani, M.R. An efficient scenario-based stochastic programming framework for multi-objective optimal micro-grid operation. Appl. Energy 2012, 99, 455–470. [Google Scholar] [CrossRef]
  30. Bernath, C.; Deac, G.; Sensfuß, F. Impact of sector coupling on the market value of renewable energies—A model-based scenario analysis. Appl. Energy 2021, 281, 115985. [Google Scholar] [CrossRef]
  31. Niknam, T.; Zare, M.; Aghaei, J. Scenario-based multiobjective volt/var control in distribution networks including renewable energy sources. IEEE Trans. Power Deliv. 2012, 27, 2004–2019. [Google Scholar] [CrossRef]
  32. Gmira, M.; Gendreau, M.; Lodi, A.; Potvin, J.Y. Tabu search for the time-dependent vehicle routing problem with time windows on a road network. Eur. J. Oper. Res. 2021, 288, 129–140. [Google Scholar] [CrossRef]
  33. Sadati, M.E.H.; Çatay, B. A hybrid variable neighborhood search approach for the multi-depot green vehicle routing problem. Transp. Res. Part E Logist. Transp. Rev. 2021, 149, 102293. [Google Scholar] [CrossRef]
  34. Pisinger, D.; Ropke, S. Large neighborhood search. In Handbook of Metaheuristics; Springer: Berlin/Heidelberg, Germany, 2010; pp. 399–419. [Google Scholar]
  35. Zachariadis, E.E.; Tarantilis, C.D.; Kiranoudis, C.T. A guided tabu search for the vehicle routing problem with two-dimensional loading constraints. Eur. J. Oper. Res. 2009, 195, 729–743. [Google Scholar] [CrossRef]
  36. Cai, L.; Wang, X.; Luo, Z.; Liang, Y. A hybrid adaptive large neighborhood search and tabu search algorithm for the electric vehicle relocation problem. Comput. Ind. Eng. 2022, 167, 108005. [Google Scholar] [CrossRef]
  37. 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. [Google Scholar] [CrossRef] [Green Version]
  38. Chazelle, B. The bottomn-left bin-packing heuristic: An efficient implementation. IEEE Trans. Comput. 1983, 32, 697–707. [Google Scholar] [CrossRef]
  39. López-Ibáñez, M.; Dubois-Lacoste, J.; Cáceres, L.P.; Birattari, M.; Stützle, T. The irace package: Iterated racing for automatic algorithm configuration. Oper. Res. Perspect. 2016, 3, 43–58. [Google Scholar] [CrossRef]
  40. Duhamel, C.; Lacomme, P.; Quilliot, A.; Toussaint, H. A multi-start evolutionary local search for the two-dimensional loading capacitated vehicle routing problem. Comput. Oper. Res. 2011, 38, 617–640. [Google Scholar] [CrossRef]
  41. Dominguez, O.; Guimarans, D.; Juan, A.A.; de la Nuez, I. A biased-randomised large neighbourhood search for the two-dimensional vehicle routing problem with backhauls. Eur. J. Oper. Res. 2016, 255, 442–462. [Google Scholar] [CrossRef]
  42. Zachariadis, E.E.; Tarantilis, C.D.; Kiranoudis, C.T. The vehicle routing problem with simultaneous pick-ups and deliveries and two-dimensional loading constraints. Eur. J. Oper. Res. 2016, 251, 369–386. [Google Scholar] [CrossRef]
  43. Hu, S.L.; Han, C.F.; Meng, L.P. Stochastic optimization for joint decision making of inventory and procurement in humanitarian relief. Comput. Ind. Eng. 2017, 111, 39–49. [Google Scholar] [CrossRef]
  44. Nikzad, E.; Bashiri, M.; Oliveira, F. Two-stage stochastic programming approach for the medical drug inventory routing problem under uncertainty. Comput. Ind. Eng. 2019, 128, 358–370. [Google Scholar] [CrossRef]
  45. Birge, J.R.; Louveaux, F. Introduction to Stochastic Programming; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2011. [Google Scholar]
  46. Tang, M.; Ji, B.; Fang, X.; Yu, S.S. Discretization-Strategy-Based Solution for Berth Allocation and Quay Crane Assignment Problem. J. Mar. Sci. Eng. 2022, 10, 495. [Google Scholar] [CrossRef]
Figure 1. Example of the prior solution and scenario. (a) A prior solution visits nine customers. (b) The scenario corresponding to the prior solution, where customers 2 and 7 do not require service (disconnected from the routes).
Figure 1. Example of the prior solution and scenario. (a) A prior solution visits nine customers. (b) The scenario corresponding to the prior solution, where customers 2 and 7 do not require service (disconnected from the routes).
Sustainability 15 01741 g001
Figure 2. Move types used in the EATS algorithm.
Figure 2. Move types used in the EATS algorithm.
Sustainability 15 01741 g002
Figure 3. An example of violating the sequential loading constraint when using the BLF.
Figure 3. An example of violating the sequential loading constraint when using the BLF.
Sustainability 15 01741 g003
Figure 4. An example of complete covering.
Figure 4. An example of complete covering.
Sustainability 15 01741 g004
Figure 5. Illustration of four types of wasted space (pattern areas are the wasted space).
Figure 5. Illustration of four types of wasted space (pattern areas are the wasted space).
Sustainability 15 01741 g005
Table 1. Characteristics of the demanded items of Classes 1–5 instances.
Table 1. Characteristics of the demanded items of Classes 1–5 instances.
Class | m i | VerticalHomogeneousHorizontal
LengthWidthLengthWidthLengthWidth
11111111
2[1,2][0.4 L,0.9 L][0.1 W,0.2 W][0.2 L,0.5 L][0.2 W,0.5 W][0.1 L,0.2 L][0.4 W,0.9 W]
3[1,3][0.3 L,0.8 L][0.1 W,0.2 W][0.2 L,0.4 L][0.2 W,0.4 W][0.1 L,0.2 L][0.3 W,0.8 W]
4[1,4][0.2 L,0.7 L][0.1 W,0.2 W][0.1 L,0.4 L][0.1 W,0.4 W][0.1 L,0.2 L][0.2 W,0.7 W]
5[1,5][0.1 L,0.6 L][0.1 W,0.2 W][0.1 L,0.3 L][0.1 W,0.3 W][0.1 L,0.2 L][0.1 W,0.6 W]
Table 2. Details of Classes 1–5 instances.
Table 2. Details of Classes 1–5 instances.
InstancenClass 1Class 2Class 3Class 4Class 5
M | K | M | K | M | K | M | K | M | K |
115153243313374454
215155255315405485
320204295465445495
420206326436506626
521214314374414575
621216336406576566
722223325415515556
822225295425485526
925258408618638918
1029293436496727867
1129294436627747917
12303095095698291019
13323234475677871028
1432324477577657878
15323254865968481148
1635351156117411931111411
1740401460147314961412714
184444466987101121012210
19505058211103111341215712
207171410414151151781622616
Table 3. Comparison results for the 2L-VRP under the 2|UO|L and 2|SO|L settings (average over Classes 2–5). Other state-of-the-art approaches: GRASP [40], PRMP [8], EGTS+LBFH [35], BR-LNS [41] and LS [42].
Table 3. Comparison results for the 2L-VRP under the 2|UO|L and 2|SO|L settings (average over Classes 2–5). Other state-of-the-art approaches: GRASP [40], PRMP [8], EGTS+LBFH [35], BR-LNS [41] and LS [42].
Inst.UOSO
GRASPEGTS+LBFHLSEATS-MOBFSEGTS+LBFHPRMPBR-LNSEATS-MOBFS
1282.68295.46281.23281.84303.40287.09291.43288.61
2343.56341.89339.26339.26345.23344.21344.21344.21
3378.07379.41374.07377.35387.89381.40381.40381.40
4435.00440.85435.01435.01443.25439.97439.97441.11
5380.63382.23379.03379.03387.61382.39382.39382.85
6497.62498.97496.90498.83502.25499.48499.48500.55
7679.43699.29690.68697.36715.54702.27701.63702.27
8694.81701.77679.34678.84716.36699.55702.85702.87
9612.01614.67612.01612.98621.23614.54615.94619.75
10657.29705.04676.73681.46731.70688.48687.55688.63
11709.27731.41703.64721.83762.83725.83724.43723.47
12611.12617.47611.26615.21622.35614.52614.52618.09
132457.792581.412491.182527.362647.882554.932556.062572.99
14973.961030.50974.76985.491075.041027.381022.761024.40
151180.041194.711130.361128.181223.191189.971185.191196.97
16699.80702.46699.79699.79703.74701.02702.03702.03
17861.79862.63864.06864.47869.93864.06865.73867.13
181048.331065.941031.111048.481096.571057.991062.151073.18
19743.50771.57740.66753.67798.2766.05763.75777.73
20511.72545.82512.84522.11559.17534.87535.055541.33
Table 4. Result for 2|UO|L 2L-VRP (Classes 2–5). “BKS” denotes the best-known solution found among Refs. [8,9,12,42].
Table 4. Result for 2|UO|L 2L-VRP (Classes 2–5). “BKS” denotes the best-known solution found among Refs. [8,9,12,42].
Inst.Class 2Class 3Class 4Class 5
BKSCostGapBKSCostGapBKSCostGapBKSCostGap
1278.73278.730.00284.52286.950.85282.95282.950.00278.73278.730.00
2334.96334.960.00352.16352.160.00334.96334.960.00334.96334.960.00
3387.70387.700.00394.72394.720.00362.41368.561.70358.40358.400.00
4430.89430.890.00430.89430.890.00447.37447.370.00430.88430.880.00
5375.28375.280.00381.69381.690.00383.88383.880.00375.28375.280.00
6495.85499.080.65497.17499.080.38498.32498.320.00495.75498.850.62
7725.46725.460.00678.75701.083.29700.72702.450.25657.77660.440.41
8674.55674.550.00738.43738.430.00692.47692.470.00609.90609.900.00
9607.65611.490.63607.65607.650.00621.23625.130.63607.65607.650.00
10689.68689.680.00615.68620.330.76710.87724.771.96678.66691.041.82
11684.21711.083.93706.73723.002.30784.88816.454.02624.82636.771.91
12610.57614.240.60610.00622.151.99614.24614.240.00610.00610.230.04
132585.722588.810.122436.562477.971.702548.062607.662.342334.782434.994.29
141038.091038.200.01996.251016.172.00981.00985.010.41871.22902.583.60
151013.291017.950.461149.991149.990.001181.301184.850.301159.941159.940.00
16698.61698.610.00698.61698.610.00703.35703.350.00698.61698.610.00
17863.66870.860.83861.79862.620.10861.79862.620.10861.79861.790.00
181004.991038.773.361069.451081.441.121116.451147.352.77917.94926.340.92
19754.53770.962.18771.66786.431.91775.87801.253.27644.59656.041.78
20517.06525.751.68521.31541.473.87537.56540.340.52470.33480.892.24
Ave738.57744.340.72740.20748.641.01756.98766.200.91701.10710.720.88
Table 5. Result for 2|UR|L 2L-VRP (Classes 2–5). “BKS” denotes the best-known solution found among Refs. [10,11,12,42].
Table 5. Result for 2|UR|L 2L-VRP (Classes 2–5). “BKS” denotes the best-known solution found among Refs. [10,11,12,42].
Inst.Class 2Class 3Class 4Class 5
BKSCostGapBKSCostGapBKSCostGapBKSCostGap
1278.73278.730.00282.95282.950.00282.95282.950.00278.73278.730.00
2334.96334.960.00352.16352.160.00334.96334.960.00334.96334.960.00
3380.35380.350.00385.32385.590.07358.40358.800.11358.40358.400.00
4430.89430.890.00430.89430.890.00447.37447.370.00430.89430.890.00
5375.28375.280.00379.94381.690.46383.88383.880.00375.28375.280.00
6495.85495.850.00498.16498.160.00498.32498.320.00495.85495.850.00
7715.02716.820.25664.96664.960.00686.26686.260.00657.77660.370.40
8665.17674.201.36738.43741.120.36688.32692.470.60609.90619.181.52
9607.65611.490.63607.65615.571.30625.13625.130.00607.65607.650.00
10667.42675.211.17591.16615.364.09703.64703.730.01678.62699.013.00
11664.48667.870.51699.35699.350.00771.93777.140.67624.82624.820.00
12610.00610.000.00610.00610.000.00610.23614.230.66610.09610.240.02
132502.652504.530.082377.392379.830.102500.852539.441.542334.592334.990.02
141029.341042.381.27988.79988.790.00955.09981.002.71871.22875.070.44
151001.511018.771.721116.071120.750.421164.631168.600.341159.941181.701.88
16698.61698.610.00698.61698.610.00703.35708.200.69698.61698.610.00
17861.79874.631.49861.79861.790.00861.79863.790.23861.79861.790.00
18982.44988.610.63986.30999.271.321100.521107.940.67917.94927.981.09
19711.97726.512.04749.43753.660.56747.03765.512.47644.59651.971.14
20488.69489.230.11511.46518.051.29533.77534.140.07466.79472.771.28
Ave725.14729.750.56726.54729.930.50747.92753.690.54700.92705.010.54
Table 6. Results for 2|SO|L 2L-VRP (Classes 2–5). “BKS” denotes the best-known solution found among Refs. [8,9,12,41].
Table 6. Results for 2|SO|L 2L-VRP (Classes 2–5). “BKS” denotes the best-known solution found among Refs. [8,9,12,41].
Inst.Class 2Class 3Class 4Class 5
BKSCostGapBKSCostGapBKSCostGapBKSCostGap
1290.84290.840.00284.52286.260.61294.25296.750.85278.73280.600.67
2347.73347.730.00352.16352.160.00342.00342.000.00334.96334.960.00
3403.93403.930.00394.72394.720.00368.56368.560.00358.40358.400.00
4440.94440.940.00440.68445.251.04447.37447.370.00430.89430.890.00
5388.72388.720.00381.69383.520.48383.88383.880.00375.28375.280.00
6499.08499.080.00504.68508.610.78498.32498.650.07495.85495.850.00
7734.65734.650.00702.59709.721.01703.49703.490.00658.64661.220.39
8725.91725.910.00741.12741.120.00697.92705.281.05621.85639.182.79
9611.49611.490.00613.90631.372.85625.10628.480.54607.65607.650.00
10700.20700.200.00628.94637.461.35715.82717.830.28690.96699.051.17
11721.54723.340.25717.37718.090.10811.56815.680.51624.82636.771.91
12619.63619.630.00610.00610.230.04618.23628.251.62610.23614.240.66
132669.392669.390.002486.442497.420.442609.362690.153.102416.042434.990.78
141090.551101.611.011039.061069.432.92982.251002.282.04922.75924.270.16
151041.751112.546.801181.681197.561.341246.491247.390.071229.951230.370.03
16698.61698.610.00698.61698.610.00708.20712.300.58698.61698.610.00
17870.86875.440.53861.79867.850.70861.79862.620.10861.79862.620.10
181053.091059.440.601102.171123.161.901134.111163.872.62926.34946.272.15
19792.42801.901.20801.13802.650.19801.21824.152.86652.15682.204.61
20545.68553.121.36541.58553.502.20551.61567.892.95478.15490.802.65
Ave762.35767.930.59754.24761.430.90770.08780.340.96713.70720.210.90
Table 7. Result for 2|SR|L 2L-VRP (Classes 2–5). “BKS” denotes the best-known solution found in [10,11,12].
Table 7. Result for 2|SR|L 2L-VRP (Classes 2–5). “BKS” denotes the best-known solution found in [10,11,12].
Inst.Class 2Class 3Class 4Class 5
BKSCostGapBKSCostGapBKSCostGapBKSCostGap
1278.73278.730.00284.23284.520.10282.95282.950.00278.73278.730.00
2334.96334.960.00352.16352.160.00334.96334.960.00334.96334.960.00
3384.93384.930.00385.32385.320.00362.41364.450.56358.40358.400.00
4430.89430.890.00430.89430.890.00447.37447.370.00430.89430.890.00
5375.28375.280.00379.94385.691.51383.88383.880.00375.28375.280.00
6495.85499.080.65498.16498.160.00498.32502.110.76495.85507.182.28
7716.82716.820.00668.39689.013.09686.26702.452.36657.77660.370.40
8671.75674.200.36738.43741.120.36692.47705.891.94609.90609.900.00
9607.65619.211.90607.65615.571.30625.10625.100.00607.65618.901.85
10684.37685.210.12615.68623.291.24708.68708.680.00680.26699.012.76
11694.60694.600.00704.77711.440.95776.69776.690.00624.82624.820.00
12610.00619.631.58610.00610.230.04614.24614.240.00601.00610.241.54
132526.072534.970.352436.062469.981.392561.652623.652.422334.782334.780.00
141032.011042.831.051006.691012.460.57981.90988.750.70921.45928.910.81
151005.261018.771.341142.181170.822.511171.411172.430.091160.961160.960.00
16698.61698.610.00698.61698.610.00703.35708.200.69698.61698.610.00
17861.79863.270.17861.79861.790.00861.79861.790.00861.79861.790.00
18988.37989.210.081030.691031.940.121104.081128.252.19921.29926.400.55
19731.93732.640.10757.59757.590.00776.59776.590.00651.97651.970.00
20495.01501.891.39519.15536.583.36541.17549.381.52472.09488.283.43
Ave731.24734.790.46736.42743.360.83755.76762.890.66703.92708.020.68
Table 8. Comparison results for the 2L-VRP under the 2|UR|L and 2|SR|L settings (average over Classes 2–5). Other state-of-the-art approaches: ACO [11], BR-LNS [41] and MS-BR [10].
Table 8. Comparison results for the 2L-VRP under the 2|UR|L and 2|SR|L settings (average over Classes 2–5). Other state-of-the-art approaches: ACO [11], BR-LNS [41] and MS-BR [10].
Inst.URSR
ACOMS-BREATSACOBR-LNSEATS
1281.16280.84280.84281.7281.16281.23
2341.02339.26339.26341.021339.261339.26
3372.93370.62370.79376.65374.07373.28
4435.01435.01435.01435.01435.01435.01
5378.60378.60379.03378.59378.59380.03
6497.05497.05497.05497.62497.045501.63
7688.50681.00682.10696.23685.12692.16
8678.75675.46681.74690.10686.34682.78
9612.02612.01614.96612.02612.01619.70
10671.00667.65673.33679.67674.94679.05
11698.25690.56692.30711.67709.13701.89
12611.12611.06611.12613.89611.12613.59
132468.192437.152439.702513.672490.832490.85
14974.81968.55971.81992.53986.41993.24
151132.491112.001122.461165.381131.941130.75
16699.79699.80701.01699.80699.80701.01
17862.37861.79865.50861.79861.79862.16
181012.20999.221005.951018.951012.211018.95
19726.96722.17724.41737.73730.60729.70
20508.69501.90503.55517.79510.35519.03
Table 9. Comparative results of stochastic instances on 2|UO|L 2L-VRPSC under different probabilities that customers require service.
Table 9. Comparative results of stochastic instances on 2|UO|L 2L-VRPSC under different probabilities that customers require service.
Instance0.20.40.60.8
EEVHNVSSEEVHNVSSEEVHNVSSEEVHNVSS
1296.5289.47.1291.9287.24.7287.6285.12.6283.4282.90.4
2366.9350.616.4357.3346.011.4353.6344.19.4349.2342.07.2
3409.4398.411.0419.8403.416.4455.7420.335.4416.4401.814.6
4520.1473.446.7490.9459.931.0452.2441.410.8450.3440.59.8
5451.6411.739.9434.8404.030.9421.2397.623.6391.5383.38.2
6595.3545.150.2572.4534.537.9541.4519.821.6515.4507.28.2
7847.1783.963.2844.3782.661.7809.6766.443.2768.2746.521.7
8809.2755.853.4802.9752.850.1736.0720.815.2734.2719.914.3
9700.1654.345.8684.5647.037.6667.2638.728.5632.1621.710.4
10791.6738.952.7761.5724.736.8789.8738.051.7708.5699.09.5
11843.5774.569.1812.8760.252.5812.8760.252.6740.0725.414.6
12712.4661.550.9693.9652.941.0689.6650.838.8641.9627.914.0
133069.42818.9250.53015.22793.9221.32829.72706.6123.12682.02635.047.0
141278.31152.3126.01225.71128.397.41184.91109.475.51089.71063.925.8
151231.01134.896.21207.51123.983.61160.91102.058.91113.01079.034.0
16831.6762.269.4819.5756.662.8757.1727.329.9739.1718.620.5
171056.7961.894.9990.5931.259.3981.1926.854.3940.4907.333.1
181316.01169.2146.81218.41125.093.41170.71102.867.91115.61076.539.1
19926.9845.481.6920.2842.377.9845.4807.338.1813.8792.121.7
20685.6586.299.4664.5576.887.7598.1569.129.0576.0558.517.5
Ave887.0813.473.6861.4801.759.8827.2786.740.5785.0766.418.6
Table 10. Comparison of average results between EATS, ATS and ETS algorithms, where “Gap” denotes the percentage gap between the proposed EATS and ATS or ETS.
Table 10. Comparison of average results between EATS, ATS and ETS algorithms, where “Gap” denotes the percentage gap between the proposed EATS and ATS or ETS.
InstanceEATSATSETS
CostTime (s)CostTime (s)Gap (%)CostTime (s)Gap (%)
1282.95712282.957150.00282.957160.00
3401.81801404.827920.75404.597970.69
5383.29741384.387340.28383.297450.00
7746.50938741.12904−0.72745.46943−0.14
9621.731356628.6513091.11627.7613070.97
11725.401745735.2417021.36737.2917371.64
132634.9914002699.3013732.442663.1314071.07
151079.0019011082.7818790.351074.141921-0.45
17907.351711915.8416620.94920.5117201.45
19792.111799806.7917791.85799.3417580.91
Ave857.51310.4868.21284.90.84863.851305.00.61
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.

Share and Cite

MDPI and ACS Style

Zhang, Z.; Ji, B.; Yu, S.S. An Adaptive Tabu Search Algorithm for Solving the Two-Dimensional Loading Constrained Vehicle Routing Problem with Stochastic Customers. Sustainability 2023, 15, 1741. https://doi.org/10.3390/su15021741

AMA Style

Zhang Z, Ji B, Yu SS. An Adaptive Tabu Search Algorithm for Solving the Two-Dimensional Loading Constrained Vehicle Routing Problem with Stochastic Customers. Sustainability. 2023; 15(2):1741. https://doi.org/10.3390/su15021741

Chicago/Turabian Style

Zhang, Zheng, Bin Ji, and Samson S. Yu. 2023. "An Adaptive Tabu Search Algorithm for Solving the Two-Dimensional Loading Constrained Vehicle Routing Problem with Stochastic Customers" Sustainability 15, no. 2: 1741. https://doi.org/10.3390/su15021741

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop