Next Article in Journal
Deep Large-Margin Rank Loss for Multi-Label Image Classification
Previous Article in Journal
About the Resolvent Kernel of Neutral Linear Fractional System with Distributed Delays
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Hybrid Heuristic for the Multi-Depot Static Bike Rebalancing and Collection Problem

1
School of Economics and Management, Chang’an University, Xi’an 710064, China
2
School of Public Policy and Administration, Xi’an Jiaotong University, Xi’an 710049, China
3
Department of System Engineering and Engineering Management, City University of Hong Kong, Tat Chee Avenue, Kowloon, Hong Kong
*
Author to whom correspondence should be addressed.
Mathematics 2022, 10(23), 4583; https://doi.org/10.3390/math10234583
Submission received: 26 October 2022 / Revised: 29 November 2022 / Accepted: 1 December 2022 / Published: 3 December 2022
(This article belongs to the Section Engineering Mathematics)

Abstract

:
The bike rebalancing problem is one of the major operational challenges in the urban bike-sharing system, which involves the redistribution of bikes among stations to prevent stations from being empty or overloaded. This paper investigates a new bike rebalancing problem, which considers the collection of broken bikes in the multi-depot system. The proposed problem can be classified as a two-commodity vehicle routing problem with pick-up and delivery. An integer programming model is formulated to find the optimal vehicle assignment and visiting sequences with the minimum total working time and fixed cost of vehicles. A hybrid heuristic algorithm integrating variable neighborhood search and dynamic programming is proposed to solve the problem. The computational results show that the proposed method can find 26 best solutions out of 36 instances, while the CPLEX obtains 16 best solutions. Impact of broken bikes collection and distribution of depots is examined. Comparison of different practical strategies indicates that the number of vehicles can be significantly reduced by allowing multiple visits to depots. Allowing vehicles to return to different depots can help reduce the total working time.

1. Introduction

In recent years, public bike-sharing systems (BSS) flourished worldwide as a complementary mode to public transportation for last mile service [1]. Since the first BSS installed in 1965, the number of systems increased to more than 1000 around the world [2]. Bike riding, which is a green mode of transportation, can be used to decrease the dependence on automobiles, thereby relieving traffic congestion and air pollution. A BSS provides rental services of public bikes to citizens. Rental stations are typically located in residential areas, commercial areas, and the places near public transportation stations. Citizens can rent a bike at any station, use it for a journey and automatically return it to any station. Bike rental demand is unevenly distributed; hence, stations easily become empty and full, which results in difficulties in renting and returning bikes. To improve the service quality of the system, the system operators need to redistribute bikes from stations with excess bikes to those with insufficient bikes using heavy vehicles, which is known as bike rebalancing.
The bike rebalancing problem (BRP) is to route vehicles to perform rebalancing requirements with minimum travelling cost [3]. The use of heavy vehicles during the operations is expensive and produces heavy carbon emissions; thus, conducting vehicle routing optimization is necessary to decrease the transportation cost of these heavy vehicles [4]. The bike rebalancing can be performed in both dynamic and static manners. The dynamic rebalancing is a day-time operation while the system is in high usage and the usage rate changes during the operation. The static rebalancing assumes no user activity during rebalancing, which is a night-time operation. As heavy trucks are always forbidden to enter the inner cities during the day-time and the systems want to guarantee the safety of the riders, we focus on the static rebalancing in this paper. In this case, the rebalancing and collection requests of each night can be extracted from the information system before the planning. The ideal inventory of each station is set based on the historical data analysis and the broken bikes are recognized by the daily inspection and customer reports.
As time passes, bikes may break down because of repeated usage or other reasons. Broken bikes occupy space in stations and cannot serve users, which decrease operational efficiency and user satisfaction of the BSS. Therefore, collecting broken bikes from stations and transporting them to the depot is necessary. Broken bikes will be repaired in the depot and then returned back to the stations. The addition of the broken bike collection activity to the usable bike rebalancing operation is an approach to address such a problem [5,6], and needs to be optimized, as it makes the rebalancing less effective. As the broken bikes cannot be unloaded after collection, it leads to an increase in the cumulative number of bikes on vehicles during routes. Vehicles always stop serving and need to return back to the depot due to limited vehicle capacity. Further, more stations and bikes are installed into the system with the expansion of the BSS. Therefore, more depots are required in the BSS to reduce the traveling cost and improve the service level. In this situation, stations are not necessarily assigned to their nearest depots. These new changes in the real situation motivate us to extend the original studies to capture systems with broken bikes and multiple depots.
In this paper, we propose a multi-depot static bike rebalancing and collection problem (MSBRCP). In the MSBRCP, a set of stations with rebalancing and collection requests need to be served by a set of capacitated vehicles from a set of depots. We need to find the optimal visiting sequences for all the vehicles with the minimum travelling cost. Before starting their routes, vehicles should be assigned to appropriate depots. Vehicles are allowed to start and end at different depots to reduce the cost. When visiting a station, both rebalancing and collection requests should be fulfilled. The proposed problem in this study can be classified as a two-commodity vehicle routing problem with pickup and delivery. The system has two types of bikes, namely, usable and broken bikes, which have different pickup–delivery relationships. The pickup and delivery problem can be classified into three types based on different pickup–delivery relationships [7], namely, many-to-many, one-to-many-to-one, and one-to-one problems. We consider more than one relationship in the proposed problem. The rebalancing of usable bikes is a many-to-many problem, which indicates that any station can be a source or destination for usable bikes. Broken bike collection is a one-to-many-to-one problem. In one route, the bikes that were repaired in a depot can be delivered to many stations, and broken bikes in many stations should be collected and returned to a depot. Therefore, the proposed problem is a type of pickup and delivery with two pickup–delivery relationships.
The MSBRCP differs from that in previous research as follows: (1) the system network includes multiple depots, allowing vehicles’ multiple visits. The decisions include not only the routes of vehicles, but also the allocated starting and ending depots for each vehicle; (2) two types of bikes with two pickup–delivery relationships are considered, i.e., the usable bikes which can be reallocated from station to station, and the broken bikes which can only be returned to the depots.
Due to the difficulty of solving the MSBRCP to optimality with commercial solvers, we propose a hybrid heuristic algorithm by integrating variable neighborhood search (VNS) and dynamic programming (DP). The basic concept of VNS is the change in neighborhoods during the local search, which explores a wide solution space and avoids getting stuck in the local optimum. In the algorithm we propose, the restricted DP with two extension rules is embedded in the framework of VNS as a local search operator. It improves the feasibility and quality of solutions by resolving a set of traveling salesman problems (TSPs) included in the solution obtained by VNS. The effectiveness of the proposed algorithm is tested on both benchmark and randomized instances. Some computational experiments are conducted to examine the impact of broken bikes and distribution of depots and to compare different strategies in practice.
The remainder of this paper is structured as follows: Section 2 provides a literature review that focuses on BRP. Section 3 presents the mathematical formulation of the proposed problem. Section 4 describes the hybrid heuristic algorithm. Section 5 shows the computational experiments and results. Section 6 concludes the study and discusses the directions for future research.

2. Literature Review

As one of the most important operations of a BSS, bike rebalancing attracted increasing attention in recent years. In general, BRP can be categorized into two types: dynamic rebalancing problem (DBRP) and static rebalancing problem (SBRP).
For DBRP, Caggiani and Ottomanelli [8] presented a flexible fuzzy decision support system for the rebalancing process that considered the dynamic variation in demand. The method was applied to a small area with five stations and one vehicle but can be expanded to a larger area. Contardo et al. [9] proposed a mathematical model for a dynamic public bike-sharing balancing problem. A scalable methodology was presented to provide the lower and upper bounds of the problem. Regue and Recker [10] proposed a comprehensive framework to solve DBRP. The simulation results indicate that the framework could improve system performance and reduce insufficiency. Pfrommer et al. [11] combined BRP and dynamic pricing to improve the BSS. The routes of vehicles were determined by a heuristic. Ghosh et al. [12] proposed a model to determine the routes of vehicles for multiple time steps using the expected demand for bikes. The problem was solved with novel approaches based on decomposition and abstraction. Shui and Szeto [13] presented a dynamic green BRP model to minimize the unmet demands and carbon emissions of vehicles. A hybrid rolling horizon artificial bee colony algorithm was developed to solve the model. Caggiani et al. [14] investigated the dynamic management of free-floating BSS and presented a spatio-temporal forecasting model and a relocation decision support system for solving the problem. The relocation process is activated several times and generates how many bikes need to be repositioned each time. Legros [15] proposed a Markov decision process approach to derive a dynamic bike repositioning strategy to minimize the rate of arrival of unsatisfied users. They first proved the optimal inventory level at each station, then presented a policy for the bike repositioning problem using a one-step policy improvement method. Brinkmann et al. [16] presented the stochastic dynamic inventory routing problem for BSS to avoid unsatisfied demand. They proposed a dynamic lookahead policy, which was autonomously parametrized by means of value function approximation.
SBRP was first investigated by Benchimol et al. [17] based on the BSS installed in Paris in 2007. The authors classified the problem into a one-commodity pickup and delivery problem with one vehicle. Multiple visits to a station were allowed. Chemla et al. [18] also focused on single-vehicle SBRP. In their problem, stations can be visited several times and be used as buffers where bikes can be temporary stored before being moving to their final destination. A branch-and-cut algorithm was used to solve the relaxation of the model to obtain the lower bound. A tabu search was used to obtain the upper bound. The effectiveness of the algorithms was tested on a set of instances. Erdoğan et al. [19] extended the single-vehicle SBRP by considering demand intervals. The target inventory of a station was not a certain value but an interval with lower and upper bounds. A branch-and-cut algorithm with a Benders decomposition scheme was developed to solve the model. Li et al. [20] investigated a new SBRP that considered multiple types of bikes. Several types can be substituted by other types and can occupy different spaces in stations. This new problem was solved using a hybrid genetic algorithm. Xu and Zou [21] addressed a broken bike recycling problem by incentivizing participants with monetary rewards. This problem was an extension of the vehicle routing problem and a modified tabu search was developed to solve it. Many studies focus on developing solution methods for single-vehicle BRP, including exact algorithms ([4,22]) and metaheuristic algorithms ([23,24,25]).
In addition to the single-vehicle situation, the multiple-vehicle BRP was investigated by several researchers. Raviv et al. [26] investigated SBRP with a fleet of vehicles. The model did not specify a target inventory level for each station, but determined the inventory based on a convex penalty function incorporated into the objective function along with the total travelling cost. Two models were presented and compared through a numerical study. Dell’Amico et al. [3] presented four mathematical formulations for SBRP with a fleet of capacitated vehicles. The branch-and-cut algorithm was developed to solve the problem. Arabzad et al. [27] formulated an integer linear programming model for a periodic BRP in multiple periods. Bulhões et al. [28] studied the SBRP with multiple vehicles and visits. A branch-and-cut algorithm and an iterated local search metaheuristic were developed to solve the proposed model. Szeto and Shui [29] investigated a new BRP that determined the routes and quantities of loading and unloading at each station with the objective of minimizing demand dissatisfaction and service time. Additionally, several solution methods were developed for multi-vehicle SBRP, such as a three-step mathematical programming-based heuristic [30], a series of local search-based metaheuristics [31], a destroy-and-repair algorithm [32], a heuristic based on unsatisfied demand forecasting [6], a hybrid large neighborhood search [33,34], and a cluster-first route-second heuristic [35]. Luo et al. [36] investigated the BSS with consideration of minimizing the system’s life cycle greenhouse gas emissions. They presented a framework integrating a simulation model, an optimization model, and a life cycle assessment model to obtain the optimal bike fleet size and rebalancing strategy. Shui and Szeto [37] reviewed and systematically classified the existing literature of BRP. Table 1 provides a summary of the literature on the static bike rebalancing problem.
However, most problems investigated in the previous studies consider only one depot in a BSS. As a BSS expands, more than one depot will be installed to match the increase in the number of stations and redistribution requests. Before routing, the assignment of vehicles should be considered in the decision making of the daily rebalancing operation. Liu et al. [38] conducted the pioneering research considering multiple depots in a free-floating BSS. They discretized the whole rebalancing duration into many equal intervals as periods, and allowed the vehicles to visit the stations multiple times. The objective was to minimize the total unmet demand, inconvenience of getting a bike, and weighted vehicles’ total operational time. Moreover, broken bike collection is rarely considered in previous models. Alvarez-Valdes et al. [6] investigated a BSS with damaged bikes. They proposed a two-stage method consisting of estimating unsatisfied demand and routing for redistribution. They verified the procedure by real data from the BSS in Spain with a single depot. Wang and Szeto [39] studied BSS considering broken bikes with the objective of minimizing the total CO2 emissions. They applied a commercial solver to address the problem and a clustering method based on the nearest neighbor heuristic for a real-word instance. They conducted extensive experiments to discuss problem characteristics and the factors that affect the CO2 emissions. However, the study considered only one single depot, while more depots can decrease the total working time of vehicles in the BSS. Du and Cheng et al. [40] investigated SBRP with multiple depots, visits to the stations and vehicles in free-floating BSS, and proposed a greedy genetic heuristic. They assumed the trucks to be free from travel time and distance, and each truck can only be used once. However, with regard to BRP, the trucks are easily full of malfunctioning bikes and have to return to deports to release the broken bikes. These empty trucks can go back to the system and continue to work.
According to these research gaps, we analyze multi-depot SBRP with broken bike collection in this paper. An enhanced VNS is developed to solve the problem. VNS was proposed by Mladenović and Hansen [41] and was widely and successfully applied to various hard combinatorial optimization problems [42]. Cabrera-Guerrero and A Lvarez et al. proposed a VNS-based heuristic to solve the districting problem in BSS [43]. VNS is proven to be efficient in solving the multi-depot vehicle routing problems (MDVRP), such as MDVRP with time windows [44], MDVRP with loading cost [45], MDVRP with private fleet and common carriers [46], and MDVRP with heterogeneous fleet vehicles [42].

3. Problem Formulation

3.1. Problem Description

The problem we investigated in this study is the MSBRCP, which is used to redistribute usable bikes and collect broken bikes using capacitated vehicles with the objective of minimizing total working time and fixed cost of vehicles. A BSS is represented by a complete digraph G = ( V , A ) , which contains a set of vertices V and a set of arcs A , that represents the connections between vertices. The set of vertices is decomposed into a set of depots   V D and a set of bike stations V S . The rebalancing demand q i is given for each station, which is obtained from the difference between the ideal inventory and final status when the system stops providing services. This usually happens at night-time, and during this period, no user rents or returns bikes from (to) the BSS. We assume that the ideal inventory of each station in the system is predefined by analyzing historical rental data. When the system stops serving, the rebalancing demand q i will be quickly calculated. If q i > 0 , station i is referred to as a pickup station and its pickup request is q i ; if q i < 0 , station i is a delivery station and its delivery request is | q i | ; and if q i = 0, station i has no rebalancing request. We let q s y s = i V S q i to denote the rebalancing requirement of the whole system, which is used in the model to formulate the initial and final number of usable bikes on vehicles. The collection request r i ( r i 0 ), which indicates the number of broken bikes in station i , is also given through the daily inspection and user reports. There are two types of bikes having different pickup–delivery relationships. Usable bikes can be redistributed between different stations and brought into or taken out of the system according to the rebalancing targets. Broken bikes in stations should be collected and returned to depots.
A fleet of K homogeneous vehicles (trucks) with capacity Q is available at depots, where Q is the number of bikes that can be held in an individual vehicle. Each vehicle departs from a depot and can return to any depot after redistributing usable bikes from stations with excess bikes to those with insufficient bikes and simultaneously collecting broken bikes to bring back to depots. Vehicles depart from depots empty or with an initial load (usable bikes). A usable bike can also be taken back to depots from the system according to the rebalancing requirements. The capacity of depots is not considered in this paper. We assume depots contain sufficient usable bikes that come from repaired and new supplementary bikes.
Each arc ( i ,   j ) is associated with a working time   t i j , which is evaluated by the sum of the travel time on the arc ( i ,   j ) and the loading/unloading time spent in the station j. The loading and unloading times are assumed to be 1 min per bike [26]. There is a maximum working duration T for each vehicle.
Figure 1 illustrates an example of MSBRCP. This example has 2 depots (denoted by rectangles) and 11 stations (denoted by circles). There are 4 vehicles with a capacity of 10 bikes available at depot. A 2-tuple is associated with each station, where the former item denotes the rebalancing request of usable bikes and the latter item denotes the collection request of broken bikes. For example, station 7 is a delivery station and the number of usable bikes to be delivered is 4. In addition, the collection request for broken bikes is 2. Information for working time t i j is not shown for simplicity. The problem is to determine the allocation of vehicles to depots and the routes of the vehicles to meet all the rebalancing demand and collection requests. The objective is to minimize the total working time and fixed cost of vehicles subject to satisfying all the service requirements of the BSS.

3.2. Mathematical Formulation

The objective of the problem is to minimize the sum of the total working time and fixed cost of using vehicles, as shown in Equation (1). Constraints (2) to (8) restrict the route of each vehicle. Constraint (2) shows that a vehicle should be assigned to one depot at most. Constraint (3) states that every vehicle k in K starts at its assigned depot. Constraint (4) imposes that the vehicle should return to one depot after serving stations. The departure and end depots can be different. Constraint (5) ensures that each station is visited exactly once by one vehicle. Constraint (6) forbids the vehicle to move if the vehicle is not allocated to any depot. Constraint (7) ensures that two stations on an arc are served by the same vehicle. Constraint (8) is used to eliminate subtours.
Constraints (9) to (12) model the flow of usable bikes in the network. Constraint (9) illustrates the flow balance of usable bikes entering and leaving the vertex. Constraint (10) derives the lower and upper bounds of the load of usable bikes on a specific arc. Constraints (11) and (12) determine the initial and final number of usable bikes on vehicles.
Similarly, Constraints (13) to (16) model the flow of broken bikes in the network. Constraint (13) specifies the flow balance of broken bikes entering and leaving the vertex. Constraint (14) derives the lower and upper bounds of the load of broken bikes on arcs. Constraint (15) states that the initial load of broken bikes at the depot is zero. Constraint (16) indicates that the sum of usable and broken bikes on a vehicle cannot exceed the capacity of the vehicle. Constraint (17) restricts the maximum route duration for each vehicle. Constraint (18) derives the value ranges of binary variables.
Decision variables
x i j k :Equal to 1 if arc ( i ,   j ) is travelled by vehicle k, and 0 otherwise
y p k :Equal to 1 if vehicle k originated from depot p ,   p V D
z i j :The number of usable bikes transported over arc ( i ,   j )
f i j :The number of broken bikes transported over arc ( i ,   j )
Formulation
min         C = k K ( i , j ) A t i j x i j k + k K p V D a k y p k
p V D y p k 1 ,   k K
j V S x p j k = y p k ,   p V D , k K
j V S p V D x j p k = p V D y p k ,     k K
k K i V x i j k = 1 ,   j V S
( i , j ) A x i j k N p V D y p k ,   k K
i V x i j k i V x j i k = 0 ,   j V S , k K
( i , j ) S x i j k | S | 1 ,   S V S ,     k K
i V z j i i V z i j = q j ,   j V S
k K m a x { 0 , q i , q j } x i j k z i j k K m i n { Q , Q + q i , Q q j } x i j k ,   i , j V S
i V S p V D z p i = max { q s y s ,   0 }
i V S p V D z i p = m i n { q s y s , 0 }
i V S f j i i V S f i j = r j ,   j V S
k K r i x i j k f i j k K ( Q r j ) x i j k ,   ( i , j ) A
j V S f p j = 0 ,   p V D
z i j + f i j k K Q x i j k   ,   ( i , j ) A
( i , j ) A t i j x i j k T ,   k K
x i j k { 0 , 1 } , z i j 0 , f i j 0 ,   i , j V ,   k K

3.3. Other Practical Considerations

The formulation can be modified to cater for some other practical scenarios, such as:
(a)
If the vehicles need to return to the same depot from where they originated, Constraint (4) in the above formulation should be replaced by (19) as shown below:
j V S p V D x j p k = y p k   ,   p V D ,   k K
(b)
In this problem, each vehicle is restricted to perform at most one route and the routes may end up shorter than the maximum working duration due to limited capacity. The collection of broken bikes may worsen the situation because broken bikes can only be delivered to depots. A consequence is the need for an oversized fleet of vehicles to satisfy all the demand ([47]). The multiple use of vehicles overcomes the mentioned limitations, which indicates multiple visits to depots. If multiple visits to depots are allowed, Constraints (3), (4) and (7) should be replaced by (20):
i V x i j k i V x j i k = 0 ,   j V , k K
Together with Constraint (6), Constraint (20) ensures consecutive paths for each vehicle. We delete Constraints (3) and (4) to relax the problem that can visit depots multiple times. The solution of this formulation is a set of journeys for vehicles. In a journey, the vehicle may return to depots many times to unload and restart to rebalance and collect till the maximum working duration is reached.
The optimal solution of an instance of MSBRCP defined by (1)–(18) is shown in Figure 2. We can observe that three vehicles are required when they can return to different depots. The total working time of these three vehicles is 16,400 s. If the drivers want to start from and return to the same depot, three vehicles are still required, but with longer working time (16,800 s). If we allow multiple uses of vehicles, only two vehicles are needed to complete the rebalancing and collection, and the working time remains the same with the second scenario. Considering the fixed cost of using vehicles, allowing multiple uses of vehicles attains the minimum objective function value.

4. Solution Method

In [3], SBRP was proven to be NP-hard by generalizing the capacitated vehicle routing problem. Thus, the presented problem with more complicated pickup–delivery relationships is also NP-hard. We developed a hybrid heuristic algorithm to solve the MSBRCP, namely, VNS-DP. The algorithm is based on the framework of VNS and incorporates the restricted DP algorithm as an improvement operator.
VNS-DP starts with an initial solution, predefined sets of neighborhood structures and local search operators. A simple heuristic is used to construct an initial solution x , which consists of several routes. A route is a partial solution that starts from a depot, visits several stations, and ends at the same depot. Initially, x is set as the global best solution x b e s t . Then, VNS-DP iteratively improves the incumbent solution by utilizing variable neighborhood search and dynamic programming.
The first step of the iteration is shaking, which randomly generates a solution x from the kth neighborhood Nk of the current solution x ; k is set to 1 at the beginning and incrementally increase as the number of iterations grows. Then, a set of local search operators is performed on x′ to find the local optimal solution x . Subsequently, an acceptance decision is made to determine whether to update the current solution or not. We apply a simulated annealing (SA) acceptance criterion ([48]) to accept solution x . It is controlled by three parameters: initial temperature i T , cooling rate α , and the number of iterations to reset the initial temperature β . If the acceptance criterion is met, then the current solution is replaced with x″ and the shaking returns to N1 in the subsequent iteration. Furthermore, if the new current solution improves the global best solution, then x b e s t is updated. Otherwise, x remains unchanged and the neighborhood iteration continues. In addition, we check if the criterion of using DP is met; if met, the restricted DP is applied to improve every route of x . The algorithm stops and outputs the best solution when a given number of iterations N m a x is performed.
The pseudo-code of VNS-DP is presented as Algorithm 1. The detailed explanations of the proposed algorithm are introduced in Section 4.1, Section 4.2 and Section 4.3. An assignment heuristic is presented in Section 4.4 to decrease the number of vehicles used in the solution obtained by VNS-DP. The computational complexity of VNS-DP is analyzed in Section 4.5.
Algorithm 1: Overview
1:{Initialisation}
2:Construct an initial solution x by a heuristic algorithm and set it as xbest;
3:Define a set of neighborhood structures Nk for k = 1, 2, …, kmax and a set of local search operators LSl for l = 1, 2, …, l_max;
4:Set k = 1;
5:repeat
6:{Shaking}
7: Generate solution x′ from the kth neighborhood of x;
8:{Local search}
9: Apply the set of local search operators one by one to find the best neighboring solution x″;
10:{Acceptance decision}
11:ifx″ accepted
12:  x = x″;
13:  k = 1;
14:ifx improves xbest
15:xbest = x;
16:end if
17:else
18:  if k < kmax
19:   k = k + 1;
20:  else
21:   k = 1;
22:  end if
23:end if
24:{DP improvement}
25:if DP criterion is met
26:  Apply the restricted DP algorithm to all the routes of the current solution x;
27:end if
28:until the stop criterion is met.

4.1. Initial Solution Generation

An initial solution is constructed using an insert-based heuristic, which generates one route at a time. The heuristic initials were obtained by randomly selecting the two depots as the departure and destination of the current route. Afterward, we divided the stations into two ordered sets: pickup set and delivery set. A station is included in the pickup set when it has a pickup rebalancing demand or no rebalancing demand ( q i 0 ) . A station is included in the delivery set when it has a delivery rebalancing demand ( q i < 0 ). The pickup (delivery) set is sorted in descending (ascending) order. Pickup stations are first assigned into a route in order and then delivery stations are inserted until no more stations can be added without violating the vehicle load and time duration constraints. When selecting a station to be inserted, we give priority to the station ranked first in the ordered set. As we allow vehicles to start from and return to different depots, we reset the departure and destination of the current route to the depots with minimum duration. The above procedure is repeated until all the stations are covered.
When deciding if a new station can be inserted into a route, we should check if the vehicle load and time duration constraints are violated. The feasibility check procedure is as follows: First, we compute the cumulative usable and repair demand along a route σ by the Equations (21) and (22), respectively.
N σ ( i ) ( σ ) = k = 1 i q σ ( k )   for   i = 1 ,   ,   | σ |
R σ ( i ) ( σ ) = k = 1 i r σ ( k )   for   i = 1 ,   ,   | σ |
N σ ( i ) ( σ ) and R σ ( i ) ( σ ) denote the number of usable and broken bikes after visiting station σ ( i ) of route σ on the vehicle with an empty initial load. As the initial load of usable bikes is not limited to be 0, negative N σ ( i ) ( σ ) may also lead to a feasible route. Considering both types of bikes, a route is feasible if the inequality (23) is satisfied and the route duration does not reach the maximum.
m a x i = 1 | σ | { N σ ( i ) ( σ ) } m i n i = 1 | σ | { 0 , N σ ( i ) ( σ ) } + m a x i = 1 | σ | { R σ ( i ) ( σ ) } Q
Based on the above construction heuristic, the number of routes generated may exceed the maximum number of vehicles, which makes the solution infeasible. Hence, in our algorithm, the solution is evaluated by a fitness function f ( x ) = C ( x ) + ω ( p f ( x ) + p t ( x ) + p v ( x ) ) , where C(x) is the objective value and the others are penalties, ω is the penalty parameter which is set to 10,000, p f ( x ) ,   p t ( x )   and   p v ( x ) are the values of the violations of the constraints on bike flow, route duration, and the number of vehicles, respectively, p f ( x ) is the sum of the number of bikes that violate constraint (23) for all routes in solution x, p t ( x ) is the sum of exceeded duration for all routes in x, and p v ( x ) is the product of a penalty parameter and the exceeded number of vehicles. The penalty parameter is set as Q. We set penalty parameter for p v ( x ) , as the number of vehicles is more critical than the other two.

4.2. Main Iteration

4.2.1. Neighborhood Structures

The VNS procedure starts from the initial solution and systematically explores different neighborhoods to find the global optimum. The set of neighborhood structures is the core of the method. In this study, we use several types of neighborhoods that include the cyclic exchange, depot change, route split, and combine.
The cyclic exchange proposed by Thompson and Psaraftis [49] simultaneously exchanges parts of multiple routes. The cyclic exchange can create a series of neighborhoods with different settings. In this study, three parameters are considered, namely, the number of depots involved ( N d ), number of routes involved ( N σ ) and the maximum length of the partial route to exchange ( N s ). Figure 3 shows a cyclic exchange with three routes σ 1 ,   σ 2 ,   σ 3 , i.e., N σ = 3 . For j = 1 , 2 , and a cyclic exchange moves path σ j ( i j , i j + N s ) to the same position of route σ j + 1 . For j = 3 , the path σ j ( i j , i j + N s ) is moved to the same position of σ 1 . Then, three new routes are created that are shown in bold line in Figure 3. The starting position i j is determined in three ways: (1) randomly selected; (2) selecting the position that is closest to next route; and (3) selecting the most remote position in that route. For the depots involved, we distinguish between neighborhoods involving one depot ( N d = 0 ) and those involving all depots ( N d = 1 ). For N σ and N s , three and five choices are available, respectively, i.e., N σ = { 2 , 3 , 4 }   and   N s = { 1 , 2 , 3 , 4 , 5 } . We add 10 empty exchange situations when N σ = 2 to explore more neighborhoods. An empty exchange indicates that one of the two partial routes is empty. The cyclic exchange is defined as N b 1 in Algorithm 2.
Algorithm 2: Shaking
1:Selected neighborhood k (1≤ k ≤ 4), available set L = x, selected route set R = ∅
2:{Route selection}
3: p = max ( N σ ( k ) , | L | ) ;
4: while   | R | < p
5: Select a route σ in L by randomly selecting a method;
7: R = R σ ;
8:L = L σ ;
9:end
10:{Construct the neighbor}
11:if k = 1 (Cyclic exchange)
12: Select a start stations of partial routes;
13: Exchange parts of routes in R with defined rules;
14: x = L R ;
15:else if k = 2 (Depot change)
16: Randomly change the depot of the route in R;
17: x = L R ;
18:else ifk = 3 (Route split)
19:Randomly split the route in R into two different routes;
20: x = L R ;
21:else ifk = 4 (Route combine)
22:Combine two routes in R into one route;
23: x = L R ;
24:end.
The depot change is a new neighborhood for this problem, which is defined as N b 2 , which is shown in Figure 4. This new neighborhood is useful when the optimal solution includes only a few routes. The neighbor is constructed by changing the depot of one random route in the current solution. The number of routes involved is 1, i.e., N σ = 1.
The route split and combine are used to improve the feasibility of the current solution [51], and are defined as N b 3 and N b 4 . The route split attempts to split one selected route into two routes ( N σ = 1). The combine attempts to combine two routes into one ( N σ = 2). When selecting routes to split, the routes with long travel times are likely to be selected. By contrast, the routes with short travel times are likely to be selected in the combine. These two neighborhoods are, respectively, illustrated in Figure 5 and Figure 6.

4.2.2. Shaking Procedure

The shaking procedure is shown in Algorithm 2. Each time a neighborhood structure is sequentially selected from the neighborhood set, the shaking procedure starts by selecting the involved routes. The involved routes are chosen from the available route set L that includes all the routes in the current solution. Two methods are used for route selection. The first method is random, which means that all the routes in the available set have the same probability to be selected. This random method is used in the depot change neighborhood. The second method allows bias on routes, which refers to the adaptive shaking proposed in [46]. When selecting routes to combine, the routes with short travel times are likely to be selected. By contrast, the routes with long travel times are likely to be selected in the cyclic exchange and split as it can more effectively explore the diversity of solutions. The remaining routes that are close to the recently selected route are likely to be chosen. The closeness of two routes is measured by the sum of the distance between all the vertices of the two routes.
With the selected routes, the neighbor is constructed based on the predefined neighborhood structures. In the series of cyclic exchange neighborhoods, the start station of each partial route should be selected. Three rules are adopted: (i) random, (ii) distance to the subsequent route, and (iii) distance to the neighboring vertices. For the second rule, the vertices with short distances to all vertices of the subsequent route are likely to be selected as the start of the partial route. For the third rule, the vertices that are far from their previous and subsequent vertices are likely to be selected as the start of the partial route. After the neighborhood operators, a new solution x , which is the kth neighbor of the current solution x , is generated.

4.2.3. Local Search

The solution x obtained from shaking is the input of the local search procedure to derive the best local solution x . Two local search operators are used in this procedure: swap and 2-opt. The two local search operators are applied in a multi-level pattern. If x is better than x , then x = x and the local search returns to the swap operator and restarts. The local search stops when both operators fail to improve solution x . The two local search operators are only applied to the routes which are changed in the shaking procedure to save CPU time.
The swap operator exchanges the positions of a pair of vertices from two different routes to find better solutions, which is an inter-route optimization. The 2-opt operator, which was proposed by [52], is an effective improvement operator that reverses the direction of a partial route between two vertices. This operator works on all possible partial routes between two non-adjacent vertices within one route to observe if any improvement occurs, which is an intra-route optimization.

4.3. DP Improvement

VNS may spend a long time to eliminate infeasibility because the fitness of a solution is evaluated by the sum of the objective function and penalties on constraint violations. Furthermore, a local search may easily lead to being stuck in the local optimum. To overcome these drawbacks, we introduce a DP improvement into the VNS framework. The restricted DP algorithm is used as an improvement operator to reduce the travel time for every route in a solution. A solution to the problem is composed of routes that can be regarded as solutions for several TSPs with several additional constraints. For a specific route σ , the set V σ includes all the stations and the depots in this route. The DP improvement is used to solve the TSP with all stations and depots in V σ . The rebalancing and collection requests should be fulfilled, and the route may start and end at different depots.
In the algorithm, a state ( ψ , j ) defines a path that starts at the depot, visits every station in the subset ψ once, and ends at station j ( ψ V σ   and   j ψ ) . C ( ψ , j ) records the minimum total working time for the paths of state ( ψ , j ) . l 1 ( ψ ) is the number of usable bikes in the vehicle after visiting all the stations in ψ , l 1 ( ψ ) = i ψ q i . l 2 ( ψ ) is the number of broken bikes in the vehicle after visiting all the stations in ψ , l 2 ( ψ ) = i ψ r i . We use 0 to denote the depot in V σ . The initial state is (0, 0), which indicates that the vehicle departs from the depot 0. In the initial state, C ( { 0 } , 0 ) = 0 , l 1 ( { 0 } ) = q 0 , and l 2 ( { 0 } ) = 0 . q 0 is the initial load of the vehicle, i.e., q 0 = max { 0 , i V σ q i } .
In the first stage, the initial state (0, 0) is extended by adding a new station into subset ψ . For example, when station j is added to subset ψ , if q 0 + q j < 0 or q 0 + q j + r j > Q , then the addition is cancelled because of infeasibility. Otherwise, the new state ( { 0 , j } , j ) is generated with   C ( { 0 , j } , j ) = c 0 j . The number of usable bikes in the vehicle is   l 1 ( { 0 , j } ) = q 0 + q j , and the number of broken bikes in the vehicle is   l 2 ( { 0 , j } ) = r j .
In the mth stage, the state ( ψ \ { j } , i ) is transformed into   ( ψ , j ) , | ψ | = m + 1 . C ( ψ , j ) can be computed by the following recursive equation:
C ( ψ , j ) = min i ψ \ { j } {   C ( ψ \ { j } , i ) + t i j   |   l 1 ( ψ \ { j } ) + l 2 ( ψ \ { j } ) + max { q j , 0 } + r j Q , l 1 ( ψ \ { j } ) + min { q j , 0 } 0   } ,   ψ V σ   ,   j ψ .
Feasibility is checked for the transition between states ( ψ \ { j } , i ) and ( ψ , j ) . For example, when station j, which is a pickup station ( q j 0 ), is added, the sum of usable and broken bikes on the vehicle should not exceed capacity Q after visiting station j. If station j is a delivery station ( q j 0 ) , the number of usable bikes on the vehicle before visiting station j should exceed the amount of delivery demand.
All the stations should be visited in the ( | V σ | + 1)th stage. As vehicles are allowed to return to any depot, all the depots are considered to be expanded at the last stage. The optimal route is the route with minimum working time, which is expressed as follows:
C o p t = min i V σ \ { 0 } , p V P   { C ( V σ ,   i ) + t i p }
Notably, one state typically represents more than one route. For example, the state ({0,1,2,3},3) has two routes, namely, routes [0-1-2-3] and [0-2-1-3], which are transformed from states ({0,1,2},2) and ({0,1,2},1), respectively. In this scenario, the route with minimum working time will be saved to the subsequent stage, which can save considerable computing space and ensure that the optimal route can be obtained at the end of the algorithm.
The number of states generated during state extension increases exponentially with the number of stations involved in the problem, which dramatically increases the computation time of the DP algorithm. In the computation, several states may have no feasible extension that has to be removed from the state set. If these infeasible states can be identified in advance, then the number of states during the computational will be effectively decreased. We propose two extension rules to identify infeasible states in advance.
Rule 1: For states with the given subset   ψ , if at least one unvisited station i ,   i V σ \ ψ , that satisfies   l 2 ( ψ ) + max ( q i , 0 ) + r i > Q , then these states should be removed. This rule can be used to identify the states with which vehicle will be eventually overloaded.
Rule 2: For states with given subset   ψ , if at least one unvisited station i ,   i V σ \ ψ , that satisfies Q l 2 ( ψ ) + min ( q i , 0 ) < 0 exists, then these states should be removed. This rule can be used to identify the states that the vehicle will be eventually underloaded.
Although the DP algorithm can find the optimal solution, its computational time increases exponentially with an increase in the number of stations. In this study, we use the restricted DP that restricts the state space via two parameters, H and E , according to [53]. H restricts the maximum number of states saved at the end of each stage. The maximum H states with the lowest travelling cost are taken to be expanded in the subsequent stage. For each expansion, a state is not expanded to all feasible states but to partial feasible states. The maximum E best states are select to expand. The DP improvement is applied per γ iterations to all routes of the current solution to improve feasibility and quality.

4.4. Assignment Heuristic

The solution obtained by the proposed VNS-DP is a set of routes fulfilling all the rebalancing demand and collection requests with minimum total working time and fixed cost. As we stated in Section 3.3, if the vehicles are restricted to perform at most one route, the system may need an oversized fleet of vehicles to satisfy all the demand. The number of vehicles needed can be decreased by allowing multiple use of vehicles. In this section, a greedy heuristic is proposed to assign routes to vehicles with the objective of minimizing fleet size.
The heuristic works as follows: the initial feasible solution is the best solution obtained by VNS-DP. We remove one vehicle and use the assignment procedure to find next solution. The assignment procedure can be solved by the bin packing problem heuristic [54]. Given a set of routes, the longest route that was not assigned is selected and assigned to the emptiest vehicle. When adding one route to a vehicle, the current last depot may be different with the starting depot of the selected route. We retain the one with shorter total duration after adding. This assignment procedure repeats until all the routes are assigned. If the new solution is feasible, one more vehicle is removed and the process is reiterated. The algorithm stops when the new solution build by assignment procedure is infeasible. The output of this heuristic is the last feasible solution encountered in which all the demand and requests are fulfilled. This algorithm is similar to the two-stage algorithms proposed by [23] to minimize the number of vehicles used, but they used different heuristics to build a feasible solution.

4.5. Computational Complexity of VNS-DP

The proposed VNS-DP comprises five parts: initial solution generation, shaking, local search, DP improvement, and assignment heuristic. Figure 7 briefly illustrates the relationship of these procedures. We first analyze the computational complexity of each part and then present the whole computational complexity of VNS-DP.
Initial solution generation follows an iteratively inserting procedure, and hence its computational complexity is O ( N ) , where N is the number of stations of the problem instance.
Shaking provides a perturbation on the selected routes by the neighborhood structures, where the computational complexity is O ( 1 ) .
The swap and 2-opt operators in local search check all possible operations within the selected routes to observe if any improvement occurs. Therefore, the computational complexity of local search is O ( P 2 ) , where P is the maximum number of stations in a feasible route.
Dynamic programming is usually time-consuming for the reason of state explosions. Here, we use H to restrict the maximum number of states saved at the end of each stage. Therefore, the computational complexity of applying DP to one route is O ( H P ) . As DP improvement is applied per γ iterations to all routes of the current solution, the computational complexity is O ( 1 γ M H P ) , where M is the number of routes of the incumbent solution.
Assignment heuristic is also an iterative procedure, and hence its computational complexity is O ( M ) .
The initial solution generation and assignment heuristic are executed only once, while the other procedures will be iteratively conducted N m a x times, and therefore the computational complexity of the proposed VNS-DP is O ( N m a x ( P 2 + 1 γ M H P ) ) .
Due to the difficulty in comparing the values of P 2 and 1 γ M H P on different instance scales, they are all kept in the formula.

5. Numerical Experiment

This section provides the computational results of the proposed model and algorithm. The benchmark instances and randomly generated instances are used to evaluate the quality of the proposed algorithm. VNS-DP was run 10 times for each instance. We presented the minimum, average, and standard deviation of objective functions value found by VNS-DP and compared them with the best lower/upper bound obtained by CPLEX 12.10 over the mathematical model proposed in Section 3.2. The algorithm was coded in the MATLAB software environment (Version R2019a). All experiments were performed on an Intel Core i7-10700 CPU with 2.90 GHz and 8 GB RAM.
The benchmark instances by [3] include 65 real-world instances, ranging from 13 to 116 vertices. The maximum route duration T and the maximum number of vehicles | K | refer to [28], who adapted the 65 real-world instances to the BRP with multiple vehicles and visits. We adapt the 65 real-world benchmark instances to our problem by randomly transforming several vertices into depots and generating collection requests r i between [0 and 3]. We add i V \ { 0 } r i / Q to the value of | K | for each instance as the consideration for new broken bike collection requests. The fixed cost of using a vehicle is set as 1000.
The random instances are generated as follows: The sizes of the instances are characterized by the number of vertices, which varies from 10 to 300. Depots are scattered randomly in a square with a side length of 20 km, and stations are randomly distributed around the depots. The working time t i j is the sum of the travel time on the arc ( i ,   j ) and the loading/unloading time spent in the station j . The travel speed is set to 40 km/h and the loading/unloading time for a bike is set to 1 min. The rebalancing demand q i is randomly generated between [ Q   and   Q ] , and the collection request r i is randomly generated between [0 and 3]. The vehicle capacity Q is set as [10,12,15]. The maximum working duration T is set as 2 h. The maximum number of vehicles is set by running the initial generation heuristic proposed in Section 4.2. The fixed cost of using a vehicle is set as 100. Some characteristics of the random instances are reported in Table 2.
The parameters associated with the proposed method are presented in Table 3. For N m a x ,   H and E , it is evident that the larger they are, the better the solution will be. Concerning the expense, the long computation time will be costly. Therefore, the three parameters are set based on the trade-off between solution quality and computation time. In the subsequent experiments, for small-size instances ( | V | < 20 ) , N m a x is set as 2000. For medium-size instances ( 20     | V | < 50 ) , N m a x is set as 4000. For large-size instances ( | V |     50 ) , N m a x is set as 6000. We set H = 5000 and E = 5 to obtain solutions within a reasonable computation time. The values for the other four parameters in the remainder of this section are set as follows: i T = 800 ,   α = 0.95 ,   β = 700 ,   a n d   γ = 500 . Our initial experiments showed that these settings have a good performance.

5.1. Results for Benchmark Instances

Table 4, Table 5 and Table 6 present the detailed results for the real-world benchmark instances derived by [3]. The results of the VNS-DP are tested against the results obtained using CPLEX at a 2 h computation time limit with the default setting. The tables list the characteristics of the instances, the results of using CPLEX, and the results of running VNS–DP 10 times for each instance. We depict the instances by the number of vertices | V | , the number of depots | V D | and the vehicle capacity Q .
Table 4 presents the results of small-size benchmark instances. For CPLEX, the optimal solution value   ( C o p t ) , the CPU time ( t ) in seconds, and the number of vehicles required in the solutions ( n v e h ) are reported. For VNS-DP, we report the minimal objective values among the 10 trials ( C m i n ) , the average objective values obtained by running the algorithm 10 times ( C a v g ) , the standard deviation of objective values in percentage ( % d e v ), the average computation time ( t ) in seconds, the average number of required vehicles   ( n v e h ) , and the number of trials that obtain feasible solutions ( n f e a s ) . To compare the solution quality, the percentage gaps % g a p m i n and % g a p a v g   ( % g a p m i n = ( C m i n C o p t ) / C o p t 100 ) , % g a p a v g = ( C a v g C o p t ) / C o p t 100 ) are reported. Thirteen of fifteen optimal solutions are found and all of them are quickly identified by VNS-DP. The gaps of minimal and average solution values generated by VNS-DP, with respect to the optimal values, are 0.1% and 1.8%, respectively. The average standard deviation of objective value obtained by VNS-DP in 10 runs is 1.6%. The computational time of the proposed algorithm has no obvious change, while that of CPLEX changed greatly just in these small-size instances. The average numbers of vehicles needed in solutions are almost equal for the two methods. VNS-DP finds feasible solutions in all trials for this set of instances.
The computational results for medium-size benchmark instances are reported in Table 5. The best lower and upper bounds ( L B and U B ) found by CPLEX are reported, as most instances cannot be optimally solved within a 2 h time limit. For the instances that are optimally solved by CPLEX ( t < 7200   s ), U B is the optimal solution value. Note that VNS-DP can also find the optimal solutions for some of these instances. For other instances ( t > 7200   s ), VNS-DP can improve the best solutions obtained by CPLEX in most instances, which is shown by negative values of % g a p U B . Especially for larger instances, for example ‘42Dublin’, VNS-DP improves the best solution of CPLEX by 65.1% in the best case, and by 64.5% in the average case. The number of vehicles needed for ‘42Dublin’ is 6 in the solution by CPLEX, but decreased to 3.7 on average by VNS-DP. For these medium-size instances, on average 9.7 out of 10 trials find feasible solutions. We can also observe VNS-DP shows great advantage in computational time.
The results of large-size benchmark instances are given in Table 6. For CPLEX, we just report the lower bounds obtained, as it cannot find feasible solutions for all the large-size instances with a 2 h time limit. For VNS-DP, columns depicted are the same as Table 4. One can notice that VNS-DP finds feasible solutions for all large-size instances in 108.3 s on average. We compare the results generated by VNS-DP with the lower bounds obtained by CPLEX. The minimal solution value is 31.2% above the lower bound. The gap between the average solution value and the lower bound is 37.4%. On average, 10.2 vehicles are required in solutions to this set of instances. For these large-size instances, on average 9.6 out of 10 trials find feasible solutions.

5.2. Evaluation of the Proposed VNS-DP

In this subsection, we present the computational results for the proposed VNS-DP for the randomly generated instances, which are compared with computational results for CPLEX and VNS (without the DP operator). The comparison experiment is designed to evaluate the performance of our proposed method VNS-DP and DP operator. In addition, the performance of the proposed VNS-DP for large-size random instances up to 300 stations is presented.
Table 7 displays the comparison results. In summary, we give the overall average deviation (in %) for all the solutions found by VNS and VNS-DP to their minimum solution values, number of best solutions found by each method (# best solutions), and the average performance of the two meta-heuristics. For each instance, we bolded the best objective value among the three results. The best is not necessarily optimal. When the three results are identical at the same time, all of them are bolded the best. We can observe that the first nine small-size instances (|V| ≤ 15) are optimally solved by all three methods, as the objective values obtained by CPLEX, VNS, and VNS-DP are the same as LB. When instance scale increases from |V| = 18 to |V| = 30, the CPLEX has a slight advantage in solution quality, but with a dramatic rise in computational time. However, both VNS and VNS-DP can solve the instance within a few seconds. For instances of |V| ≥ 40, CPLEX cannot provide any feasible solutions in 2 h, but VNS and VNS-DP can still get feasible solutions within a reasonable time. We can see that VNS-DP performs better than VNS, as it obtained more best solutions. In summary, the proposed VNS-DP finds 26 best solutions out of 36 instances, while CPLEX and VNS obtain 16 and 15 best solutions, respectively. This indicates that incorporating the DP operator can improve the VNS to yield better solutions, especially for larger instances. In addition, the number of feasible solutions found in 10 trials increases from 9.6 to 9.7 after using the DP operator, which shows VNS-DP has a higher capability to search for feasible solutions. Furthermore, the average deviation of the solutions generated by VNS-DP is smaller than that of VNS. In terms of computational time, VNS-DP consumes more than VNS as the addition of the DP operator. The average computational time of VNS-DP is 17.3 s, which is still acceptable.
To further evaluate the performance of VNS-DP, we generate a set of larger instances ranging from 150 to 300 vertices. Table 8 presents the results for the VNS-DP for large-size random instances. The results indicate that VNS-DP can always get feasible solutions in a reasonable time (76.8 s on average). The number of required vehicles for this set of instances is 27.5, as the amount of collection requests becomes considerable when the scale of instances goes up. On average, 7.6 of 10 trials find feasible solutions.
According to computational results, the number of stations |V| shows a decisive influence on computational time. We observe that CPLEX can solve the instances to optimality when |V| is less than 40 (both for benchmark instances and random instances). As for the proposed VNS-DP, it can solve the instances of |V| = 300 within 100 s.

5.3. Impact of Broken Bike Collection and Distribution of Depots

In this subsection, we conduct experiments to evaluate the impact of the broken bike collection and distribution of depots. In scenario 1, we compare the results of a set of random instances with different amount of collection requests ( P r = { 0 % ,   50 % ,   100 % } ). Let P r be the percentage of stations that have collection requests. A set of 27 instances with | V | = 30 and | V D | = 2 , comprising of three subsets ( Q = { 10 ,   12 ,   15 } ), are used to test the impact of Pr. Figure 8 shows the impact of P r on the objective value, the computational time, the number of required vehicles, and the number of feasible trials.
We can verify that the objective values and number of required vehicles tend to increase as the amount of collection requests increases for all the three sets of instances. This indicates that there is an increase in transportation costs when adding the broken bike collection work. However, the average computational time has an obvious decline when the amount of collection requests moves up. The collection of broken bikes leads to an increase in the cumulative number of bikes on vehicles in routes, as the broken bikes cannot be unloaded after collection. This leads to the decrease in the number of feasible stations that can be inserted into a route, which reduces the solution space for DP and other local search operators, then reduces the computational time of VNS-DP.
To further evaluate the benefit of adding collection requests to the optimization, we conduct experiments for considering fulfilling the rebalancing and collection requests separately, and compare the results with the proposed model MSBRCP. In this computational experiment, the amount of collection requests varies from 10% to 90% for an instance with | V | = 30 and | V D | = 2 . The comparison results are presented in Table 9. The “two-stage method” represents optimizing the rebalancing and collection separately. C 1 is the objective value when considering only rebalancing demand in the optimization, and C 2 is the objective value when considering only collection requests. C 1 + 2 is the sum of C 1 and C 2 , which represents the final objective value for the two-stage method; n v e h of the two-stage method is also the sum of the number of vehicles used in the two operations. These figures are compared with objective values and numbers of vehicles used in the proposed model MSBRCP. We can observe that both objective values and the number of vehicles used are improved if we consider rebalancing and collection operations simultaneously instead of planning these two operations separately. The average improvements are 29.2% and 30.9%. The improvement becomes more significant as the amount of collection requests increases. For example, when P r = 10 % , the objective value and number of vehicles are reduced by 8.6% and 20%, respectively. When P r = 90 % , the objective value and number of vehicles are reduced by 37.0% and 37.5%, respectively. Although adding a collection request to rebalancing would increase the objective value, this objective value is still much less than the sum of objective values of completing rebalancing and collection operations separately.
In scenario 2, we compare the results of random instances with a different distribution of depots. Central-based distribution and edge-based distribution are considered, which are shown in Figure 9. Central-based distribution represents that depots are located in the centre of some stations to serve them better. All the random instances in this paper are generated in this way. Depots are scattered randomly in a square and stations are randomly distributed around the depots. Edge-based distribution is the situation in which depots are located in the suburb of a city to save the cost. All the depots are distributed at the edge of the BSS. The experiments are conducted on a set of instances with 100 vertices. We compare the objective value, the computational time, the number of required vehicles, and the number of feasible trials of two types of distribution, which are presented in Table 10. The results indicate that the central-based distribution of depots has better objective values than edge-based distribution for all the instances. As the depots are located near stations, the total travel time for rebalancing and collection would be shorter for central-based situation. We note that edge-based distribution has a slight advantage in terms of number of vehicles required ( n v e h ) for most instances. The reason may be that vehicles would like to serve more stations once they leave depots in an edge-based situation, as returning back to depots may take longer travel time than a central-based situation.

5.4. Comparison Results of Three Strategies

We compare the results of three scenarios in this section. For small instances, we compare three strategies: (1) vehicles can start from and return to different depots; (2) vehicles should start from and return to the same depot; and (3) allowing multiple uses of vehicles. The results are reported in Table 11. We can observe that allowing vehicles to return to different depots can obtain better objective values than asking them to return to the same depots for many instances. The number of vehicles used in the first two strategies is always the same, except for instance “15 Treviso”. When vehicles are allowed to use multiple times, the number of vehicles used on average is 2.1, which is smaller than that number for the other two strategies (2.3). Although the benefit of reducing needed vehicles is not very significant for these small-sized instances, we can still observe it in instances “3Bari” and “15Treviso”.
Table 12 presents the results of the assignment heuristic. We use the assignment heuristic to solutions obtained by VNS-DP to minimize the number of vehicles for large-size instances ( | V | = 150 to 300). The results of using the assignment heuristic are compared with solutions obtained by VNS-DP. Total time is the average total working time of solutions. We can see that there is a significant reduction in the number of vehicles used. For example, for the first instance, the average number of vehicles required is 26.0 before using a heuristic. This value reduces to 6.6 after using this heuristic, and this induces a 9.8% increase in total working time. The results indicate that the number of required vehicles has a reduction of 65.5% on average compared with the single use of vehicles for large-size instances, and the total working time has an increase of 7.4% on average.

6. Conclusions

This study presents a multi-depot static bike rebalancing and collection problem, which considers multiple depots and broken bike collection. We classify the problem as a two-commodity vehicle routing problem with pickup and delivery and formulate it as an integer programming model. A hybrid solution method, i.e., VNS–DP, which incorporates the restricted DP into the framework of VNS, is developed to solve the problem. The algorithm is equipped with a heuristic for constructing initial solutions, a shaking procedure for exploring different neighborhoods, traditional local search operators, and DP improvement to improve solution quality. The effectiveness of the proposed method is proven by computational experiments on benchmark instances and randomly generated instances. These instances vary in size from 10 to 300 vertices and 2 to 6 depots. The results show that the VNS-DP finds 26 best solutions out of 36 instances, while CPLEX obtains 16 best solutions. We also test the impact of broken bike collection and distribution of depots. The results show that considering broken bike collection increases the transportation cost and reduces the computational time compared with traditional SBRP. More depots provide more choices for vehicles to find better departures and destinations, which leads to a reduction in transportation costs. Comparison of different practical strategies indicates that the number of vehicles can be reduced by 69.4% when allowing multiple visits to depots. Allowing vehicles to return to different depots can help reduce the total working time.
In future work, we should extend the current problem and solution method to consider more flexible situations, such as multiple types of vehicles, multiple visits to stations and multiple service levels. Furthermore, BSS without designated docking stations rapidly increased in recent days and differ from the system investigated in this research. New BRPs should be built to help improve the service quality of such new systems. Incorporating determination of ideal inventory for each station is also a good future direction.

Author Contributions

Conceptualization, X.B. and K.-S.C.; methodology, X.B.; validation, N.M.; formal analysis, X.B.; investigation, K.-S.C.; data curation, X.B.; writing—original draft preparation, X.B.; writing—review and editing, N.M.; visualization, N.M. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China under Grant No. 71901037, 72101200; China Postdoctoral Science Foundation under Grant No. 2020M386515; and National Natural Science Foundation of Shaanxi Province under Grant No. 2020JQ-395.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

The authors would like to thank the anonymous reviewers and associate editor for their comments, which greatly improved this paper.

Conflicts of Interest

The authors declare that they have no known competing financial interest or personal relationships that could have appeared to influence the work reported in this paper.

References

  1. Szeto, W.Y.; Liu, Y.; Ho, S.C. Chemical reaction optimization for solving a static bike repositioning problem. Transp. Res. Part D Transp. Environ. 2016, 47, 104–135. [Google Scholar] [CrossRef] [Green Version]
  2. Maggioni, F.; Cagnolari, M.; Bertazzi, L.; Wallace, S.W. Stochastic optimization models for a bike-sharing problem with transshipment. Eur. J. Oper. Res. 2019, 276, 272–283. [Google Scholar] [CrossRef]
  3. Dell’Amico, M.; Hadjicostantinou, E.; Iori, M.; Novellani, S. The bike sharing rebalancing problem: Mathematical formulations and benchmark instances. Omega 2014, 45, 7–19. [Google Scholar] [CrossRef]
  4. Erdoğan, G.; Battarra, M.; Calvo, R.W. An exact algorithm for the static rebalancing problem arising in bicycle sharing systems. Eur. J. Oper. Res. 2015, 245, 667–679. [Google Scholar] [CrossRef] [Green Version]
  5. Chang, X.; Wu, J.; Sun, H.; de Almeida Correia, G.H.; Chen, J. Relocating operational and damaged bikes in free-floating systems: A data-driven modeling framework for level of service enhancement. Transp. Res. Part A Policy Pract. 2021, 153, 235–260. [Google Scholar] [CrossRef]
  6. Alvarez-Valdes, R.; Belenguer, J.M.; Benavent, E.; Bermudez, J.D.; Muñoz, F.; Vercher, E.; Verdejo, F. Optimizing the level of service quality of a bike-sharing system. Omega 2016, 62, 163–175. [Google Scholar] [CrossRef]
  7. Berbeglia, G.; Cordeau, J.; Laporte, G. Dynamic pickup and delivery problems. Eur. J. Oper. Res. 2010, 202, 8–15. [Google Scholar] [CrossRef]
  8. Caggiani, L.; Ottomanelli, M. A Modular Soft Computing based Method for Vehicles Repositioning in Bike-sharing Systems. Procedia Soc. Behav. Sci. 2012, 54, 675–684. [Google Scholar] [CrossRef] [Green Version]
  9. Contardo, C.; Morency, C.; Rousseau, L. Balancing a Dynamic Public Bike-Sharing System; Cirrelt: Montreal, QC, Canada, 2012; Volume 4. [Google Scholar]
  10. Regue, R.; Recker, W. Proactive vehicle routing with inferred demand to solve the bikesharing rebalancing problem. Transp. Res. Part E Logist. Transp. Rev. 2014, 72, 192–209. [Google Scholar] [CrossRef]
  11. Pfrommer, J.; Warrington, J.; Schildbach, G.; Morari, M. Dynamic Vehicle Redistribution and Online Price Incentives in Shared Mobility Systems. IEEE Trans. Intell. Transp. Syst. 2014, 15, 1567–1578. [Google Scholar] [CrossRef]
  12. Ghosh, S.; Varakantham, P.; Adulyasak, Y.; Jaillet, P. Dynamic Repositioning to Reduce Lost Demand in Bike Sharing Systems. J. Artif. Intell. Res. 2017, 58, 387–430. [Google Scholar] [CrossRef] [Green Version]
  13. Shui, C.S.; Szeto, W.Y. Dynamic green bike repositioning problem–A hybrid rolling horizon artificial bee colony algorithm approach. Transp. Res. Part D Transp. Environ. 2018, 60, 119–136. [Google Scholar] [CrossRef] [Green Version]
  14. Caggiani, L.; Camporeale, R.; Ottomanelli, M.; Szeto, W.Y. A modeling framework for the dynamic management of free-floating bike-sharing systems. Transp. Res. Part C Emerg. Technol. 2018, 87, 159–182. [Google Scholar] [CrossRef]
  15. Legros, B. Dynamic repositioning strategy in a bike-sharing system; how to prioritize and how to rebalance a bike station. Eur. J. Oper. Res. 2019, 272, 740–753. [Google Scholar] [CrossRef]
  16. Brinkmann, J.; Ulmer, M.W.; Mattfeld, D.C. Dynamic Lookahead Policies for Stochastic-Dynamic Inventory Routing in Bike Sharing Systems. Comput. Oper. Res. 2019, 106, 260–279. [Google Scholar] [CrossRef]
  17. Benchimol, M.; Benchimol, P.; Chappert, B.; De La Taille, A.; Laroche, F.; Meunier, F.; Robinet, L. Balancing the stations of a self service “bike hire” system. RAIRO Oper. Res. 2011, 45, 37–61. [Google Scholar] [CrossRef]
  18. Chemla, D.; Meunier, F.; Calvo, R.W. Bike sharing systems: Solving the static rebalancing problem. Discret. Optim. 2013, 10, 120–146. [Google Scholar] [CrossRef]
  19. Erdoğan, G.; Laporte, G.; Calvo, R.W. The static bicycle relocation problem with demand intervals. Eur. J. Oper. Res. 2014, 238, 451–457. [Google Scholar] [CrossRef] [Green Version]
  20. Li, Y.; Szeto, W.Y.; Long, J.; Shui, C.S. A multiple type bike repositioning problem. Transp. Res. Part B Methodol. 2016, 90, 263–278. [Google Scholar] [CrossRef] [Green Version]
  21. Xu, G.; Zou, A. A Recycling Routing Problem of Broken Bikes With Incentives in Bike Sharing Systems. IEEE Access 2022, 10, 106191–106201. [Google Scholar] [CrossRef]
  22. Kadri, A.A.; Kacem, I.; Labadi, K. A branch-and-bound algorithm for solving the static rebalancing problem in bicycle-sharing systems. Comput. Ind. Eng. 2016, 95, 41–52. [Google Scholar] [CrossRef]
  23. Ropke, S.; Pisinger, D. An adaptive large neighborhood search heuristic for the pickup and delivery problem with time windows. Transp. Sci. 2006, 40, 455–472. [Google Scholar] [CrossRef] [Green Version]
  24. Cruz, F.; Subramanian, A.; Bruck, B.P.; Iori, M. A heuristic algorithm for a single vehicle static bike sharing rebalancing problem. Comput. Oper. Res. 2017, 79, 19–33. [Google Scholar] [CrossRef] [Green Version]
  25. Ho, S.C.; Szeto, W.Y. Solving a static repositioning problem in bike-sharing systems using iterated tabu search. Transp. Res. Part E Logist. Transp. Rev. 2014, 69, 180–198. [Google Scholar] [CrossRef] [Green Version]
  26. Raviv, T.; Tzur, M.; Forma, I.A. Static repositioning in a bike-sharing system: Models and solution approaches. EURO J. Transp. Logist. 2013, 2, 187–229. [Google Scholar] [CrossRef] [Green Version]
  27. Arabzad, S.M.; Shirouyehzad, H.; Bashiri, M.; Tavakkoli-Moghaddam, R.; Najafi, E. Rebalancing static bike-sharing systems: A two-period two-commodity multi-depot mathematical model. Transport 2018, 33, 718–726. [Google Scholar] [CrossRef] [Green Version]
  28. Bulhões, T.; Subramanian, A.; Erdoğan, G.; Laporte, G. The static bike relocation problem with multiple vehicles and visits. Eur. J. Oper. Res. 2018, 264, 508–523. [Google Scholar] [CrossRef]
  29. Szeto, W.Y.; Shui, C.S. Exact loading and unloading strategies for the static multi-vehicle bike repositioning problem. Transp. Res. Part B Methodol. 2018, 109, 176–211. [Google Scholar] [CrossRef]
  30. Forma, I.A.; Raviv, T.; Tzur, M. A 3-step math heuristic for the static repositioning problem in bike-sharing systems. Transp. Res. Part B Methodol. 2015, 71, 230–247. [Google Scholar] [CrossRef]
  31. Rainer-Harbach, M.; Papazek, P.; Raidl, G.R.; Hu, B.; Kloimüllner, C. PILOT, GRASP, and VNS approaches for the static balancing of bicycle sharing systems. J. Glob. Optim. 2015, 63, 597–629. [Google Scholar] [CrossRef]
  32. Dell, M.A.; Iori, M.; Novellani, S.; Stützle, T. A destroy and repair algorithm for the Bike sharing Rebalancing Problem. Comput. Oper. Res. 2016, 71, 149–162. [Google Scholar]
  33. Ho, S.C.; Szeto, W.Y. A hybrid large neighborhood search for the static multi-vehicle bike-repositioning problem. Transp. Res. Part B Methodol. 2017, 95, 340–363. [Google Scholar] [CrossRef] [Green Version]
  34. Ren, Y.; Meng, L.; Zhao, F.; Zhang, C.; Guo, H.; Tian, Y.; Tong, W.; Sutherland, J.W. An improved general variable neighborhood search for a static bike-sharing rebalancing problem considering the depot inventory. Expert Syst. Appl. 2020, 160, 113752. [Google Scholar] [CrossRef]
  35. Schuijbroek, J.; Hampshire, R.C.; Van Hoeve, W. Inventory rebalancing and vehicle routing in bike sharing systems. Eur. J. Oper. Res. 2017, 257, 992–1004. [Google Scholar] [CrossRef] [Green Version]
  36. Luo, H.; Zhao, F.; Chen, W.Q.; Cai, H. Optimizing bike sharing systems from the life cycle greenhouse gas emissions perspective. Transp. Res. Part C Emerg. Technol. 2020, 117, 102705. [Google Scholar] [CrossRef]
  37. Shui, C.S.; Szeto, W.Y. A review of bicycle-sharing service planning problems. Transp. Res. Part C Emerg. Technol. 2020, 117, 102648. [Google Scholar] [CrossRef]
  38. Liu, Y.; Szeto, W.Y.; Ho, S.C. A static free-floating bike repositioning problem with multiple heterogeneous vehicles, multiple depots, and multiple visits. Transp. Res. Part C Emerg. Technol. 2018, 92, 208–242. [Google Scholar] [CrossRef]
  39. Wang, Y.; Szeto, W.Y. Static green repositioning in bike sharing systems with broken bikes. Transp. Res. Part D Transp. Environ. 2018, 65, 438–457. [Google Scholar] [CrossRef]
  40. Du, M.; Cheng, L.; Li, X.; Tang, F. Static rebalancing optimization with considering the collection of malfunctioning bikes in free-floating bike sharing system. Transp. Res. Part E Logist. Transp. Rev. 2020, 141, 102012. [Google Scholar] [CrossRef]
  41. Mladenović, N.; Hansen, P. Variable neighborhood search. Comput. Oper. Res. 1997, 24, 1097–1100. [Google Scholar] [CrossRef]
  42. Salhi, S.; Imran, A.; Wassan, N.A. The multi-depot vehicle routing problem with heterogeneous vehicle fleet: Formulation and a variable neighborhood search implementation. Comput. Oper. Res. 2014, 52, 315–325. [Google Scholar] [CrossRef]
  43. Cabrera-Guerrero, G.; Álvarez, A.; Vásquez, J.; Duque, P.A.M.; Villavicencio, L. A VNS-Based Matheuristic to Solve the Districting Problem in Bicycle-Sharing Systems. Mathematics 2022, 10, 4175. [Google Scholar] [CrossRef]
  44. Polacek, M.; Hartl, R.F.; Doerner, K.; Reimann, M. A Variable Neighborhood Search for the Multi Depot Vehicle Routing Problem with Time Windows. J. Heuristics 2004, 10, 613–627. [Google Scholar] [CrossRef] [Green Version]
  45. Kuo, Y.; Wang, C. A variable neighborhood search for the multi-depot vehicle routing problem with loading cost. Expert Syst. Appl. 2012, 39, 6949–6954. [Google Scholar] [CrossRef]
  46. Stenger, A.; Vigo, D.; Enz, S.; Schwind, M. An Adaptive Variable Neighborhood Search Algorithm for a Vehicle Routing Problem Arising in Small Package Shipping. Transp. Sci. 2013, 47, 64–80. [Google Scholar] [CrossRef]
  47. Cattaruzza, D.; Absi, N.; Feillet, D. Vehicle routing problems with multiple trips. 4OR 2016, 14, 223–259. [Google Scholar] [CrossRef]
  48. Kirkpatrick, S.; Gelatt, C.D.; Vecchi, M.P. Optimization by simulated annealing. Science 1983, 220, 671–680. [Google Scholar] [CrossRef]
  49. Thompson, P.M.; Psaraftis, H.N. Cyclic Transfer Algorithm for Multivehicle Routing and Scheduling Problems. Oper. Res. 1993, 41, 935–946. [Google Scholar] [CrossRef]
  50. Ibaraki, T.; Imahori, S.; Kubo, M.; Masuda, T.; Uno, T.; Yagiura, M. Effective local search algorithms for routing and scheduling problems with general time-window constraints. Transp. Sci. 2005, 39, 206–232. [Google Scholar] [CrossRef] [Green Version]
  51. Nagy, G.; Salhi, S. Heuristic algorithms for single and multiple depot vehicle routing problems with pickups and deliveries. Eur. J. Oper. Res. 2005, 162, 126–141. [Google Scholar] [CrossRef] [Green Version]
  52. Lin, S. Computer Solutions of the Traveling Salesman Problem. Bell Syst. Tech. J. 1965, 44, 2245–2269. [Google Scholar] [CrossRef]
  53. Gromicho, J.; van Hoorn, J.J.; Kok, A.L.; Schutten, J.M. Restricted dynamic programming: A flexible framework for solving realistic VRPs. Comput. Oper. Res. 2012, 39, 902–909. [Google Scholar] [CrossRef] [Green Version]
  54. Olivera, A.; Viera, O. Adaptive memory programming for the vehicle routing problem with multiple trips. Comput. Oper. Res. 2007, 34, 28–47. [Google Scholar] [CrossRef]
Figure 1. Illustration example of MSBRCP.
Figure 1. Illustration example of MSBRCP.
Mathematics 10 04583 g001
Figure 2. Optimal solution to the MSBRCP instance (#3 of benchmark instances). A square represents a depot, a circle represents a station. Numbers beside each circle represent the rebalancing demand and collection request of the station indicated inside the circle.
Figure 2. Optimal solution to the MSBRCP instance (#3 of benchmark instances). A square represents a depot, a circle represents a station. Numbers beside each circle represent the rebalancing demand and collection request of the station indicated inside the circle.
Mathematics 10 04583 g002aMathematics 10 04583 g002b
Figure 3. Cyclic exchange with three routes ([50]).
Figure 3. Cyclic exchange with three routes ([50]).
Mathematics 10 04583 g003
Figure 4. Illustration example of depot change.
Figure 4. Illustration example of depot change.
Mathematics 10 04583 g004
Figure 5. Illustration example of route split.
Figure 5. Illustration example of route split.
Mathematics 10 04583 g005
Figure 6. Illustration example of route combine.
Figure 6. Illustration example of route combine.
Mathematics 10 04583 g006
Figure 7. The flow chart of the proposed VNS-DP.
Figure 7. The flow chart of the proposed VNS-DP.
Mathematics 10 04583 g007
Figure 8. Results for instances with P r = { 0 % ,   50 % ,   100 % } .
Figure 8. Results for instances with P r = { 0 % ,   50 % ,   100 % } .
Mathematics 10 04583 g008
Figure 9. Central-based distribution and edge-based distribution of depots.
Figure 9. Central-based distribution and edge-based distribution of depots.
Mathematics 10 04583 g009
Table 1. Related publications on static bike rebalancing problem.
Table 1. Related publications on static bike rebalancing problem.
VehicleDepotMultiple Visits toBroken Bike CollectionMethodReference
SingleSingle××Branch and cut algorithm [19]
Hybrid
genetic algorithm
[20]
Branch and bound algorithm [22]
Chemical reaction optimization [1]
Hybrid large neighborhood search [34]
Station×9.5 approximation algorithm [17]
Branch and cut algorithm, tabu search [18]
Combinatorial benders’ cuts [4]
Iterated local search [24]
Depot×Iterated tabu search [25]
MultipleSingle××Two-phase approach [26]
Branch and cut algorithm [3]
Three-step heuristic [30]
Local search based metaheuristics [31]
Destroy and repair algorithm [32]
Two-step heuristic [35]
Lingo [27]
Artificial bee colony algorithm [29]
Simulation [36]
Station×Branch and cut algorithm;
local search
[28]
StationSelf-made heuristic [6]
Depot×Hybrid large neighborhood search [33]
MultipleMultipleDepotVNS-DPThis paper
Table 2. Some characteristics of random instances.
Table 2. Some characteristics of random instances.
|V|Min{qi}Avg{qi}Max{qi}Dev{qi}Min{tij}Avg{tij}Max{tij}Dev{tij}
10−5−0.832.584511.71096214.6
12−31.142.557722.61300277.2
15−80.595.0157667.71286254.8
18−9−1.484.334639.11432239.5
20−5−0.262.959739.71661273.0
30−50.493.482735.41397270.0
40−5−0.393.430681.11555256.4
50−9−0.293.628674.51560265.9
60−10−0.493.621800.21893334.9
80−90.193.616779.01879294.1
100−50.252.922701.91682271.9
120−7−0.563.17856.02146340.1
150−50.252.812573.01563289.2
200−6−0.463.313546.41448247.7
249−7−0.274.38593.61750281.8
300−7−0.274.11506.51434237.2
Table 3. Parameters used in the algorithm.
Table 3. Parameters used in the algorithm.
ParameterMeaning
N m a x Maximum number of main iterations
i T Initial temperature of SA acceptance criterion
α Cooling rate of SA acceptance criterion
β Number of iterations to reset initial temperature
H Maximum number of states saved in every stage
E Ratio of expansion for each state
γ Interval for using DP improvement
Table 4. Results for small-size benchmark instances.
Table 4. Results for small-size benchmark instances.
InstanceCPLEXVNS-DP
City— ( | V | | V D | Q ) C o p t t   ( s ) n v e h C m i n % g a p m i n C a v g % g a p a v g % d e v t   ( s ) n v e h n f e a s
1Bari-(13-2-30)16,5001.02.016,5000.016,560.00.40.32.02.010
2Bari-(13-2-20)15,5000.52.015,5000.015,500.00.00.01.92.010
3Bari-(13-2-10)19,4001.93.019,4000.019,630.01.21.21.73.010
4ReggioEmilia-(14-2-30)18,1002.42.018,1000.018,370.01.50.52.42.010
5ReggioEmilia-(14-2-20)17,3000.92.017,3000.017,480.01.01.53.32.110
6ReggioEmilia-(14-2-10)21,8003.32.021,8000.023,240.06.63.92.72.710
7Bergamo-(15-2-30)14,2001.22.014,2000.014,200.00.00.03.22.010
8Bergamo-(15-2-20)14,5008.82.014,5000.014,530.00.20.73.02.010
9Bergamo-(15-2-12)19,20080.33.019,2000.019,530.01.72.32.33.010
10Parma-(15-2-30)31,2000.72.031,2000.031,650.01.41.33.62.010
11Parma-(15-2-20)32,8001.72.032,8000.033,580.02.43.02.42.110
12Parma-(15-2-10)37,40015.33.037,7000.839,040.04.42.21.93.010
13Treviso-(18-2-30)33,54686.12.033,5460.033,830.20.81.63.72.010
14Treviso-(18-2-20)34,42370.82.034,4230.035,289.62.53.82.92.210
15Treviso-(18-2-10)37,4951442.33.037,5270.138,587.72.92.42.43.710
Average 114.52.3 0.1 1.81.62.62.410.0
Table 5. Results for medium-size benchmark instances.
Table 5. Results for medium-size benchmark instances.
InstanceCPLEXVNS-DP
#City— ( | V | | V D | Q ) L B U B t   ( s ) n v e h C m i n % g a p U B C a v g % g a p U B % d e v t   ( s ) n v e h n f e a s
16LaSpezia-(20-2-30)22,168.022,16811.42.023,9017.826,420.219.25.84.42.39
17LaSpezia-(20-2-20)23,158.123,16044.02.023,1600.024,807.27.13.43.72.710
18LaSpezia-(20-2-10)28,836.128,8396252.73.030,3935.432,157.111.54.93.33.58
19BuenosAires-(21-2-30)84,706.584,7156762.13.084,7150.086,199.51.80.96.93.010
20BuenosAires-(21-2-20)93,636.093,6363.64.093,6360.094,791.81.22.014.74.010
21Ottawa-(21-2-30)18,633.218,63537.12.019,0202.119,025.72.10.119.52.010
22Ottawa-(21-2-20)22,089.822,0923820.82.022,0920.023,398.45.910.216.32.29
23Ottawa-(21-2-10)25,006.027,0877203.63.027,3511.028,567.65.53.910.73.910
24SanAntonio-(23-2-30)21,495.221,4975.93.021,5500.222,173.53.11.014.53.010
25SanAntonio-(23-2-20)24,170.024,17269.54.024,1720.024,781.82.52.010.94.010
26SanAntonio-(23-2-10)36,573.436,577618.67.036,7210.437,590.02.81.05.97.810
27Brescia-(27-2-30)31,400.031,400137.32.031,4000.032,330.03.02.367.82.010
28Brescia-(27-2-20)34,184.335,5007200.03.037,3005.138,240.07.71.713.33.810
29Brescia-(27-2-11)39,006.744,8007200.05.044,100−1.645,960.02.63.28.15.310
30Roma-(28-2-30)62,798.698,0007200.05.095,200−2.9973,85.7−0.61.615.14.37
31Roma-(28-2-20)70,839.0-7200.0-102,000 104,350.0 2.18.06.510
32Roma-(28-2-18)69,948.0105,0007200.06.0104,500−0.5105,822.20.81.49.35.99
33Madison-(28-2-30)34,746.636,0637200.02.035,860−0.636,169.90.30.667.12.010
34Madison-(28-2-20)37,776.237,7801302.53.037,9160.438,665.52.31.826.43.010
35Madison-(28-2-10)55,857.256,7087200.06.057,7021.858,970.04.01.69.66.010
36Guadalajara-(41-2-30)57,539.059,6977200.03.059,7030.060,064.80.60.4150.33.010
37Guadalajara-(41-2-20)63,225.471,3707200.05.065,113−8.867,130.6−5.91.864.94.810
38Guadalajara-(41-2-11)68,313.783,2687200.07.072,124−13.473,788.4−11.41.217.16.110
39Dublin-(45-2-30)32,275.542,7457200.04.038,907−9.039,151.2−8.40.373.54.010
40Dublin-(45-2-20)36,669.4-7200.0-43,524-46,185.3-3.625.15.510
41Dublin-(45-2-11)46,747.7-7200.0-57,949-61,224.2-3.413.57.910
42Denver-(51-3-30)52,502.8170,5347200.06.059,503−65.160,498.7−64.52.1135.53.710
43Denver-(51-3-20)59,999.4-7200.0-70,025-73,224.1-2.744.65.610
44Denver-(51-3-10)79,538.1-7200.0-112,364-117,343.2-3.111.19.910
Average 4878.23.8 2.430.03.89.7
Table 6. Results for large-size benchmark instances.
Table 6. Results for large-size benchmark instances.
InstanceCPLEX VNS-DP
#City— ( | V | | V D | Q ) LB (2 h) C m i n % g a p U B C a v g % g a p U B % d e v t   ( s ) n v e h n f e a s
45RioDeJaneiro-(55-3-30)96,244.7111,02315.4115,219.019.73.4135.84.210
46RioDeJaneiro-(55-3-20)86,446.3105,63322.2109,757.027.03.424.87.510
47RioDeJaneiro-(55-3-10)138,712.3170,94423.2179,436.929.43.29.413.110
48Boston-(59-3-30)66,833.877,48715.981,750.322.33.9118.04.610
49Boston-(59-3-20)81,351.4112,13737.8116,934.243.73.461.15.610
50Boston-(59-3-16)81,278.0112,41338.3117,820.645.04.347.86.99
51Torino-(75-3-30)49,012.658,24018.860,735.923.92.6300.25.210
52Torino-(75-3-20)58,484.970,15920.073,427.825.52.7109.27.510
53Torino-(75-3-10)87,411.6111,57727.6115,624.632.32.523.413.410
54Toronto-(80-3-30)43,504.960,77639.766,738.853.45.3259.15.810
55Toronto-(80-3-20)57,964.781,42540.586,106.848.65.383.78.010
56Toronto-(80-3-12)86,683.0129,00948.8130,060.750.00.827.213.03
57Miami-(82-3-30)53,086.364,93122.367,715.227.62.8148.87.610
58Miami-(82-3-20)68,802.283,80621.888,771.329.03.739.211.410
59Miami-(82-3-10)127,754.5155,66021.8161,597.926.52.714.922.710
60CiudadDeMexico-(90-3-30)57,556.086,81350.890,271.456.82.4126.68.510
61CiudadDeMexico-(90-3-20)76,591.8113,93948.8118,950.155.33.733.113.610
62CiudadDeMexico-(90-3-17)72,787.6115,55058.7121,278.866.63.529.713.410
63Minneapolis-(116-3-30)116,645.8144,84324.2149,268.628.02.6508.37.910
64Minneapolis-(116-3-20)137,802.0178,05929.2186,192.535.12.8150.911.610
65Minneapolis-(116-3-10)211,916.1272,72228.7296,341.639.84.222.721.710
Average 31.2 37.43.3108.310.29.6
Table 7. Results for VNS-DP and VNS for random instances.
Table 7. Results for VNS-DP and VNS for random instances.
InstancesCPLEX VNSVNS-DP
| V | | V D | Q L B U B t   ( s ) n v e h C m i n t   ( s ) n v e h n f e a s C m i n t   ( s ) n v e h n f e a s
102104258.042580.5142581.521042581.6210
102125073.050730.4250731.721050731.9210
102154011.040110.1140111.61.11040111.81.410
122106139.061390.9361391.831061391.73.210
122125794.057940.4357941.731057941.73.210
122155688.056880.6256882.221056882.42.210
152107792.0779211.2377962.22.51077962.22.710
152127376.0737626.6273762.82.21073763.02.610
152157077.070775.3270773.62.11070773.72.310
182109576.095762115.5398082.541097072.64.410
182129130.091306998.5392303.13.61092513.13.610
182158642.787857204.9387873.331087853.53.110
203109664.09664359.0497483.53.91098133.74.210
203129249.09249102.8394864.231093024.6310
203158892.088924669.1390504.32.91088924.13.110
3031012,484.715,9547200.1513,3105.45913,2965.456
3031212,108.013,2397201.2412,8396.64313,0526.745
3031512,151.812,153740.6412,2116.941012,1537.94.310
4031016,127.8-7200.4-17,9686.46.9917,8056.96.810
4031215,511.4-7206.8-17,1297.55.71017,1758.75.910
4031514,984.2-7212.4-15,80511.24.61015,88913.04.810
5041020,300.6-7200.5-22,51619.98.51022,46320.49.210
5041219,242.7-7209.7-21,54925.67.11021,53627.57.410
5041518,548.7-7200.8-20,37334.061020,44443.46.110
6041023,807.2-7200.3-27,86723.09.61027,19824.09.910
6041222,820.2-7200.3-25,93927.38.41025,77132.18.810
6041522,607.0-7200.5-24,89437.76.51024,71952.8710
8051031,005.8-7200.8-37,78420.513.7637,54222.214.19
8051229,731.5-7200.8-34,99829.211.51035,15234.31210
8051528,727.9-7200.8-32,19739.39.31032,74452.29.810
10051035,213.8-7200.9-42,88824.717.51042,32027.01810
10051235,700.1-7200.8-42,22231.614741,44841.7148
10051537,105.1-7200.9-41,87524.016.81041,78332.51810
12051045,556.9-7202.4-54,47521.522.41056,64525.32310
12051243,548.3-7201.9-53,04226.718.51051,87837.31910
12051541,925.2-7201.1-50,11836.814.91049,25761.11510
Average 14.17.19.6 17.37.49.7
Average deviation (%)1.75 1.48
# Best solutions16 15 26
Table 8. Results for VNS-DP for large-size random instances.
Table 8. Results for VNS-DP for large-size random instances.
InstanceVNS-DP
| V | | V D | Q C m i n C a v g % d e v t   ( s ) n v e h n f e a s
15051036,38539,747.44.127.426.010
15051043,73647,526.82.525.428.710
15051045,44946,707.00.931.125.36
15051036,13338,204.51.529.325.010
15042035,25836,920.02.877.018.09
15042039,86940,676.52.8129.915.02
15042033,62535,267.22.068.520.310
20051243,24845,437.83.139.630.010
20051243,18744,225.32.344.128.89
20042048,04849,463.02.7124.220.09
20042045,39549,239.05.5176.018.06
24951564,61965,805.52.576.530.02
24951560,52262,140.62.141.037.310
30051568,73670,096.52.7120.635.06
30051581,84483,783.12.072.236.99
30051589,82792,803.62.674.036.07
30052078,32480,022.41.7144.129.08
30062078,73580,697.03.481.335.04
Average 54,052.256,042.42.676.827.57.6
Table 9. Comparison results of the two-stage method and MSBRCP on instance ( | V | = 30 ,   | V D | = 2 ).
Table 9. Comparison results of the two-stage method and MSBRCP on instance ( | V | = 30 ,   | V D | = 2 ).
Two-Stage MethodMSBRCP
P r C 1 C 2 C 1 + 2 n v e h C % g a p C n v e h % g a p n v e h
10%6393.0726.07119.05.06504.0−8.64.0−20.0
20%6393.01723.08116.05.06559.0−19.24.0−20.0
30%6393.02304.08697.06.06479.0−25.54.0−33.3
40%6393.03147.09540.07.06393.0−33.04.0−42.9
50%6393.03513.09906.06.06641.0−33.05.0−16.7
60%6393.04039.010,432.08.06908.0−33.85.0−37.5
70%6393.04431.010,824.07.07123.0−34.26.0−14.3
80%6393.04814.011,207.09.06896.0−38.54.0−55.6
90%6393.05100.011,493.08.07241.0−37.05.0−37.5
Average6393.03310.89703.86.86749.3−29.24.6−30.9
Table 10. Comparison results of central-based distribution and edge-based distribution of depots.
Table 10. Comparison results of central-based distribution and edge-based distribution of depots.
InstanceCentral-Based DistributionEdge-Based Distribution
( | V | | V D | Q ) C t   ( s ) n v e h n f e a s C t   ( s ) n v e h n f e a s
(100-5-15)-A25,56116.0161028,70715.81610
(100-5-15)-B23,05317.6171027,27415.61710
(100-5-15)-C21,64315.5171029,28518.91610
(100-5-15)-D24,22615.6161030,33118.91710
(100-5-15)-E24,30116.0171029,86017.31710
(100-5-15)-F23,75016.0181027,09618.81610
(100-5-15)-G21,44915.4171025,98517.11610
(100-5-15)-H21,78415.3181026,94919.21710
(100-5-15)-I23,55216.5181028,40417.51610
(100-5-15)-J22,96215.1171026,83420.41610
Average23,228.115.917.110.028,072.518.016.410.0
Table 11. Comparison results for three scenarios.
Table 11. Comparison results for three scenarios.
Instance n v e h n v e h t   ( s )
Diff 1Same 2Multi 3DiffSameMultiDiffSameMulti
1Bari16,50016,50016,5002220.90.61.3
2Bari15,50016,50016,5002220.60.81.1
3Bari19,40019,80018,8003321.83.28.8
4ReggioEmilia18,10018,90018,9002221.68.0544.7
5ReggioEmilia17,30017,30017,3002221.00.912.0
6ReggioEmilia21,80021,80021,8002224.14.714.6
7Bergamo14,20014,20014,2002221.51.81.6
8Bergamo14,50014,50014,50022211.29.69.5
9Bergamo19,20020,10019,50033387.0379.973.9
10Parma31,20031,50031,5002220.70.75.5
11Parma32,80032,80032,8002221.71.54.9
12Parma37,40037,90037,90033317.119.852.9
13Treviso33,54633,54633,54622286.187.3239.0
14Treviso34,42334,44734,44722271.4159.073.5
15Treviso37,49537,52736,4953421396.11690.7566.9
Average24,224.324,488.024,312.52.32.32.1112.2157.9107.3
1: vehicles can start from and return to different depots; 2: vehicles should start from and return to same depot; 3: allowing multiple uses of vehicles.
Table 12. Performance of assignment heuristic.
Table 12. Performance of assignment heuristic.
InstanceVNS-DPVNS-DP + Assignment Heuristic
| V | | V D | Q Total Time n v e h Total Time%gap n v e h %gap t   ( s )
15051037,455.026.041,125.69.86.6−74.627.4
15051043,210.028.749,580.614.77.8−72.825.4
15051043,707.025.349,320.012.88.2−67.831.1
15051037,209.025.038,356.13.16.3−74.829.3
15042035,909.018.037,054.03.26.1−66.077.0
15042035,393.015.040,269.013.87.0−53.3129.9
15042032,560.020.336,485.112.16.0−70.468.5
20051241,643.030.045,776.79.97.4−75.339.6
20051240,906.028.843,915.37.47.1−75.344.1
20042046,153.020.049,302.16.88.2−58.9124.2
20042047,161.018.048,756.03.48.7−51.9176.0
24951567,595.030.067,213.0−0.610.5−65.076.5
24951556,193.037.364,579.814.910.3−72.441.0
30051568,302.035.068,813.50.711.0−68.6120.6
30051582,097.036.984,683.03.113.4−63.772.2
30051590,349.036.092,651.72.515.6−56.774.0
30052073,752.029.079,199.37.413.7−52.7144.1
30062077,660.035.083,726.57.814.5−58.681.3
Average 53,180.827.556,711.57.49.4−65.576.8
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Bai, X.; Ma, N.; Chin, K.-S. Hybrid Heuristic for the Multi-Depot Static Bike Rebalancing and Collection Problem. Mathematics 2022, 10, 4583. https://doi.org/10.3390/math10234583

AMA Style

Bai X, Ma N, Chin K-S. Hybrid Heuristic for the Multi-Depot Static Bike Rebalancing and Collection Problem. Mathematics. 2022; 10(23):4583. https://doi.org/10.3390/math10234583

Chicago/Turabian Style

Bai, Xue, Ning Ma, and Kwai-Sang Chin. 2022. "Hybrid Heuristic for the Multi-Depot Static Bike Rebalancing and Collection Problem" Mathematics 10, no. 23: 4583. https://doi.org/10.3390/math10234583

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