Abstract

The capacitated vehicle routing problem (CVRP) is the most classical vehicle routing problem (VRP); many solution techniques are proposed to find its better answer. In this paper, a new improved quantum evolution algorithm (IQEA) with a mixed local search procedure is proposed for solving CVRPs. First, an IQEA with a double chain quantum chromosome, new quantum rotation schemes, and self-adaptive quantum Not gate is constructed to initialize and generate feasible solutions. Then, to further strengthen IQEA's searching ability, three local search procedures 1-1 exchange, 1-0 exchange, and 2-OPT, are adopted. Experiments on a small case have been conducted to analyze the sensitivity of main parameters and compare the performances of the IQEA with different local search strategies. Together with results from the testing of CVRP benchmarks, the superiorities of the proposed algorithm over the PSO, SR-1, and SR-2 have been demonstrated. At last, a profound analysis of the experimental results is presented and some suggestions on future researches are given.

1. Introduction

Vehicle routing problem (VRP) has been presented more than fifty years by Dantzig and Ramser [1], and it is still drawing many researchers’ attention [2, 3]. In a VRP, a vertex usually denotes the distribution center and other vertexes are used to denote the clients on demand; the distance between the vertexes is usually considered as the traveling distance or traveling cost; a classical VRP [4, 5] may include two principles: each client needs to be visited only once and the starting point and terminal point are both at the distribution center. So the objective of a VRP is to minimize the total distances.

It is well known that VRP is an NP-hard problem [6]. While CVRP is the most basic problem of VRPs and studying CVRP has a fundamental meaning to learn other advanced problems in this field and develop its solution methodologies [7]. Laporte [8] reviewed the VRP algorithms development from 1959 to 2009; these algorithms were classified as exact algorithm, classical heuristic algorithm, and metaheuristic algorithm. As it was stated in his paper, solving an NP-hard CVRP will require more computational time but the outcome may not be improved a lot.

In recent years, the solving methods of VRPs are mainly on finding a proper intelligent or heuristic algorithm with problem-oriented solving mechanisms to find near optimal solutions [9]. Vera et al. [10] used the variable neighborhood search (VNS) heuristic algorithm solving the periodic VRP (PVRP) without time window. Barker and Ayechew [11] proposed a genetic algorithm for VRP and Rego and Alidaee [12] reviewed some of the most important tabu search heuristics for the VRPs. Marinakis et al. [13] proposed a hybrid particle swarm optimization algorithm for the VRP, while Szeto et al. [14] used a bee colony algorithm for the CVRP. These algorithms have been proven successfully in solving VRPs. They are widely accepted as being more efficient than some exact algorithms [4] to some extent.

In 1996, new evolutionary algorithm called quantum-inspired algorithm was proposed [15], which combined the quantum mechanism and the evolution computing characters together, so Quantum-inspired algorithm is also called the quantum evolution algorithm (QEA). QEA has been widely used in a variety of fields, such as SVM parameter optimization [16] and nuclear reactor reload optimization problem [17].

QEA was born to solve the TSP; there have been only a few satisfactory results in dealing with the VRP, such as Zhang et al. [18] and Zhang et al. [19]. Current QEA-based methods for solving VRPs have three main shortages. The first one is the complex encoding process. Classical QEA encoding procession need to be converted among quantum encoding-binary encoding-real number encoding-integer encoding, which increases the computational complexity. Nevertheless, this conversion has lost half of quantum encoding carrying information. Another disadvantage of classical QEA is its initialization largely based on the encoding method, which has separated the relations between visiting customer and candidate vehicles. The updating operation is stylized as it relies on the lookup table. The non problem-oriented process also impacts QEA searching efficiency.

Therefore, an improved quantum evolution algorithm (IQEA) with a mixed local search procedure called IQEA+ is proposed for solving CVRPs, in which a new double chain based encoding method to deal with the relations between vehicles and clients, a revised quantum rotation mechanism to simplify the updating processions, and an adaptive mutation operator are adopted. To further strengthen the searching abilities of IQEA, three local search procedures, 1-1 exchange, 1-0 exchange, and 2-OPT are also adopted.

The remaining contents are organized as follows. In Section 2, we review the fundamental knowledge and the improvements of QEA. Section 3 mainly discusses the encoding mechanism, the revised updating method, and mutation operations. Moreover, the framework of the IQEA is shown in this section. While the numerical experiments and results are presented in Section 4. In Section 5, conclusions and future research directions are provided.

2. Literature Review of QEA

2.1. Basic Knowledge of QEA

Quantum-inspired algorithm was born to solve the TSP [15]. QEA is also a probability algorithm, which includes some similar features of the evolutionary algorithm (EA), such as the representation of the individuals, the fitness functions, the updating processes, and the mutations [27]. However, it is not quite the same as a classical EA for it is mainly constructed with the concept of quantum computation [28] that reflects microparticle behaviors based on quantum mechanics. In QEA, an individual of a chromosome is usually expressed by a certain number of quantum bits (-bits), which is represented as a linear superposition mode. The state of a -bit can be expressed as follow: where and are complex numbers. In QEA, they are called probability amplitudes of and , respectively. The smallest unit of information stored in a -bit may be in , , or any superposition of the two states, while and denote the probabilities of the -bit in “0” state and in “1” state and they satisfy the normalization equation:

Then, we can construct a population of -bit individuals in the th generation like that , where is the size of the population and is the th chromosome of a certain population in the th generation. Therefore, a string of   -bits can be expressed as follows: where is the th generation, is the length of , is the th chromosome, and . The expression can also be described as another form: where .

A basic QEA procedure is as follows.

Set the maximum generation and the population size. Initialize the population where . A general method is as follows: let all probability amplitudes be equal to , which means that all the possible linear superposition states are endowed with the same probability ; that is, where is a binary string denotes the th state of the quantum chromosome, and ; .

Observe the to obtain its binary solution set . Each is a binary string with a length of and or according to certain conditions: randomly generate a number which lies in if is larger than the square of probability amplitude of the th -bit, then we take “1” in the binary state; otherwise, “0” is adopted in the binary state.

Convert the binary solutions to real number solutions corresponding to specific questions. Use a fitness function to evaluate every individual and store the best solutions; if the object reached, stop the algorithm; otherwise, turn to step 4.

Update and execute mutation operations. Different from recombination and mutation operations of conventional EA, quantum-gate (-gate) is adopted in QEA to update the current solutions. There are several kinds of -gates, such as the NOT gate, controlled-Not gate, Hadamard gate, & gate and Phase gate [29], but all of them must meet requirement of the Schrödinger equation; that is, where is a -gate and is a unit matrix. Because QEA’s updating and mutation operations are mainly constructed based on a single -bit, the single quantum bit gate—quantum rotation gate—has been widely used. A rotation gate as an updating operator is employed in updating a -bit : where is the rotation angle and its magnitude is obtained by the equation . is the sign of the rotation angle whose lookup table is shown in Table 1. In Table 1, is the best solution of th -bit and is the binary solution of the th bit, respectively.

While in the mutation operation, the quantum NOT gate is commonly used. The essence of the NOT gate is to swap the positions of a -bit. A NOT gate is expressed as follows: The mutation procedure is as follows: firstly, set a mutation probability and generate a in ; secondly, compare with ; if is larger than , select a certain chromosome, from which a number of -bits are chosen to carry out the mutation operation; otherwise, do nothing.

Check whether the maximum generation is reached. If not, , go back to step 2; otherwise, stop the iteration.

The flow chart of the original QEA is shown in Figure 1.

2.2. The Development of QEA

Compared with other evolutionary algorithms, better performance of QEA has been showed in balancing the exploration and exploitation [22]. But, for all that, it shows great potential in solving some specific problems, especially for some intractable problems [30], such as in the quantum turing machine and quantum automata, quantum circuits, adiabatic quantum computation and topological quantum computation.

2.2.1. Hybrid Quantum Evolution Algorithms (HQEA)

Combining quantum mechanism with other EA algorithms is widely accepted by researchers; here we can just call them the hybrid quantum evolution algorithms (HQEA). Zheng and Yamashiro [31] proposed a novel quantum differential evolutionary algorithm (QDEA) with a strategy of largest rotating angle value rule to determine job sequence based on job’s quantum information. Su et al. [32] used a quantum-inspired differential evolution (DE) algorithm to discover the classification rules. Similarly, Su and Yang [33] proposed DE/QDE to learn the Takagi-Sugeno (T-S) fuzzy model.

Typically speaking, the quantum mechanism is the most favored to be integrated with the swarm algorithm. For instance, Sun et al. [34] proposed quantum delta potential well based particle swarm optimization algorithm on the hypothesis that the PSO system is a quantum system, each particle of which is of quantum state formulated by the wave function. To deal with the problem of prematurity of particle swarm optimization in global searching, a global convergence guaranteed method called quantum behaved PSO (QPSO) was developed and a vector evaluated QPSO was also presented [35].

2.2.2. Improved QEA (IQEA)

Other researchers have paid attention to the improvement of the QEA itself performances, such as redesigning the encoding mechanism, optimizing the rotation angle, and setting properly rotate directions; we can just call these algorithms the improved QEA (IQEA).

P. L. Li and S. Y. Li [21] presented a double chain quantum evolution algorithm (DCQEA), in which each quantum chromosome contained two gene chains and each gene chain represented a feasible solution. While in their another paper, a QEA algorithm under the Bloch coordinates of the -bits (BQEA) encoding is proposed [36]. Gao and Wang [23] adopted a -bit representation to solve the multiobjective optimization problems (MOOPs) and a chaos-based approach is suggested to initialize the population. Based on paralleled quantum chromosomes, Gu et al. [37] used a novel parallel quantum genetic algorithm for stochastic job shop scheduling. In order to improve the efficiency of genetic algorithm in solving the above question, a novel parallel quantum genetic algorithm was presented by Gu et al. [38].

QEA is also a probabilistic algorithm; its solution spaces update is both guided by the best individual and the quantum rotation gate mechanism. Researchers have found that quantum rotation gate has significant impact on its convergence speed, fitness value, and robustness [22]. Zhang and Gao [20] have introduced two types of rotation angles, which can provide a good balance between “fine search” and “coarse search.” By referring to the gradient of fitness function, P. L. Li and S. Y. Li [21] presented a new quantum rotation gate. While Gao and Wang [23] proposed a chaos-based rotation gate which depended on the rank of the parent cell in the population and a chaos equation. Lee et al. [25] constructed a self-adaptive operator which would adjust the size of the grid and was very simple to implement. Some of the above improvement measures are listed in Table 2.

In the encoding stage, the quantum encoding is often transferred into a binary encoding of a certain evolutionary algorithm, for example, the encoding method of the genetic algorithm (GA). The fact is that there are a few papers trying to solve the VRPs or VRPs variants with QEA. However, their methods of the evolutionary process are mainly on the basic QEA. So, in Section 3, a new improved QEA is introduced to deal with CVRPs with new rotation mechanisms.

3. The Proposed IQEA with Local Search Procedure for CVRP

CVRP is usually formulated as follows: given there are candidate vehicles providing the services for customers and = 0 represented the distribution center. The capacity of each vehicle is , while the demands of each customer are . Transport distance/cost from customer to customer is . The CVRP model is where (9) is the objective function; here we want to obtain the minimized total routing distances; in (10) and in (11) are both the decision variables and means that, when the vehicle visits the customer from , is equal to 1; otherwise, is 0 and means that the vehicle will visit customer ; (12) is capacity constraints, which means that the maximum loading of vehicle can not bypass ; (13) is to guarantee that there is only has one vehicle visiting customer ; (14) and (15) are used to guarantee that one vehicle will serve only one customer and (16) is used to eliminate subcircle or subroute. The essence of the CVRP is to minimize the total distribution distances under the constraints of capacity.

3.1. The Encoding Mechanism and Solution Presentation

In the encoding stage of classical QEA, quantum codes need to be translated into binary codes, and then the binary codes are continued to be translated into real numbers, which result in encoding procedure that is too complex and trivial to operate. Therefore, a new encoding mechanism is proposed to skip the intermediate encoding steps and take full advantage of quantum information rather than only care about the -bit with a bigger probability amplitude. Further, a double chain quantum chromosome is also adopted to improve the searching efficiency. Suppose there are clients to be served by one distribution center and vehicles are asked to serve them. Obviously, there are routes but we do not know which client will be served by which vehicle.

3.1.1. Solution Representations

In this part, in order to construct routes, groups were set up, and each of them was assigned a string of numbers which lie in . Definitely, the vehicle with bigger number will get more chances to serve the client. The encoding steps are listed below.(1)According to the number of vehicles and clients, a quantum chromosome (-chrome) length is randomly generated, where , is the number of clients, and is the number of vehicles.(2)Divide the -chrome into groups; each group has members, which just correspond to the clients that need to be served.(3)Match the given number (quantum amplitude) in each group to the potential client. Make sure the client number is in ascending order (or in descending order).(4)Select a number (quantum amplitude) every length from one chain of -chrome, and store the smallest number and its position. The procedure will iterate times till all biggest numbers are selected out and all the clients are allocated to the corresponding vehicles. The whole solution representation procedures are shown in Figure 3.The essence of the four-step assignment is that, if the position of the biggest number is fixed, the represented vehicle will render the service and the client will win the chance to receive the service accordingly. Still, we should remember that there are 2 chains in a -chrome, so all the groups and all processing procedures in step 4 will be doubled.

3.1.2. Construct the Vehicle Routes

As the visiting clients in each route have been determined, visiting orders of the clients in each route will be arranged. By far, the smallest numbers we have got in the former part have been all divided into groups. In one group, the numbers are sorted in descending order. Because the clients’ sequence is related to the value of -bits in each group, the service (visiting) orders are sorted according to its corresponding value.

To illustrate the encoding and solution presentation clearly, an example with 6 clients 2 vehicles is given below, so a chromosome length 12 () is randomly generated. The whole process that generates the initial routes and visiting sequences is shown in Figure 4. There are 6 steps to finish the whole routing construction process.

From Figure 4, we could get the sequence of clients assigned to two vehicles. If we define the distribution center as 0, then the complete routes are [0-6-2-0] and [0-1-5-3-4-0]. And, if we consider those operations in the lower chain at the same time, obviously, the searching efficiency of the IQEA will be doubled.

3.2. The Proposed Fitness Function

The minimized objective function is adopted as the fitness function, and a big punishment number is used to deal with unfeasible routes; the fitness function equation can be described as follows: where is the fitness function, is the objective function of the CVRP model, see (9), and is a big positive number (103–106). Equation (17) means that, if the solutions we obtained are all feasible, the fitness function is equal to the objective function; if there are unfeasible solutions, a big number will be added to the objective function to eliminate unfeasible routes.

3.3. The Updating Mechanism of IQEA

There are many QEA updating methods; see Table 2. Zhang and Gao’s [20] rotation angle is not simple enough, and Lee et al. [25] presented a method that is easy to be understood and implemented, but it is not a problem oriented method. Therefore, a new quantum rotation gate mechanism is used here. As we all know, there are two parts of a whole updating procedure: the magnitudes of quantum rotation angle and the rotation directions which need to be considered in chromosome updating. So these two part procedures are provided below.

3.3.1. Rotation Angle of -Bit

In order to let current -bits search towards the best -bits, the magnitude of current quantum amplitudes and the best quantum amplitudes should be considered together. Because the biggest number is acquired from the comparisons between different groups in a single -chrome, the magnitude of rotation angle is derived from its own chromosome. So the rotation angle calculation method is different from the method in the work of Hu and Wu [22], whose rotation angle mainly depends upon the current and the current best rotation angle. The proposed rotation angle is formulated as follows:

where and is the th rotation angle, is the mean value of each group, and is the variance of numbers in each group. It is quite different from traditional strategies with fixed value in Table 1 that each group has a different deviate value .

3.3.2. Rotation Direction of -Bit

The rotate direction is as important as the magnitude of rotation angle to QEA’s efficiency, which is used to control the current rotation angle to rotate towards the current best rotation angle. If and are the probability amplitudes of current optimal solutions, and are the probability amplitudes of current solutions, , , , , , and , then one has the following.

Theorem 1. Rotation directions selection strategies,(1)when and if , the symbol (of ) is positive, or else, if , the symbol is negative;(2)when and if , the symbol (of ) is negative, or else, if , the symbol is positive.

For the proof of Theorem 1, please refer to Appendix A.

3.4. Mutation Operation

Even though mutation process can increase the diversity of the searching population, effective strategies of mutation operation for QEA have not drawn too much attention. So, to some extent, the quantum Not gate may have played a role in local searches, but it still depends on the mutation rate. If the mutation probability is too small, only a small part of -bits is exchanged and the local search ability is not fully fulfilled. However, too large mutation rate will result in unstable searches. So an adaptive mutation strategy is adopted: in the initial stages, the mutation rate is set large to guide the algorithm searching in the whole space and keep solutions diversity; in the last stages, a small mutation rate is adopted to keep the searching process stable and efficient.

The pseudo codes of Algorithm 1 of the adaptive mutation operation are given.

(1)Settings: , ;
(2)iF   popsize then
(3)  = popsize;
(4)end if
(5)Randomly generate the positions Npos of Q-chroms, Npos 1, popsize ;
(6)Randomly generate different intergers in each group, ;
(7)if     then
(8) for   to   do
(9)   for   to   do
(10)     Use the quantum Not-gate mutating the specific -bit;
(11)     end for
(12)   end for
(13) end if

In the pseudo codes, the maxgen means the maximum iterations, gen is the current iterated generation, is the number mutated, and Npos is the position of   -chrom. is the number of vehicles, which means each group will select one -bit mutated. So, as iteration goes on, the is getting smaller and smaller, but the mutation position will not be fixed, which can help keep the searching towards the best solution in one aspect and maintain population diversities.

3.5. Local Search Algorithm

Mutation operation can provide diversities to the quantum population, but we are quite not sure that the solutions, have been found are the global optimized solutions. That is to say, the proposed IQEA still has a risk of being trapped in local minimum solutions. Therefore, some local search operators should be employed to increase algorithm convergence and qualities of solutions. To improve the local search abilities and jump out the local minimum points, many local search procedures and operators are proposed in kinds of evolution algorithms, such as -exchange [39] and -exchange neighborhood [40] and ICROSS, IRP, IOPT, and O-OPT [41]. In order to improve the local optimal both for a single route and multiple routes, Ai and Kachitvichyanukul [7] used three local search procedures: 2-OPT, exchange 1-1, and 1-0 exchange. But they were just operated separately because the combination mechanism of the three procedures was not set up. So a new local search mechanism that combines procedures of 2-OPT, exchange 1-1, and 1-0 exchange together is proposed.

3.5.1. Three Local Search Procedures

As depicted in the work of Ai and Kachitvichyanukul [7], 2-OPT is used to improve a single route that is determined by IQEA procedures by exchanging two different clients’ visiting sequence in that route: if distance of the new route is smaller than the former route, the new one is accepted. Continue the procedure until all the clients are all checked and a local optimal is obtained (see Figure 5: 2-OPT).

The next two procedures 1-1 exchange and 1-0 exchange are adopted to deal with two adjacent candidate routes that have not reached their local optimum. 1-1 exchange is tried to interchange one client from the first route with another client in the other route (see Figure 5: 1-0 exchange) when the distance of the two clients is lower than a predetermined number according to a certain condition. If the total distance of the modified routes is better than that of the former ones, the bad routes will be replaced by new ones.

While in 1-0 exchange, a client is removed from the first route and inserted into the second route. If the total distance of new routes is lower than that of the old routes, the routes will be updated till all the clients in the first route are checked. The basic principal of 1-0 exchange is shown in Figure 5: 1-0 exchange.

More detailed information on the three local search procedures is depicted in Appendix B.

3.5.2. Design Local Search Algorithm

Before the design of the scheme of local searches, we should learn that there is a basic principle to follow, which is also our aim to do local searches: to convert an unfeasible route into a feasible route, and improve the feasible route to a local optimal route. Hence, we presented three local search schemes using the three above operators (there still are other schemes, the explanations on why we did not adopt them will be given later), and they are listed in Table 3.

There are some characters about three local search operators: 1-1 exchange procedure deals with two client vertexes corresponding to two routes, without impacting the sequence of the two routes; 1-0 exchange procedure is to extract one vertex from one route and insert it into another route, while the relative positions of remaining vertexes in two candidate routes are without changes (which still need to be visited by corresponding vehicles); 2-OPT procedure only arranges the vertexes sequence of one candidate route and has nothing to do with other routes. Moreover, if we execute the 2-OPT firstly and then do the other two procedures, we will face the problem that, once the local search operation finished, the improved routes we got may still not be a local optimum; it still needs another 2-OPT operation to find its local optimal. Therefore, the 2-OPT procedure must be put in the end of the execution sequence.

How to arrange 1-0 exchange and 1-1 exchange procedures is another problem. From a problem-oriented point of view, the two procedures are all used to deal with two routes. On their processing objects, there exist 3 cases: both of the two routes are unfeasible, one is feasible and the other one is unfeasible, and both of the two routes are feasible. According to the local search principle stated above, an unfeasible route is improved to a feasible route. In dealing the routes are all unfeasible ones, the 1-0 exchange operator which is not completed for a vertex that moved from one route to another may not get two feasible routes, while the 1-1 exchange operator has more chances to improve the situation. In the case with of feasible route and one unfeasible route, 1-0 exchange can generate two feasible routes by removing a vertex from the unfeasible route and inserting it into the other route. In the third situation, both of the operators can be used to get better routes.

The pseudo codes of local search Algorithm 2 are as follows.

(1)  for   to   do
(2)  Randomly select 2 candidate routes;
(3)  Calculate the actual carrying capacity (AC) of each vehicle.
(4)  if AC < Burden Rating (BR) then
(5)  Run 1-1 exchange and 1-0 exchange 5 times.
(6)  if solutions improved and constraints meet then
(7)     Run 2-OPT 5 times
(8)  else
(9)    Roll back to other routes
(10) end if
(11) else
(12) Run 1-1 exchange and 1-0 exchange 5 times.
(13) while solutions improved do
(14)  Run 2-OPT 5 times
(15) end while
(16)  end if
(17) end for

The local search procedure should be performed considering the coordination of the searching efficiency and searching effectiveness, so Algorithm 2 is conducted after the QEA searching has been finished. In order to separate the former IQEA, we named the IQEA with local search scheme 3 the IQEA+ (Figure 2).

4. Experiments and Discussions

The experiment is firstly conducted with a simple small case. For large-scale VRPs, parts of the standard benchmark are based on the work of Christofides et al. [42] and part of data sets are obtained from the website: http://branchandcut.org/VRP/data/. All the experiments were carried out in Windows system using Matlab 7.1 and performed on an Intel Pentium Dual-Core at 3.2 GHz and 2 GB RAM computer.

4.1. A Small CVRP Case and Parameters Analysis
4.1.1. A Contrastive Experiment: Small Case of CVRP

To illustrate the algorithm clearly, a small case of CVRP was introduced from Zhang et al. [18] and Chen et al. [43]. The content of the small case is as follows: 8 clients are served by 2 vehicles, the load capacity of which is 8 ton and the depot is node 0, and the optimal value of objective function is 67.5. The distance of every pair of clients and the demand of each client are shown in Table 4. All algorithms were run 10 times, and the max iteration number is 100. For IQEA and IQEA+, the population size was set to 30 and the mutation probability was set to 0.025. From the results in Table 5, we can see that the IQEA+ has better performance than IQEA.

4.1.2. Parameters Tuning Test for IQEA and IQEA+

Before further test of the algorithm on large scale CVRPs, we should first investigate the parameters of the IQEA+ such as population size, rotation angles, and mutation probabilities to find their impacts on the performances (Table 11).

(1)  Population Size Test. Experiments were performed on the above problem in Section 4.1.1 with the population size of 20, 30, and 50, respectively. Each case was run 30 times, the iteration step was set to 500, and the average of steps and the average of running time of IQEA+ that reached the best answer were given in Table 6. We can see that, as the population size increases, the running time cost increases linearly, especially when the population size goes to 30, and both of the running steps and running time reach a stable state.

(2)  The Impacts of Rotation Angles and Mutation Probabilities. Each case was run 30 times, while the population size was set to 30. The average running time in finding the best solutions are listed in Tables 7 and 8 under different rotation angels and mutation probabilities, respectively. Table 7 shows that the IQEA and IQEA+ can find optimal solution faster when the rotation angle equals 0.01 pi and 0.025 pi., while our proposed rotation angle scheme can find the best solutions faster than any other approaches.

Table 8 shows the average computation times under different mutation probabilities. When the mutation probability is smaller than the 0.01, IQEA+ has spent too much computation time and is very hard to find the optimal solutions. We can find that the mutation probability is very important for IQEA+. It is partly because the client vertex in the candidate route is selected out by comparing between different -bits, and it will very easily fall into local minimum points with a small mutation probability. However, if the mutation probability was set too large (see the mutation probability = 0.5), IQEA+ cannot find the optimal solution for the unstable searching which makes the algorithm jump out of the spaces where the best solution may lie.

Still, there is a need to ascertain how to arrange three local search procedures to test their best performance, so we select the A-n32-k5.vrp, the optimal value of which is 784 to test their performance. Each case was run 5 times, and the comparison results were shown in Table 9, where is 2-OPT, is 1-1 exchange and is 1-0 exchange. We can easily find that the C-B-C-A scheme has the best result, so this scheme was used to test the CVRP data sets.

4.2. Large Scale CVRP Benchmarks Tests and Analysis
4.2.1. Parameters Setting Analysis

(1) Experiments of Medium Scale CVRPs. In order to make IQEA+ suitable for solving large scale CVRP benchmarks, we firstly test it by solving some medium scale cases. The same parameters settings as mentioned in Section 4.1 are still adopted. Each case is run 20 times to obtain the average value. The results are shown in Table 10.

Results of Table 10 show that the parameters setting of IQEA+ mentioned in Section 4.1 is relatively reasonable.

(2) Parameter Settings for IQEA+ for Large Scale CVRPs. In fact, related parameters of the most intelligent algorithms are confirmed according to the specific problems. Finding a universal parameter setting for intelligence algorithms is rather difficult. As discussed in Section 4.1, the parameters of IQEA+ are also confirmed by parameters setting test and/or experiences of similar problems.

Related parameters of IQEA+ for solving larger-scale CVRP should be also discussed. To simplify our analysis, we only retest two large scale cases “Bn78k10” and “Pn101k”. Also, these two cases with different number of vehicles can also show some performance information on local searching procedures. Those experiments are tested with ten runs and fixed 500 iterations each without any break intervention. The computation results show us the following.(a)Three important parameters of IQEA+, population size, rotation angle, and mutation probability, can cause great impacts of IQEA+’s performance.(b)The main influences of population size lies in the searching time but not in the quality of the searching results. Different rotation angles and mutation probabilities have great influences of IQEA+ on finding the optimal values, but the searching times in different settings are quite approximative to each other.(c)A large mutation probability seems to have better performance than that with a smaller mutation probability.(d)The longer the length of a single patrolling route, the worse the searching ability of the local search procedure. In “Bn78k10” and “Pn101k” analyses, the average lengths of the patrolling routes of the former case and the latter case are 7.8 and 25.3, respectively. So, the former case has better optimal results.

Finding a universal parameter setting of IQEA+ is rather challengeable and costly under several types of CVRP benchmarks. Therefore, based on results of IQEA+ for solving the medium scale CVRPs and two large scale CVRP cases and the experiences of [19, 22], the similar parameters’ setting of IQEA+ in Section 4.1 is also be applied to solve large scale CVRPs.

4.2.2. Experiments for Large Scale CVRP Benchmarks

Large scale VRP benchmarks are also obtained from the website (http://branchandcut.org/VRP/data/), which were also introduced by Chen et al. [43] and Ai and Kachitvichyanukul [7]. There are sixteen CVRP cases, and the total number of clients is varying from 29 to 134, and the vehicle number is varying from 3 to 10. The settings of the IQEA+ for large scale CVRPs are as follows: the iteration is 500 times and the population size is 30. The setting of the rotation angle and mutation probability are the same as in Section 4.1. The searching performance of IQEA+ is compared with that from Chen’s et al. [43] DPSO algorithm and Ai and Kachitvichyanukul’s [7] SR-2 algorithm; all the comparison results are shown in Table 12.

4.3. Discussions

In order to test the proposed IQEA+, firstly, it has been used to solve a simple CVRP to find different performances of the IQEA and IQEA+; then we test different body parts of IQEA to best play out its advantages. Three local search procedures combination schemes were also examined, and all of them were used to test the CVRP dataset.

Experiments results show that the proposed IQEA+ has potential in solving the CVRP to some extent with relatively high precision and speed; see Table 10 and several cases in Table 12. However, experiments also show some useful findings.(1)IQEA+ outperforms DPSO, SR-1, and SR-2 in searching precision but not in the searching efficiency; see case Pn101k4 in Table 12;(2)Sometimes, IQEA+ does not show many advantages on searching performance; see case Fn135k7 in Table 12.(3)IQEA can search quickly, while the local search procedures take more than a half of the total computing time, especially when problem scale becomes larger.

Three main reasons can explain our findings. (a) There is a weakness of the IQEA+ in the length of quantum chromosome which originated from the encoding mechanism. When the client vertexes and vehicle number increase, especially as the length of quantum chromosome reached to thousand level, algorithm searching efficiency becomes very low. (b) The tightness (demand/capacity) of demand and capacity is another important factor that impacts the searching performance; see case Fn72k4 in Table 12. Different tightness may result in very different results: the more intensive are the tightness and the worse is the results, and the more intensive are the tightness, the greater chances of unfeasible routes are generated out. (c) Local search procedures are used to deal with the point-to-point operation and evaluation, which make it cost too much time.

5. Conclusions and Future Research

Although the CVRP has been presented for tens of years, still much attention has been put on it. Due to its NP nature, a lot of heuristic and metaheuristic algorithms have been proposed to provide better solutions for this problem. This paper proposes a new IQEA with the mixed local search procedure (named IQEA+) to solve the CVRPs: IQEA is the improvements of original QEA in the encoding mechanism for solving the CVRP. Moreover, in order to make full use of the information embedded in quantum chromosome, a double chain quantum chromosome is adopted. Local search procedures are to enhance the IQEA local search ability. The computational results show that the proposed IQEA+ is more effective in solving the CVRP than the DPSO and also has some advantages over other widely used SR-1 and SR-2 when the length of chromosome is within a certain range.

There are some obvious advantages of the proposed IQEA+:(1)less parameters to be set make the proposed IQEA+ very simple and easy to be implemented;(2)unlike the classic genetic algorithm, the updating and mutation operations were replaced by easier quantum rotation gate and the quantum Not gate procedures;(3)the comprehensive improvement of QEA with the double chain, new rotation angle, and rotation direction and self-adaptive Not gate can simplify its searching procedure and improve its efficiency. Moreover, three local search procedures help the IQEA+ jump out of local minimum points and continue its searching toward the right path.

Future work can be focused on finding a new encoding mechanism to further increase the efficiency and keep the diversity of the quantum population. There still are improvement spaces in the IQEA+ framework, such as the significance of the rotation angle is designed as the problem-oriented and the mutation procedure is set as the fitness function adapted. Moreover, the proposed IQEA+ can be used to solve some VRP variants.

Appendices

A. Proof of Theorem 1

Suppose that there are 4 unit circles, , , , and which can conveniently be expressed out and the entire proving process will be illustrated in them. As we all know, the tangent function is increasing in its defined intervals and because all the numbers are should lie in , one has the following.(I)when , a further discussion is given as follows.(1)If , may lie in any quadrants, while may in the first quadrant or the third quadrant. It is obvious that when and are all in the first and the third quadrants, see Figure 6(a) (the solid line), the current angle needs to be added a positive number to catch up the best angle. When is in the other two quadrants, see Figure 6(a) (the dash line), because we only care about the absolute value of the rotation angle, also needs to be added a positive number to catch up the best angle (the absolute value of ).(2)If , still may lie in any quadrants, while may lie in the second quadrant or the fourth quadrant. So when and are both in the second quadrant and the fourth quadrant, see Figure 6(b) (the solid line), the current angle needs to be subtracted a positive number to catch the best angle. When is in the other two quadrants, see Figure 6(b) (the dash line), also needs to be subtracted a positive number to catch up the best angle (the absolute value of ).

So Theorem 1 has been proved.(II)When , the proven processes are very similar to those in Appendix A(I).(i)If , the current angle needs to be subtracted a positive number to catch up the best angle; see Figure 6(c) (the solid line and the dash line).(ii)If , the current angle needs to be added a positive number to catch up the best angle; see Figure 6(d) (the solid line and the dash line).

So Theorem 1 has been proved.

Now, Theorem 1 has been proved.

B. Detailed Operations of Three Local Search Procedures

The detailed local search procedures are shown in Figure 7. In Figure 7, we only try to show the sketches of three local search procedures.

Acknowledgments

This research is partially supported by the National Natural Science Foundation of China (nos. 70801030, 71131004, and 71371080), Humanities and Social Sciences Foundation of the Chinese Ministry of Education (no. 11YJC630275), and the Fundamental Research Funds for the Central Universities (HUST: 2012TS065; HUST: CXY12Q043; and HUST: CXY13Q034).