# Co-operation in the Parallel Memetic Algorithm

- 2.7k Downloads
- 19 Citations

## Abstract

Evolutionary algorithms (EAs) have been attracting research attention for last decades. They were shown to be very efficient in solving various complex optimization problems in most fields of science and engineering. In EAs, the population of solutions evolves in time to explore the search space. Parallel EAs became an important stream of development due to a wide availability of parallel computer architectures. Thus, designing parallel algorithms utilizing hundreds of CPU cores efficiently is critical nowadays. In this paper, we investigate the impact of selecting a co-operation scheme for the parallel memetic algorithm (PMA-VRPTW) to solve the NP-hard vehicle routing problem with time windows. In the island-model PMA-VRPTW, which is a hybrid of a genetic algorithm applied to explore the search space, and some refinement methods to exploit solutions already found, a number of populations are evolved in parallel. Processes then co-operate and exchange solutions according to the co-operation scheme (migration policy, interval, and topology). Extensive experimental study (which comprised more than 1,584,000 CPU hours on an SMP cluster) performed on 1000-customer Gehring and Homberger’s (GH) benchmark tests gave a detailed insight into the PMA-VRPTW performance and search capabilities. We report 19 (32 % of all 1000-customer GH tests) new world’s best solutions obtained using the best co-operation schemes. Finally, we give clear and consistent guidelines on how to select a proper co-operation scheme in PMA-VRPTW based on the test characteristics.

## Keywords

Parallel memetic algorithm Island model Co-operation Migration topology Vehicle routing problem with time windows## 1 Introduction

Route scheduling is one of the most important real-life problems and plays a pivotal role in transportation, supply chain management and logistics. Its practical applications encompass the bus route planning, post, food and beverage delivery, cash delivery to banks and ATM terminals, industrial waste collection, maintenance operations, and many more. While constructing the routing schedule for a given distribution problem, it is necessary to consider a large number of practical issues, e.g., the available fleet size, truck capacities, travel costs between geographically dispersed customers, possible time intervals in which customers should be visited, and numerous other circumstances.

Minimizing the number of trucks and their total distance traveled during the service contributes to reducing the fleet exploitation costs and fuel consumption. Also, it lessens the price of delivered goods, since transportation expenses constitute a significant percentage of their value [26]. Moreover, it can help reduce the environmental pollution and traffic congestion, which is an important concern nowadays [29]. Numerous variants of *vehicle routing problems* (VRPs) emerged in order to reflect real-life scheduling scenarios [20]. In the *multiple traveling salesperson problem* (\(m\)TSP), which is an extension of a standard *traveling salesperson problem*, more than one salesperson is allowed to be exploited in the solution [7]. Here, each customer has assigned a non-negative demand, which should be satisfied by the visiting salesperson. The fleet size (corresponding to the number of salesmen in \(m\)TSP) becomes an important criterion of optimization, apart from the total travel costs. Taking into account the limited capacities of the vehicles led to formulating the *capacitated vehicle routing problem* (CVRP). In CVRP, the fleet is composed of a number of vehicles with well-defined, possibly different load capacities, which cannot be exceeded in a feasible solution. In real-life transportation problems, it is common that customers want to get their orders within a specified time interval. The *vehicle routing problem with time windows* (VRPTW) addresses this issue by incorporating additional constraints concerning delivery time [33].

State-of-the-art techniques to solve the VRPTW are divided into exact and approximate methods. Since the VRPTW is NP-hard, the former approaches can be applied only for relatively small problem instances. Hence, various heuristic algorithms (both sequential and parallel), that do not guarantee obtaining the optimal solution, have been introduced over the years for solving the VRPTW in a reasonable time. They include, among others, simulated annealing [69], tabu search algorithms [28], ant colony systems [26], swarm optimization algorithms [30], evolutionary approaches [57], and many more. Recently, a number of efficient genetic and memetic algorithms—both sequential and parallel—have been proposed for the VRPTW [25, 46, 50, 66].

Memetic algorithms (MAs), which are built upon a population-based approach, and balance exploration with exploitation of the search space, have attracted research attention, and have been applied for solving the VRPTW recently [46, 50, 66]. They were shown to be very efficient in solving large-scale VRPTW instances. In order to speed up the computations, and to explore larger regions of the search space, we had proposed and recently improved an island-model parallel memetic algorithm for the VRPTW [8, 12, 47, 48, 49]. Although we demonstrated its efficacy, its main drawback lies in selecting a proper co-operation scheme of parallel processes (i.e., migration topology, interval, the immigration/emigration policy, and the number of emigrants). In this paper, we carefully investigate the proposed co-operation schemes to determine their impact on the parallel MA performance. Our intensive experimental study conducted on the standard benchmark Gehring and Homberger’s (GH) set (with 1000 customers) gave detailed insights into the schemes’ performance and behavior. We report 19 new world’s best solutions to the GH tests obtained with the use of best co-operation schemes in our parallel MA.

### 1.1 Contribution

Although parallel EAs (PEAs) proved to be very efficient in solving a variety of optimization problems in many fields, establishing a proper co-operation scheme of parallel processes which ensure good convergence of the algorithm is not a trivial task. Improperly determined migration topology and interval can easily jeopardize the algorithm performance and computation time. In this paper, we propose to apply co-operation schemes which can help improve both exploration and exploitation capabilities of our parallel memetic algorithm (PMA-VRPTW) to solve the largest-scale VRPTW benchmark problem tests (with 1000 customers to serve). We expand our previous research [47], in which we determined three most promising migration topologies for PMA-VRPTW (based on results obtained for 400-customer tests). Here, we apply these schemes in PMA-VRPTW, and perform the in-depth analysis to find out how they influence the algorithm behavior. Also, we incorporate various migration intervals, and investigate their impact on the PMA-VRPTW convergence. We report new world’s best solutions for 19 (out of 60) 1000-customer Gehring and Homberger’s tests obtained in our extensive experimental study. Finally, we give clear guidelines on how to select the best co-operation scheme in PMA-VRPTW based on the test characteristics.

### 1.2 Paper Outline

The outline of this paper is as follows. The problem is formally defined in Sect. 2. Section 3 reviews the state-of-the-art algorithms for the VRPTW, and shows current advances in PEAs. Section 4 discusses in detail PMA-VRPTW, along with the co-operation schemes. The results of an extensive experimental study performed on the standard Gehring and Homberger’s benchmark set are reported and analyzed in Sect. 5. Finally, Sect. 6 concludes the paper, summarizes the findings, and highlights directions of our future work.

## 2 Problem Formulation

The VRPTW is a problem of serving \(M\) customers by \(K\) vehicles of a constant capacity \(Q\). There is a single depot (\(v_{0}\)), which is the start and the finish point of each route. The customers \(v_{i}\), \(i \in \{1,2,\ldots ,M\}\), have assigned their own service times \(s_{i}\), \(i \in \{1,2,\ldots ,M\}\). Serving the depot does not take any time (\(s_0=0\)), whereas the customer service times are non-negative. A non-negative demand \(d_{i}\), \(i \in \{1,2,\ldots ,M\}\), is given for each customer. A geographic dispersion of customers is known, and the travel costs between each pair of travel points are given as \(c_{(i,j)}\), where \(i \ne j\), and \(i,j \in \{0,1,\ldots ,M\}\). Additionally, each customer and the depot specifies its earliest and latest time of starting the service (i.e., *time window*), \(e_{i}\) and \(l_{i}\) respectively (\(i \in \{0,1,\ldots ,M\}\)).

Formally, the VRPTW is defined on a directed graph \(G=(V,E)\) with a set \(V\) of \(M+1\) vertices representing the customers and the depot, along with edges \(E=\{\langle v_{i},v_{(i+1)}\rangle |v_{i},v_{(i+1)}\in V, v_{i} \ne v_{(i+1)}\}\), representing the travel connections. The \(i\)th route is defined as an ordered list of \(m_i\) customers served by a single vehicle: \(r_i=\langle v_{0},v_{(r_i(1))},\ldots ,v_{(m_i+1)}\rangle \), where \(v_{0} = v_{(m_i+1)}\) is the depot, and \(v_{(r_i(j))}\) is the \(j\)th customer visited within \(r_i\).

### 2.1 Objectives and Constraints

Every customer is visited exactly once, and each route starts and finishes at \(v_0\). The capacity and the time window constraints must hold for each route. The total amount of goods delivered to customers cannot therefore exceed \(Q\), and the service of each customer must start before its time window closes. If a vehicle visits \(v_{(i+1)}\) within its time window (\(e_{(i+1)}\le a_{(i+1)}\le l_{(i+1)}\), where \(a_{(i+1)}\) is the arrival time at \(v_{(i+1)}\)), then the service is immediate. The vehicle may arrive at \(v_{(i+1)}\) before \(e_{(i+1)}\), but the service cannot initiate before the time window opens (there is the waiting time \(w_{(i+1)}\)). If a vehicle visits \(v_{(i+1)}\) after closing its time window (\(a_{(i+1)}>l_{(i+1)}\)), then the service is not feasible.

Let \(\sigma _A\) and \(\sigma _B\) be two VRPTW solutions. Then, \(\sigma _A\) is of a higher quality than \(\sigma _B\), if (\(K(\sigma _A) < K(\sigma _B)\)), or (\(K(\sigma _A) = K(\sigma _B)\) and \(T(\sigma _A) < T(\sigma _B)\)).

### 2.2 Example

## 3 Related Literature

### 3.1 Vehicle Routing Problem with Time Windows

Due to its wide practical applicability, the VRPTW attracted research attention over the years. Although the optimal solutions can be obtained using exact algorithms, their computation time is not acceptable for large-scale problem instances. Thus, a plethora of heuristic algorithms have been proposed, which find high-quality (but not necessarily optimal) solutions in a reasonable time.

Exact algorithms for the VRPTW inherit from works devoted to solving the TSP [33]. In a majority of them, minimizing the travel distance is considered as the single objective. Desrochers et al. proposed to formulate the VRPTW as a set partitioning problem [21], where all feasible routes are considered implicitly. Since the number of possible routes rapidly grows for an increasing number of customers, only a subset of all routes is included in the model. Then, a relaxed shortest path problem is solved to verify if there are feasible routes which decrease the total travel distance. A branch-and-cut procedure for minimizing the number of vehicles was presented in [6]. Irnich and Villeneuve adopted the elementary shortest path problem with resource constraints for the VRPTW [31]. Various VRPTW formulations, including the path, arc, arc-node, and spanning tree formulations, have been studied by several authors [3, 15, 23, 36, 37, 58]. Exact methods were summarized in a bunch of thorough surveys and reviews [4, 19, 22, 33].

Although exact algorithms for solving the VRPTW are still being developed, they are not applicable for large-scale problem instances. Also, they are strongly dependent on the time window characteristics of a specific test case [66]. In contrary to exact methods, in heuristic techniques two VRPTW objectives are usually considered independently. Two-stage techniques (both sequential and parallel), in which \(K\) is minimized at first, and then \(T\) is optimized, are of a high research interest. They enable designing effective algorithms for both optimization stages independently.

Heuristic methods can be grouped into construction and improvement techniques. In the former case, unserved customers are iteratively inserted into a partial solution [53, 54, 55, 62, 64]. Alternatively, improvement heuristics modify an initial solution to explore new regions of the solution space, e.g., by applying some local search procedures [13, 45]. Meta-heuristic algorithms, which often embed methods for exploring the search space coupled with local search improvement techniques used for its exploitation, allow for existing infeasible solutions and deteriorating their quality temporarily. These approaches include simulated annealing [16], tabu searches [28], ant colony optimization [18], swarm optimization algorithms [30], and many other techniques [5, 13].

EAs have been extensively explored for the VRPTW [57]. In genetic algorithms (GAs), solutions (chromosomes) are successively optimized in the biologically-inspired manner. Chromosomes are selected, crossed-over, and mutated. Memetic algorithms (MAs)—also known as hybrid genetic algorithms—are built upon a similar approach. They combine EAs for the search space exploration, along with refinement procedures applied to exploit solutions already found [46, 50]. Vidal et al. recently proposed an efficient hybrid genetic algorithm which evolves both feasible and infeasible solutions [66]. It is worth mentioning that MAs have been applied to a wide spectrum of other optimization and pattern recognition problems [27, 32, 38, 39, 41, 51].

### 3.2 Parallel Evolutionary Algorithms

Parallel evolutionary algorithms (PEAs) became a vital research topic thanks to their applicability and availability of various parallel architectures and services, ranging from multicore personal computers, massively parallel graphics processing units, to clusters and computation clouds. The early days of parallel EAs have been summarized in thorough surveys and reviews [2, 14]. The implementation issues of PEAs along with their computation models were discussed in an excellent survey by Alba and Tomassini [1].

There exist a number of parallel computation models defining how distributed algorithm components co-operate during the PEA execution [63]. In the simplest PEAs, parallel algorithm components run independently without any communication. Finally, the results obtained during the execution are collected to determine the highest-quality solution. This model can be considered as a *batch* model, in which sequential executions of an EA are batched and executed on a parallel machine to speed up the computation. In *master-slave* models, a single machine in the system is promoted to act as the master, which distributes the workload to other working machines.

Communication of parallel processes is crucial to guide the search during the PEA execution. Since some processes may have already reached the promising regions of the search space, it is beneficial to distribute this knowledge among other processes which could have stuck in local minima. In the most popular parallel models—*island models* (also referred to as *distributed EAs*)—each process (an *island*) optimizes its population independently from other islands. If the islands run the same EA, then the system is homogeneous (it is heterogeneous otherwise). The solutions already found in the system are periodically exchanged between the islands. This co-operation is defined by the *migration topology* and *interval* (what is the communication path and when the co-operation is performed), *immigration/emigration policy* (what happens with the obtained/sent solutions), and the number of solutions (migrants) sent between each two islands. The choice of each design setting from the above-mentioned ones is not trivial and significantly affects the PEA performance and behavior. There exist variants of an island model, in which every island contains a single individual in the population, and the mating of an individual is limited to its neighbors. These models, exposing a fine-grain parallelism, are referred to as *cellular EAs*. In co-operative co-evolutionary GAs, optimization problems are divided into subproblems which are independently solved by different parallel populations evolved in (possibly different) EAs. The parallel components communicate later to build a complete solution from concurrently obtained solutions of the subproblems. An excellent review of parallel models and their advantages and disadvantages has been published recently [63].

Similarly to their sequential counterparts, PEAs have been continuously being employed to a plethora of (single- and multi-objective) optimization problems. These applications include, but are not limited to, various scheduling [42, 67], routing [68], and assignment problems [40, 61], tomography reconstruction [17], classification problems [60], and many others [52, 59, 65]. Recently, we had proposed and then improved the parallel memetic algorithm for solving the VRPTW [9, 10, 11, 12, 47, 48, 49, 50]

## 4 Parallel Memetic Algorithm

### 4.1 Algorithm Outline

In PMA-VRPTW (Algorithm 1), each individual \(p_i\), \(i\in \{1,2,\ldots ,N\}\), corresponds to a solution \(\sigma _i\) with \(K\) routes (\(K(p_i)=K(\sigma _i)=K\), and \(T(p_i)=T(\sigma _i)\))^{1} in a population of size \(N\) (on an island). The initial population is generated using a parallel guided ejection search (P-GES). Its sequential counterpart was proposed in [45], and later improved and parallelized in our recent works [49]. P-GES minimizes \(K\) at first, and then is used to create initial populations (lines 1–2). They are evolved in PMA-VRPTW to optimize \(T\) (lines 3–28).

### 4.2 Initial Population

In P-GES (an island-model heuristics), each customer is served within a separate route at first (\(K=M\)). P-GES repeatedly attempts to decrease \(K\) by one at a time. The customers from a random route \(r\) are inserted into the *ejection pool* (EP) (a set of unserved customers). The attempts of re-inserting them into the solution are undertaken. If there are no feasible insertions for a customer popped from the EP, then the other ones are removed from \(\sigma \) and put into the EP. The \(n\) islands co-operate to exchange their best solutions.

P-GES executes until \(K=\left\lceil D/Q\right\rceil \) (see Sect. 2), or its computation time exceeds the limit \(\tau _K\). Then, it is executed until \(N\) solutions with \(K\) routes are found for each (out of \(n\)) island, or its execution time surpasses \(\tau _N\). Finally, the maximum computation time of minimizing \(K\) and generating the initial population is \(\tau _I=\tau _K+\tau _N\). It is easy to note that PMA-VRPTW is *not* dependent on P-GES, and it can be thus conveniently replaced by another, perhaps more efficient heuristics (either sequential or parallel) to minimize \(K\).

### 4.3 Selection

### 4.4 Crossover

For each pair \((p_a, p_b)\), \(N_c\) children \(p_c\) are generated using the edge assembly crossover operator (EAX) (Algorithm 1, lines 10–15), firstly introduced for the TSP [43], and later adapted to both the CVRP [44], and the VRPTW [46]. It takes \(\mathcal{T}_\mathrm{EAX}(M)=O(M^2)\) time, where \(M\) is a number of customers [8].

- 1.
A new set ((\(E_a \cup E_b) \setminus (E_a \cap E_b\))), where \(E_a\) and \(E_b\) are the sets of edges in \(G_a\) and \(G_b\) (Fig. 3a, b), is found and forms the graph \(G_{ab}\) (Fig. 3c).

- 2.
All \(G_{ab}\) edges are divided into AB-cycles (Fig. 3d–f), which consist of the \(G_{ab}\) edges traced alternately—the \(E_a\) edges are traced in the forward direction, whereas the others are traced reversely.

- 3.
The E-set (\(E_S\))—a random AB-cycle (

*single mode*, with the probability \(\mathcal {P}_s=0.5\)), or a combination of AB-cycles sharing at least one node (*block mode*, \(\mathcal {P}_b=1-\mathcal {P}_s\))—is found. We took the \(2^{nd}\) AB-cycle (Fig. 3d) as \(E_S\). - 4.
The intermediate solution is constructed from \(p_a\) by removing \(E_a\cap E_S\), and adding \(E_b\cap E_S\). Then, there are \(K\) routes, and possibly some infeasible subroutes, i.e., routes without the depot (Fig. 3g).

- 5.
If the subroutes exist, then a random one to delete is chosen, and its customers are merged with other routes using 2-opt* moves (see Sect. 4.5). This process continues until all subroutes are removed (Fig. 3h).

### 4.5 Repair, Education, and Mutation

Local search moves applied in PMA-VRPTW

Move | Removed edges | Added edges |
---|---|---|

2-opt* | \(\langle v_{i},v_{(i+1)}\rangle \), \(\langle v_{j},v_{(j+1)}\rangle \) | \(\langle v_{i},v_{(j+1)}\rangle \), \(\langle v_{j},v_{(i+1)}\rangle \) |

Out-exchange | \(\langle v_{(i-1)},v_{i}\rangle \), \(\langle v_{i},v_{(i+1)}\rangle \), | \(\langle v_{(i-1)},v_{j}\rangle \), \(\langle v_{j},v_{(i+1)}\rangle \), |

\(\langle v_{(j-1)},v_{j}\rangle \), \(\langle v_{j},v_{(j+1)}\rangle \) | \(\langle v_{(j-1)},v_{i}\rangle \), \(\langle v_{i},v_{(j+1)}\rangle \) | |

Out-relocate | \(\langle v_{(i-1)},v_{i}\rangle \), \(\langle v_{i},v_{(i+1)}\rangle \), | \(\langle v_{(j-1)},v_{i}\rangle \), \(\langle v_{i},v_{j}\rangle \), |

\(\langle v_{(j-1)},v_{j}\rangle \) | \(\langle v_{(i-1)},v_{(i+1)}\rangle \) | |

In-exchange | \(\langle v_{(i-2)},v_{(i-1)}\rangle \), \(\langle v_{(i-1)},v_{i}\rangle \), | \(\langle v_{(i-2)},v_{(i+1)}\rangle \), \(\langle v_{(i+1)},v_{i}\rangle \), |

\(\langle v_{i},v_{{(i+1)}}\rangle \), \(\langle v_{(i+1)},v_{{(i+2)}}\rangle \) | \(\langle v_{i},v_{(i-1)}\rangle \), \(\langle v_{(i-1)},v_{(i+2)}\rangle \) | |

In-relocate | \(\langle v_{(i-1)},v_{i}\rangle \), \(\langle v_{i},v_{(i+1)}\rangle \), | \(\langle v_{(i-1)},v_{(i+1)}\rangle \), \(\langle v_{(i+1)},v_{i}\rangle \), |

\(\langle v_{(i+1)},v_{{(i+2)}}\rangle \) | \(\langle v_{i},v_{(i+2)}\rangle \) | |

GENIUS-exchange | \(\langle v_{(i-1)},v_{i}\rangle \), \(\langle v_{i},v_{(i+1)}\rangle \), | \(\langle v_{(i-1)},v_{(i+1)}\rangle \), \(\langle v_{(j-2)},v_{i}\rangle \), |

\(\langle v_{(j-2)},v_{{(j-1)}}\rangle \), \(\langle v_{j},v_{{(j+1)}}\rangle \), | \(\langle v_{i},v_{(j+1)}\rangle \), \(\langle v_{(j+1)},v_{(j-1)}\rangle \), | |

\(\langle v_{(j+1)},v_{{(j+2)}}\rangle \) | \(\langle v_{j},v_{(j+2)}\rangle \) |

Let \(\mathcal {N}(\sigma )\) be the neighborhood of \(\sigma \) obtained by applying the mentioned moves. Since it encompasses a huge number of solutions, we limit its size by considering \(N_{v_i}\) nearest customers for \(v_i\) in each move. Calculating the load change after a move is obvious (\(O(1)\) time), whereas to evaluate the time window penalty we use the approach proposed in [46] (\(O(1)\) for 2-opt*, out-exchange, and out-relocate, \(O(m)\) for other moves, where \(m\) is the route size).

If \(\sigma _c\) is infeasible, then it needs to be repaired (double-lined box in Fig. 2), by performing local search moves to decrease the penalty \(\xi (\sigma )=\beta _1 P_c(\sigma ) + \beta _2 P_{tw}(\sigma )\), where \(P_c(\sigma )\) and \(P_{tw}(\sigma )\) represent the capacity and time window violations, multiplied by some coefficients \(\beta _1\) and \(\beta _2\). We set \(\beta _1=\beta _2=1.0\), and \(N_{v_i}=50\) as suggested in [46]. An infeasible route \(r\) is selected randomly from \(\sigma _c\) at first. Then, the set \(\bigcup _{v \in r} \mathcal {N}(\sigma _c,v)\) of subneighborhoods created for each customer that violates the constraints within \(r\), is determined. Finally, a new solution \(\sigma _c'\), \(\sigma _c'\in \bigcup _{v \in r} \mathcal {N}(\sigma _c,v)\), which minimizes \(\xi (\sigma )\), replaces \(\sigma _c\). This process executes until \(\sigma _c\) is feasible, or there are no further repair moves.

If \(p_c\) is feasible, then it is educated by feasible moves decreasing \(T(p_c)\). If there are no more improvement moves, the process stops. \(p_c\) is then mutated by at most \(I_M\) feasible moves (in this work we set \(I_M=300\)). The best feasible child \(p_c^B\) for this pair of parents is updated if it is necessary (Algorithm 1, line 13). Finally, \(p_c^B\) replaces \(p_a\) in the next generation if \(T(p_c^B)<T(p_a)\) (line 17).

The crossover, repair and education procedures—being the most time-consuming parts of the MA run by each island in PMA-VRPTW—require \(O(M^2)\) time. Performing these operations for \(N\) pairs of parents to generate \(N_c\) children takes \(\mathcal {T}_\mathrm{G}=c_o N M^2\) for a constant \(c_o\). The maximum number of generations is bounded by another constant \(c_g\), \(c_o<c_g\), due to the execution time limit. Hence, the time complexity of the MA run by each island is \(O(M^2)\).

It is worth to mention that we do not incorporate any diversity management procedures into the MA run by each island (e.g., regenerating the population if it encounters the *diversity crisis*). We avoid introducing new genetic material during the PMA-VRPTW execution in order to better verify how it copes with the local minima faced during the optimization (especially while applying various co-operation schemes discussed in Sect. 4.6).

### 4.6 Co-operation

The \(n\) islands in PMA-VRPTW co-operate periodically (according to the migration interval \(\delta \), Algorithm 1, line 18) to guide the search towards solutions of a better quality. This process is highlighted by a curly brace in Algorithm 1 (lines 19–22). First, the emigrants (i.e., solutions to be sent from the island) are determined (line 19). The emigrants are then transferred to the neighboring island (according to the migration topology) (line 20). This operation may be done either synchronously or asynchronously. In the former case, the sending island waits until the send operation is finished. In this paper, we send the emigrants asynchronously, i.e., the algorithm execution at the sending island proceeds while the communication progresses. Additionally, the selected emigrants are transferred only if they have been updated since the previous co-operation (to avoid unnecessary data transfer).

After acquiring (one or more) immigrants, they are handled by the receiving island according to the policy defined by the co-operation scheme (line 22). They may (i) be appended to the population, (ii) replace some individuals at the receiving island, or (iii) be crossed-over with other individuals.

- 1.
**Independent runs**. Each island runs the MA independently without any co-operation. Finally, solutions are compared and the best one is chosen. - 2.
**Pool**. Each island sends to the nominated master island the best \(p^B\) in its population, and it is inserted into the pool. The master determines \(\eta N\), \(0<\eta <1\), best solutions, which replace \(\eta N\) random ones in each island. - 3.
**Pool with EAX (P-EAX)**. The regular pool is enhanced by the EAX operator employed while handling \(\eta N\) immigrants by each island. The solution \(p_a\)—that is being replaced—is crossed-over with the immigrant \(p^I\), if \(p_a \ne p^I\), to generate \(p^I_c\). If \(p^I_c\) is feasible, then it replaces \(p_a\). - 4.
**Ring**. The migration topology constitutes a ring. - 5.
**Randomized EAX (R-EAX)**. The regular ring is enhanced by the EAX operator. Also, the migration topology (order of islands in the ring) is randomized, and determined by the master before each co-operation. - 6.
**Knowledge synchronization (KS)**. The nominated master island synchronizes the knowledge acquired by all islands during the search (i.e., distributes the best solutions among the islands).

Summary of the investigated co-operation schemes

Characteristic \(\downarrow \) | Ring | R-EAX | KS |
---|---|---|---|

Migration topology | Figure 4a | Figure 4b | Figure 4c |

Number of emigrants | 1 (\(p^B\)) | 1 (\(p^B\)) | 1 (\(p^B\)) |

Number of immigrants | 1 | 1 | \(N_b\), \(N>N_b\ge 1\) |

Immigration policy | Replace \(p^B\), if \(T(p^B)>T(p^I)\) | Replace \(p^B\), if \(T(p^B)>T(p^I)\), otherwise \(p_c^I\leftarrow \mathcal {X}(p^B,p^I)\), and \(p_c^I\) replaces \(p^B\), if \(T(p^B)>T(p_c^I)\) | Replace \(N_b\) worst individuals |

Emigration policy | Keep emigrants in the sending island’s population | ||

Migration interval (\(\delta \)) | \(\delta =2\) | ||

Time complexity \((\mathcal {T}_\mathrm{C})^\mathrm{a}\) | \(nM\) | \(nM^2\) | \(2nM + n\log n\) |

It is easy to see that the time complexity of PMA-VRPTW includes the time complexity of the applied co-operation scheme (see \(\mathcal {T}_\mathrm{C}\) in Table 2), and is given as \(\mathcal {T}_\mathrm{PMA}(n, M)=c_p (c_o N M^2 + c_c \mathcal {T}_\mathrm{C})\), where \(c_p\) and \(c_c\) are some constants. Since we impose the time limit on PMA-VRPTW (\(\tau _P\)), \(c_p\) is bounded by another constant (see the analysis in Sect. 4.5). Thus—in the worst case—the time complexity of PMA-VRPTW is \(O(M^2+nM^2)\) (for a constant population size \(N\)), if the R-EAX co-operation scheme is applied (see Table 2).

## 5 Experimental Results

### 5.1 Setup

The PMA was implemented in C++ using the Message Passing Interface (MPI) library. The source code was compiled using Intel 10.1 compiler and MVAPICH1 v0.9.9 MPI library. The performance experiments were conducted on Galera supercomputer (http://task.gda.pl/hpc-en/), whose total theoretical peak performance has been estimated to 50 TFLOPS. It is equipped with 1344 Intel Xeon Quad Core 2.33 GHz processors (5376 cores), each with 12 MB level 3 cache. The nodes were connected by the Mellanox InfiniBand DDR fat-free interconnect (throughput 20 Gbps, delay 5 \(\mu \)s). This supercomputer was executing Linux operating system.

PMA-VRPTW was executed on 96 processors^{2} (\(n=96\)), and its maximum execution time limits were as follows: \(\tau _K=10\) min., \(\tau _N=60\) min. (thus, \(\tau _I=\tau _K+\tau _N=70\) min.), and \(\tau _P=660\) min. (see Sect. 4 for more details). The population size and the number of children generated for each pair of parents in the MA (run by each island) were not changed (i.e., *controlled*) during the PMA-VRPTW execution, and were experimentally tuned to the following values: \(N=100\), and \(N_c=20\). For each GH instance, the algorithm was run \(5\) times for each co-operation scheme (and each migration interval). It gives at least^{3} (\(96\) processors\()\times (660\) min.\()\times (5\) runs\()\times (50\) GH tests\()\times (3\) co-operation schemes\()\times (2\) migration intervals\()= \) 1,584,000 CPU hours of the entire experimental study.

### 5.2 Dataset

Overview of Gehring and Homberger’s test characteristics

Characteristic \(\downarrow \) | C1 | C2 | R1 | R2 | RC1 | RC2 |
---|---|---|---|---|---|---|

Structure | Clustered | Clustered | Random | Random | Mixed | Mixed |

Time windows | Tight | Wide | Tight | Wide | Tight | Wide |

Vehicle capacities | Small | Large | Small | Large | Small | Large |

There are problems with various \(M\)’s, \(M\in \{200,400,600,800,1000\}\). Each Gehring and Homberger’s (GH) subclass contains 10 problems (60 instances in total for each \(M\)). Tests are distinguished by their unique names: \(\alpha \_\beta \_\gamma \), where \(\alpha \) denotes the subclass, \(\beta \) relates to \(M\) (2 for 200, 4 for 400, and so forth), and \(\gamma \) is the test identifier (\(\gamma \in \{1,2,\ldots ,10\}\)). In this study, we focus on the most demanding 1000-customer GH tests. The world’s best (currently known) results for GH tests are summarized at the SINTEF website.^{4} Note that the world’s best results is a set of solutions obtained using *various* algorithms (both sequential and parallel)—see the SINTEF website for details.

### 5.3 Analysis and Discussion

The first stage of PMA-VRPTW consists in minimizing the number of vehicles (\(K\)). We utilized the parallel guided ejection search (P-GES) to optimize \(K\) at first (within the time \(\tau _K\)), and then to generate an initial population of \(N\) solutions for each island (within \(\tau _N\). For details see Sect. 4). If \(\tau _N\) appears not enough to generate \(N\) solutions for an island, then the remaining solutions are obtained by mutating the already-found individuals (i.e., by applying \(200\) local search moves) (see Sect. 4.5).

It is worth noting, that solutions with lower \(K\) are usually characterized by a larger travel distance \(T\) (if \(K_{\alpha }<K_{\beta }\) then \(T_{\alpha }>T_{\beta }\) in most cases). Since we focus on the travel distance minimization in PMA-VRPTW, we omit \(10\) GH instances^{5} in the analysis, for which P-GES did not manage to find solutions with \(K=K_\mathrm{WB}\), where \(K_\mathrm{WB}\) is the world’s minimum number of routes, in order to provide a fair comparison. For each of the mentioned tests P-GES ended up with solutions containing \(K=K_\mathrm{WB}+1\) routes (for other tests \(K=K_\mathrm{WB}\)). Despite its significant time complexity [8], P-GES runs very fast in practice—the average times of generating a single individual in a population were (given in seconds): \(\tau _K^A=28.73\) (C1 class), \(\tau _K^A=91.74\) (C2), \(\tau _K^A=6.69\) (R1), \(\tau _K^A=17.53\) (R2), \(\tau _K^A=6.40\) (RC1), and \(\tau _K^A=181.80\) (RC2). These times are neglectable compared to the execution time of PMA-VRPTW. As already mentioned, PMA-VRPTW is independent from P-GES, and it can be easily replaced by a more efficient route minimization algorithm.

The best results (out of 5 runs) obtained using PMA-VRPTW with various co-operation schemes (\(\delta =2\))

Id \(\downarrow \) | C1 | C2 | R1 | R2 | RC1 | RC2 |
---|---|---|---|---|---|---|

| ||||||

1 | | | 53,687.82 | | 46,725.88 | – |

2 | 42,387.85 | | | 33,634.05 | 44,494.17 | – |

3 | 40,446.33 | – | 45,793.13 | | | |

4 | 39,659.12 | | 43,320.69 | | | 15,869.82 |

5 | | | | | 45,981.43 | – |

6 | – | – | 48,411.62 | 30,123.53* | 45,892.32 | 26,910.35* |

7 | – | – | 45,050.20 | | | |

8 | – | – | | 17,585.79* | | 23,845.66 |

9 | 41,031.46 | 16,421.32* | 51,042.39 | 33,064.26 | 44,841.57 | 23,112.13* |

10 | 42,478.95 | | | | | 22,048.98 |

Avg. | 41,251.06 | | | | 44,656.86 | 22,421.97 |

| ||||||

1 | | | 53,772.62 | 42,261.34 | | – |

2 | | | 49,832.97 | 33,570.65 | 44,781.82 | – |

3 | | – | 46,237.88 | 25,029.43* | 42,830.96 | 20,132.61 |

4 | 39,589.01 | 15,805.27 | 43,659.12 | 19,180.23 | 42,043.04 | 15,992.44 |

5 | | 16,563.10 | 52,713.43 | 36,289.00* | | – |

6 | – | – | 48,664.85 | 30,270.10 | | 27,097.58 |

7 | – | – | 45,393.80 | 23,730.70 | 45,382.16 | 25,380.63 |

8 | – | – | 43,632.43 | 18,018.54 | 44,780.84 | 24,013.56 |

9 | | 16,421.14* | 51,364.94 | 33,146.76 | 44,757.77 | 23,292.42 |

10 | | 16,022.40 | 49,411.66 | 30,428.55* | 44,273.97 | 22,225.09 |

Avg. | | 16,469.59 | 48,468.37 | 29,192.53 | 44,720.36 | 22,590.62 |

| ||||||

1 | | | | 42,196.47* | 46,694.35 | – |

2 | 42,339.90 | | 49,877.76 | | | – |

3 | 40,343.51 | – | | 24,989.17* | 42,774.24 | 20,068.74 |

4 | | 15,829.51 | | 18,262.09 | 41,873.12 | |

5 | | | 52,328.30 | 36,250.95* | 45,962.10 | – |

6 | – | – | | | 45,622.36 | |

7 | – | – | | 23,270.90* | 45,358.51 | 25,162.18* |

8 | – | – | 43,101.84 | | 44,684.21 | |

9 | 40,898.81 | | | | | |

10 | 40,357.13 | 15,988.14 | 49,004.42 | 30,270.36* | 44,287.86 | |

Avg. | 41,205.07 | 16,459.53 | 48,123.48 | 28,944.58 | | |

The best results (out of 5 runs) obtained using PMA-VRPTW with various co-operation schemes (\(\delta =20\))

Id \(\downarrow \) | C1 | C2 | R1 | R2 | RC1 | RC2 |
---|---|---|---|---|---|---|

| ||||||

1 | | | | | | – |

2 | 42,291.63* | | | 33,554.71* | 44,441.19 | – |

3 | 40,325.00 | – | 45,822.97 | 24,954.81* | | 20,084.70 |

4 | 39,638.56 | 15,755.22 | | 17,997.69* | 41,951.81 | 15,770.18 |

5 | | | 52,230.01 | 36,251.43* | | – |

6 | – | – | | 30,099.45* | | 26,864.81* |

7 | – | – | 45,099.17 | | 45,164.73 | |

8 | – | – | | | 44,679.94 | |

9 | 40,709.26 | | | 33,019.95* | | 23,063.76* |

10 | 40,296.60 | | | 30,242.35* | | |

Avg. | 41,172.74 | | | 28,914.98 | | |

| ||||||

1 | | | 53,846.08 | 42,259.70 | 46,833.99 | – |

2 | | | 50,190.39 | 33,912.29 | 44,772.67 | – |

3 | 40,340.90 | – | 46,280.64 | 25,106.05 | 42,877.25 | 20,229.46 |

4 | | 15,908.75 | 44,507.48 | 19,421.25 | 42,400.06 | 17,124.27 |

5 | | 16,563.10 | 52,659.74 | 36,352.12 | 45,927.56 | – |

6 | – | – | 48,919.69 | 30,309.43 | 45,827.36 | 27,086.98 |

7 | – | – | 45,808.16 | 23,636.36 | 45,418.16 | 25,471.85 |

8 | – | – | 43,528.46 | 17,859.14 | 44,879.47 | 24,063.00 |

9 | | 16,481.81 | 51,494.07 | 33,116.32* | 44,878.70 | 23,297.83 |

10 | | 16,116.81 | 49,742.52 | 30,499.52* | 44,247.53 | 22,347.35 |

Avg. | | 16,512.68 | 48,697.72 | 29,247.22 | 44,806.28 | 22,802.96 |

| ||||||

1 | | | 53,615.67* | | 46,496.78 | – |

2 | 42,338.01 | | 49,671.22 | | | – |

3 | | – | | | 42,790.99 | |

4 | 39,710.03 | | 43,291.04 | | | |

5 | | | | | 45,910.92 | – |

6 | – | – | 48,335.40 | | 45,722.35 | |

7 | – | – | | 23,355.92* | | 25,128.19* |

8 | – | – | 43,156.24 | 17,524.42* | | 23,796.20 |

9 | 40,910.39 | 16,372.32 | 50,768.29 | | 44,643.41 | |

10 | 40,283.92 | 15,993.24 | 48,946.49 | | 44,235.87 | 21,999.00* |

Avg. | 41,214.48 | 16,446.54 | 48,080.30 | | 44,570.85 | 22,373.39 |

^{6}are rendered in boldface, and those better than the world’s best ones are annotated with \(\star \)). The results show that Ring and KS provide the most stable results, and are able to guide PMA-VRPTW to asymptotically similar solutions (R-EAX reached very high-quality C1 solutions only). For frequent co-operation (\(\delta =2\)), KS turned out to be the best scheme on average, and managed to compensate the co-operation overhead by synchronizing the already-gained knowledge across the islands (this scheme is very exploitative). On the other hand, Ring is shown to be an explorative scheme, which is able to converge to the best results with relatively large migration interval (i.e., rare co-operation) by exploring a large part of the search space (\(\delta =20\)). A noteworthy observation is that PMA-VRPTW is able to improve the world’s best results of wide-time-window tests (R2 and RC2) with a very large probability (70 % of R2, and 43 % of RC2 average results have \(T<T_\mathrm{WB}\), in the case of both Ring and KS).

The average results (out of 5 runs) obtained using PMA-VRPTW with various co-operation schemes (\(\delta =2\))

Id \(\downarrow \) | C1 | C2 | R1 | R2 | RC1 | RC2 |
---|---|---|---|---|---|---|

| ||||||

1 | | | 53,735.17 | | 46,954.02 | – |

2 | | | | 33,670.45 | 44,744.58 | – |

3 | 40,528.58 | – | 45,941.36 | 25,079.85 | | |

4 | 39,759.69 | 16,089.40 | 43,367.80 | | | 15,930.61 |

5 | | 16,562.49 | | 36,272.59* | 46,029.71 | – |

6 | – | – | 48,669.45 | 30,222.22* | 46,076.97 | 26,912.34* |

7 | – | – | 45,204.57 | 23,424.77 | | |

8 | – | – | | 17,628.96* | 44,894.12 | |

9 | 41,266.71 | 16,450.34 | 51,280.59 | 33,093.84* | 44,897.74 | |

10 | 40,438.51 | 16,023.14 | | | 44,449.37 | 22,120.70 |

Avg. | 41,332.78 | 16,521.83 | | | 44,836.61 | |

| ||||||

1 | | | 53,807.59 | 42,291.11 | 46,961.67 | – |

2 | 42,406.28 | 17,142.98 | 50,178.31 | 33,640.11 | 44,902.27 | – |

3 | | – | 46,363.70 | 25,191.62 | 42,955.13 | 20,224.91 |

4 | | | 43,809.30 | 19,433.22 | 42,097.47 | 16,106.00 |

5 | | 16,566.20 | 52,952.11 | 36,347.26 | 46,062.40 | – |

6 | – | – | 48,883.58 | 30,352.69 | 46,080.32 | 27,146.39 |

7 | – | – | 45,554.95 | 23,803.27 | 45,512.01 | 25,494.36 |

8 | – | – | 43,791.72 | 18,182.23 | 44,870.17 | 24,164.79 |

9 | | 16,498.40 | 51,876.63 | 33,202.82 | 44,873.52 | 23,438.13 |

10 | | 16,059.15 | 49,726.29 | 30,563.48* | | 22,427.01 |

Avg. | | 16,502.34 | 48,694.42 | 29,300.78 | 44,869.76 | 22,714.51 |

| ||||||

1 | | | | 42,214.16* | | – |

2 | 42,668.32 | | 49,960.81 | | | – |

3 | | – | | | 42,968.44 | 20,169.93 |

4 | 39,736.93 | 15,873.11 | | 18,365.29 | 41,985.52 | |

5 | | | 52,602.36 | | | – |

6 | – | – | | | | |

7 | – | – | | | 45,505.78 | 25,252.48* |

8 | – | – | 43,199.05 | | | 23,883.43 |

9 | 40,970.05 | | | | | 23,161.29 |

10 | 40,477.13 | | 49,197.66 | 30,313.90* | 44,413.41 | |

Avg. | 41,314.69 | | 48,266.98 | 29,003.55 | | 22,470.44 |

The average results (out of 5 runs) obtained using PMA-VRPTW with various co-operation schemes (\(\delta =20\))

Id \(\downarrow \) | C1 | C2 | R1 | R2 | RC1 | RC2 |
---|---|---|---|---|---|---|

| ||||||

1 | | | | 42,209.68* | | – |

2 | | | | | 44,615.58 | – |

3 | 40,431.26 | – | 45,921.21 | 24,999.15* | | |

4 | 39,744.58 | 15,832.46 | | | | |

5 | | 16,562.49 | | 36,255.76* | | – |

6 | – | – | | 30,178.59* | | 26,879.59* |

7 | – | – | 45,251.39 | | | |

8 | – | – | | | | |

9 | 40,984.30 | | | 33,047.26* | | 23,100.65 |

10 | | 16,010.32 | | 30,284.52* | 44,406.02 | |

Avg. | 41,262.41 | 16,465.06 | | | | |

| ||||||

1 | | | 53,935.61 | 42,270.62 | 47,182.99 | – |

2 | 42,367.15 | | 50,459.87 | 33,951.40 | 44,820.79 | – |

3 | | – | 46,426.27 | 25,170.14 | 43,049.98 | 20,363.40 |

4 | | 15,958.67 | 44,732.58 | 19,492.46 | 42,475.18 | 17,180.56 |

5 | | 16,569.10 | 52,950.27 | 36,391.82 | 46,365.72 | – |

6 | – | – | 49,096.64 | 30,413.00 | 46,144.14 | 27,131.66 |

7 | – | – | 45,931.75 | 23,789.55 | 45,591.49 | 25,471.85 |

8 | – | – | 43,731.51 | 17,908.58 | 45,014.27 | 24,199.93 |

9 | | 16,524.75 | 51,782.76 | 33,252.21 | 44,995.33 | 23,496.33 |

10 | 40,379.99 | 16,137.12 | 49,969.36 | 30,659.73 | 44,456.08 | 22,441.98 |

Avg. | | 16,532.55 | 48,901.66 | 29,329.95 | 45,009.60 | 22,897.96 |

| ||||||

1 | | | 53,649.09* | | 46,779.46 | – |

2 | 42,422.66 | | 50,092.45 | 33,654.05 | | – |

3 | 40,421.20 | – | | | 42,938.35 | 20,128.92 |

4 | 39,819.31 | | 43,616.72 | 18,292.28 | 42,021.67 | 15,992.54 |

5 | | | 52,412.51 | | 46,085.55 | – |

6 | – | – | 48,477.39 | | 45,920.41 | |

7 | – | – | | 23,427.09 | 45,336.30 | 25,166.34* |

8 | – | – | 43,226.30 | 17,558.80* | 44,781.20 | 23,837.32 |

9 | 40,980.37 | 16,383.74* | 51,044.55 | | 44,746.04 | |

10 | 40,436.61 | | 49,097.84 | | | 22,047.55* |

Avg. | 41,289.75 | | 48,271.80 | 28,981.54 | 44,754.17 | 22,441.22 |

^{7}Although Ring appeared to be very competitive (see #\(T_B\), %\(T_B\), and #\(T^{\star }\) in Table 8), it is KS (with \(\delta =20\)) which gave the asymptotically best solutions (Table 9). Thus, the exploration of the search space is well-balanced with exchanging the best solutions and their further exploitation. Too frequent migration (\(\delta =2\)) results in saturating islands with similar solutions which are not further improved during the search.

Summary of the results obtained using PMA-VRPTW with various co-operation schemes: #\(T_B\)—number of the best \(T\)’s obtained with the corresponding co-operation scheme, %\(T_B\)—percentage of the best \(T\)’s, #\(T^{\star }\)—number of \(T\)’s such that \(T<T_\mathrm{WB}\) (the meaning of the results with \(A\) superscript—averaged \(T\)’s, see Tables 6 and 7—are analogous)

Scheme \(\rightarrow \) | Ring | R-EAX | KS | |||
---|---|---|---|---|---|---|

\(\delta \rightarrow \) | 2 | 20 | 2 | 20 | 2 | 20 |

#\(T_B\) (out of 50) | | | 11 | 8 | | |

%\(T_B\) (in %) | | | 22 | 16 | | |

#\(T^{\star }\) | | | 5 | 3 | | 15 |

#\(T_B^A\) (out of 50) | 19 | | 9 | 7 | | 19 |

%\(T_B^A\) (in %) | 38 | | 18 | 14 | | 38 |

#\(T^{A\star }\) | 10 | 12 | 1 | 0 | | |

The best results (out of 5 runs) obtained using PMA-VRPTW with various co-operation schemes for selected GH benchmark tests (for which PMA-VRPTW ended up with a solution such that \(T<T_\mathrm{WB}\))

Scheme \(\rightarrow \) | Ring | R-EAX | KS | WB | |||
---|---|---|---|---|---|---|---|

Test \(\downarrow \) \(\delta \rightarrow \) | 2 | 20 | 2 | 20 | 2 | 20 | |

C1_10_2 | 42,387.85 | 42,291.63 | | 42,289.09 | 42,339.90 | 42,338.01 | 42,300.76 |

C2_10_9 | 16,421.32 | | 16,421.14 | 16,481.81 | 16,372.32 | 16,372.32 | 16,432.53 |

R1_10_1 | 53,687.82 | | 53,772.62 | 53,846.08 | 53,676.62 | 53,615.67 | 53,657.99 |

R2_10_1 | 42,188.86 | 42,188.86 | 42,261.34 | 42,259.70 | 42,196.47 | | 42,219.21 |

R2_10_2 | 33,634.05 | 33,554.71 | 33,570.65 | 33,912.29 | 33,550.62 | | 33,567.91 |

R2_10_3 | 24,965.63 | 24,954.81 | 25,029.43 | 25,106.05 | 24,989.17 | | 25,053.80 |

R2_10_4 | | 17,997.69 | 19,180.23 | 19,421.25 | 18,262.09 | 17,959.91 | 18,039.77 |

R2_10_5 | 36,243.51 | 36,251.43 | 36,289.00 | 36,352.12 | 36,250.95 | | 36,335.72 |

R2_10_6 | 30,123.53 | 30,099.45 | 30,270.10 | 30,309.43 | 30,102.91 | | 30,223.14 |

R2_10_7 | | 23,344.99 | 23,730.70 | 23,636.36 | 23,270.90 | 23,355.92 | 23,381.36 |

R2_10_8 | 17,585.79 | | 18,018.54 | 17,859.14 | 17,526.72 | 17,524.42 | 17,598.63 |

R2_10_9 | 33,064.26 | 33,019.95 | 33,146.76 | 33,116.32 | 33,025.59 | | 33,131.99 |

R2_10_10 | 30,257.93 | 30,242.35 | 30,428.55 | 30,499.52 | 30,270.36 | | 30,598.69 |

RC2_10_3 | | 20,084.70 | 20,132.61 | 20,229.46 | 20,068.74 | 20,076.27 | 20,053.78 |

RC2_10_6 | 26,910.35 | 26,864.81 | 27,097.58 | 27,086.98 | 26,883.75 | | 26,965.51 |

RC2_10_7 | 25,116.15 | | 25,380.63 | 25,471.85 | 25,162.18 | 25,128.19 | 25,295.67 |

RC2_10_8 | 23,845.66 | | 24,013.56 | 24,063.00 | 23,822.03 | 23,796.20 | 23,787.26 |

RC2_10_9 | 23,112.13 | 23,063.76 | 23,292.42 | 23,297.83 | 23,089.01 | | 23,116.15 |

RC2_10_10 | 22,048.98 | | 22,225.09 | 22,347.35 | 22,004.78 | 21,999.00 | 22,076.90 |

## 6 Conclusions and Future Work

In this paper, we investigated the impact of the applied co-operation scheme (migration topology, interval, handling of immigrants, and emigrants) on the search capabilities of our parallel MA to solve the VRPTW. The extensive experimental study which comprised more than 1,584,000 CPU hours on an SMP cluster gave a detailed insight into the schemes’ characteristics and capabilities. Since real-life logistic and distribution problems are diverse at their heart (they differ by the customer locations, characteristics of time windows, vehicle capacities, and many more), we solved and analyzed the most-demanding 1000-customer benchmark tests reflecting various scheduling circumstances.

The guidelines for choosing the co-operation scheme in PMA-VRPTW

GH subclass \(\downarrow \) | Minimize \(\tau _P\)? | |||
---|---|---|---|---|

Yes | No | |||

Scheme | \(\delta \) | Scheme | \(\delta \) | |

C1 | R-EAX | \(2\) | R-EAX | \(20\) |

C2 | KS | \(2\) | KS | \(20\) |

R1 | KS | \(2\) | Ring | \(20\) |

R2 | KS | \(20\) | Ring | \(20\) |

RC1 | KS | \(20\) | Ring | \(20\) |

RC2 | KS | \(2\) | Ring | \(20\) |

Our ongoing works are focused on combining two most successful co-operation schemes—KS and Ring—into an adaptive scheme. This scheme will dynamically control itself (its migration topology and interval) according to the current state of exploring the search space. Also, we work on the adaptive MA, in which the parameters (including the population size, selection scheme, and more) are controlled (and appropriately changed) on the fly. This approach will mitigate the necessity of performing a time-consuming tuning process of PMA-VRPTW parameters. Finally, we plan to apply PMA-VRPTW for other VRPs—especially the pickup and delivery problem with time windows.

## Footnotes

- 1.
We will use \(p_i\) and \(\sigma _i\) interchangeably in this paper.

- 2.
Either a uniprocessor or a core of a multicore processor.

- 3.
We exclude the P-GES execution time here. Also, we consider only 50 (out of 60) GH tests for which PMA-VRPTW was run to optimize \(T\) (see Sect. 5.3).

- 4.
http://www.sintef.no/Projectweb/TOP/VRPTW/; reference date: August 28, 2014.

- 5.
C1_10_6, C1_10_7, C1_10_8, C2_10_3, C2_10_6, C2_10_7, C2_10_8, RC2_10_1, RC2_10_2, and RC2_10_5.

- 6.
Not necessarily statistically significant. In order to perform significance tests, PMA-VRPTW would have to be executed much more number of times (e.g., 100 for each GH instance). Given a very large \(\tau _P\), it would take an enormous amount of time, which is far beyond the scope of this work.

- 7.
See details of these solutions at http://sun.aei.polsl.pl/~jnalepa/VRPTW.

## Notes

### Acknowledgments

This research was performed using the infrastructure supported by POIG.02.03.01-24-099/13 Grant: “GeCONiI–Upper Silesian Center for Computational Science and Engineering”. Also, we thank the following computing centers where the computations of our Project were carried out: Academic Computer Centre in Gdańsk TASK, Academic Computer Centre CYFRONET AGH, Kraków, Interdisciplinary Centre for Mathematical and Computational Modeling, Warsaw University, Wrocław Centre for Networking and Supercomputing. This research was supported by the National Science Centre under research Grant No. DEC-2013/09/N/ ST6/03461.

## References

- 1.Alba, E., Tomassini, M.: Parallelism and evolutionary algorithms. Trans. Evol. Comp.
**6**(5), 443–462 (2002)CrossRefGoogle Scholar - 2.Alba, E., Troya, J.M.: A survey of parallel distributed genetic algorithms. Complexity
**4**(4), 31–52 (1999)MathSciNetCrossRefGoogle Scholar - 3.Baldacci, R., Mingozzi, A., Roberti, R.: New route relaxation and pricing strategies for the vehicle routing problem. Oper. Res.
**59**(5), 1269–1283 (2011)MathSciNetCrossRefzbMATHGoogle Scholar - 4.Baldacci, R., Mingozzi, A., Roberti, R.: Recent exact algorithms for solving the vehicle routing problem under capacity and time window constraints. Eur. J. Oper. Res.
**218**(1), 1–6 (2012)MathSciNetCrossRefzbMATHGoogle Scholar - 5.Banos, R., Ortega, J., Gil, C., Márquez, A.L., de Toro, F.: A hybrid meta-heuristic for multi-objective vehicle routing problems with time windows. Comput. Ind. Eng.
**65**(2), 286–296 (2013)CrossRefGoogle Scholar - 6.Bard, J.F., Kontoravdis, G., Yu, G.: A branch-and-cut procedure for the vehicle routing problem with time windows. Transp. Sci.
**36**(2), 250–269 (2002)CrossRefzbMATHGoogle Scholar - 7.Bektas, T.: The multiple traveling salesman problem: an overview of formulations and solution procedures. Omega
**34**(3), 209–219 (2006)CrossRefGoogle Scholar - 8.Blocho, M.: A Parallel Memetic Algorithm for Solving the Vehicle Routing Problem with Time Windows. Ph.D. thesis, Silesian University of Technology, Gliwice, Poland (2013)Google Scholar
- 9.Blocho, M., Czech, Z.: A parallel algorithm for minimizing the number of routes in the vehicle routing problem with time windows. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Waniewski, J. (eds.) Parallel Processing and Applied Mathematics. Lecture Notes in Computer Science, vol. 7203, pp. 255–265. Springer, Berlin (2012)CrossRefGoogle Scholar
- 10.Blocho, M., Czech, Z.: A parallel EAX-based algorithm for minimizing the number of routes in the vehicle routing problem with time windows. In: 2012 IEEE 14th International Conference on High Performance Computing and Communication 2012 IEEE 9th International Conference on Embedded Software and Systems (HPCC-ICESS), pp. 1239–1246 (2012)Google Scholar
- 11.Blocho, M., Czech, Z.J.: An improved route minimization algorithm for the vehicle routing problem with time windows. Studia Informatica
**32**(99), 5–19 (2010)Google Scholar - 12.Blocho, M., Czech, Z.J.: A parallel memetic algorithm for the vehicle routing problem with time windows. In: Proceedings of the 2013 Eighth International Conference on P2P, Parallel, Grid, Cloud and Internet Computing (3PGCIC ’13), pp. 144–151 (2013)Google Scholar
- 13.Bräysy, O., Gendreau, M.: Vehicle routing problem with time windows, part II: metaheuristics. Transp. Sci.
**39**(1), 119–139 (2005)CrossRefGoogle Scholar - 14.Cantu-Paz, E.: A survey of parallel genetic algorithms. Calcul. Paralleles
**10**, 141–171 (1998)Google Scholar - 15.Chabrier, A.: Vehicle routing problem with elementary shortest path based column generation. Comput. Oper. Res.
**33**(10), 2972–2990 (2006). Part Special Issue: Constraint ProgrammingGoogle Scholar - 16.Chiang, W.C., Russell, R.: Simulated annealing metaheuristics for the vehicle routing problem with time windows. Ann. Oper. Res.
**63**(1), 3–27 (1996)CrossRefzbMATHGoogle Scholar - 17.Cipolla, M., Bosco, G.L., Millonzi, F., Valenti, C.: An island strategy for memetic discrete tomography reconstruction. Inf. Sci.
**257**, 357–368 (2014)CrossRefGoogle Scholar - 18.Coltorti, D., Rizzoli, A.E.: Ant colony optimization for real-world vehicle routing problems. SIGEVOlution
**2**(2), 2–9 (2007)CrossRefGoogle Scholar - 19.Cordeau, J.F., Desaulniers, G., Desrosiers, J., Solomon, M.M., Soumis, F.: The vehicle routing problem. In: Chap. VRP with Time Windows, pp. 157–193. Society for Industrial and Applied Mathematics (2001)Google Scholar
- 20.Dantzig, G.B., Ramser, J.H.: The truck dispatching problem. Manag. Sci.
**6**(1), 80–91 (1959)MathSciNetCrossRefzbMATHGoogle Scholar - 21.Desrochers, M., Desrosiers, J., Solomon, M.: A new optimization algorithm for the vehicle routing problem with time windows. Oper. Res.
**40**(2), 342–354 (1992)MathSciNetCrossRefzbMATHGoogle Scholar - 22.El-Sherbeny, N.A.: Vehicle routing with time windows: an overview of exact, heuristic and metaheuristic methods. J. King Saud Univ. Sci.
**22**(3), 123–131 (2010)CrossRefGoogle Scholar - 23.Feillet, D., Dejax, P., Gendreau, M., Gueguen, C.: An exact algorithm for the elementary shortest path problem with resource constraints: application to some vehicle routing problems. Networks
**44**(3), 216–229 (2004)MathSciNetCrossRefzbMATHGoogle Scholar - 24.Gehring, H., Homberger, J.: A parallel hybrid evolutionary metaheuristic for the vehicle routing problem with time windows. In: Proceedings of EUROGEN99-Short Course on Evolutionary Algorithms in Engineering and Computer Science, pp. 57–64 (1999)Google Scholar
- 25.Ghoseiri, K., Ghannadpour, S.F.: Multi-objective vehicle routing problem with time windows using goal programming and genetic algorithm. Appl. Soft Comput.
**10**(4), 1096–1107 (2010)CrossRefGoogle Scholar - 26.Gomez, C., Cruz-Reyes, L., González, J.J., Fraire, H.J., Pazos, R.A., Martinez, J.J.: Ant colony system with characterization-based heuristics for a bottled-products distribution logistics system. J. Comput. Appl. Math.
**259**(Part B(0)), 965–977 (2014)Google Scholar - 27.Guan, X., Zhang, X., Han, D., Zhu, Y., Lv, J., Su, J.: A strategic flight conflict avoidance approach based on a memetic algorithm. Chin. J. Aeronaut.
**27**(1), 93–101 (2014)CrossRefGoogle Scholar - 28.Ho, S., Haugland, D.: A tabu search heuristic for the vehicle routing problem with time windows and split deliveries. Comput. Oper. Res.
**31**(12), 1947–1964 (2004)CrossRefzbMATHGoogle Scholar - 29.Hosny, M.I., Mumford, C.L.: The single vehicle pickup and delivery problem with time windows: intelligent operators for heuristic and metaheuristic algorithms. J. Heuristics
**16**(3), 417–439 (2010)CrossRefzbMATHGoogle Scholar - 30.Hu, W., Liang, H., Peng, C., Du, B., Hu, Q.: A hybrid chaos-particle swarm optimization algorithm for the vehicle routing problem with time window. Entropy
**15**(4), 1247–1270 (2013)MathSciNetCrossRefzbMATHGoogle Scholar - 31.Irnich, S., Villeneuve, D.: The shortest-path problem with resource constraints and \(k\)-cycle elimination for \(k \le 3\). INFORMS J. Comput.
**18**(3), 391–406 (2006)MathSciNetCrossRefzbMATHGoogle Scholar - 32.Jin, Y., Hao, J.K., Hamiez, J.P.: A memetic algorithm for the minimum sum coloring problem. Comput. Oper. Res.
**43**, 318–327 (2014)MathSciNetCrossRefGoogle Scholar - 33.Kallehauge, B.: Formulations and exact algorithms for the vehicle routing problem with time windows. Comput. Oper. Res.
**35**(7), 2307–2330 (2008)MathSciNetCrossRefzbMATHGoogle Scholar - 34.Kawulok, M., Nalepa, J.: Support vector machines training data selection using a genetic algorithm. In: Gimelfarb, G., Hancock, E., Imiya, A., Kuijper, A., Kudo, M., Omachi, S., Windeatt, T., Yamada, K. (eds.) Structural, Syntactic, and Statistical Pattern Recognition. Lecture Notes in Computer Science, vol. 7626, pp. 557–565. Springer, Berlin (2012)CrossRefGoogle Scholar
- 35.Kindervater, G., Savelsbergh, M.: Vehicle routing: handling edge exchanges. In: Aarts, E., Lenstra, J. (eds.) Local Search in Combinatorial Optimization, pp. 337–360. Wiley, New York (1997)Google Scholar
- 36.Kolen, A.W.J., Kan, A.H.G.R., Trienekens, H.W.J.M.: Vehicle routing with time windows. Oper. Res.
**35**(2), 266–273 (1987)MathSciNetCrossRefzbMATHGoogle Scholar - 37.Larsen, J.: Refinements of the column generation process for the vehicle routing problem with time windows. J. Syst. Sci. Syst. Eng.
**13**(3), 326–341 (2004)CrossRefGoogle Scholar - 38.Li, Y., Jiao, L., Li, P., Wu, B.: A hybrid memetic algorithm for global optimization. Neurocomputing
**134**, 132–139 (2014)CrossRefGoogle Scholar - 39.Li, Y., Li, P., Wu, B., Jiao, L., Shang, R.: Kernel clustering using a hybrid memetic algorithm. Nat. Comput.
**12**(4), 605–615 (2013)MathSciNetCrossRefGoogle Scholar - 40.Liu, Y.Y., Wang, S.: A scalable parallel genetic algorithm for the generalized assignment problem. Parallel Comput. (in press) (2014). doi: 10.1016/j.parco.2014.04.008
- 41.Marinaki, M., Marinakis, Y.: An island memetic differential evolution algorithm for the feature selection problem. In: Proceedings of the NICSO, SCI, vol. 512, pp. 29–42. Springer, Berlin (2014)Google Scholar
- 42.Mirsoleimani, S.A., Karami, A., Khunjush, F.: A parallel memetic algorithm on GPU to solve the task scheduling problem in heterogeneous environments. In: Proceedings of the 15th Annual Conference on Genetic and Evolutionary Computation (GECCO ’13), pp. 1181–1188. ACM (2013)Google Scholar
- 43.Nagata, Y.: New EAX crossover for large TSP instances. In: Runarsson, T., Beyer, H.G., Burke, E., Merelo-Guervs, J., Whitley, L., Yao, X. (eds.) Parallel Problem Solving from Nature—PPSN IX. Lecture Notes in Computer Science, vol. 4193, pp. 372–381. Springer, Berlin (2006)CrossRefGoogle Scholar
- 44.Nagata, Y.: Edge assembly crossover for the capacitated vehicle routing problem. In: Cotta, C., Hemert, J. (eds.) Evolutionary Computation in Combinatorial Optimization. Lecture Notes in Computer Science, vol. 4446, pp. 142–153. Springer, Berlin (2007)CrossRefGoogle Scholar
- 45.Nagata, Y., Bräysy, O.: A powerful route minimization heuristic for the vehicle routing problem with time windows. Oper. Res. Lett.
**37**(5), 333–338 (2009)MathSciNetCrossRefzbMATHGoogle Scholar - 46.Nagata, Y., Bräysy, O., Dullaert, W.: A penalty-based edge assembly memetic algorithm for the vehicle routing problem with time windows. Comput. Oper. Res.
**37**(4), 724–737 (2010)CrossRefzbMATHGoogle Scholar - 47.Nalepa, J., Blocho, M., Czech, Z.: Co-operation schemes for the parallel memetic algorithm. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Waniewski, J. (eds.) Parallel Processing and Applied Mathematics. Lecture Notes in Computer Science, pp. 191–201. Springer, Berlin (2014)CrossRefGoogle Scholar
- 48.Nalepa, J., Czech, Z.J.: Adaptive threads co-operation schemes in a parallel heuristic algorithm for the vehicle routing problem with time windows. Theor. Appl. Inform.
**24**(3), 191–203 (2012)Google Scholar - 49.Nalepa, J., Czech, Z.J.: A parallel heuristic algorithm to solve the vehicle routing problem with time windows. Studia Informatica
**33**(1), 91–106 (2012)Google Scholar - 50.Nalepa, J., Czech, Z.J.: New selection schemes in a memetic algorithm for the vehicle routing problem with time windows. In: Tomassini, M., Antonioni, A., Daolio, F., Buesser, P. (eds.) Adaptive and Natural Computing Algorithms. Lecture Notes in Computer Science, vol. 7824, pp. 396–405. Springer, Berlin (2013)CrossRefGoogle Scholar
- 51.Nalepa, J., Kawulok, M.: A memetic algorithm to select training data for support vector machines.Iin: Proceedings of the 2014 Conference on Genetic and Evolutionary Computation (GECCO ’14), pp. 573–580. ACM, New York, NY, USA (2014)Google Scholar
- 52.Oh, S.K., Kim, W.D., Pedrycz, W., Seo, K.: Fuzzy radial basis function neural networks with information granulation and its parallel genetic optimization. Fuzzy Sets Syst.
**237**, 96–117 (2014)MathSciNetCrossRefGoogle Scholar - 53.Pang, K.W.: An adaptive parallel route construction heuristic for the vehicle routing problem with time windows constraints. Expert Syst. Appl.
**38**(9), 11,939–11,946 (2011)CrossRefGoogle Scholar - 54.Petch, R., Salhi, S.: A multi-phase constructive heuristic for the vehicle routing problem with multiple trips. Discret. Appl. Math.
**133**(13), 69–92 (2003)MathSciNetCrossRefzbMATHGoogle Scholar - 55.Potvin, J.Y., Rousseau, J.M.: A parallel route building algorithm for the vehicle routing and scheduling problem with time windows. Eur. J. Oper. Res.
**66**(3), 331–340 (1993)CrossRefzbMATHGoogle Scholar - 56.Potvin, J.Y., Rousseau, J.M.: An exchange heuristic for routeing problems with time windows. J. Oper. Res. Soc.
**46**(12), 1433–1446 (1995)CrossRefzbMATHGoogle Scholar - 57.Repoussis, P., Tarantilis, C., Ioannou, G.: Arc-guided evolutionary algorithm for the vehicle routing problem with time windows. IEEE Trans. Evol. Comput.
**13**(3), 624–647 (2009)CrossRefGoogle Scholar - 58.Righini, G., Salani, M.: Symmetry helps: bounded bi-directional dynamic programming for the elementary shortest path problem with resource constraints. Discret. Optim.
**3**(3), 255–273 (2006). Graphs and Combinatorial Optimization The Cologne/Twente Workshop on Graphs and Combinatorial OptimizationGoogle Scholar - 59.Roberge, V., Tarbouchi, M., Okou, F.: Strategies to accelerate harmonic minimization in multilevel inverters using a parallel genetic algorithm on graphical processing unit. IEEE Trans. Power Electron.
**29**(10), 5087–5090 (2014)CrossRefGoogle Scholar - 60.Sarkar, B.K., Sana, S.S., Chaudhuri, K.: Selecting informative rules with parallel genetic algorithm in classification problem. Appl. Math. Comput.
**218**(7), 3247–3264 (2011)CrossRefzbMATHGoogle Scholar - 61.Segredo, E., Segura, C., Leon, C.: A multiobjectivised memetic algorithm for the frequency assignment problem. In: 2011 IEEE Congress on Evolutionary Computation (CEC), pp. 1132–1139 (2011)Google Scholar
- 62.Solomon, M.M.: Algorithms for the vehicle routing and scheduling problems with time window constraints. Oper. Res.
**35**(2), 254–265 (1987)MathSciNetCrossRefzbMATHGoogle Scholar - 63.Sudholt, D.: Parallel evolutionary algorithms. In: Kacprzyk, J., Pedrycz, W. (Eds.) Handbook of Computational Intelligence. Springer, Netherlands (2014) (in press)Google Scholar
- 64.Tavares, L., Lopes, H., Lima, C.: Construction and improvement heuristics applied to the capacitated vehicle routing problem. In: World Congress on Nature Biologically Inspired Computing, 2009 (NaBIC 2009), pp. 690–695 (2009)Google Scholar
- 65.Tripathy, P., Dash, R., Tripathy, C.: A genetic algorithm based approach for topological optimization of interconnection networks. Procedia Technol.
**6**, 196–205 (2012)CrossRefGoogle Scholar - 66.Vidal, T., Crainic, T.G., Gendreau, M., Prins, C.: A hybrid genetic algorithm with adaptive diversity management for a large class of vehicle routing problems with time-windows. Comput. Oper. Res.
**40**(1), 475–489 (2013)MathSciNetCrossRefGoogle Scholar - 67.Xhafa, F., Duran, B.: Parallel memetic algorithms for independent job scheduling in computational grids. In: Cotta, C., van Hemert, J. (eds.) Recent Advances in Evolutionary Computation for Combinatorial Optimization, Studies in Computational Intelligence, vol. 153, pp. 219–239. Springer, Berlin (2008)CrossRefGoogle Scholar
- 68.Yu, B., Yang, Z., Sun, X., Yao, B., Zeng, Q., Jeppesen, E.: Parallel genetic algorithm in bus route headway optimization. Appl. Soft Comput.
**11**(8), 5081–5091 (2011)CrossRefGoogle Scholar - 69.Zhong, Y., Pan, X.: A hybrid optimization solution to VRPTW based on simulated annealing. In: 2007 IEEE International Conference on Automation and Logistics, pp. 3113–3117 (2007)Google Scholar

## Copyright information

**Open Access**This article is distributed under the terms of the Creative Commons Attribution License which permits any use, distribution, and reproduction in any medium, provided the original author(s) and the source are credited.