Analysis of Mathematical Formulations of Capacitated Vehicle Routing Problem and Methods for their Solution

Vehicle Routing Problem (VRP) is one of the most widely known questions in a class of combinatorial optimization problems. It is concerned with the optimal design of routes to be used by a fleet of vehicles to serve a set of customers. In this study we analyze Capacitated Vehicle Routing Problem (CVRP) – a subcase of VRP, where the vehicles have a limited capacity. CVRP is mostly aimed at savings in the global transportation costs. The problem is NP-hard, therefore heuristic algorithms which provide near-optimal polynomial-time solutions will be considered instead of the exact ones. The aim of this article is to make a survey on mathematical formulations of CVRP and on methods for solving each type of this problem. The first part presents a general information about the problem and restrictions of this work. In the second part, the classical mathematical formulations of CVRP are described. In the third part, a classification of most popular subcases of CVRP is given, including description of additional constraints with their math formulations. This section also includes most perspective methods that can be applied for solving special types of CVRP. The forth part contains an important note about the most powerful algorithm LKH-3. Finally, the fourth part consists of table with solving techniques for each subproblem and of scheme with basic problems of the CVRP class and their interconnections.


Introduction
The Vehicle Routing Problem (VRP) is one of the most widely known questions in a class of combinatorial optimization problems.VRP is directly related to Logistics transportation problem and it is meant to be a generalization of the Travelling Salesman Problem (TSP).In contrast to TSP, VRP produces solutions containing some (usually, more than one) looped cycles, which are started and finished at the same point called "depot".The objective is to minimize the cost (time or distance) for all tours.For the identical type of input data, VRP has higher solving complexity than TSP.Both problems belong to the class of NP-hard tasks.Specialized algorithms are able to find optimal solutions for cases with up to about 50 customers; larger problems have been solved to optimality in some cases, but often at the expense of considerable computing time.Thus, actuality of research and development of heuristics algorithms for solving VRP is on its top, because such approximate algorithms can produce nearoptimal solutions in a polynomial time.It is especially important in real-based tasks when there are more than one hundred clients in a delivery net.Real world applications may be mail delivery, solid waste collection, street cleaning, distribution of commodities, design telecommunication, transportation networks, school bus routing, dial-a-ride systems, transportation of handicapped persons, and routing of sales people and maintenance units.A survey of real-world applications is in [1].This work is aimed at analysis of VRP subcase, which is called Capacitated Vehicle Routing Problem (Capacitated VRP, CVRP), where the vehicles have a limited capacity.It means that there is a physical restriction on transportation more than determined amount of weight for each machine.Capacitated vehicle routing problems CVRP form the core of logistics planning and are hence of great practical and theoretical interest.Nowadays, there is a great range of different variations of both classical mathematical model of CVRP and its subcases.It can be too difficult to understand all the details for newcomers in this field of study.It is important to have an ability not to waste personal time doing observation but to quickly get the best solution methods for the current problem.Unfortunately, there are no articles concerned with CVRP, which have both a full classification of the subcases and a list of the solving algorithms.So, the purpose of this study is to make a survey on subcases of CVRP and on state-ofthe-art heuristic methods for solving each extension of this problem.Also, it was decided to provide a new variant of mathematical model differed from Integer Linear Programming models.Clearly, a study of this type is inevitably restricted by various constraints, in this research only CVRP subcases with static and deterministic input are considered instead of the dynamic and stochastic ones.Another condition is that classification is based according to various types of constraints.The paper is structured as follows.In the second part, the classical mathematical formulations of CVRP are described.In the third part, a classification of most popular subcases of CVRP is given, including description of additional constraints with their math formulations.This section also includes most perspective methods that can be applied for solving special types of CVRP.Finally, the fourth part consists of scheme with basic problems of the CVRP class and their interconnections and of conclusion.

CVRP mathematical model
In this paper, mathematical formulation of Asymmetrical CVRP (ACVRP) proposed by original authors [2] is adopted in a new way as follows.This new variant of math model is created because only Integer Programming models were found in other articles.ACVRP is chosen for basic formulation instead of Symmetrical CVRP (SCVRP) because the first one is a general variant of the second problem.In the paper we will use CVRP abbreviation having in mind the next formulation. .According to [1], another variant of mathematical formulation of CVRP allows to leave some vehicles unused, it means that at most circuits must be determined.Of course, the number of must be less or equal than .In this case in the basic formulation described above we should subsequently divide in ′ 1 sets: , , … , , where ∈ ; .Alternative variant takes its place from real-based situations where available vehicles have their own capacity , 1. . .Due to this fact, next restriction appears: , 1. . .However, most researches put this alternative to another class of problems not connected with CVRP which is known as the Mixed Fleet VRP or as the Heterogeneous Fleet VRP.Thus, this variant will not be taken into consideration in this paper.Among the best-known heuristic algorithms are those proposed by Pisinger and Ropke (2007) [4], Nagata and Braysy (2009) [5], and Vidal et al. (2012) [6].

Open VRP (OVRP)
The OVRP is a variant of the CVRP where the vehicles need not return to the depot after visiting the last customer of a given route.Any OVRP instance can be converted to an ACVRP instance by simply setting , 0. There is only one heuristic algorithm for solving OVRP proposed by Salari et al. (2010) [9].Their method is based on Integer Linear Programming Improvement Procedure.There is a good variety of metaheuristics.Most known and important are following algorithms: Hybrid evolution strategy algorithm by Repoussis et al. (2010) [10], variant of Variable Neighborhood Search (VNS) algorithm for OVRP by Fleszar et al. (2009) [11], method based on Tabu Search (TS) with route-evaluations memories by Zachariadis and Kiranoudis (2010) [12], Yu et al. (2011) Genetic algorithm and the last one is Particle swarm optimization metaheuristic proposed by MirHassani and Abolghasemi (2011) [13].

Distance-Constrained CVRP (DCVRP)
The next extension of CVRP to be considered is Distance-Constrained CVRP [14].It suggests introducing the maximum length or time constraint for each route.It means that the total travelled distance by each vehicle in the solution is less than or equal to the maximum possible travelled distance .Thus, new function , , returning travel time between and , appears.[17] suggests a Large Neighborhood search (LNS) combined with branch-and-price for solution reconstruction.The method proposed by Nagata et al. (2010) [18] uses an interesting relaxation scheme with penalized returns in time.Another algorithm (Vidal et al. (2013)) [19] also applies timeconstraint relaxations during the search to benefit from infeasible solutions in the search space.

VRP with Backhauls (VRPB)
VRPB is another extension to CVRP.To define VRPB we need to divide the set of customers into two subsets: the first set contains customers who require the product to be delivered, these customers are called linehaul customers ⊂ . The other set contains customers who require the product to picked up, they are called backhaul customers ⊂ .∩ ∅, ∪ .Also, neither all deliveries nor all pick-ups should exceed vehicle capacity: & .If the tour contains customers from both sets, the linehaul customers must serve before any backhaul customers.Note that tours with backhaul customers only are not allowed in some formulations [1].In basic formulation shoud be changed as follows: The best metaheuristics, according to [20], include the Adaptive LNS (ALNS) of Ropke and Pisinger (2006) [21], the Tabu Search (TS) of Zachariadis and Kiranoudis (2012) [22] which uses long-term memories to direct the search toward inadequately exploited characteristics; and finally multi-ant colony system algorithm by Gajpal and Abad (2009) [23], which suggests two multi-route local search schemes.

VRP with Backhauls and Time Windows (VRPBTW)
Like in VRPB, VRPBTW suggests having linehaul and backhaul customers.In addition, with every location there is a service time associated for loading/unloading and a time window ; , which specifies the time in which this service has to be provided.In the same way as for VRPTW, when arriving too early at a location , i.e., before , the vehicle is allowed to wait until to start the service.Also, the linehaul customers must be served before any backhaul customers.Thus, mathematical formulation of VRPBTW is a combination of both formulations of VRPTW and VRP.The most powerful algorithms for solving VRPBTW are those which are proposed by Thangiah et al. (1996) [24] and by Kucukoglu et al (2015) [25].The first method is based on insertion procedure with improving through the application of λinterchange and 2-opt exchange procedures.The second one includes combination of TS and SA.

VRP with Pickup and Delivery (VRPPD)
In the basic version of VRPPD, each customer requests either two demands, to be delivered and to be picked up, or only , that represents the difference between two demands.In addition, we need to add for each customer two new variables: which denotes the vertex where the source of delivery originates and which denotes the customer where the destination of the pick up exists.It should be noted that for each customer the delivery must be implemented before the pick up.Let define , 0. ., as the weight of the current load of the vehicle after visiting , where ∑ ∈| ..

|
. In basic formulation shoud be changed as follows: A great number of heuristics and metaheuristics are presented in [26].

VRP with Simultaneous Pickup and Delivery (VRPSPD)
VRPSPD is a subcase of VRPPD where each customer is a linehaul as well as a backhaul customer.In VRPSPD each customer not only requires a given quantity of products to be delivered but also requires a given quantity of products to be picked up.A complete service (i.e., delivery and pickup) to the customer is provided by a vehicle in a single visit.Thus, there is no need to explicitely indicate both variables and as in VRPPD.It is found in the literature that the heuristics of Subramanian et al. (2010) [27], Zachariadis and Kiranoudis (2011) [28] and Souza et al. (2010) [29] together produce the best known results.

VRP with Mixed Pickup and Delivery (VRPMPD)
VRPMPD is also a subcase of VRPPD where each customer has either a delivery demand or pickup.Therefore, there is 0 and 0 in the first case and 0 and 0. Nevertheless, in basic formulation shoud be changed the same way as it was shown for VRPPD.The best known heuristics are those of Subramanian (2013) which is based on Iterative Local Search (ILS) idea [30] and hybrid algorithm proposed by Subramanian, Uchoa and Ochi (2013) [31].

VRP with Pickup and Delivery and Time Windows (VRPPDTW)
The VRPPDTW in this paper contains all constraints in the VRPPD plus added constraints in which both pickup and delivery have given time windows.With every location there is a service time associated for loading/unloading and a time window ; , which specifies the time in which this service has to be provided.In the same way as for VRPTW, when arriving too early at a location , i.e., before , the vehicle is allowed to wait until to start the service.Also, for each customer the delivery must be implemented before the pick up.Efficient neighborhood-centered metaheuristics have been proposed, including the ALNS of Ropke and Pisinger (2006) [32] and the two-phase method of Bent, and Van Hentenryck (2006) [33], which combines SA to reduce the number of routes with LNS to optimize the distance.However, these methods were recently outperformed by the memetic algorithm of Nagata and Kobayashi (2011) [34], which exploits a well-designed crossover focused on transmitting parent characteristics without introducing too many new arcs in the offspring.

Multi-depot VRP (MDVRP)
The MDVRP is a generalization of the CVRP where more than one depot may be considered.Obviously, the vehicle must start and end at the same depot.So, part of basic formulation should be changed as follows: Let be a number of depots.Let introduce , , … , , where ∈ .In this case, we should make ∈ ∪ , 1. ., 1. . .The best heuristic approaches for the MDVRP are considered to be developed by Pisinger and Ropke (2006) [35] and Vidal et al. (2012) [6].

VRP with Multiple Use of Vehicles (VRPM) or Multi-Trip VRP (MTVRP)
VRPM or MTVRP is a variant of standard CVRP in which the same vehicle can be assigned to several routes during a given planning period.Not only this constraint is introduced but also the sum of the durations of the trips assigned to the same vehicle must not exceed . is a trip duration being the sum of the travel times on arcs used in the route.Thus, new function , , returning travel time between and , appears.In this variant it is possible if , 1. . .We additionally divide in sets: , , … , , where . Let 0, 1, … , be a set that keeps indexes.Then ∀ ∈ ∀ ∈ 1. .
Overall, the formulation of VRPM is to find: : min ∈ Metaheuristic inspired by ideas of TS and adaptive memory-based search (AMS) (Taillard (1993) [36]) still shows good results.In addition, another variant of AMS by Olivera and Viera (2007) [37] is considered to be competitive.

Periodic VRP (PVRP)
The Periodic VRP (PVRP) is used when planning is done over a certain period and deliveries to the customer can be done in different days.For the PVRP, customers can be visited more than once, though often with limited frequency.Efficient algorithm for solving PVRP is parallel extension of UTS with neighborhood-centered search (Cordeau and Maischberger, 2012 [38]).Also, the VNS of Hemmelmayr et al. (2009) [39], and the hybrid record-to-record and integer programming metaheuristic of Gulczynski et al. (2011) [40] can be successfully applied.In addition, one more metaheuristic is one that proposed by Vidal et al.
(2012) [6].It produces the current best solutions by combining the GA search breadth with efficient LS, relaxations schemes, and diversity management procedures.

Split Delivery VRP (SDVRP)
In the SDVRP-MDA, more than one vehicle can service a customer, so that a customer's demand can be split among several vehicles on different routes.The most important here is that split deliveries are allowed only if at least a minimum fraction of a customer's demand is delivered by each vehicle visiting the customer.
The first metaheuristic for a SDVRP is proposed in Chen et al. ( 2007) [41].The idea of the approach is based on combination of the classical Clarke and Wright algorithm, the Mixed-Integer Linear Programming (MILP) model and variable length record-torecord travel methods.A similar procedure is applied in Gulczynski et al. (2010) [42] to the SDVRP with minimum delivery amounts, that is a SDVRP where each delivery to a customer should consist of at least a minimum amount of goods.Another metaheuristic which contains TS approach is proposed in 2008 by Archetti et al. [43] The main thing here is to obtain a reduced graph by removing some arcs and to apply a set covering MILP formulation for the best routes.And in Jin et al. ( 2008) [44] a set covering formulation is proposed and the problem is solved through column generation.

Cumulative CVRP (CCVRP)
CCVRP minimizes the sum of the arrival times at the customers instead of minimizing the total distance (or travel time) as an objective.For the CCVRP, Ngueveu et al. (2010) [45] and Ribeiro and Laporte (2012) [46] modified the hybrid GA.Also, two-phase metaheuristic proposed by Ke and Feng in 2013 [47] is considered to be successful enough.

An important note
There is an important note about recent state-of-the-art algorithm proposed by K. Helsgaun [48].In the end of 2017 this author released an extension of the Lin-Kernighan-Helsgaun TSP Solver for Vehicle Routing Problems, called LKH-3.In his technical report it is said that his algorithm can often obtain best known solutions for benchmark instances, and even new best solutions were found.Unfortunately, his algorithm cannot solve all subcases of CVRP.MDVRP, VRPM, PVRP, SDVRP and CCVRP can be solved using other metaheuristics but not using LKH-3.

Conclusions
Table 1 sums up abovementioned and shows a list of best metaheuristics for each defined subcase of CVRP.The presented study is undertaken in order to make a survey on CVRP subcases and on heuristic methods for solving each extension of this problem.In addition, author variants of mathematical formulations are given.

Fig. 1
Fig.1sums up relations between classes of the CVRP and forms the classification of its subtypes.In our future work, we are going to extend current survey adding dynamic and stochastic subcases of CVRP.

Fig. 1 .
Fig. 1.The basic problems of the CVRP class and their interconnections It means that service of each customer must start only after the time comes and this service must end before the time .Obviously, lot of metaheuristics for solving VRPTW, but the most actual and stateof-the-art ones are given.The guided Evolutionary algorithm ofRepoussis et al.  (2009)[16]combines evolution, ruin-and-recreate mutations and guided local search.Prescott-Gagnon et al.(2009) Most heuristics applied to simple CVRP can be easily converted for solving DCVRP cases.However, one heuristic proposed by Li et al. stands out from them[15].It transforms the DCVRP into a multiple traveling salesman problem with time windows.3.3.VRP with Time Windows (VRPTW)In VRPTW there is a constraint on time interval ; associated with each , called time window.