Next Article in Journal
Education Professionals’ Cooperative Learning for the Development of Professional Capital
Next Article in Special Issue
The Influence of Rule of Law on Government’s Sustainable Economic Management: Evidence from China
Previous Article in Journal
Spatial Distribution Characteristics and Influencing Factors of Cultural and Tourism Resources in Xihu District of Hangzhou
Previous Article in Special Issue
Two-Stage Robust Programming Modeling for Continuous Berth Allocation with Uncertain Vessel Arrival Time
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A New Hybrid Algorithm for Vehicle Routing Optimization

1
School of Software, Henan Polytechnic University, Jiaozuo 454003, China
2
School of Computer Science and Technology, Henan Polytechnic University, Jiaozuo 454003, China
3
School of Physics and Electronic Information Engineering, Henan Polytechnic University, Jiaozuo 454000, China
4
School of Electrical Engineering and Automation, Henan Polytechnic University, Jiaozuo 454000, China
5
BYD Baolong Factory, No. 1 Baohe Road, Longgang District, Shenzhen 518116, China
6
School of Management Engineering and Business, Hebei University of Engineering, Handan 056038, China
*
Author to whom correspondence should be addressed.
Sustainability 2023, 15(14), 10982; https://doi.org/10.3390/su151410982
Submission received: 7 June 2023 / Revised: 5 July 2023 / Accepted: 10 July 2023 / Published: 13 July 2023
(This article belongs to the Special Issue Sustainable Supply Chain Management and Optimization Volume II)

Abstract

:
To solve the vehicle routing problem with simultaneous pickup–delivery and time windows (VRPSDPTW), a sine cosine and firefly perturbed sparrow search algorithm (SFSSA) is presented. Based on the standard sparrow search algorithm, the initial population uses tent chaotic mapping to change the population diversity; then, the discoverer location is updated using the sine cosine fluctuation range of the random weight factor, and finally the global population location is updated using the firefly perturbation strategy. In this study, SFSSA was compared with a genetic algorithm (GA), parallel simulated annealing algorithm (p-SA), discrete cuckoo search algorithm (DCS), and novel mimetic algorithm with efficient local search and extended neighborhood (MATE) adopting improved Solomon’s benchmark test cases. The computational results showed that the proposed SFSSA was able to achieve the current optimal solutions for 100% of the nine small-to-medium instances. For large-scale instances, SFSSA obtained the current optimal solutions for 25 out of 56 instances. The experimental findings demonstrated that SFSSA was an effective method for solving the VRPSPDTW problem.

1. Introduction

In today’s fiercely competitive market environment, in order to manage logistics systems more effectively, enterprises are optimizing strategic and operational decisions. One of the most effective operational decisions is to find the best vehicle routing, which can provide huge potential for reducing logistics costs and improving service levels [1]. The vehicle routing problem with simultaneous pickup–delivery and time windows (VRPSPDTW) has attracted widespread attention from researchers due to the integration of forward and reverse logistics processes in enterprises [2]. VRPSPDTW is an important extension of the classic vehicle routing problem (VRP). Simultaneous pickup and delivery (SPD) means that the vehicle not only needs to deliver goods to the customer, but also needs to pick up goods at the customer’s location. For example, the courier needs to not only deliver a package to a customer, but also bring back goods that must be mailed from the customer. The time window (TW) specifies the earliest and latest allowed service start times for each customer. This paper studies a hard time window, and there is no penalty for a breach of contract, that is, when the vehicle arrives earlier than the earliest allowed start of service time, it must wait until the time window opens, and vehicles are not allowed to arrive later than the latest allowed service start time. In VRPSPDTW, the distribution center has some homogeneous or heterogeneous vehicles used to serve customers scattered in different locations. These vehicles first deliver the goods from the distribution center to customers, load packages from the customers, and then return to the distribution center. In this entire process, the vehicle loading capacity limit or the time window limit of the customers and distribution center must be observed.
In solving problems like VRPSPDTW, the difficulty and computational effort will grow exponentially in the face of large volumes of customer data, and the VRPSDPTW problem has been shown to be a typical combinatorial NP-hard problem [3]. Accurate algorithms are able to find the optimal solution to this problem theoretically, but due to the long solving time and high computer memory requirements in practice, they are only suitable for solving small-customer-scale VRPSPDTW [4]. In recent years, scholars have focused on designing different heuristic algorithms to find the approximate optimal solution of the problem. Existing studies on VRPSPDTW are shown in Table 1.
Three conclusions could be drawn about existing research through the literature analysis. Firstly, the most basic constraint is the vehicle load constraint or the distance constraint, and a multi-objective function with a minimum total cost (including distribution, time window, and distance cost) is often set as the optimization method. Secondly, there are relatively few relevant studies at home and abroad on VRPSPDTW, and there is a lack of effective solving algorithms. At present, the vast majority of VRP solving methods are meta-heuristic algorithms. In order to solve similar VRPSPDTW problems and face a large amount of customer data, the swarm intelligent optimization algorithm has some advantages in solving the problem. The majority of the research relies on Wang and Chen’s [5] dataset to answer the problem, which is now the only worldwide commonly used test dataset for solving VRPSPDTW. Wang et al. [5] were the first to give a solution example for VRPSPDTW. They developed a mathematical model with the primary goal of lowering allocation and driving costs and offered a co-evolutionary genetic algorithm. Its solution algorithm was primarily based on classic heuristic algorithms. Last, none of the known meta-heuristic algorithms in the literature can obtain the optimal solution for all 65 test cases, so scholars are still searching for more stable and efficient algorithms. Scholars have generally focused on designing different heuristic algorithm improvements, such as choosing to use the p-SA, MATE, and ACO-GA. There is less literature on the use of swarm intelligence algorithms. The first proposed swarm intelligence algorithm for solving the VRPSDPTW problem used the cuckoo search (CS) algorithm. In view of this, we proposed the use of the sparrow search algorithm (SSA) to solve the VRPSDPTW problem to extend the research ideas and directions regarding swarm intelligence algorithms.
The SSA achieves positional search by mimicking the foraging and anti-predatory behaviors of sparrows to find the local optimum of the partial NP-hard problem. In this paper, based on the original sparrow search algorithm, a tent chaotic sequence was introduced for the randomly generated sparrow population to rank the initial population. The SCA was introduced for the problematic aspect of the SSA that easily falls into the optimal solution, and a random weight factor was introduced here to balance the global search ability and improve the search ability of the algorithm. The FA perturbation strategy was introduced at the end of the algorithm, which had the advantage of finding the local optimal solution of the problem quickly while avoiding the risk of falling into the local optimal solution [19]. Currently, the SFSSA has been applied in solving dynamic vehicle path problems [20]. However, there is still a lot of research space regarding the solution of the VRPSDPTW variant of the problem. The main contributions of this paper are listed below.
From an algorithmic point of view, improvements to several parts of the sparrow search algorithm were proposed in order to enhance the search and merit-seeking capabilities of the original algorithm. Firstly, we introduced tent chaotic mapping in the initial process to improve the diversity of the initial population. Second, we proposed an SCA with random weight factors, VRPSPDTW, to improve the search efficiency at the discoverer position. Thirdly, we introduced a perturbation strategy step VRPSPDTW, which allowed flexibility in finding a more optimal solution without the algorithm falling into an optimal solution. Finally, we fused the improved parts into the SSA framework to propose an improved VRPSPDTW for the sparrow search algorithm.
From an instance perspective, the SFSSA showed excellent algorithmic performance in solving the VRPSPDTW problem based on the available benchmark test cases (Wang and Chen) [5]. The focus was on the 25 benchmark test cases in which SFSSA found the optimal solution at this stage.
The content of this article is organized as follows. Section 2 describes VRPSPDTW and its mathematical model. Section 3 provides a detailed explanation of the SFSSA. Section 4 compares the performance of the SFSSA with existing algorithms for solving VRPSPDTW. Section 5 draws corresponding conclusions.

2. VRPSPDTW Description and Mathematical Model

2.1. Problem Description

VRPSPDTW is simply characterized as a group of vehicles of the same type moving from the distribution center, servicing their allocated client set, and returning to the distribution center after the service is completed. Each customer’s demand and intended service window are known. The truck picks up the commodities needed by the customer at the distribution center and delivers them within the time frame specified by the customer. Simultaneously, the items are retrieved from the customer’s hands in accordance with the pickup conditions. A single vehicle visits each consumer only once. The aim is to determine how to decide the driving route for each vehicle so that the vehicle can cover all client requests with the fewest vehicles and the lowest driving cost, while meeting limits such as loading capacity and driving distance. Unlike classic VRP issues, this problem considers the pickup and delivery times of each customer point and allows for simultaneous pickup and delivery when arriving at the same customer point. The problem specifically involves a distribution center and a collection of customer points, each of which requires a specific number of goods to be delivered. To execute the delivery and pickup activities, the delivery staff must arrive at the customer location within a particular time range. At the same time, delivery vehicles have capacity constraints, which means that the number of items each vehicle may load is limited. This issue allows for the simultaneous collection and delivery of goods to a client point to improve efficiency.
This problem is defined in this paper as a directed graph  G = ( N 0 ,   A ) , where  N 0 = { 0 ,   1 ,   2 ,   ,   n }  represents a collection of all nodes, and 0 indicates a distribution center, containing distribution and collection centers. Customers are represented by  1 ,   2 ,   ,   n  nodes for distribution and collection.  A  is a set of arcs that represents all of the edges of each node. A plausible delivery route in the directed graph  G  must begin at node 0 and conclude at node  n + 1 . Furthermore,  + i  denotes the set of arcs that begin at node  i , while  j  represents the set of arcs that end at node  j .
The goal of VRPSPDTW is to meet the needs of customers for pickup and delivery at the lowest possible cost while adhering to the following constraints:
(1)
When serving a customer, the unloading duty must be completed first.
(2)
Each customer uses just one vehicle for pickup and delivery.
(3)
All goods distributed to customers originate in the distribution center, and all goods collected from customers must be returned to the distribution center.
(4)
Only one truck can serve each customer, and each truck can only serve one way.
(5)
After finishing the task, all vehicles must leave the distribution center and return to the distribution center.
(6)
The trucks maintain a constant speed.
(7)
Vehicles must adhere to loading capacity, distribution center, and customer time-window limits.

2.2. Parameter Explanation

The following parameters were defined in this study based on the above description of the VRPSPDTW problem, as shown in Table 2.

2.3. Model Formulation

Scholars have concentrated on two objective functions in the present research on the VRPSPDTW problem, namely minimizing allocation costs and path costs. This paper’s research objective was also aligned with Wang and Chen’s [5] optimization objectives. In summary, the VRPSPDTW model is as follows, based on the above parameter settings:
m i n Z = θ k K j A C d x 0 j k + 1 θ k K i , j A C t d i j x i j k
s.t.
k K i N 0 x i j k = 1 , j N
j + 0 x 0 j k = 1 , k K
j j x i j k j + j x i j k = 0 , i N , k K
j n + 1 x i , 0 , k = 1 , k K
j j x i h k = j + j x h j k , h N , k K
w i k + s i + t i j w j k 1 x i j k M , i , j A , k K
a i j + i x i j k w i k b i j + i x i j k , i N , k K
E w i k L , i 0 , k K
L 0 k = i N d i j + i x i j k , k K
L j L 0 k d j + p j M 1 x 0 j k , j N , k K
L j L i d j + p j M 1 k K x i j k , i N , j N
L 0 k Q , k K
L 0 k Q + M 1 i N x i j k , i N , k K
x i j k 0 ,   1 , i , j A , k K
The target function for minimizing the mathematical model’s allocation and driving costs is shown in Formula (1). Each client can only be assigned to one path, according to Formula (2). Formulas (3)–(5) show delivery vehicle  k , which starts in the distribution center, serves customers, and then returns to the distribution center. Formula (6) represents the flow conservation equation, which means that the delivery vehicle  k  must leave after serving. Formula (7) represents the continuity of travel time for delivery vehicle  k . Formula (8) indicates that the service time must be within the customer’s left and right time frames, whereas Formula (9) indicates that the vehicle’s departure time from the distribution center must be within the distribution center’s left and right time frames. Formula (10) is for calculating the initial loading capacity. Formula (11) is for calculating the vehicle load after the first service, whereas Formula (12) calculates the vehicle load after any service other than the first. Formula (13) reflects the initial loading capacity of the vehicle at the distribution facility, which must not be greater than its maximum loading capacity. Formula (14) states that after completing any client service on the route, the vehicle’s carrying capacity shall not exceed its maximum loading capacity. Formula (15) represents the range of values for the decision variables.

3. Model Solving

3.1. Sparrow Search Algorithm

The sparrow search algorithm, based on the foraging characteristics and anti-predatory behavior of sparrows, is a new group intelligent optimization algorithm. Compared with other group intelligent optimization algorithms, the SSA has the characteristics of a high search accuracy, fast convergence, and robustness, and has certain advantages in dealing with large-scale optimization problems [21]. The mathematical model of sparrow population foraging is discoverer-follower-scout [22]. Individuals with more capable abilities are chosen as discoverers by the sparrow population, while others are followers. Simultaneously, individuals with a strong reconnaissance ability are chosen as scouts from the remaining population. If natural enemies are discovered, these sparrows forego their meal in order to assure individual safety. As a result, each individual sparrow has only one attribute: location, which represents the location where it obtains food. Each sparrow has a clear division of work and the following three behaviors: (1) continuing to hunt for food as a discoverer; (2) following the discoverer in search of food as a follower; and (3) as a scout, giving up food when natural adversaries appear.
Each sparrow’s position in the  D  dimensional solution space is  X = ( x 1 ,   x 2 ,   ,   x D ) , and its fitness value is  f i = f ( x 1 ,   x 2 ,   ,   x D ) .
The following formula is used to update the position of each generation of discoverers:
x i , d t + 1 = x i , d t exp i α i t e r m a x , R 2 < S T x i , d t + Q L , R 2 S T
where  x i , d t + 1  denotes the d-dimensional location of the i-th number of individuals in the population’s t-th generation,  α  is a random number in the range  [ 0 ,   1 ] Q  is a random number from the normal distribution,  R 2  is a uniform random number in the range  [ 0 ,   1 ] , and ST is a  [ 0.5 ,   1 ]  alert threshold.
The following is the formula for updating the follower’s position:
x i , d t + 1 = Q exp x w i , d t x i , d t i 2 , i > 0.5 n x b i , d t + 1 D d = 1 D r a n d 1 ,   1 . x b i , d t x i , d t , i 0.5 n
where  x w  indicates the poorest position in the current population, and  x b  represents the best position.
In each generation, a number of  S D  individuals are chosen at random from the population to execute warning behavior. The update formula is as follows:
x i , d t + 1 = x b i , d t + β x i , d t x b i , d t , f i f g x i , d t + K x i , d t x w i , d t f i f w + ε , f i = f g
where  β  is a random number that follows the standard normal distribution,  K  is a uniform random number in the range  [ 1 ,   1 ] , and  ε  has an extremely modest value to ensure that the denominator is not unique.

3.2. Tent Chaotic Mapping

Tent chaotic mapping is especially well-suited for populating optimization algorithms, and employing tent chaotic mapping instead of random parameters allows the algorithm to create initial solutions with high variation in the search space [23]. A high-quality starting population improves the algorithm’s performance in terms of convergence speed and solution correctness. Tent chaotic mapping has also been applied to the salp swarm algorithm to improve its global search mobility for robust global optimization [24].
In the basic sparrow search algorithm, the populations are generated by random distribution, and the initial populations are highly randomized, which does not guarantee the quality of the initial solutions. To improve the quality of the initial solutions and increase the population diversity, a random chaotic sequence generated by tent chaotic mapping was introduced to generate the initial sparrow population.
Tent chaotic mapping initialized the sparrow population through the following steps:
Step 1: Determine the value of parameter  α .
Step 2: Determine the range of the initial value  x 0  sequence based on the optimization problem’s objective function and generate  X  values at random within that range.
Step 3: Let  X 0 = x 0 ( n ) ,   n = 1 ,   2 ,   ,   X .
Step 4: Let  x 1 = X 0 , x ( n + 1 ) , which was calculated using Formula (19).
x n + 1 = x n α , 0 x n < α 1 x n 1 α , α x n < 1 , 0 < α < 1
To ensure that the sequence formed by tent chaotic mapping was valid,  α 0.5 , and the initial value  x 0  could not match parameter  α .
Step 5: Save the  x  sequence and enter the SFSSA’s main loop.

3.3. Improvement of SCA

The sine cosine optimization algorithm (SCA) is a swarm intelligence optimization algorithm with a simple structure and straightforward implementation that has a high generalization power and is applied in a variety of applications. In recent years, the SCA has solved practical problems in combination with other algorithms and achieved some research results, for example, in multi-target dynamic material distribution problems [25] and robot path planning problems [26]. During the process of finding the optimal solution, the SCA uses randomly distributed solutions in the search space of sine and cosine to search for updates in a fast oscillatory manner, and the solution search converges with the sine and cosine oscillations [27]. The addition of stochastic inertia weights can balance the global convergence ability, make it easier for the algorithm to locate the global optimal solution, keep the algorithm from falling into a local optimum, and increase the search results’ stability.
ω = ω m i n + ω m a x ω m i n sin t π i t e r m a x
After one cycle of food search, the discoverer sparrows are each in their own predatory posture in this paper’s algorithm. The revised SCA updated the existing sparrow position at this step to optimize the existing sparrow position. The steps for updating the discoverer sparrow position are as follows.
Step 1: The optimization value of the sparrow was calculated as the sum of the fitness values of the i-th individual sparrow after the last iteration. For each sparrow  i = 1 ,   2 ,   ,   X , the optimization value is as follows:
S S A S k i l l i = f i t n e s s i
Step 2: We sorted the individual fitness values of the sparrows.
Step 3: The discoverer sparrow was chosen based on the best ranking value, and the position was updated using Equations (16) and (22). The position of the  x i , d t + 1  discoverer sparrow generated by the  t + 1  iteration replication is shown below.
x i , d t + 1 = 1 ω x i , d t + ω sin r 0 r 1 x b x i , d t ,    R 2 < S T 1 ω x i , d t + ω cos r 0 r 1 x b x i , d t ,    R 2 S T
Step 4: We saved each sparrow position before entering the SFSSA loop.

3.4. Disturbance Strategy Stage

The firefly algorithm is a heuristic algorithm inspired by the flickering behavior of fireflies. Through their own luminescence system for mutual attraction, the strength of luminescence becomes a signal to attract other fireflies, so that their weak luminescence weak moves towards the side of strong luminescence [28]. The firefly algorithm has been applied to solve engineering optimization problems due to its conceptual simplicity, ease of implementation, and good optimization performance [29].
The following is the formula for the luminosity and attraction of fireflies:
I = I 0 . e γ r i , j 2
β = β 0 . e γ r i , j 2
The SSA updates all existing sparrow positions based on the FA’s luminescence qualities and attraction strength, and the position updating formula for sparrow  i  being attracted to move toward sparrow  j  is as follows:
x i , d = x i , d + β 0 . e γ r i , j 2 . x j , d x i , d + α . r a n d 0.5
The remaining part of the population comprises followers, and the follower position was updated by Equation (17); then, the warning individuals were selected based on the proportion, the risk population position was updated by Equation (18), and the new fitness value was calculated. The following are the steps for upgrading the firefly perturbation strategy:
Step 1: The firefly algorithm perturbation strategy was introduced. At this point, the sparrow search individuals in the population were equivalent to the firefly individuals, and the new fitness value was determined using Equation (26) based on the previous iteration’s position.
S S A S k i l l i n e w = f i t n e s s i n e w
Step 2: The new fitness value was used as the maximum luminous brightness value of the individual firefly  I 0 .
Step 3: We determined the search direction of the population by calculating the firefly luminous intensity  I  and attractive intensity  β  using Equations (23) and (24).
Step 4: We updated the population position with the firefly disturbance strategy (Formula (25)) and randomly perturbed the population at its most advantageous position.
Step 5: We determined the population’s fitness value following disruption.
Step 6: We reserved the optimal sparrow population position and started the SFSSA loop.

3.5. SFSSA Step Process

VRPSPDTW is an NP-hard problem, which was solved in this paper using the SFSSA technique. The superiority of the SFSSA in solving emergency material distribution and dynamic vehicle path problems is described in [16,17]. The SFSSA uses tent chaotic mapping on the basis of the original technique to disturb the initial sparrow population and make it more homogeneous. The SCA method was introduced at the discoverer location to improve the search space area of the ideal solution using the sine and cosine characteristics, as the discoverer needed to identify the optimal food position. Random inertia weights were applied to the SCA to increase the algorithm’s capacity to locate the optimum. Finally, the FA perturbation approach was implemented to disrupt the optimal position of the sparrow population in order to increase the algorithm’s search capabilities. The algorithm’s major steps are as follows:
Step 1: The sparrow population is  X . We initialized the parameters  P D S D S T , and  R 2  and the iteration number.
Step 2: Using tent chaotic mapping, we generated uniformly distributed initial sparrow individuals and then repeated Steps 1–5 from Section 3.2.
Step 3: The algorithm’s main loop computed and compared the fitness value of each sparrow, as well as the current fitness value, to identify the ideal sparrow position, denoted as  X b .
Step 4: To determine the discoverer location, we performed Steps 1–4 from Section 3.3.
Step 5: Taking the position of a follower, if  i > 0.5 n , the position of each individual follower sparrow had to be updated using Formula (17).
Step 6: For the scout position, if  f i f g , the position of each individual sparrow had to be updated using Formula (18).
Step 7: According to Equations (16)–(18), the positions of the discoverer, follower, and scout sparrows were updated; the fitness value  f i t n e s s i n e w  was recalculated; and the current optimal fitness value  f i t n e s s i g o o d  and the worst fitness value  f i t n e s s i w o r s t  were selected.
Step 8: For the perturbation approach, we performed Steps 1–6 from Section 3.4.
Step 9: We determined whether the algorithm’s termination condition was satisfied and halted the loop if it was; otherwise, we proceeded to Step 3.
Step 10: We returned the global best solution  X b .

4. Algorithm Testing and Analysis

4.1. Basic Test Examples

This paper used the standard international algorithm proposed by Wang and Chen [5] in 2012 in order to verify the effectiveness of the SFSSA in solving the VRPSDPTW problem. The algorithm was based on Solomon’s algorithm [30] to improve the generated VRPSDPTW problem, which contained nine small- and medium-scale examples (customer sizes 5, 10, and 25, respectively) and 56 large-scale cases (customer size 100). The arithmetic produced six different datasets: Rdp1, Rdp2, Cdp1, Cdp2, RCdp1, and RCdp2. In the test cases Rdp1 and Rdp2, customer locations were randomly dispersed; in the test cases Cdp1 and Cdp2, customer locations were somewhat concentrated; and in the test cases RCdp1 and RCdp2, customer locations were a mixed type of dispersed and concentrated.

4.2. Test Environment

The test set was based on this paper’s experimental operating environment of an 11th Gen Intel(R) Core(TM) i5-11400H @ 2.70 GHz, 16 GB memory, and Windows 11 operating system MATLAB R2020b simulation experimental operating platform. Since the solutions obtained from each run of the algorithm were different, to ensure the accuracy of the algorithm, it was run 20 times independently on each dataset, and the optimal values of the run results were recorded for the comparison of the algorithms’ performance.

4.3. Parameter Setting

The key parameters of the SFSSA are as follows: The discoverers are a group with outstanding ability compared to the whole population, generally making up 10–20% of the population number, so the  P D  takes a value of 0.2. The sparrows that are aware of the danger are vigilantes from the whole population and occupy about 10% of the population size, so  S D  takes the value of 0.1. ST is the safety threshold, which means that the remaining sparrows are in a safe state, and this parameter takes a value of 0.8.  ω m a x = 1.0  and  ω m i n = 0.4  are the values of the inertia weights;  ω m a x  generally takes a value range of  1 ,   0.5 ,  and  ω m i n  generally takes a value range of  [ 0.5 ,   0 ) . Other parameters of the SFSSA are: the number of populations (NIND = 5000) and the maximum number of iterations (MAXGEN = 100). The other test algorithm parameters are shown in Table 3.

4.4. Algorithm Comparison

4.4.1. Comparison of Small- and Medium-Scale Calculations

Wang and Chen [5] used the CPLEX algorithm and the GA to test the feasibility and effectiveness of the VRPSPDTW problem and assessed the optimal results for nine small and medium-sized cases, including three cases with a customer size of 10, three cases with a customer size of 25, and three cases with a customer size of 50. Based on existing research, comparison experiments were carried out while adhering to vehicle load and time-window limits. In this study, the experimental findings of the SFSSA were compared and analyzed with the best results produced by the GA, p-SA, DCS algorithm, and MATE.
Table 4 displays the example’s experimental outcomes. NV and TD denote the number of delivery vehicles and total delivery paths, respectively, among the five algorithm trial results. The algorithms’ ideal solutions are represented in bold. The NV and TD findings revealed that the SFSSA method, together with the GA and the DCS algorithm, reached the currently known optimal solution while solving small-scale VRPSDPTW issues in this work. As a result, the proposed method’s effectiveness in tackling the problem of small-scale consumers with time windows and simultaneous pickup and delivery was validated.

4.4.2. Comparison of Large-Scale Examples

In this study, we compared the proposed SFSSA method to existing algorithms for solving VRPSPDTW in the literature, which include the GA [3], p-SA [4], DCS [5], and MATE [6]. This section’s analysis focused on consumer location distribution using the Solomon algorithm [30] as refined by Wang and Chen [5]. The black bolded numbers represent the best solutions found so far. Table 5 compares the results of the SFSSA to those of other algorithms for the examples of randomly dispersed customer locations (Rdp), moderately concentrated customer locations (Cdp), and mixed dispersed and concentrated customer locations (RCdp).
According to our analysis of the result data in Table 5, the GA achieved 11 better NV values and 4 better TD values than the other algorithms in the instance of Rdp. When compared to the other algorithms, the p-SA method obtained 17 better NV values and 2 better TD values. When compared to the other algorithms, the DCS method obtained 16 better NV values and 2 better TD values. When compared to the other algorithms, the MATE method produced 22 better NV values and 6 better TD values. When compared to the other algorithms, the SFSSA method obtained 12 better NV values and 9 better TD values. When compared to the other algorithms, the ACO-DR method obtained four higher NV values and seven higher TD values. By comparing the overall experimental results of all algorithms, we found that the SFSSA method outperformed the GA, p-SA, DCS, and MATE approaches in solving TD values.
Secondly, in the case of Cdp, the GA obtained 14 better NV values and 9 better TD values than the other algorithms. The p-SA obtained 14 better NV values and 8 better TD values compared to the other algorithms. The DCS algorithm obtained 14 better NV values and 10 better TD values compared to the other algorithms. The MATE method obtained 17 better NV values and 11 better TD values compared to the other algorithms. The SFSSA obtained 15 better NV values and 13 better TD values compared to the other algorithms. According to the results in the table, the GA, DCS, MATE, and SFSSA approaches all obtained the same results in the Cdp2 instance. The SFSSA achieved better results compared to the other algorithms.
Finally, in the case of RCdp, the GA method outperformed the other algorithms in six NV values and four TD values. The p-SA outperformed the other algorithms in 10 NV values and 1 TD value. The DCS algorithm outperformed the other algorithms in 11 NV values and 0 TD values. The MATE algorithm produced 16 NV values and 4 TD values that outperformed the other methods. The SFSSA outperformed the other algorithms in seven NV values and eight TD values. The table findings showed that the SFSSA method had no benefit over the p-SA, DCS algorithm, or MATE in solving NV values. The SFSSA, on the other hand, was a relatively good approach for solving TD values. Overall, the SFSSA outperformed the other algorithms when tackling small and medium-sized VRPSPDTW problems.
In summary, the SFSSA outperformed the other algorithms in addressing VRPSPDTW issues on both a small-to-medium and large scale.

5. Conclusions

The sparrow search algorithm is a swarm intelligence algorithm based on the optimization of the social characteristics of a group, simulating sparrow foraging and anti-predatory behavior by continuously updating individual positions. Compared to traditional algorithms, the sparrow search algorithm has the characteristics of a simple structure, easy implementation, fewer control parameters, and better local search capabilities. This paper investigated VRPSPDTW and designed the SSA for the first time to solve this problem. Based on the standard SSA, the population diversity for the initial population was improved using tent chaotic mapping. The discoverer position was changed using the sine cosine optimization algorithm (SCA) with a random weight factor. Further, the firefly algorithm’s (FA) perturbation approach was employed to update the global population position. By using the SSA to solve all 65 instances of Wang and Chen’s [5] improved Solomon example, and comparing the calculation results of the GA, p-SA, DCS, and MATE methods, we found that in the small-to-medium-scale cases, the NV and TD values obtained by the SFSSA were the same as those obtained by the GA and DCS algorithm, and all of the algorithms achieved the current optimal solution. In the large-scale instance, 25 results from the SFSSA reached the current optimal solutions. This demonstrated the effectiveness of the proposed SFSSA in solving the VRPSPDTW problem.
In future research, extensions to the VRPSPDTW problem should be considered.
In this paper, we solved a mathematical model based on that proposed by Wang and Chen, where the vehicle travel speed was a constant variable. In real life, traffic congestion is bound to occur, and the objective function we considered was the minimum cost problem. In the future, the objective function will consider the variable-speed problem, which can be included to form a variable-speed VRPSPDTW problem.
There is currently a strong focus on sustainability and low-carbon issues, and in the future a low-carbon VRPSPDTW problem model could be built by considering vehicle carbon emissions in the target function.
The research on VRPSPDTW problems are all based on the minimum cost as the objective function, the future can be considered to add the objective function of the shortest time and the shortest distance to form a multi-objective VRPSPDTW problem. The VRPSPDTW problem has room for further research regarding the mathematical model proposed by Wang and Chen. Additionally, our proposed SFSSA was not optimal, and there is room for further research on the algorithm, objective function, and test cases of the VRPSPDTW problem.

Author Contributions

Writing—original draft preparation, Z.L. and W.W.; writing—review and editing, J.Z., J.H., J.W., S.L. and Y.S.; supervision, X.R. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Scientific and Technological Project in Henan Province, grant number 232102211004; the Doctoral Foundation of Henan Polytechnic University, grant number B2021-43; and the Social Science Grand Research of the Hebei Education Department, number ZD202105.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The research data utilized to substantiate the conclusions of this study are included in Table 2 and Table 3 in the publication.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Wang, C.; Guo, Y.; Liu, C.; Wang, G.M. Vehicle routing problem with simultaneous delivery and pickup problem solving by backtracking search optimization algorithm. Comput. Integ. Manuf. Syst. 2019, 25, 2237–2247. [Google Scholar]
  2. Wu, H.G.; Gao, Y.L. An ant colony optimization based on local search for the vehicle routing problem with simultaneous pickup–delivery and time window. Appl. Soft Comput. 2023, 139, 110203. [Google Scholar] [CrossRef]
  3. Lai, M.Y.; Cao, E.B. An improved differential evolution algorithm for vehicle routing problem with simultaneous pickups and deliveries and time window. Eng. Appl. Artif. Intell. 2010, 23, 188–195. [Google Scholar]
  4. Li, J.; Duan, Y.R.; Hao, L.Y.; Zhang, W.W. Hybrid optimization algorithm for vehicle routing problem with simultaneous delivery-pickup. J. Front. Comput. Sci. Technol. 2022, 16, 1623–1632. [Google Scholar]
  5. Wang, H.F.; Chen, Y.Y. A genetic algorithm for the simultaneous delivery and pickup problems with time window. Comput. Ind. Eng. 2012, 62, 84–95. [Google Scholar] [CrossRef]
  6. Wang, C.; Mu, D.; Zhao, F.; Sutherland, J.W. A parallel simulated annealing method for the vehicle routing problem with simultaneous pickup-delivery and time windows. Comput. Ind. Eng. 2015, 83, 111–122. [Google Scholar] [CrossRef]
  7. Wang, C.; Liu, C.; Mu, D.; Gao, Y. VRPSPDTW problem solving by discrete cuckoo search. Comput. Integ. Manuf. Syst. 2018, 24, 570–582. [Google Scholar]
  8. Liu, S.C.; Tang, K.; Yao, X. Memetic search for vehicle routing with simultaneous pickup-delivery and time windows. Swarm Evol. Comput. 2021, 66, 100927. [Google Scholar] [CrossRef]
  9. Wang, J.H.; Zhou, Y.; Wang, Y.; Zhang, J.; Chen, C.L.P.; Zheng, Z.B. Multiobjective vehicle routing problems with simultaneous delivery and pickup and time windows: Formulation, instances, and algorithms. IEEE Trans. Cybern. 2015, 46, 582–594. [Google Scholar] [CrossRef]
  10. Chaieb, M.; Sassi, D.B. Measuring and evaluating the home health care scheduling problem with simultaneous pick-up and delivery with time window using a Tabu search metaheuristic solution. Appl. Soft Comput. 2021, 113, 107957. [Google Scholar] [CrossRef]
  11. Zhou, H.; Qin, H.; Zhang, Z.Z.; Li, J.L. Two-echelon vehicle routing problem with time windows and simultaneous pickup and delivery. Soft Comput. 2022, 26, 3345–3360. [Google Scholar] [CrossRef]
  12. Zakaria, C.; Wajdi, T.; Nathalie, S.; Ilias, M. The Integrated Production-Inventory-Routing Problem with Reverse Logistics and Remanufacturing: A Two-Phase Decomposition Heuristic. Sustainability 2022, 14, 13563. [Google Scholar]
  13. Liu, X.C.; Wang, D.J.; Yin, Y.Q.; Cheng, T.C.E. Robust optimization for the electric vehicle pickup and delivery problem with time windows and uncertain demands. Comput. Oper. Res. 2023, 151, 106119. [Google Scholar] [CrossRef]
  14. Agrali, C.; Lee, S. The multi-depot pickup and delivery problem with capacitated electric vehicles, transfers, and time windows. Comput. Ind. Eng. 2023, 179, 109207. [Google Scholar] [CrossRef]
  15. Santos, M.J.; Jorge, D.; Ramos, T.; Barbosa-Póvoa, A. Green reverse logistics: Exploring the vehicle routing problem with deliveries and pickups. Omega 2023, 118, 102864. [Google Scholar] [CrossRef]
  16. Zhang, K.; Li, M.; Wang, J.G.; Li, Y.C.; Lin, X. A Two-stage Learning-based method for Large-scale On-demand pickup and delivery services with soft time windows. Transport. Res. C-EMER. 2023, 151, 104122. [Google Scholar] [CrossRef]
  17. Chen, L.; Ma, H.; Wang, Y.; Li, F. Vehicle Routing Problem for the Simultaneous Pickup and Delivery of Lithium Batteries of Small Power Vehicles under Charging and Swapping Mode. Sustainability 2022, 14, 9883. [Google Scholar] [CrossRef]
  18. Li, J.; Guo, H.; Zhou, Q.; Yang, B. Vehicle Routing and Scheduling Optimization of Ship Steel Distribution Center under Green Shipbuilding Mode. Sustainability 2019, 11, 4248. [Google Scholar] [CrossRef] [Green Version]
  19. Ren, X.Y.; Chen, S.; Wang, K.Y.; Tan, J. Design and application of improved sparrow search algorithm based on sine cosine and firefly perturbation. Math. Biosci. Eng. MBE 2022, 19, 11422–11452. [Google Scholar] [CrossRef]
  20. Ren, X.Y.; Chen, S.; Ren, L.Y. Optimization of regional emergency supplies distribution vehicle route with dynamic real-time demand. Math. Biosci. Eng. MBE 2023, 20, 7487–7518. [Google Scholar] [CrossRef]
  21. Gu, Q.H.; Jiang, B.J.; Chang, Z.Z.; Li, X.X. An improved sparrow search algorithm for solving large-scale optimization problems. Contr. Decis. 2023, 38, 1960–1968. [Google Scholar]
  22. Xue, J.K.; Shen, B. A novel swarm intelligence optimization approach: Sparrow search algorithm. Syst. Sci. Control Eng. 2020, 8, 22–34. [Google Scholar] [CrossRef]
  23. Lv, X.; Mu, X.D.; Zhang, J.; Wang, Z. Chaos sparrow search optimization algorithm. J. Beijing Univ. Aeronau. Astronaut. 2020, 47, 1712–1720. [Google Scholar]
  24. Tawhid, M.A.; Ibrahim, A.M. Improved salp swarm algorithm combined with chaos. Math. Comput. Simu. 2022, 202, 113–148. [Google Scholar] [CrossRef]
  25. Wang, M.R.; Ye, C.M.; Peng, D.J. Multi-period dynamic multi-objective emergency material distribution model under uncertain demand. Eng. Appl. Artif. Intel. 2023, 117, 105530. [Google Scholar]
  26. Paikray, H.K.; Das, P.K.; Panda, S. Optimal multi-robot path planning using particle swarm optimization algorithm improved by sine and cosine algorithms. Arab. J. Sci. Eng. 2021, 46, 3357–3381. [Google Scholar] [CrossRef]
  27. Rizk-Allah, R.M.; Hassanien, A.E. A comprehensive survey on the sine-cosine optimization algorithm. Artif. Intell. Rev. 2022, 56, 4801–4858. [Google Scholar] [CrossRef]
  28. Li, J.; Wei, X.Y.; Li, B.; Zeng, Z.G. A survey on firefly algorithms. Neurocomputing 2022, 500, 662–678. [Google Scholar] [CrossRef]
  29. Zare, M.; Ghasemi, M.; Zahedi, A.; Golalipour, K.; Mohammadi, S.K.; Mirjalili, S.; Abualigah, L. A global best-guided firefly algorithm for engineering problems. J. Bionic Eng. 2023, 1–30. [Google Scholar] [CrossRef]
  30. Solomon, M.M. Algorithms for the vehicle routing and scheduling problems with time window constraints. Oper. Res. 1987, 35, 254–265. [Google Scholar] [CrossRef] [Green Version]
Table 1. Existing studies on VRPSPDTW.
Table 1. Existing studies on VRPSPDTW.
LiteratureAlgorithmObjective
Wang, H.F. et al. [5]Co-evolution genetic algorithmMinimize total dispatching cost and total traveling cost
Wang, C. et al. [6]Simulated annealing (p-SA) algorithmMinimize the routing cost
Wang, C. et al. [7]Discrete cuckoo search algorithm (DCS)Minimize the delivery cost
Liu, S.C. et al. [8]A novel memetic algorithm with efficient local search and extended neighborhood (MATE)Minimize the total cost (the dispatching cost and the transportation cost)
Wang, J.H. et al. [9]Multi-objective local search (MOLS) and multi-objective memetic algorithm (MOMA)Minimize the number of vehicles, total travel distance, travel time, waiting time, and delay time
Chaieb, M. et al. [10]A hierarchical techniqueMinimize the total cost
Zhou, H. et al. [11]Variable neighborhood
Tabu search algorithm
Determine the vehicle routes with
a minimum total cost in both echelons
Zakaria, C. et al. [12]Two-phase decomposition heuristic algorithmMinimize the total manufacturing, remanufacturing, setup, inventory, and routing costs
Liu, X.C. et al. [13]Accurate two-stage decomposition methodMinimize the BEV assignment cost, total travel cost, and battery replacement charge
Agrali, C. et al. [14]Simulated annealing and
large neighborhood search
Minimize the total cost that occurs as a
result of the traveled distance
Santos, M.J. et al. [15]Gurobi and ALNS algorithms
with Python encoding
Minimize the total cost of the routes and
the total CO2 emissions
Zhang, K. et al. [16]Two-stage learning strategy of clustering and path composition Determine the service order and
associated vehicle routes
Chen, L. et al. [17]A hybrid ant colony genetic algorithm (ACO-GA)Minimize the transportation risk
and total cost of delivery
Li, J. et al. [18]Improved intelligent water drop algorithmsMinimize the total cost
Table 2. Symbolic description in mathematical models.
Table 2. Symbolic description in mathematical models.
SymbolDescription
  N Customer set,  N = 1 ,   2 ,   ,   n .  
  N 0 Node set, which includes the customer set and the distribution center; the distribution center is 0, and the customer set is  { 1 ,   2 ,   ,   n } N 0 = N 0 .  
  K Vehicle set,  K = 1 ,   2 ,   ,   k .  
  C d Vehicle allocation cost  k .
  C t The cost of driving per unit distance.
  θ Weight to balance allocation costs and driving costs,  θ [ 0 ,   1 ] .
  d i j Reflects the distance between nodes  i  and  j .
  v The delivery vehicle’s driving speed.
  s i Service time for customer  i .
  t i j The vehicle’s trip time from nodes  i  to  j .
  a i Left time window of customer  i .
  b i Right time window for customer  i .
  E Left time window of the distribution center.
  L Right time window of the distribution center.
  d i Delivery demand for customer  i .
  p i The quantity of recycling performed by customer  i .
  Q The maximum loading capacity of the delivery vehicle.
  M A positive number that is large enough.
  w i j The time at which vehicle  k  begins to serve node  i .
  L 0 k The loading capacity of vehicle  k  when it exits the distribution center.
  L i The vehicle’s loading capacity once the service has ended.
  x i j k Whether vehicle  k  departs from node  i  to  j ; if so, then  x i j k = 1 , otherwise  x i j k = 0 .
Table 3. Experimental parameters for testing algorithms.
Table 3. Experimental parameters for testing algorithms.
AlgorithmDescription
GANIND = 50, MAXGEN = 500,  p = 0.5
p-SA W = 66 ,   σ = 1 c d = 1 γ = 1 β = 0.96 L = n 2 ,   *   ω m a x = 40 = 12 ,   l a m b d a = 0.8 a l p h a = 0.8
DCS P a = 0.75 , NIND = 200, MAXGEN = 500
MATE G m a x = 50 ω 1 = 0.2 ω 2 = 0.4 N = 16 M 100 N = 36 M > 100
*   ω m a x  (p-SA) is the maximum number of iterations for which a non-improved solution is obtained.
Table 4. Comparison of GA, p-SA, DCS, MATE, and SFSSA results (small and medium-sized examples).
Table 4. Comparison of GA, p-SA, DCS, MATE, and SFSSA results (small and medium-sized examples).
InstanceGAp-SADCSMATESFSSA
NVTDNVTDNVTDNVTDNVTD
RCdp10013348.983348.983348.983348.983348.98
RCdp10042216.692216.692216.692216.692216.69
RCdp10072310.812310.812310.812310.812310.81
RCdp25015551.055552.215551.055551.055551.05
RCdp25044473.464473.464473.464473.464473.46
RCdp25075540.875540.875540.875540.875540.87
RCdp50019994.189994.709994.189994.189994.18
RCdp50046725.596725.906725.596733.216725.59
RCdp50077809.727810.047809.727809.727809.72
The bold black part is the current optimal solution.
Table 5. Comparison of GA, p-SA, DCS, and SFSSA results (large-scale examples).
Table 5. Comparison of GA, p-SA, DCS, and SFSSA results (large-scale examples).
InstanceGAp-SADCSMATESFSSA
NVTDNVTDNVTDNVTDNVTD
Rdp101191653.53191660.98191658.65191650.80191650.79
Rdp102171488.04171491.75171490.13171486.12171485.85
Rdp103141216.16141226.77141228.48131294.64141231.34
Rdp104101015.41101000.65101005.9910984.81101005.17
Rdp105151375.31141399.81141340.06141377.11141375.94
Rdp106131255.48121275.69121270.29121252.03121241.27
Rdp107111087.95111082.92111084.00101124.90111081.90
Rdp10810967.4910962.4810964.389965.2211965.58
Rdp109121160.00121181.92121156.90111203.97131166.95
Rdp110121116.99111106.52121108.81101166.47121120.88
Rdp111111065.27111073.62111077.65101098.84121079.61
Rdp11210974.0310966.0610977.5910953.6310991.76
Rdp20141280.4441286.5541281.6341252.3741223.38
Rdp20241100.9241150.3141152.6531223.6941086.86
Rdp2033950.793997.843950.793939.583922.86
Rdp2043775.232848.013776.002835.283775.84
Rdp20531064.4331064.0631051.383994.4331016.54
Rdp2063961.323959.943957.813906.143902.11
Rdp2073835.012899.822890.523811.513847.93
Rdp2083718.512739.062737.052726.833729.81
Rdp2093930.263947.803930.263909.164909.70
Rdp2103983.7531005.1131005.113939.373935.68
Rdp2113839.613812.443819.883767.823806.04
Cdp101111001.9711992.8811998.2911976.0411967.51
Cdp10210961.3810955.3110954.3110941.4910949.59
Cdp10310897.6510958.6610923.0510892.9810887.47
Cdp10410878.9310944.7310931.2610871.4010902.52
Cdp10511983.1011989.8611981.45101074.5111983.10
Cdp10611878.2911878.2911878.2910963.4511878.29
Cdp10711913.8111911.9011912.3710988.6010944.17
Cdp10810951.24101063.7310978.8210932.4910922.94
Cdp10910940.4910947.9010940.4910909.2710985.08
Cdp2013591.563591.563591.563591.563591.56
Cdp2023591.563591.563591.563591.563591.56
Cdp2033591.173591.173591.173591.173591.17
Cdp2043590.603594.073590.603590.603590.60
Cdp2053588.883588.883588.883588.883588.88
Cdp2063588.493588.493588.493588.493588.49
Cdp2073588.293588.293588.293588.293588.29
Cdp2083588.323599.323588.323588.323588.32
RCdp101151652.90151659.59151654.32141708.21151654.84
RCdp102141497.05131522.76131522.76121570.28131503.05
RCdp103121338.76111344.62111344.63111282.53121273.11
RCdp104111188.49101268.43101269.31101171.37111189.84
RCdp105141581.26141581.54141581.26131646.36151578.78
RCdp106131422.87131418.16131419.26121392.47131374.38
RCdp107121282.10111360.17111360.17111252.79121226.79
RCdp108111175.04111169.57111170.12101208.28111169.84
RCdp20141587.9241513.7241520.5641406.9441483.96
RCdp20241211.1241273.2641242.9241161.2941130.01
RCdp2034964.6531123.5831087.3731056.964987.15
RCdp2043822.023897.143822.023798.463845.55
RCdp20541410.1841371.0841357.4441297.6541291.20
RCdp20631176.8531166.8831166.8831146.3231124.50
RCdp20741036.5931089.8531093.3731061.1431039.11
RCdp2083878.573862.893862.893828.443844.58
The bold black part is the current optimal solution.
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

Liu, Z.; Wang, W.; He, J.; Zhang, J.; Wang, J.; Li, S.; Sun, Y.; Ren, X. A New Hybrid Algorithm for Vehicle Routing Optimization. Sustainability 2023, 15, 10982. https://doi.org/10.3390/su151410982

AMA Style

Liu Z, Wang W, He J, Zhang J, Wang J, Li S, Sun Y, Ren X. A New Hybrid Algorithm for Vehicle Routing Optimization. Sustainability. 2023; 15(14):10982. https://doi.org/10.3390/su151410982

Chicago/Turabian Style

Liu, Zhiqiang, Weidong Wang, Junyi He, Jianjun Zhang, Jing Wang, Shasha Li, Yining Sun, and Xianyang Ren. 2023. "A New Hybrid Algorithm for Vehicle Routing Optimization" Sustainability 15, no. 14: 10982. https://doi.org/10.3390/su151410982

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