Discrete Dynamics in Nature and Society

Volume 2016 (2016), Article ID 2804525, 12 pages

http://dx.doi.org/10.1155/2016/2804525

## An Inverse Robust Optimisation Approach for a Class of Vehicle Routing Problems under Uncertainty

^{1}School of Mechatronics Engineering and Automation, Shanghai University, Shanghai 200072, China^{2}School of Transportation and Vehicle Engineering, Shandong University of Technology, Zibo 250049, China

Received 29 October 2015; Accepted 14 December 2015

Academic Editor: Seenith Sivasundaram

Copyright © 2016 Liang Sun and Bing Wang. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

There is a trade-off between the total penalty paid to customers (TPC) and the total transportation cost (TTC) in depot for vehicle routing problems under uncertainty (VRPU). The trade-off refers to the fact that the TTC in depot inevitably increases when the TPC decreases and* vice versa*. With respect to this issue, the vehicle routing problem (VRP) with uncertain customer demand and travel time was studied to optimise the TPC and the TTC in depot. In addition, an inverse robust optimisation approach was proposed to solve this kind of VRPU by combining the ideas of inverse optimisation and robust optimisation so as to improve both the TPC and the TTC in depot. The method aimed to improve the corresponding TTC of the robust optimisation solution under the minimum TPC through minimising the adjustment of benchmark road transportation cost. According to the characteristics of the inverse robust optimisation model, a genetic algorithm (GA) and column generation algorithm are combined to solve the problem. Moreover, 39 test problems are solved by using an inverse robust optimisation approach: the results show that both the TPC and TTC obtained by using the inverse robust optimisation approach are less than those calculated using a robust optimisation approach.

#### 1. Introduction

Vehicle routing problems (VRP) are a crucial issue in industrial and system engineering, and involve routing a fleet of vehicles from a depot to service a set of customers. If one or both of demand and edge costs, including transportation cost and travel time are uncertain, the variant VRP becomes VRPU. It can be considered to be one of the more important problems—both in theory and practice—in the fields of transportation, distribution, and logistics. Hence, the search for an optimisation approach for VRPU to improve the operation efficiency of distribution centres (DC) and perfect the quality of customer service is significant.

At present, the optimisation approach for solving VRPU includes stochastic [1–6] and robust optimisation approaches. The former focuses on minimising the expected cost or maximising the expected revenue, but the expected values may be not the actual utility function influencing decision-makers. This is because the risk preference of decision-makers is neglected. Besides, it is difficult to reduce the fluctuations in a solution and their sensitivity to constraint conditions. Unlike the stochastic optimisation approach, the risk preference of decision-makers is taken into account in the robust optimisation approach. Meanwhile, a solution to robust optimisation explicitly incorporates conflicting objectives of solution robustness (the optimal solution is close to optimal for all realisation of the input data) and model robustness (the optimal solution is almost feasible for all realisation of the input data).

As for the situations above, the robust optimisation approach to solving VRPU has become a new research hot-spot as its use to solve this kind of problem has increased in recent years. According to the current theory on robust optimisation [7–9], the robust optimisation approach for solving VRPU can be classified into two types.

##### 1.1. The Robust Optimisation Approach for the Optimal Solution

This approach mainly focuses on the feasibility of the optimal solution from a set of scenarios. Sungur et al. introduced a robust optimisation approach to solve the VRP with uncertain demand [10]. Gounaris et al. derived the robust optimisation counterparts of several deterministic capacitated vehicle routing problem (CVRP) formulations. Meanwhile, they developed robust rounded capacity inequalities for two broad classes of demand supports and it is shown how they are efficiently separated [11]. Lee et al. investigated VRP with deadlines, where the objective is to satisfy the requirements of specific customers with minimum travel distances while regarding both customer deadlines and vehicle capacities [12]. Agra et al. proposed two new formulations for robust VRP: the first extended the well-known resource inequalities by using adjustable robust optimisation, while the other generalised a path inequalities formulation to cater for the uncertain context [13]. Owing to the transportation cost changing in a given interval, Montemanni et al. established a robust optimisation model with fluctuation minimisation of the TTC as the optimisation objective. Besides, the branch and bound approach is applied to solve the model [14]. With the consideration of the uncertain demands in the event of a disaster, a robust optimisation model is established by Zhang et al. to establish emergency resource allocation in the event of a natural disaster. In addition, with the interval data representing the demand in each disaster area, the adjustable robust optimisation idea is used to build a robust optimisation model considering the uncertainty of demand [15, 16]. Jafari-Eskandari et al. solved the milk-run issue under the condition of demand uncertainty by using robust optimisation approach. Besides, particle swarm optimisation approach is also applied [17]. With regard to transporting the wounded and relief materials after an earthquake, Najafi et al. solved the problem by adopting a hierarchical multiobjective optimisation approach to obtain the robust optimisation solution with some optimisation objectives, including minimising waiting time for treatments of the wounded, minimising the response time in the demand for relief materials, and minimising the number of vehicles used [18].

##### 1.2. The Robust Optimisation Approach for the Optimal Objective Function Value

The objective function of the model is a utility function that embodied a trade-off between the optimisation objective and variability therein. According to the expectation-variance theory proposed by Markowitz [19], List et al. established a formulation and a solution procedure for fleet sizing under uncertainty in future demand and operating conditions. Their formulation concentrated on robust optimisation by using a partial moment measure of risk [20–25]. A robust optimisation model to minimise the risk of each route for the haulage of dangerous goods is proposed by Qin et al. which includes the influence of various meteorological conditions on accident frequency and the severity thereof [26]. As for the VRP under uncertain demand and cost, Sun and Wang proposed a robust optimisation model with expectation-combination deviation and analysed the related properties of the robust optimisation model considering the different strength of preference among decision-makers for deviation expectations [27]. The robust optimisation model with expectation-deviated expectation is mainly used to obtain the robust optimisation solution meeting the preference of decision-making risk for customers on the whole, whereas the model cannot be used directly to formulate a transport plan for a particular kind of customer. In response to this problem, Sun and Wang proposed a robust optimisation model with conditional expectation-deviated conditional expectation to handle special customers among the whole, so as to determine the robust optimisation model for the optimal transport scheme. Besides, they also analysed the properties of the model [28, 29].

Although the robust optimisation approach can overcome some shortcomings found during the optimal solution of VRPU by using stochastic optimisation approach, both approaches just seek an eclectic optimal solution among several optimisation objectives if these objectives present a trade-off phenomenon. Unlike these two approaches, DC often adjusts the prices of enterprise resources, including products or services to simultaneously optimise these objectives with trade-off as far as possible in practical business operations management. The price adjustment here refers to the fact that different transport prices affecting all realisation of input data are adopted according to the various service requirements of customers to maintain a low total transportation cost (TTC).

Based on the analysis above, an inverse robust optimisation approach is proposed to solve such problems by combining inverse optimisation and robust optimisation according to the actual operation process of DC. The main idea of inverse robust optimisation is to establish a two-stage model, where the first stage is to solve a robust optimisation solution which minimises the total penalty by using a robust optimisation approach. While the second-stage model aims to ensure that the TTC under the robust optimisation solution is not more than the minimum TTC obtained from the first-stage model by minimising the adjustment of benchmark road transportation costs. Based on the characteristics of the robust optimisation solution in the first-stage model, the crossover and mutation operators are redesigned to solve the first-stage model by GA. While based on the properties of the second-stage model, a column generation approach is adopted to solve the second-stage model. Owing to the inverse robust optimisation approach proposed in this study being aimed at solving the VRPU under a single-stage decision, the research status of the robust optimisation approach for the VRPU under multistage decisions [30] is not discussed here.

The differences between the inverse robust optimisation approach proposed in this research and the robust optimisation approach reported in the literature are as follows.

*(*
*1) The Optimisation Principle Is Different*. The main idea of the robust optimisation approach is to find an optimal solution in a feasible region to keep the solution feasible for the data in an uncertain dataset almost everywhere or the optimal objective function value obtained optimal to the uncertain dataset almost everywhere. It reflects a kind of optimisation mechanism, while the inverse robust optimisation approach proposed here indicates a regulatory mechanism. It aims to explore how to adjust the benchmark road transportation cost to minimise the corresponding TTC of the robust optimisation solution which has obtained the minimum total penalty.

*(*
*2) The Assumptions Are Different*. The upper change limit of each customer demand is the maximum load of vehicles in some robust optimisation approaches. The customer demand is often more than the maximum load of vehicles in the actual operation process of DC. Thus, the assumption is loosened that the demand produced by customers could be more than the maximum load of vehicles in this research. If the demand of customers is more than the maximum load of vehicles, the demand is met by transporting the payload in several cycles or stages.

The rest of this paper is organised as follows.

Section 2 provides the model used in the inverse robust optimisation approach. Section 3 provides the solution method used in the inverse robust optimisation approach. Section 4 summarises the results of the theoretical analysis and further verifies them by analysing several examples. Finally, the authors conclude and make recommendations for future research directions in Section 5.

#### 2. Problem Description and Formulation

##### 2.1. Basic Definitions

*Definition 1 (benchmark road transportation cost). *
This refers to a reference for setting the road transportation cost of different DCs or depots. It can be formulated by government or formed by the market over long-term competition.

*Definition 2 (customer penalty). *
It is the penalty paid by the DC to the customers based on their contract if the delivery vehicle arrives to the customers later than the allowed latest time of arrival. The greater the customer penalty, the lower the distribution service level provided by the DC; hence, it is more likely to induce customer loss.

*Definition 3 (model of demand uncertainty set ). *
It is assumed that is a set of customers and each customer can meet the condition of . Besides, the value of demand is in the range , where represents the maximum deviation from the nominal demand value . Moreover, a nonnegative integer is introduced as a parameter to control the degree of robustness for the demand uncertainties; then the uncertainty set of demand data is given as follows:

*Definition 4 (model of travel time uncertainty ). *
Vertex 0 represents a depot and .

is a set of arcs, and each arc meets the condition whereby . In addition, the travel time takes values from , where represents the maximum deviation from the nominal travel time . Moreover, a nonnegative integer is introduced as a parameter to control the degree of robustness of the travel time uncertainties. Then the uncertainty set of travel time data can be expressed as follows:

##### 2.2. Problem Description

is a graph, where is the set of vertices and , , is the set of edges. Besides, vertex 0 represents a depot without demand, where a fleet of identical vehicles with the capacity of is located. Each edge () has a nonnegative benchmark transportation cost .

It is assumed that the travel time between each pair of customers and the demands thereof are uncertain. Two types of uncertainty sets with adjustable parameters are considered for the possible realisation of travel time and demand. The problem satisfies the following conditions:(a)Each customer is assigned to at least one route.(b)The demand of every customer is totally satisfied and it can be serviced by more than one vehicle.(c)Each route must begin and end at the depot and it has to visit at least one customer.(d)The total demand serviced by each vehicle is not more than its capacity.(e)The vehicle can arrive before the earliest service time allowed by customers, and it can also arrive after the latest service time; however, it has to pay a penalty to the customer if it arrives later than the latest service time.

The inverse robust optimisation proposed in this paper has two goals: to find an optimal solution to minimise the TPC by making the solution feasible for each travel time and demand defined in the uncertainty sets and to find a preferred transportation cost to ensure that the corresponding TTC of the optimal solution obtained above is not more than the minimum TTC in the first-stage model. At the same time, the values of transportation cost differ from the benchmark transportation cost as little as possible.

###### 2.2.1. Parameters and Decision Variables

*(*
*1) Parameters*. Parameters in the first-stage model are as follows:is the unit penalty paid to the customers if the vehicle arrives after . is the earliest, and latest, service time allowed by customer . is the unloading time of a vehicle at customer . is a subset of . is the nominal travel time between customer and customer . is a large number. is a subset of . is a subset of . One has . One has .Parameters in the second-stage model are as follows: is the benchmark transportation cost between customer and customer ; is the robust optimisation solution for the MTPC in the first-stage model; , in ; 0, in ; , in the feasible solution; 0, in the th feasible ; stands for the corresponding robust optimisation solution to the minimum TTC in the first-stage model; , in ; , in .

*(*
*2) Decision Variables*. The following are decision variables in the first-stage model: , if vehicle travels from customer to customer ; , ; is the arrival time of vehicle at customer , and ; represents in ; is the proportion of the demand of customer serviced by vehicle , where ; denotes in .Decision variables in the second-stage model are as follows: represents a decision variable. It is the increased amount by which the corresponding TTC of is no more than that minimising TTC, where . represents a decision variable. It is the increased amount by which the corresponding TTC of is no more than that minimising TTC, where .

##### 2.3. Inverse Robust Optimisation Formulation for VRPU

###### 2.3.1. First-Stage Model

One hasConstraints (4) to (6) are classical routing constraints. Constraint (4) ensures that each vertex is visited at least once. Besides, constraint (5) is a flow conservation constraint, while constraint (6) is a subtour-elimination constraint, constraint (7) implies that customer can be served by vehicle only if passes through , constraints (8) and (9) make all solutions feasible at each travel time and for each demand defined in the uncertainty sets, and constraint (10) means that the quantity delivered by each vehicle is not more than its capacity.

###### 2.3.2. Second Stage Model

There are two possible situations if the benchmark road transportation cost is adjusted too much. One situation is that the enterprise fails to be sustained, while the other is that customers cannot afford the high freight charges so that they are forced to abandon the services provided by the DC. Thus, the second-stage model focuses on minimising the adjustment range of benchmark road transportation cost:where is the number of feasible solutions in the first-stage model. It is stipulated that the first feasible solution is the robust optimisation solution, namely, in the first-stage model. Optimisation objective (14) entails minimising the total adjustment of benchmark road transportation cost. Constraints (15) and (16) are used to ensure that the corresponding TTC to the robust optimisation solution is not more than the minimum TTC in the first-stage model. Constraint (17) ensures that the decreased amount of adjustment of benchmark road transportation costs cannot exceed .

###### 2.3.3. The Properties of the Inverse Robust Optimisation Model

*Property 1. *
If , then .

*Proof. *
One hasowing to

It is indicated by Property 1 that the optimal values of TTC obtained by adjusting only the corresponding in and adjusting all are the same. Property 1 can be used to reduce the number of columns in the coefficient matrix in the second-stage model during calculation.

*Property 2. *
The feasible solutions in the first-stage model are divided into groups, where the minimum value of the corresponding TTC of the feasible solution in the th group is ; then constraint (15) can be modified to

*Proof. *
For the th group of constraints,where is the number of constraints in Group and is the minimum value of the corresponding TTC to the feasible solution in the th group of constraints. So it is true thatis equivalent to

Property 2 explains that, after appropriately grouping the constraints in constraint (15), the corresponding constraints for the minimum TTC of the feasible solutions in each group are selected to construct new constraints. The number of rows of the coefficient matrix in the second-stage model can be reduced during computation by using Property 2.

###### 2.3.4. Complexity

The size of coefficient matrix with regard to constraint (15) is . By virtue of Properties 1 and 2, the size of the coefficient matrix with regard to constraint (15) can be reduced to . The computational complexity of this inverse robust optimisation problem can be reduced significantly using Properties 1 and 2. It is interesting to note that we cannot find an optimal solution for first-stage model using a heuristic algorithm in most cases, whereas we can find an optimal solution for second-stage model using Property 2 in certain situations.

#### 3. Solution Methods

The process of selecting vehicle routes allows the selection of any combination of customers in determining the delivery route for each vehicle. Therefore, the robust counterpart of split delivery vehicle routing problem is also a combinatorial optimisation problem where the number of feasible solutions for the problem increases exponentially with the number of customers to be serviced. In addition, the robust counterpart of the problem is closely related to the travelling salesman problem where an out and back tour from a central location is determined for each vehicle. Since there is no known polynomial algorithm that will find the optimal solution in every instance, the robust counterpart of the problem is considered NP-hard. For such problems, the use of heuristics is considered a reasonable approach in finding solutions.

##### 3.1. The Concept behind the Algorithm

(1) The VRPU is converted into the corresponding robust problem which must be solved. (2) A GA is applied to solve the first-stage model. (3) Properties 1 and 2 are used to simplify the coefficient matrix of the second-stage model, and then a column generation algorithm [31] is used to solve the second-stage model.

##### 3.2. The Algorithm and Its Steps

The algorithm is operated in the following steps.

*Step 1. *
A VRPU is transformed into the robust counterpart of VRPU ready for solution.

*Step 2 (initialising the parameters). *
To select an appropriate population , crossover probability , and mutation probability , a stochastic approach is applied to generate the initial population. Besides, the optimal individual is labelled as the current optimal solution set, and the evolutional generation is set to .

*Step 3 (selection operator). *
Let ; the mechanism combining a roulette and elitist strategy is adopted to select the individual according to its adaptive value.

*Step 4 (crossover operator). *
The crossover operator (see Section 3.3.3) proposed in this study is used.

*Step 5 (mutation operator). *
The mutation operator (see Section 3.3.4) proposed in this study is used.

*Step 6. *
Update the current optimal solutions.

*Step 7 (terminating conditional judgment). *
If the fixed number of generations is reached, the evolution is terminated; otherwise, the operation returns to Step 3 until this is satisfied.

*Step 8. *
All individuals produced by solving the first-stage model by GA are recorded. Each component of , namely, , which corresponded to the minimum TTC in the first-stage model, and each component of , namely, , are recorded.

*Step 9. *
First, , and are substituted into the coefficient matrix in the second-stage model. Then the coefficient matrix is simplified by using Properties 1 and 2. Finally, a column generation algorithm (see Section 3.3.4) is applied to solve the second-stage model.

##### 3.3. Detailed Description of the Steps in the Algorithm

###### 3.3.1. Chromosome Representation

It is assumed that the number of vehicles is fixed, and the customer-based coding approach is applied to each chromosome. There are three characters representing each gene: the first is the serial number of the customer served by the vehicle and the number of the depot. If the character in first row is 0, it is a depot identifier; otherwise, it is the customer identifier. Besides, the second and third characters represented the earliest start time and the latest start time allowed by each customer. The advantage of this encoding method is that the subtours can be avoided during encoding, thus saving time during calculation.

###### 3.3.2. Crossover Operator

The common crossover operators include ordered crossover (OX), partial mapped crossover (PMX), circulation crossover (CX), conventional single-point or two-point crossover, and crossover with edge recombination. All of these crossover operators fail to account for the characteristics of the objective function in Stage 1. In terms of the objective function in the first-stage model, it is necessary to reduce the time in which a vehicle returns to the depot after finishing its last service, so as to reduce the total penalty. Thereby, if the subroute with the minimum total penalty among individuals can be the subroute with the maximum total penalty among the optimal individuals, then the individual is more likely to be the optimal individual. With respect to this analysis, the new crossover operator of the GA is found as follows:(1)Two individuals, A and B, are selected from the current population at random.(2)The subroute with the minimum total penalty in A and B, as the reserve section thereof, is written to intermediate individuals ( and ).(3)Crossover is performed. The gene in the reserve section of or is copied to its offspring individual, namely, New_, while the genes on other gene locus are written in New_ according to their order of appearance on .(4)The individuals, after crossover, are decoded again according to constraints (4) to (13) to adjust the position of gene 0 so as to resolve the start and end times for arrival of each served customer and vehicle.

As shown in the example (see Figure 2), the shortest subroute satisfying the constraints on individual is , which serves as the reserve section of , while the subroute meeting the conditions on individual is , which is the reserve section of .

###### 3.3.3. Mutation Operator

The subroute which has highest total penalty in any individual determined whether or not the individual was optimal. The gene of the other subroutes in an individual can be exchanged with that of the subroute with the highest total penalty. In this way, the subroute with highest total penalty can be changed to maintain population diversity. Based on two-point mutation, the mutation operator ran as follows:(1)An individual A is selected at random.(2)A gene locus chosen arbitrarily from the subroutes with highest total penalty and another gene is selected arbitrarily from the other subroute.(3)The two genes are exchanged.(4)The individuals, after mutation, are decoded again in accordance with constraints (4) to (13) to adjust the position of gene 0 so as to recalculate the start and end time of arrival of the vehicles at each served customer.Figure 3 shows that is the subroute with the maximum total customer penalty for any individual, while is the subroute with the minimum total customer penalty.

###### 3.3.4. Column Generation Algorithm

The column generation algorithm [31] is applied to solve the second-stage model.

#### 4. Computational Results

##### 4.1. Comparison between the Robust, Inverse, and Optimisation Approaches

###### 4.1.1. Selecting Test Problems and Setting Parameters

These computational experiments are performed on two sets of problems: the first is taken from the well-known Solomon problems [32]. In this case, we used problems R, C, and RC; the second is taken from http://www.uv.es/~belengue/sdvrp.html and used the Eil and problems. Since Eil and problems were originally designed for the SDVRP without earliest and latest start times, we assigned a latest start time of 1000 and 500 for every odd and even node, respectively. We set earliest start times of 500 and 300 for every odd and even node, respectively. The nominal travel time is obtained according to an approach published elsewhere [33], while the nominal demand corresponds to the demand in the two sets of problems. In addition, the numerical value of the benchmark road transportation cost is the same as that for the distance between customer and customer .

The maximum offsets of demand and travel time are 100 and 300, respectively. The levels of uncertainty of demand are the same (i.e., ); meanwhile, the levels of uncertainty in the travel time are also the same (i.e., ). In addition, the values of these parameters are as follows: population size ; crossover probability ; mutation probability ; , , and . All of the computational tests presented here were performed on a Pentium CPU B950 with 4 GB of RAM. The solution was implemented in MATLAB R2013a.

###### 4.1.2. Comparing the Optimal Performance of the Inverse Robust Optimisation and Robust Optimisation Approaches

The MTPC in Tables 1 and 2 represents the minimum total penalty paid to customers as obtained by three optimisation approaches, while TTC is the total transportation cost corresponding to the robust optimisation solution of the minimum total penalty. In addition, I-RO denotes the inverse robust optimisation model, S-RO denotes the single-objective robust optimisation model, and M-RO represents multiobjective robust optimisation model.