Next Article in Journal
Enhancing Farm Income through Boundary Plantation of Poplar (Populus deltoides): An Economic Analysis
Next Article in Special Issue
Integrated Optimization of Order Allocation and Last-Mile Multi-Temperature Joint Distribution for Fresh Agriproduct Community Retail
Previous Article in Journal
Assessing the Economic Contribution of Ocean-Based Activities Using the Pacific Coast of British Columbia as a Case Study
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Concept Paper

Solving the Green Open Vehicle Routing Problem Using a Membrane-Inspired Hybrid Algorithm

1
School of Information Engineering, China University of Geosciences in Beijing, Beijing 100083, China
2
Singapore Institute of Manufacturing Technology, Singapore 138634, Singapore
3
The Research Center of Logistics, Nankai University, Tianjin 300071, China
4
DeGroote School of Business, McMaster University, Hamilton, ON L8S 4M4, Canada
*
Author to whom correspondence should be addressed.
Sustainability 2022, 14(14), 8661; https://doi.org/10.3390/su14148661
Submission received: 12 June 2022 / Revised: 9 July 2022 / Accepted: 12 July 2022 / Published: 15 July 2022
(This article belongs to the Special Issue Sustainable Innovation in Logistics and Supply Chain Management)

Abstract

:
The green open vehicle routing problem with time windows has been widely studied to plan routes with minimal emissions in third-party logistics. Due to the NP-hardness, the performance of the general heuristics significantly degrades when dealing with large-scale instances. In this paper, we propose a membrane-inspired hybrid algorithm to solve the problem. The proposed algorithm has a three-level structure of cell-like nested membranes, where tabu search, genetic operators, and neighbourhood search are incorporated. In particular, the elementary membranes (level-3) provide extra attractors to the tabu search in their adjacent level-2 membranes. The genetic algorithm in the skin membrane (level-1) is designed to retain the desirable gene segments of tentative solutions, especially using its crossover operator. The tabu search in the level-2 membranes helps the genetic algorithm circumvent the local optimum. Two sets of real-life instances, one of a Chinese logistics company, Jingdong, and the other of Beijing city, are tested to evaluate our method. The experimental results reveal that the proposed algorithm is considerably superior to the baselines for solving the large-scale green open vehicle routing problem with time windows.

1. Introduction

The vehicle routing problem (VRP) introduced by Dantzig and Ramser in 1959 [1] is most commonly studied for route planning in logistics. It is defined as the determination of the routes along which a fleet of freight vehicles fulfills the needs of a set of customers (or nodes) at various locations, with the objective of optimising the total cost. Thereafter, a number of VRP variants have been proposed and investigated [2]. Among them, the vehicle routing problem with time windows (VRPTW) has been widely explored, as more practical factors are considered [3]. In this problem, each customer has to be served within their own prescribed time interval, which is named the time window constraint [4].
The open vehicle routing problem with time window (OVRPTW) is a variant of the VRPTW [5]. Compared to the VRPTW, vehicles in the OVRPTW are not required to return to the depot after fulfilling the delivery. This phenomenon is quite popular in many real-world scenarios, where vehicles may not need to return to the depot if they directly finish after serving the customers, especially when a third-party company is delivering. Considering the benefits of higher operation efficiency and the resource utilisation rate, outsourcing freight shipping to third-party logistics companies may have considerable cost savings. Currently, due to the extensive concern about environmental pollution, the logistics industry needs to reduce greenhouse gas emissions [6] to achieve green and sustainable transportation. The OVRPTW is further extended to the green OVRPTW (GOVRPTW), i.e., the objective of the studied problem is to minimise the total greenhouse gas emissions.
The first solution to the open vehicle routing problem (OVRP) was proposed by Bodin et al. [7] in 1983. In that study, a variant of the Clarke and Wright algorithm was designed to develop open routes for airplanes. From then on, various heuristics and metaheuristics have been developed to solve the OVRP. The most widely used are based on a search algorithm, e.g., the tabu search [8], the neighbourhood-based search [9], and the threshold accepting algorithm [10]. Meanwhile, bioinspired and population-based metaheuristics have also been developed, such as the particle swarm optimisation [11], the ant colony optimisation [12], and genetic and evolutionary computing [13].
Recently, Ashtineh and Pishvaee [14] evaluated the economic and environmental impacts of alternative fuels in the VRP through measurement and quantification of the effects for the emitted pollutant. Yu et al. [15] considered a heterogeneous fleet of vehicles to reduce carbon emissions in the green vehicle routing problem with time windows (GVRPTW). Wang and Lu [16] presented a memetic algorithm with competition (MAC) to solve the capacitated green vehicle routing problem. We investigated the fuel consumption in route planning while considering the third-party logistics company, which was formulated based on a comprehensive modal emission model [17]. Specifically, a hybrid tabu search algorithm integrated with several neighbourhood search strategies was leveraged to solve this problem. Although desirable performance was achieved in [17], there is still much room for improvement, especially given that the GOVRPTW is of strong NP-hardness, where the computation becomes prohibitively intractable as the problem scales up.
As a promising branch of the bioinspired intelligent optimisation approach [18], membrane computing has been identified as an effective distributed and parallel model, which is also known as the P system [19]. The theory and applications of the P system and its variants provide a theoretical possibility to solve NP-complete problems in polynomial time [20] and have been widely studied in various fields [21], such as ecosystem and pedestrian behaviour, engineering computing and optimising, and so on. Motivated by those successful applications, we expect that more effective optimisation algorithms could be derived based on the P system for solving GOVRPTW, especially when integrated with evolutionary algorithms. In this paper, we exploit a membrane-inspired hybrid heuristic algorithm to solve the large-scale GOVRPTW to improve the performance over [17], which was based on a hybrid tabu search. The main contributions of this paper are summarised as follows.
(1)
A novel three-level nested membrane structure is designed with respective algorithms. To be specific, the skin membrane acts as the first level, where a genetic algorithm is mainly exploited to search for solutions to the routing problems. Six adjacent inner membranes act as the second level, where different tabu search algorithms are exploited to find tentative solutions. The elementary membrane in each level-2 membrane acts as the third level, where neighbourhood search operations are exploited to facilitate adjusting the search direction of the corresponding level-2 membrane.
(2)
Communication channels between the level-2 membranes and their inner membranes are designed to exchange solutions to favourably find better solutions. Communication channels also exist between the skin membrane and the level-2 membranes, where the crossover operator in the genetic operators is leveraged to retain satisfactory gene segments. In addition, the tabu search with different attractors is adopted to help the genetic algorithm escape from the local optimum. The convergence curve cliffs after each communication justify the effectiveness of the communication channels.
(3)
Experiments are carried out on large-scale real-world problem instances, i.e., a Beijing 100-nodes set and a Jingdong 1000-nodes instance. The results demonstrate that our method significantly outperformed the hybrid tabu search [17], tabu search, and genetic algorithm, respectively. In particular, the computation time observed when comparing the performance on the Jingdong 1000-nodes instances and the Beijing 100-nodes instances further demonstrates the superiority of our algorithm in solving large-scale problems.

2. Related Work

2.1. Algorithms for the OVRP

Various heuristics and metaheuristics have been developed to solve the OVRP. There is much research on tabu search, neighbourhood-based search, and the threshold accepting algorithm. Brando [8] presented a novel tabu search algorithm for the open vehicle routing problem. Derigs et al. [22] proposed an attribute-based hill climber heuristic, which was a parameter-free variant of the tabu search principle. Fu et al. [23] presented a new tabu search heuristic for finding the routes that minimised two objectives while satisfying three constraints. Russell et al. [24] proposed a tabu search metaheuristic to aid in the coordination and synchronisation of the production and delivery of multiproduct newspapers to bulk delivery locations. Fleszar et al. [9] proposed an effective variable neighbourhood search heuristic. Pisinger et al. [25] presented a unified heuristic with an adaptive large neighborhood search framework to solve five different variants of the VRP. Salari et al. [26] proposed a heuristic improvement procedure based on integer linear programming techniques. Zachariadis et al. [27] presented an innovative local search metaheuristic, which examined wide solution neighbourhoods. Tarantilis et al. proposed an annealing-based method that utilised a backtracking policy [28] and a single-parameter metaheuristic method that exploited a list of threshold values to intelligently guide an advanced local search [10].
Population-based metaheuristics have also been proposed. MirHassani et al. [11] presented a real-value version of particle swarm optimisation for solving the OVRP. Wang et al. [29] proposed a novel real number encoding method of particle swarm optimisation. Zhen et al. [30] proposed a novel particle swarm optimisation in which the vehicle was mapped into the integer part of the real number. Li et al. presented an ant colony system hybridised with local search [31] and an ant colony optimisation-based metaheuristic [12]. Pan et al. [32] presented a clonal selection algorithm. Repoussis et al. [13] proposed a hybrid evolution strategy. Yu et al. [33] applied a novel hybrid algorithm combining the genetic algorithm and the tabu search. The tabu search can help the genetic algorithm circumvent the local optimum. In our previous work, a hybrid tabu search algorithm was proposed to minimise the fuel consumption of the OVRPTW [17]. However, the performance of the algorithms mentioned above always degrades when dealing with a large-scale instance.

2.2. Membrane Algorithms

Membrane computing is a branch of natural computing. It is inspired by the structure and the function of living cells, tissues, and organs. It provides a distributed and parallel framework for modelling and high-performance computation. Barbuti et al. [34] proposed minimal probabilistic P systems as modelling notation for ecological systems. Lucie et al. [35] summarised the most important results on P colonies. Niu et al. [36] proposed a simulation model called an intelligence decision P system inspired by the process of cell migration. Sakellariou et al. [37] used a population P system in the agent-based simulation modelling of passengers boarding an underground station.
Nishida T. Y. [38] proposed the first membrane-inspired algorithm and proved its efficiency in solving the travelling salesman problem (TSP). Zhang et al. [39] analysed and optimised radar emitter signals by leveraging membrane algorithms. An optimisation spiking neural P system was presented to approximately solve the general combinatorial optimisation problems [40]. Zhang et al. [41] proposed a population–membrane-system-inspired evolutionary algorithm, in which a population P system and a quantum-inspired evolutionary algorithm were used. Membrane algorithms adopt rich and varied frameworks, which facilitate the cooperation of multiple algorithms. It helps to design a hybrid algorithm and use the respective advantages of different algorithms for large-scale NP-hard problems. In this work, a novel three-level membrane algorithm was designed for the large-scale GOVRPTW instances. It can also be considered an extension of the application field of membrane algorithms.

3. Problem Formulation

The problem studied in this paper takes into account practical factors such as vehicle fuel consumption, greenhouse gas emissions, third-party logistics, and time window constraints on the basis of the classical vehicle routing problem, which can be modelled as a green open vehicle routing problem with time window (GOVRPTW). The GOVRPTW could be defined on a complete and directed graph G = ( N , A ) , where N is the node set and A is the arc set. In particular, N = { 0 , , n } includes n+1 entities, with 0 representing the depot and N 0 = N \ { 0 } representing the customer set. Each customer i has a positive demand q i . The arc set A = { ( i , j ) : i , j N , i j , j 0 } represents the connection between the nodes. The goods delivery is considered as opposed to the goods pick-up problem. The demand of any customer q i is assumed to be less than the vehicle capacity Q. In this work, it is assumed that the traffic conditions on all roads are uncongested or free-flow such that vehicle speeds can be optimised. The vehicles will finish after completing their service to the customers rather than returning to the depot. The notations used in the problem description are summarised in Notations part. We adopt the comprehensive emissions model developed by Barth et al. [42], Barth et al. [43], and Scora et al. [44] to estimate actual fuel consumption and gas emissions. The objective function of the GOVRPTW is formulated as follows [17].
M i n i m i s e ( i , j ) A λ f c k N e V d i j r = 1 R z i j r / v i j r
+ ( i , j ) A λ f c γ α i j d i j ( w x i j + f i j )
+ ( i , j ) A λ f c β γ d i j r = 1 R ( v i j r ) 2 z i j r
+ j N 0 f d s j ,
where λ = ξ / κ ψ , γ h = 1 / 1000 n t f η and α = τ + g s i n θ + g C r c o s θ are constants; β = 0.5 C d ρ A is a vehicle-specific constant; the values of the parameter used in the formulation are given in Table 1, and the reader can refer to Koc et al. [45] for more details. The length of arc ( i , j ) A is denoted by d i j ; the total weight of a vehicle on arc ( i , j ) is calculated as w + f i j , with w being the weight of a vehicle and f i j being the amount of freight flow on arc ( i , j ) A ; the binary variable x i j equals 1 if a vehicle travels along the arc ( i , j ) A , and it is 0 otherwise; and the binary variable z i j r equals 1 if a vehicle r ( r = 1 , 2 , ) travels along the arc ( i , j ) A at speed v i j r , and it is 0 otherwise. The objective is to minimise the total cost of three components: the fuel consumption, the CO 2 emissions, and the total wage of drivers. The cost induced by the fuel consumption and CO 2 emissions is represented by the first three terms in the objective. Specifically, term (1) describes the engine module cost, term (2) computes the weight module cost, and term (3) reflects the speed module cost. The cost of the driver wage is represented by the fourth term in the objective. The constraints of the GOVRPTW are shown as follows.
j N 0 x 0 j | N 0 | ,
i N x i j = 1 , j N 0
j N x i j 1 , i N 0
i = 1 n x i 0 = 0 ,
j N f i j j N f j i = q i , i N 0
q j x i j f i j ( Q q i ) x i j , ( i , j ) A
y i y j + t i + r = 1 R d i j z i j r / v i j r M i j ( 1 x i j ) , i N , j N 0 , i j
a i y i b i , i N 0
r = 1 R z i j r = x i j , ( i , j ) A
x i j { 0 , 1 } , ( i , j ) A
z i j r { 0 , 1 } , ( i , j ) A , r = 1 , , R
f i j 0 , ( i , j ) A
y i 0 , i N 0
s i 0 , i N 0
where t i is the time consumed for serving customer i N 0 ; [ a i , b i ] is the time window of customer i N 0 , within which the customer must be visited; y j is the actual starting time for serving node j N 0 ; if a vehicle arrives at a customer before its a i , it has to wait because it can only start service at or after a i ; s j is the total time cost of the route in which the last visited customer is j N 0 . Moreover, constraint (5) defines the maximum number of vehicles; constraints (6)–(8) ensure that every customer is served only once, and the vehicles finish after delivery rather than returning to where they started; constraints (9) and (10) together define the freight flows; the time window is described in constraints (11) and (12), in which M i j = m a x { 0 , b i + t i + d i j / v i j r a j } ; constraint (13) imposes that each arc has only one speed level; and constraints (14)–(18) define the range of the variables.

4. The Proposed Method

In this section, a membrane-inspired hybrid heuristic algorithm is proposed to deal with the GOVRPTW. As depicted in Figure 1, the MIHA has three levels of cell-like nested membranes. To be specific, the skin membrane constitutes the first level. The second level consists of six adjacent inner membranes (labelled as 1, ⋯, 6). The elementary membrane in each level-2 membrane constitutes the third level. The membranes of level-2 can provide the tentative solutions to the skin membrane through unidirectional channels, while the communication channels between the level-2 membranes and the corresponding level-3 membranes are bidirectional. In the membranes of level-3, the neighbourhood search operations are leveraged to help adjust the search direction of the corresponding level-2 membranes. On the one hand, the GA operators in the skin membrane, especially the crossover operator, are exploited to retain the desired gene segments. On the other hand, the tabu search algorithms with different attractors in the level-2 membranes are leveraged to help the GA algorithm escape from the local optimum.
The general framework of the MIHA is introduced in Algorithm 1. In the initialisation stage, the preliminary solutions are generated by using six different operators. Afterwards, a speed improvement strategy is exploited to determine the optimal speed on each route in the solution. In this case, the initial population would be generated in the skin membrane. The searching processes in the level-2 membranes are guided by the tabu search algorithm, while the evolution in the skin membrane proceeds according to the genetic operators. After every I M C A steps, the archive solutions of each level-2 membrane would be transferred to the skin membrane to help update the current population. When the termination condition is met, the final output is defined as the best solution found from all different membranes.
Algorithm 1 Pseudo-code of MIHA
Require: maximum number of iterations I m a x , iteration number before MCA I M C A
Ensure: x b e s t .
1:
form = 1 to 6 do
2:
    Generate initial solution x i n i t i a l m by using operator m
3:
    Send x i n i t i a l m to level-2 membrane m
4:
    Set x c u r r e n t m = x i n i t i a l m
5:
fori = 1 to I m a x  do
6:
    for m = 1 to 6 do
7:
         { x n e i g h b o r s } = level2_search( x c u r r e n t m )
8:
        update( a r c h i v e m , { x n e i g h b o r s } )
9:
        Send { x n e i g h b o r s } to the adjacent l e v e l 3 _ m e m b r a n e
10:
         { x n e i g h b o r s } = level3_search( { x n e i g h b o r s } )
11:
        update( a r c h i v e m , { x n e i g h b o r s } )
12:
        if  a r c h i v e m \ t a b u _ l i s t m Ø  then
13:
           Set x c u r r e n t m = the_best_of ( a r c h i v e m \ t a b u _ l i s t m )
14:
           update( t a b u _ l i s t m , x c u r r e n t m )
15:
    if i mod I M C A = = 0  then
16:
        MCA( s k i n _ m e m b r a n e , l e v e l 2 _ m e m b r a n e 1 6 )
17:
Output the best solution x b e s t
The encoding approach of the solution has a significant impact on the quality of the final result as well as the computational efficiency. In our method, a complete solution consists of a number of routes, and the variable-length chromosomes [46] are adopted to encode the routes, where a chromosome comprising the integer nodes represents a route. Specifically, each vehicle departs from the first node and ends at the last node it serves; the travel speed v i j r between every two adjacent points i and j on the same path is to be decided; the service start time y i of each point i can be calculated; a solution is feasible only when it does not violate any constraints.

4.1. Initialisation

During initialisation, six unique operators were adopted to create different initial solutions as shown in Figure 2. Then, the population of the skin membrane and the archive solutions of the level-2 membranes were formed. Specifically, the six operators were executed based on the following heuristics (or rules). Moreover, the pseudo-code is given in Algorithm 2.
Algorithm 2 Pseudo-code of initialisation
Require: Operators: Random, NNH, mNNH, I 1 , EDF, SWTF
Ensure: Implement the initialisation of MIHA
1:
operators = { R a n d o m , N N H , m N N H , I 1 , E D F , S W T F }
2:
form = 1 to 6 do
3:
     x i n i t i a l m = create_initial_solution(operator[m])
4:
    Send x i n i t i a l m to l e v e l 2 _ m e m b r a n e m
5:
     { x n e i g h b o r s m } = level2_search( x i n i t i a l m )
6:
    Send { x n e i g h b o r s m } to s k i n _ m e m b r a n e
(1)
Random heuristic: It randomly chooses routes that satisfy constraints (5)–(17).
(2)
Nearest neighbourhood heuristic (NNH): It generates a set of routes according to the distance from the current node. The nearest customer to the depot is chosen as the start node x 0 of the first route. Then it chooses an unassigned customer x 1 , who is nearest to x 0 . It repeats the same procedure until no feasible candidate nodes for the current route can be found. This also means that the current route is completed. Then, it allocates a new vehicle for the next route and constructs the route in a similar way until all customer nodes are assigned.
(3)
Modified nearest neighbourhood heuristic (mNNH): It generates a set of routes according to both the demand of the next customer and the distance from the current node. During the shipping process, a vehicle can offload q i payload after servicing customer i. The unit distance payload of customer j on arc ( i , j ) is defined as Δ f i j ¯ = q j / d i j . The mNNH creates a number of routes sequentially by considering the Δ f i j ¯ as an objective. First, it chooses the customer c that satisfies c = a r g m a x c N u c s { | Δ f 0 c ¯ | } , where N u c s represents the unassigned customer set, which includes the initial current node of the first route. Next, the feasible customer n c that satisfies n c = a r g m a x n c N u c s { | Δ f c , n c ¯ | } is selected as the next node c and added to the current route. Then, it repeats choosing the next node and appending it to the current route. If no more feasible nodes can be added, the current route is completed, and another route will be constructed in a similar way until all customers have been assigned.
(4)
Insert I 1 heuristic: As first proposed by Solomon [47], the customer u * is chosen based on the Equations (19) and (20) and then inserted to the route according to the insert I 1 heuristics. Moreover, the feasible and desired position of the selected u * in the route is decided by Equations (21) and (22) as follows, where y j u is the new time for service to begin at customer j, given that u is on the route. The main idea is to use several criteria to insert a new customer into the current partial route at every iteration.
c 2 ( i * , u * , j * ) = m a x i m u m [ c 2 ( i , u , j ) ] ,
c 2 ( i , u , j ) = λ d 0 u c 1 ( i , u , j ) , λ 0
c 1 ( i * , u , j * ) = m i n [ c 1 ( i , u , j ) ] ,
c 1 ( i , u , j ) = α 1 ( d i u + d u j μ d i j ) + α 2 ( y j u y j ) , μ , α 1 , α 2 0 , α 1 + α 2 = 1 .
(5)
Earliest deadline first heuristic: It selects the customer with the earliest (or tightest) deadline for service at each step.
(6)
Shortest waiting time first heuristic: It selects the customer with the shortest waiting time.

4.2. GA in Skin Membrane

After the initialisation, the population in the skin membrane evolved according to the rationale of GA. To select parent chromosomes for the crossover operator, the binary tournament was implemented, while the chromosomes for the mutation operators were randomly selected.
This process was repeated several times to obtain sufficient parent chromosomes. Route-exchange crossover [46] was used to retain the better gene segment. The routes in one solution chromosome were reproduced and shared with others. In order to satisfy the constraints, the duplicated nodes in a chromosome were removed if a new route was inserted into it. The single point mutation was adopted as the mutation operator in the skin membrane.

4.2.1. Crossover Operator

The performance of the genetic algorithm is highly affected by the crossover and mutation operators. Using these operators, the search space can be more effectively explored and better solutions can be exploited. In the literature of the genetic algorithm, many crossover and mutation operators have been developed for different optimisation problems. In our method, the route-exchange crossover proposed by [46] was adopted to retain the desirable gene segment. Different from the classical one-point crossover, which may produce infeasible route sequences, the route-exchange crossover operator allows the favourable sequences of routes or the genes in a chromosome to be shared with other chromosomes in the evolving population. Firstly, we selected parents to perform the crossover operation by binary tournament. Secondly, the route-exchange crossover was performed on the selected parents, in which the best routes of the selected chromosomes were exchanged. To ensure the feasibility of chromosomes after the crossover, duplicated customers were deleted from the original routes, while the newly inserted route was left unchanged.

4.2.2. Mutation Operator

We adopted three mutation operators, i.e., random, split-longest, and merge-shortest operators [46] to extend the search space. The corresponding operators are listed as follows.
(1)
Random: This operation randomly removes a customer node from a given route and inserts it into another feasible position of the origin route.
(2)
Split-longest: This operation searches for the route with the highest total cost and breaks the route into two parts at a random point.
(3)
Merge-shortest: This operation searches for the two routes of the chromosome with the smallest total cost and appends one to the other.

4.3. Tabu Search in Level-2 Membranes

After the initialisation, the tabu search was started in each level-2 membrane as described in Figure 3 and Algorithm 3. First, the current solution was used to create the neighbour solutions. If any neighbour solution was better than the solutions in the archive, it replaced the most inferior one. Next, the level-3 membrane performed the neighbourhood search and the corresponding result helped the archive to find better solutions. Then, the best one was selected as the next solution from the archive rather than from the tabu list. Finally, the current solution was added into the tabu list.
Algorithm 3 Level-2 Membrane Search Algorithm
1:
{ x n e i g h b o r s } = search_neighbors( x c u r r e n t )
2:
update_its_archive( { x n e i g h b o r s } )
3:
Send { x n e i g h b o r s } to the adjacent l e v e l 3 _ m e m b r a n e for level-3 search
4:
if a r c h i v e \ t a b u _ l i s t Ø then
5:
    Set x c u r r e n t = the_best_of( a r c h i v e \ t a b u _ l i s t )
6:
    update_its_tabu_list( x c u r r e n t )
Pertaining to the neighborhood search, three operators were exploited.
(1)
Random operator: It randomly exchanges the position of two nodes of a given solution, provided that no constraint is violated.
(2)
High-cost-node operator: It removes a high-cost customer node defined as u * = a r g m a x u N { d i u + d u j } , where i is the preceding customer and j is the succeeding customer, and inserts the node into another position.
(3)
Long-wait-time operator: It relocates the customer with a long wait time node defined as u * = a r g m a x u N { a u e u } , where e u is the arrival time of customer u.

4.4. Neighbourhood Search in Level-3 Membranes

In the level-3 membrane, the neighbourhood search was performed with a specific probability, which is denoted as p l e v e l 3 , to find the superior solutions and improve the diversity of the archive solutions, as illustrated in Figure 4 and Algorithm 4. First, it randomly selected a solution from the archive of the adjacent level-2 membrane. Next, it used this solution as an input to perform the neighbourhood search. Finally, it sent the output of the neighbourhood search back to its adjacent level-2 membrane. If the output solutions were better than the ones in the archive of the level-2 membrane, they replaced the inferior ones. This search procedure is expected to find superior solutions as well as improve the diversity of archive solutions.
Algorithm 4 Level-3 Membrane Search Algorithm
1:
Randomly select a solution from the archive of adjacent l e v e l 2 _ m e m b r a n e , as x r a n d o m
2:
Send x r a n d o m to current l e v e l 3 _ m e m b r a n e
3:
{ x n e i g h b o r s } = search_neighbors( x r a n d o m , p l e v e l 3 )
4:
Send { x n e i g h b o r s } back to the l e v e l 2 _ m e m b r a n e
5:
update( a r c h i v e l e v e l 2 _ m e m b r a n e , { x n e i g h b o r s } )

4.5. Communications between the Level-2 Membrane and Skin Membrane

After a specific number of iterations each time, archive solutions in each level-2 membrane were transported to the skin membrane, and the current population was updated. We denote this number of iterations as I M C A and this communication as Membrane Communication Algorithm (MCA) (described in Figure 5 and Algorithm 5). First, the archive solutions of each level-2 membrane were merged with current individuals in the skin membrane. Next, the best P solutions were selected and combined to form a new population. Specifically, the GA operators implemented in the skin membrane, especially the crossover operators, were used to retain the desirable gene segments of solutions found by the tabu search in the level-2 membrane. Various solutions obtained by the tabu search algorithms with different attractors facilitated the GA escaping from the local optimal solutions.
Algorithm 5 Membrane Communication Algorithm
1:
form = 1 to 6 do
2:
    Send archive solutions of l e v e l 2 _ m e m b r a n e [ m ] to s k i n _ m e m b r a n e
3:
Select the best P solutions in s k i n _ m e m b r a n e
4:
Rebuild the population of s k i n _ m e m b r a n e with those solutions

4.6. Speed Optimisation

The speed of the vehicle in each arc has a significant impact on the fuel consumption and the total cost. The process of determining the optimal speed of each route in a solution is important to minimise the fuel consumption costs and driver wages. After obtaining a solution that comprised a number of routes, we implemented the speed and departure-time optimisation (SD-TOA) proposed by Karmer et al. [48] to compute the optimal speed for each route. As shown in Algorithm 6, the SD-TOA was executed based on a divide-and-conquer strategy. To be specific, the whole route was divided into several subroutes by first ignoring the time window constraints, and then the sub-routes were re-optimised recursively. If a resulting subroute satisfied all time window constraints, then it was returned. Otherwise, the customer with the maximum time-window violation was identified and its arrival time was set to the closest feasible value. Fixing this time window failure created two subroutes, which were re-optimised recursively.
Algorithm 6 Speed and Departure-time Optimisation Algorithm (SDTOA)
1:
Procedure S D T O A ( s , e )
2:
p v i o l a t i o n m a x V i o l a t i o n 0
3:
D i = s e 1 d i , i + 1
4:
T i = s e 1 τ i
5:
if s = 1 and e = n σ   then
6:
     t 1 = a 1
7:
if e = n σ then
8:
     t e = m i n { m a x { a e , t s + D / v F D * + T } , b e }
9:
if s = 1 then
10:
     t s = m i n { m a x { a s , t e D / v F D * T } , b s }
11:
v R E F D / ( t e t s T )
12:
for i = s + 1 . . . e   do
13:
     t i = t i 1 + τ i 1 + d i 1 , i / v R E F
14:
     v i o l a t i o n = m a x { 0 , t i b i , a i t i }
15:
    if  v i o l a t i o n > m a x V i o l a t i o n  then
16:
         m a x V i o l a t i o n = v i o l a t i o n
17:
         p = i
18:
    if  m a x V i o l a t i o n > 0  then
19:
         t p = m i n { m a x { a p , t p } , b p }
20:
         S D T O A ( s , p )
21:
         S D T O A ( p , e )
22:
    if  s = 1 and e = n σ  then
23:
        for  i = 2 . . . n σ  do
24:
            v i 1 , i = m a x { d i 1 , i / ( t i t i 1 τ i 1 ) , v F * }

5. Computational Results

In this section, we evaluate the proposed MIHA on two sets of real-life data set. The presented algorithm was implemented in Matlab on a PC with an Intel Core i5-10400 processor, 16G RAM, and Microsoft Windows 10 operating system. The parameters used in our algorithm are listed in Table 2. We first test the MIHA on Beijing instance set, where the customer locations were scattered in both urban and suburban areas, and realistic geographical road information was leveraged to calculate the relevant costs [17]. Then experiments are conducted on larger-scale Jingdong instances. Twenty independent experiments were conducted for each instance. Experimental results are listed in Table 3, Table 4, Table 5, Table 6, Table 7, Table 8, Table 9 and Table 10, where the columns represent the best solution, the mean solution, the worst solution, the standard deviation (SD), and the elapsed time (ET, also known as computation time), respectively.

5.1. Parameter Analysis

5.1.1. p l e v e l 3

In the level-3 membrane, an extra neighbourhood search was implemented with a specific probability p l e v e l 3 to help find better solutions and improve the diversity of solutions. Here, we conducted the experiments on the Beijing example with 60 (customer) nodes, i.e., BJ60_01, to analyse the influence of parameter p l e v e l 3 , the results of which are recorded in Table 3. According to Table 3, either too low or too high probability deteriorated the performance. We suggest that lower probability was less effective in finding better solutions, while higher probability might lead the whole evolution to undesirable areas. Considering that the best overall result was captured at p l e v e l 3 = 0.8, we used this value in the subsequent experiments.

5.1.2. I M C A

As described previously, after a specific number of iterations each time, i.e., I M C A , the archive solutions of each level-2 membrane were sent to the skin membrane to help update the population. Here, the impact of parameter I M C A is discussed. We still leveraged the same instance, i.e., BJ60_01, to evaluate this parameter. As displayed in Table 4, the best result was captured at I M C A = 150, which means that sending archive solutions of level-2 membranes to the skin membrane every 150 iterations achieved better performance. Similarly, according to these results, either a smaller or larger I M C A may deteriorate the solution; hence, we used I M C A = 150 in the subsequent experiments.

5.2. Effectiveness of Search in Level-3 Membranes

In this subsection, the effectiveness of the search in level-3 membranes is analyzed, where experiments were conducted on the Beijing 60-node instances with light-duty vehicles. The tabu search algorithm elicited desirable solutions faster by obtaining the attractor from the level-3 membranes. The MIHA without the level-3 membranes is denoted as MIHA l e v e l 3 for convenience. The performance of MIHA and MIHA l e v e l 3 on our example is shown in Table 5. It is easily observed that the level-3 membranes demonstrated considerable advantages in finding solutions with a lower total cost.

5.3. Effectiveness of Tabu Search

The tabu search algorithm plays a significant role in the level-2 membrane. In order to analyse the effectiveness of the tabu search algorithm, this part of the experiment used the greedy algorithm to replace the tabu search algorithm, i.e., MIHA T S , and compared the experimental results with MIHA. Although the membrane framework was retained in MIHA T S , the demonstrated performance was less competitive than those achieved using MIHA, as shown in Table 6.

5.4. Effectiveness of GA in Skin Membrane

The crossover operator of the genetic algorithm can combine the excellent gene fragments of different individuals, and the mutation operator can help expand the search space. As an important part of the skin membrane, it is necessary to analyse the effectiveness of the genetic algorithm in the skin membrane. In MIHA, the solutions transmitted by the level-2 membranes formed the initial population of the skin membrane and finally output the excellent feasible solutions through the crossover and mutation operations in the genetic algorithm. In this subsection, MIHA without the genetic algorithm is denoted as MIHA G A , in which the ability to integrate gene fragments from different membranes was absent, and the output was the best solutions from the level-2 membranes. Table 7 records the experimental results of both MIHA and MIHA G A , respectively. The GA in the skin membrane had a favourable impact on the performance of our algorithm, as it achieved solutions with lower costs. Regarding the proposed MIHA, various solutions obtained by the tabu search of level-2 membranes with different attractors helped the GA escape from the local optimum. As a result, the cliffs were observed every I M C A iterations in the convergence curve of the skin membrane, as depicted in Figure 6, which further justified the superiority of our design.

5.5. Effectiveness of the Membrane Structure

In this subsection, we verify the effectiveness of the membrane structure. Generally, membrane computing provides a parallel distributed framework for solving the optimisation problem. We denoted our algorithm without the membrane structure as MIHA M S , in which all membranes were removed except for a single level-2 membrane, and the output was the best solution obtained by the algorithm in it. As shown in Table 8, without the membrane framework, the MIHA M S was far less effective in finding competitive solutions in comparison with the results obtained by using MIHA.

5.6. Computational Result of Larger-Scale Problems

In this subsection, to further demonstrate the practical property of MIHA, the experiments were conducted on the larger-scale real-world problem instances, i.e., the Beijing 100-nodes set and the Jingdong 1000-nodes instance, respectively, where our method was set with p l e v e l 3 = 0.8 and I M C A = 150. The results of the Beijing 100-nodes set are recorded in Table 9, and the results of the Jingdong 1000-nodes instance are recorded in Table 10. The computational result verified the favourable capability and superiority of the proposed MIHA in solving the real-world large-scale problem. In particular, in the comparison of different instance sizes, as shown in Table 11, a roughly linearly growing ET was observed, which justified the advantage of our algorithm in solving the large-scale problems.

5.7. Comparison with Other Algorithms

Three heuristic algorithms, i.e., the hybrid tabu search [17], the tabu search, and the GA [33] were implemented as baselines to compare with our MIHA, the results of which are recorded in Figure 7 and Figure 8. From Figure 7, we see that MIHA outperformed the hybrid tabu search, the tabu search, and the GA in terms of solution quality and convergence speed for all ten instances of BJ100, respectively. Moreover, Figure 8 shows the results of the four algorithms for the JD1000 instance, where our MIHA not only achieved the lowest cost but also presented the highest convergence speed. This further demonstrates the significant advantage of MIHA in solving a large-scale problem.

6. Conclusions

In this paper, we designed a membrane-inspired framework to improve the performance of the heuristics when dealing with a realistic and large-scale green open vehicle routing problem with time windows. The proposed method, i.e., a membrane-inspired hybrid algorithm, benefits from the parallel distributed structure and a unique communication strategy in the P system. The computational results based on the Beijing dataset and Jingdong instance justified its strong competitiveness against other baselines, where our algorithm achieved the lowest overall cost, which comprises fuel cost, emission cost, and driver cost, on all tested instances.
The green open vehicle routing problem with time windows, as a notable variant of the vehicle routing problem, has considerable value in the vigorous development of the sharing economy, green logistics, and sustainable society. In the future, more realistic models involving the green open routes will be investigated, such as the green close–open vehicle routing problem and variants that consider a heterogeneous fleet. Our algorithm might still be able to solve them with appropriate modifications, given the desirable generalisation capability of the membrane-inspired algorithms for solving hard optimisation problems. We also plan to integrate our work with the deep (reinforcement)-learning-based methods developed by Li et al. [49], Wu et al. [50], and Xin et al. [51] for solving routing problems, so that it allows the membrane-inspired algorithms to be more intelligent. In addition, the engine of the vehicle poses many advantages to improve the performance and parameter characteristics [52], and carbon emissions can be reduced if an appropriate injection strategy is adopted [53]. Therefore, the improvement of the engine should be considered in future work. Future research directions can also focus on developing more optimisation methods such as the lion optimisation algorithm [54], red deer algorithm [55], etc.

Author Contributions

Conceptualization, Y.N. and Z.Y.; methodology, Y.N., Z.Y and J.X.; writing—original draft preparation, Z.Y.; writing—review and editing, R.W.; supervision, S.Z.; funding acquisition, Y.N. and J.X. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the National Natural Science Foundation of China [grant numbers 62172373, 61872325, 62072258, 61772290] and the Fundamental Research Funds for the Central Universities, China [grant number 2652019028].

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The data presented in this study are available on request from the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

Notations

GComplete directed graph
NNode set
N 0 Customer set
AArc set
QVehicle capacity
wThe weight of a vehicle
q i The demand of customer i
s i The time cost of the route ending with i
y i The actual starting time for serving node i
d i j The length of arc ( i , j )
f i j The amount of freight flow on arc ( i , j )
x i j Binary flag variable 1
z i j r Binary flag variable 2
v i j r The travel speed of vehicle r on arc ( i , j )
[ a i , b i ] The time window of customer i

References

  1. Dantzig, G.B.; Ramser, R.H. The truck dispatching problem. Manag. Sci. 1959, 6, 80–91. [Google Scholar] [CrossRef]
  2. Long, J.; Sun, Z.; Pardalos, P.M.; Hong, Y.; Zhang, S.; Li, C. A hybrid multi-objective genetic local search algorithm for the prize-collecting vehicle routing problem. Inf. Sci. 2019, 478, 40–61. [Google Scholar] [CrossRef]
  3. Zhang, D.; Cai, S.; Ye, F.; Si, Y.; Nguyen, T.T. A hybrid algorithm for a vehicle routing problem with realistic constraints. Inf. Sci. 2017, 394, 167–182. [Google Scholar] [CrossRef]
  4. Toth, P.; Vigo, D. The Vehicle Routing Problem; Society for Industrial and Applied Mathematics: Philadelphia, PA, USA, 2002; p. 9. [Google Scholar]
  5. Repoussis, P.P.; Tarantilis, C.D.; Ioannou, G. The open vehicle routing problem with time windows. J. Oper. Res. 2007, 58, 355–367. [Google Scholar] [CrossRef]
  6. Moghdani, R.; Salimifard, K.; Demir, E.; Benyettou, A. The green vehicle routing problem: A systematic literature review. J. Clean. Prod. 2021, 279, 123691. [Google Scholar] [CrossRef]
  7. Bodin, L.; Golden, B.; Assad, A.; Ball, M. Routing and scheduling of vehicles and crews: The state of the art. Comput. Oper. Res. 1983, 10, 63–211. [Google Scholar]
  8. Brandao, J. A tabu search heuristic algorithm for open vehicle routing problem. Eur. J. Oper. Res. 2004, 157, 552–564. [Google Scholar] [CrossRef]
  9. Fleszar, K.; Osman, I.H.; Hindi, K.S. A variable neighbourhood search algorithm for the open vehicle routing problem. Eur. J. Oper. Res. 2009, 195, 803–809. [Google Scholar] [CrossRef]
  10. Tarantilis, C.D.; Ioannou, G.; Kiranoudis, C.T.; Prastacos, G.P. Solving the open vehicle routing problem via a single parameter meta-heuristic algorithm. J. Oper. Res. 2005, 56, 588–596. [Google Scholar] [CrossRef]
  11. MirHassani, S.; Abolghasemi, N. A particle swarm optimization algo-rithm for open vehicle routing problem. Expert Syst. Appl. 2011, 38, 11547–11551. [Google Scholar] [CrossRef]
  12. Li, X.; Tian, P.; Leung, S. An ant colony optimization metaheuristic hybridized with tabu search for the open vehicle routing problem. J. Oper. Res. Soc. 2009, 60, 1012–1025. [Google Scholar] [CrossRef]
  13. Repoussis, P.P.; Tarantilis, C.D.; Braysy, O.; Ioannou, G. A hybrid evolution strategy for the open vehicle routing problem. Comput. Oper. Res. 2010, 37, 443–455. [Google Scholar] [CrossRef]
  14. Ashtineh, H.; Pishvaee, M. Alternative Fuel Vehicle-Routing Problem: A life cycle analysis of transportation fuels. J. Clean. Prod. 2019, 219, 166–182. [Google Scholar] [CrossRef]
  15. Yu, Y.; Wang, S.; Wang, J.; Huang, M. A branch-and-price algorithm for the heterogeneous fleet green vehicle routing problem with time windows. Transp. Res. Part B Methodol. 2019, 122, 511–527. [Google Scholar] [CrossRef]
  16. Wang, L.; Lu, J. A memetic algorithm with competition for the capacitated green vehicle routing problem. IEEE/CAA J. Autom. Sin. 2019, 6, 516–526. [Google Scholar] [CrossRef]
  17. Niu, Y.; Yang, Z.; Chen, P.; Xiao, J. Optimizing the green open vehicle routing problem with time windows by minimizing comprehensive routing cost. J. Clean Prod. 2018, 171, 962–971. [Google Scholar] [CrossRef]
  18. Pan, L.; Păun, G.; Pérez-Jimxexnez, M.J. Spiking neural P systems with neuron division and budding. Sci. China Inf. Sci. 2011, 54, 1596–1607. [Google Scholar] [CrossRef] [Green Version]
  19. Păun, G. Computing with membranes. J. Comput. Syst. Sci. 2000, 61, 108–143. [Google Scholar] [CrossRef] [Green Version]
  20. Sosík, P. P systems attacking hard problems beyond NP: A survey. J. Membr. Comput. 2019, 1, 198–208. [Google Scholar] [CrossRef] [Green Version]
  21. Applications of Membrane Computing; Ciobanu, G.; Pérez-Jimxexnez, M.J.; Păun, G. (Eds.) Springer: Berlin/Heidelberg, Germany, 2006; Volume 287, pp. 73–100. [Google Scholar]
  22. Derigs, U.; Reuter, K. A simple and efficient tabu search heuristic for solving the open vehicle routing problem. J. Oper. Res. Soc. 2009, 60, 1658–1669. [Google Scholar] [CrossRef]
  23. Fu, Z.; Eglese, R.; Li, L. Corrigendum to the paper: A new tabu search heuristic for the open vehicle routing problem. J. Oper. Res. Soc. 2006, 57, 1017–1018. [Google Scholar] [CrossRef] [Green Version]
  24. Russell, R.; Chiang, W.; Zepeda, D. Integrating multi-product production and distribution in newspaper logistics. Comput. Oper. Res. 2008, 35, 1576–1588. [Google Scholar] [CrossRef]
  25. Pisinger, D.; Ropke, S. A general heuristic for vehicle routing problems. Comput. Oper. Res. 2007, 34, 2403–2435. [Google Scholar] [CrossRef]
  26. Salari, M.; Toth, P.; Tramontani, A. An ILP improvement procedure for the open vehicle routing problem. Comput. Oper. Res. 2010, 37, 2106–2120. [Google Scholar] [CrossRef] [Green Version]
  27. Zachariadis, E.; Kiranoudis, T. An open vehicle routing problem metaheuristic for examining wide solution neighbourhoods. Comput. Oper. Res. 2010, 37, 712–723. [Google Scholar] [CrossRef] [Green Version]
  28. Tarantilis, C.D.; Ioannou, G.; Kiranoudis, C.T.; Prastacos, G.P. A threshold accepting approach to the open vehicle routing problem. RAIRO Oper. Res. 2004, 38, 345–360. [Google Scholar] [CrossRef] [Green Version]
  29. Wang, W.; Wu, B.; Zhao, Y.; Feng, D. Particle swarm optimization for open vehicle routing problem. In International Conference on Intelligent Computing: Part II; Huang, D.S., Li, K., Irwin, G.W., Eds.; Springer: Berlin/Heidelberg, Germany, 2006; pp. 999–1007. [Google Scholar]
  30. Zhen, T.; Zhu, Y.; Zhang, Q. A particle swarm optimization algorithm for the open vehicle routing problem. In Proceedings of the 2009 International Conference on Environmental Science and Information Application Technology, Wuhan, China, 4–5 July 2009; pp. 560–563. [Google Scholar]
  31. Li, X.; Tian, P. An ant colony system for the open vehicle routing problem. In Lecture Notes in Computer Science (ANTS 2006); Dorigo, M., Ed.; Springer: Berlin/Heidelberg, Germany, 2006; Volume 4150, pp. 356–363. [Google Scholar]
  32. Pan, L.; Fu, Z. A clonal selection algorithm for open vehicle routing problem. In Proceedings of the 2009 Third International Conference on Genetic and Evolutionary Computing, Guilin, China, 14–17 October 2009; pp. 786–790. [Google Scholar]
  33. Yu, S.; Ding, C.; Zhu, K. A hybrid GA-TS algorithm for open routing optimization of coal mines material. Expert Syst. Appl. 2011, 38, 10568–10573. [Google Scholar] [CrossRef]
  34. Barbuti, R.; Bove, P.; Milazzo, P.; Pardini, G. Minimal probabilistic P systems for modelling ecological systems. Theor. Comput. Sci. 2015, 608, 36–56. [Google Scholar] [CrossRef]
  35. Lucie, C.; Erzsĕbet, C.; Ludxexk, C.; Petr, S. P colonies. J. Membr. Comput. 2019, 1, 178–197. [Google Scholar]
  36. Niu, Y.; Zhang, Y.; Zhang, J. Running cells with decision-making mechanism: Intelligence decision P System for evacuation simulation. Int. J. Comput. Commun. 2018, 13, 865–880. [Google Scholar] [CrossRef]
  37. Sakellariou, I.; Stamatopoulou, I.; Kefalas, P. Using membranes to model a multi-agent system towards underground metro station crowd behaviour simulation. In Proceedings of the ECAI 2012 Workshop, Montpellier, France, 28 August 2012; pp. 5–10. [Google Scholar]
  38. Nishida, T.Y. Membrane algorithms: Approximate algorithms for NP-complete optimization problems. In Applications of Membrane Computing; Springer: Berlin/Heidelberg, Germany, 2006; pp. 303–314. [Google Scholar]
  39. Zhang, G.; Liu, C.; Rong, H. Analyzing radar emitter signals with membrane algorithms. Math. Comput. Model. 2010, 52, 1997–2010. [Google Scholar] [CrossRef]
  40. Zhang, G.; Rong, H.; Neri, F.; Pérez-Jimxexnez, M.J. An optimization spiking neural P system for approximately solving combinatorial optimization problems. Int. J. Neural. Syst. 2014, 24, 1440006. [Google Scholar] [CrossRef] [PubMed]
  41. Zhang, G.; Rong, H.; Cheng, J.; Qin, Y. A population-membrane-system-inspired evolutionary algorithm for distribution network reconfiguration. J. Electron. 2014, 23, 437–441. [Google Scholar]
  42. Barth, M.; Boriboonsomsin, K. Energy and emissions impacts of a freeway-based dynamic eco-driving system. Transp. Res. Part D 2009, 14, 400–410. [Google Scholar] [CrossRef]
  43. Barth, M.; Younglove, T.; Scora, G. Development of a Heavy-Duty Diesel Modal Emissions and Fuel Consumption Model; Technical Report; UCB-ITSPRR-2005-1, California PATH Program; Institute of Transportation Studies, University of California at Berkeley: Berkeley, CA, USA, 2005. [Google Scholar]
  44. Scora, M.; Barth, G. Comprehensive Modal Emission Model (CMEM), Version 3.01, User Guide. Technical Report. 2006. Available online: http://www.cert.ucr.edu/cmem/docs/CMEM_User_Guide_v3.01d.pdf (accessed on 17 February 2014).
  45. Koç, Ç.; Bektaş, T.; Jabali, O.; Laporte, G. The fleet size and mix pollution-routing problem. Transp. Res. Part B Methodol. 2014, 70, 239–254. [Google Scholar] [CrossRef]
  46. Tan, K.C.; Cheong, C.K.; Goh, C.K. Solving multi-objective vehicle routing problem with stochastic demand via evolutionary computation. Eur. J. Oper. Res. 2007, 177, 813–839. [Google Scholar] [CrossRef]
  47. 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]
  48. Kramer, M.; Maculan, N.; Subramanian, A.; Vidal, T. A speed and departure time optimization algorithm for the pollution-routing problem. Eur. J. Oper. Res. 2015, 247, 782–787. [Google Scholar] [CrossRef] [Green Version]
  49. Li, J.; Xin, L.; Cao, Z.; Lim, A.; Song, W.; Zhang, J. Heterogeneous Attentions for Solving Pickup and Delivery Problem via Deep Reinforcement Learning. IEEE Trans. Intell. Transp. Syst. 2021, 23, 2306–2315. [Google Scholar] [CrossRef]
  50. Wu, Y.; Song, W.; Cao, Z.; Zhang, J.; Lim, A. Learning Improvement Heuristics for Solving Routing Problems. IEEE Trans. Neural Netw. Learn. Syst. 2021, 1–13. [Google Scholar] [CrossRef]
  51. Xin, L.; Song, W.; Cao, Z.; Zhang, J. Step-wise deep learning models for solving routing problems. IEEE Trans. Ind. Inform. 2020, 17, 4861–4871. [Google Scholar] [CrossRef]
  52. Shi, C.; Zhang, Z.; Ji, C.; Li, X.; Di, L.; Wu, Z. Potential improvement in combustion and pollutant emissions of a hydrogen-enriched rotary engine by using novel recess configuration. Chemosphere 2022, 299, 134491. [Google Scholar] [CrossRef]
  53. Shi, C.; Ji, C.; Ge, Y.; Wang, S.; Wang, H.; Yang, J. Parametric analysis of hydrogen two-stage direct-injection on combustion characteristics, knock propensity, and emissions formation in a rotary engine. Fuel 2021, 287, 119418. [Google Scholar] [CrossRef]
  54. Menaga, D.; Revathi, S. Least lion optimisation algorithm (LLOA) based secret key generation for privacy preserving association rule hiding. IET Inf. Secur. 2018, 12, 332–340. [Google Scholar] [CrossRef]
  55. Fathollahi-Fard, A.M.; Hajiaghaei-Keshteli, M.; Tavakkoli-Moghaddam, R. Red deer algorithm (RDA): A new nature-inspired meta-heuristic. Soft Comput. 2020, 24, 14637–14665. [Google Scholar] [CrossRef]
Figure 1. The proposed membrane structure.
Figure 1. The proposed membrane structure.
Sustainability 14 08661 g001
Figure 2. Six operators for initialising solutions.
Figure 2. Six operators for initialising solutions.
Sustainability 14 08661 g002
Figure 3. Level-2 membrane search.
Figure 3. Level-2 membrane search.
Sustainability 14 08661 g003
Figure 4. Level-3 membrane search.
Figure 4. Level-3 membrane search.
Sustainability 14 08661 g004
Figure 5. Membrane communication.
Figure 5. Membrane communication.
Sustainability 14 08661 g005
Figure 6. Convergence process of GA in skin membrane. (Cliffs are observed every I M C A iterations in the convergence curves, which proves the effectiveness of the MCA.)
Figure 6. Convergence process of GA in skin membrane. (Cliffs are observed every I M C A iterations in the convergence curves, which proves the effectiveness of the MCA.)
Sustainability 14 08661 g006aSustainability 14 08661 g006b
Figure 7. The convergence curves of the MIHA, hybrid Tabu search, Tabu search, and GA for 10 instances of BJ100. (The MIHA outperforms other algorithms in terms of solution quality and convergence speed in all instances of BJ100.)
Figure 7. The convergence curves of the MIHA, hybrid Tabu search, Tabu search, and GA for 10 instances of BJ100. (The MIHA outperforms other algorithms in terms of solution quality and convergence speed in all instances of BJ100.)
Sustainability 14 08661 g007aSustainability 14 08661 g007b
Figure 8. The convergence curves of MIHA, hybrid tabu search, tabu search, and GA for the JD1000 problem instance.
Figure 8. The convergence curves of MIHA, hybrid tabu search, tabu search, and GA for the JD1000 problem instance.
Sustainability 14 08661 g008
Table 1. Parameter values of a light-duty vehicle.
Table 1. Parameter values of a light-duty vehicle.
NotationDescriptionTypical Value
η Diesel engine efficiency0.45
C r Rolling resistance coefficient0.01
ρ Density of air (kg/m 3 )1.2041
ψ Conversion factor (g/s to litre/s)737
κ Heating value of the typical diesel fuel (kilojoule/g)44
gConstant of gravitation (m/s 2 )9.81
n t f Vehicle drive train efficiency0.45
ξ Fuel-to-air mass ratio1
τ Acceleration (m/s 2 )0
θ Angle of the road0
v u Highest speed (m/s)27.8 (or 100 km/h)
v l Lowest speed (m/s)5.5 (or 20 km/h)
f c Cost of fuel and CO 2 emissions (GBP/litre)1.4
f d Cost of driver wage (GBP/s)0.0022
QVehicle capacity (kg)4000
wVehicle curb weight (kg)3500
fVehicle fixed cost (GBP/day)0
VEngine displacement (litre)4.5
kEngine friction factor (kilojoule/rev/litre)0.25
N e Engine speed (rev/s)38.34
AArea of frontal surface (m 2 )7.0
C d Aerodynamics drag coefficient0.6
Table 2. Algorithm parameters.
Table 2. Algorithm parameters.
NotationBTypical Values
I M C A Iterations between MCAs150
I m a x Maximum iteration number500
p l e v e l 3 Probability of level-3 search0.8
A r Archive size100
N s Neighbourhood size100
LTabu-list size30
PPopulation size100
p m u t a t i o n Rate of mutation0.8
p c r o s s o v e r Rate of crossover0.2
( α 1 , α 2 , μ , λ ) I 1 parameters ( 0.5 , 0.5 , 1 , 1 )
Table 3. Experimental result with different p l e v e l 3 .
Table 3. Experimental result with different p l e v e l 3 .
p l e v e l 3 Best SolutionMean SolutionWorst SolutionSDET
010,875.655310,928.441610,957.593322.340598.4386
0.110,882.566410,935.835610,978.956025.622099.7357
0.210,897.062710,922.486610,946.948614.2856106.7122
0.310,894.685510,935.184910,981.759822.6840114.1316
0.410,893.899910,927.534710,960.131120.8581132.3853
0.510,870.565810,927.125010,965.289928.0809139.0837
0.610,893.713910,922.879510,946.235919.7116153.5391
0.710,859.437710,918.754010,956.280723.5941158.2609
0.810,849.732810,907.990510,959.081828.7783172.7458
0.910,885.867310,922.235910,945.809116.2176172.7154
110,864.733410,914.449110,939.827321.2864179.3093
Table 4. Experimental results with different I M C A .
Table 4. Experimental results with different I M C A .
I MCA Best SolutionMean SolutionWorst SolutionSDET
1510,887.933910,915.925810,933.997812.4846180.9297
2510,887.338610,907.151210,946.953317.9590179.3292
5010,864.733410,914.449110,939.827321.2864179.3093
7510,887.747510,914.015110,947.065018.9695175.5044
10010,899.913310,917.295610,930.32509.1312174.3383
12510,881.117110,913.020510,956.540519.0231180.1102
15010,847.090110,900.653210,947.310126.0596150.6687
17510,866.385410,908.577710,944.570823.6946158.3528
20010,878.170510,911.714310,945.282918.0546184.6337
Table 5. Comparison of MIHA and MIHA l e v e l 3 .
Table 5. Comparison of MIHA and MIHA l e v e l 3 .
InstanceBest SolutionMean SolutionWorst SolutionSDET
MIHABJ60_0110,864.733410,914.449110,939.827321.2864179.3093
BJ60_0210,217.469110,310.194910,395.681854.3404167.1625
BJ60_0311,321.684811,423.839111,489.164453.3224168.3861
BJ60_0411,800.756311,847.728411,915.053431.7880179.6456
BJ60_0510,890.837710,909.883010,947.011714.5797190.0507
BJ60_0611,875.301811,916.538011,942.883521.5401157.5884
BJ60_0712,528.308012,634.502012,685.895354.0499138.2126
BJ60_0811,783.349011,867.471611,932.790445.1478162.5045
BJ60_0911,573.541011,705.395311,908.5312107.6724173.2149
BJ60_1012,939.990013,196.193813,269.075490.2917161.0214
Average11,579.597111,672.619511,742.591449.4019167.7096
MIHA l e v e l 3 BJ60_0110,876.947210,929.249210,959.753323.859799.9533
BJ60_0210,354.648110,439.402010,529.045447.348398.3095
BJ60_0311,417.682611,510.449711,651.471377.548299.3993
BJ60_0411,810.694411,850.364611,947.288036.0053104.0135
BJ60_0510,900.383410,930.108610,996.629829.6276115.6167
BJ60_0611,884.673411,934.801711,994.176037.2390100.8201
BJ60_0712,570.412412,737.463512,916.3772116.377788.5942
BJ60_0811,816.649611,865.487311,937.103942.157994.7336
BJ60_0911,652.559611,744.578311,860.816274.293192.3574
BJ60_1013168.219413,240.369613,322.126743.899985.6219
Average11,645.287011,718.227511,811.478852.835697.9418
Table 6. Comparison of MIHA and MIHA T S .
Table 6. Comparison of MIHA and MIHA T S .
InstanceBest SolutionMean SolutionWorst SolutionSDET
MIHABJ60_0110,864.733410,914.449110,939.827321.2864179.3093
BJ60_0210,217.469110,310.194910,395.681854.3404167.1625
BJ60_0311,321.684811,423.839111,489.164453.3224168.3861
BJ60_0411,800.756311,847.728411,915.053431.7880179.6456
BJ60_0510,890.837710,909.883010,947.011714.5797190.0507
BJ60_0611,875.301811,916.538011,942.883521.5401157.5884
BJ60_0712,528.308012,634.502012,685.895354.0499138.2126
BJ60_0811,783.349011,867.471611,932.790445.1478162.5045
BJ60_0911,573.541011,705.395311,908.5312107.6724173.2149
BJ60_1012,939.990013,196.193813,269.075490.2917161.0214
Average11,579.597111,672.619511,742.591449.4019167.7096
MIHA T S BJ60_0110,887.916510,928.776410,958.615222.1538179.1811
BJ60_0210,350.433510,433.347110,569.403366.3863165.9635
BJ60_0311,410.850611,546.687911,693.670083.6334183.0199
BJ60_0411,808.050411,876.074312,002.341260.3121190.7105
BJ60_0510,893.535110,908.295710,941.604215.4682213.1253
BJ60_0611,930.476311,993.740512,040.617429.2162162.8483
BJ60_0712,790.413112,945.802313,093.283695.8863150.9155
BJ60_0811,840.776211,980.063712,070.688464.6119170.2074
BJ60_0911,700.639012,040.850912,195.6716140.5182169.8237
BJ60_1013,352.319113,452.731613,528.238854.9095152.6279
Average11,696.541011,810.637011,909.413463.3096173.8423
Table 7. Comparison of MIHA and MIHA G A .
Table 7. Comparison of MIHA and MIHA G A .
InstanceBest SolutionMean SolutionWorst SolutionSDET
MIHABJ60_0110,864.733410,914.449110,939.827321.2864179.3093
BJ60_0210,217.469110,310.194910,395.681854.3404167.1625
BJ60_0311,321.684811,423.839111,489.164453.3224168.3861
BJ60_0411,800.756311,847.728411,915.053431.7880179.6456
BJ60_0510,890.837710,909.883010,947.011714.5797190.0507
BJ60_0611,875.301811,916.538011,942.883521.5401157.5884
BJ60_0712,528.308012,634.502012,685.895354.0499138.2126
BJ60_0811,783.349011,867.471611,932.790445.1478162.5045
BJ60_0911,573.541011,705.395311,908.5312107.6724173.2149
BJ60_1012,939.990013,196.193813,269.075490.2917161.0214
Average11,579.597111,672.619511,742.591449.4019167.7096
MIHA G A BJ60_0110,889.673310,920.513010,947.431820.3041162.6233
BJ60_0210,267.119510,333.714210,415.623449.4848149.6058
BJ60_0311,349.309711,473.152611,595.029177.7908149.0490
BJ60_0411,804.831111,843.475911,937.974839.7545150.1856
BJ60_0510,898.553310,917.006910,942.302314.3160168.1142
BJ60_0611,882.732711,939.835711,973.666330.1972170.9655
BJ60_0712,534.643612,658.872512,849.594185.0550129.9516
BJ60_0811,806.838311,876.474011,934.881539.6358138.7723
BJ60_0911,630.324111,687.766411,850.790063.9084140.8432
BJ60_1013,120.354313,262.148313,355.028575.4520128.9989
Average11,618.438011,691.296011,780.232249.5899148.9109
Table 8. Comparison of the MIHA and MIHA M S .
Table 8. Comparison of the MIHA and MIHA M S .
InstanceBest SolutionMean SolutionWorst SolutionSDET
MIHABJ60_0110,864.733410,914.449110,939.827321.2864179.3093
BJ60_0210,217.469110,310.194910,395.681854.3404167.1625
BJ60_0311,321.684811,423.839111,489.164453.3224168.3861
BJ60_0411,800.756311,847.728411,915.053431.7880179.6456
BJ60_0510,890.837710,909.883010,947.011714.5797190.0507
BJ60_0611,875.301811,916.538011,942.883521.5401157.5884
BJ60_0712,528.308012,634.502012,685.895354.0499138.2126
BJ60_0811,783.349011,867.471611,932.790445.1478162.5045
BJ60_0911,573.541011,705.395311,908.5312107.6724173.2149
BJ60_1012,939.990013,196.193813,269.075490.2917161.0214
Average11,579.597111,672.619511,742.591449.4019167.7096
MIHA M S BJ60_0111,328.706111,450.766111,645.5626102.433716.3996
BJ60_0210,706.722010,825.826610,952.431977.137516.0414
BJ60_0312,036.900112,135.763212,194.556854.371715.1175
BJ60_0412,367.317212,561.485712,854.7533147.914717.2651
BJ60_0511,232.091811,294.026111,371.089352.739016.8575
BJ60_0612,288.413112,446.665512,589.860289.290716.7956
BJ60_0713,243.308113,393.831013,479.328184.127913.8604
BJ60_0812,172.439712,363.849512,507.0350110.117613.1230
BJ60_0912,293.583812,422.876412,574.387075.679814.9571
BJ60_1013,356.470313,585.738413,783.8378130.114213.2258
Average12,102.595212,248.082912,395.284292.392715.3643
Table 9. Computational result of the Beijing 100-node problem.
Table 9. Computational result of the Beijing 100-node problem.
InstanceBest SolutionMean SolutionWorst SolutionSDET
BJ100_0119,067.029119,198.124719,286.246477.2545177.5238
BJ100_0220,054.621320,212.311620,335.270379.4795177.5122
BJ100_0319,611.419419,739.105719,807.485469.5798187.4094
BJ100_0418,185.238218,288.239318,365.809866.8545183.9430
BJ100_0518,450.242418,650.088018,721.656578.3719177.8560
BJ100_0617,185.991617,292.520717,429.9383100.3186191.1868
BJ100_0718,018.795818,130.901818,231.910958.4036203.7468
BJ100_0818,077.440418,245.133318,386.8610102.6939190.7556
BJ100_0917,317.347917,414.333017,513.476157.2721181.7808
BJ100_1020,888.424520,996.419921,191.193887.1091165.4292
Average18,685.655118,816.717818,926.984977.7338183.7144
Table 10. Computational result of the Jingdong 1000-node problem.
Table 10. Computational result of the Jingdong 1000-node problem.
AlgorithmBest SolutionMean SolutionWorst SolutionSDET
MIHA140,577.0284141,085.6778141,823.7589365.40702331.9363
Table 11. The mean elapsed time of different instance sizes.
Table 11. The mean elapsed time of different instance sizes.
InstanceBJ60BJ100JD1000
ET150.6687183.71442331.9363
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Niu, Y.; Yang, Z.; Wen, R.; Xiao, J.; Zhang, S. Solving the Green Open Vehicle Routing Problem Using a Membrane-Inspired Hybrid Algorithm. Sustainability 2022, 14, 8661. https://doi.org/10.3390/su14148661

AMA Style

Niu Y, Yang Z, Wen R, Xiao J, Zhang S. Solving the Green Open Vehicle Routing Problem Using a Membrane-Inspired Hybrid Algorithm. Sustainability. 2022; 14(14):8661. https://doi.org/10.3390/su14148661

Chicago/Turabian Style

Niu, Yunyun, Zehua Yang, Rong Wen, Jianhua Xiao, and Shuai Zhang. 2022. "Solving the Green Open Vehicle Routing Problem Using a Membrane-Inspired Hybrid Algorithm" Sustainability 14, no. 14: 8661. https://doi.org/10.3390/su14148661

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