• Nie Znaleziono Wyników

A parallel EAX-based algorithm for minimizing the number of routes in the vehicle routing problem with time windows

N/A
N/A
Protected

Academic year: 2021

Share "A parallel EAX-based algorithm for minimizing the number of routes in the vehicle routing problem with time windows"

Copied!
8
0
0

Pełen tekst

(1)

A parallel EAX-based algorithm for minimizing the number of routes in the vehicle routing problem with time windows

Mirosław Błocho∗†

Silesia University of Technology Gliwice, Poland

ABB ISDC Krakow, Poland

email: Miroslaw.Blocho@pl.abb.com

Zbigniew J. Czech∗†

Silesia University of Technology Gliwice, Poland

Silesia University Sosnowiec, Poland email: Zbigniew.Czech@polsl.pl

Abstract—A parallel EAX-based algorithm for minimizing the number of routes in the vehicle routing problem with time windows is presented. The main contribution is a novel approach concerning the usage of the edge assembly crossover (EAX) operator during exchanging the best solutions between the processes. The objective of the work is to analyze the speedup, achieved accuracy of solutions and scalability of the MPI implementation. For comparisons the selected Gehring and Homberger’s (GH) tests are used. The results of the extensive computational experiments indicate that the new algorithm based on the EAX approach is not only very fast but also very effective. The eight new best-known solutions for the GH benchmarking tests were found by making use of the algorithm.

Keywords-parallel algorithm, vehicle routing problem with time windows, guided local search, metaheuristics, EAX oper- ator, MPI library

I. INTRODUCTION

The vehicle routing problem with time windows (VRPTW) can be described as a problem of determining a least cost scheduling plan to deliver goods from a single depot to a set of geographically scattered customers. Each customer must be visited exactly once by a single vehicle, which departs from and returns to the depot. Additionally, the total of goods loaded in any vehicle must not exceed the maximum vehicle capacity (capacity constraint) and each customer must be serviced within a given time interval (time window constraint) [31].

The VRPTW belongs to a large family of the vehicle routing problems which have numerous practical applica- tions such as: airline fleet routing, rail distribution etc. [14].

The VRPTW is also NP-hard in strong sense as it includes several NP-hard optimisation problems such as TSP and bin packing [19], [32].

Because of practical importance and wide applicability of the VRPTW, many algorithms have been developed so far for this combinatorial optimization problem. The con- struction heuristics, improvement heuristics (so-called local searches) and metaheuristics are among the most successful algorithms to solve the VRPTW.

The construction heuristics are based on generating a fea- sible solution by iterative inserting customers into partial routes according to specified criteria such as minimum additional travel distance or maximum savings. During con- struction process the feasibility of partial solutions must not be violated at anytime. The examples of these heuristics were successfully applied by Mester [18], Solomon [31], Dullaert and Br¨aysy [8] and Potvin and Rousseau [26].

In turn, the improvement heuristics modify an actual solution by executing consecutive local search moves in order to find better neighboring solutions. The neighborhood includes solutions, which can be obtained from the current one by exchanging edges or customers. The examples of local search heuristics can be found in Russell [29], Br¨aysy [4], Caseau and Laburthe [5], Potvin and Rousseau [25] and Thompson and Psaraftis [33].

The metaheuristics belong to a group of most powerful algorithms, which are based on exploring the solution space for finding better solutions and they usually embed im- provement heuristics as well as standard route construction algorithms. The metaheuristics allow for infeasible partial solutions and for a deteriorating of solutions in the search process in order to escape local minima. The highest perfor- mance for the VRPTW has been obtained by the application of genetic algorithms [15], evolution strategies [27] and tabu searches [13]. The genetic algorithms were successfully applied by Berger et al. [1] and Jung and Moon [16]. In turn, the tabu searches with outstanding results were applicated by Taillard et al. [32], Chiang and Russell [6], Rochat and Taillard [28], Cordeau et al. [7] and Schulze and Fahle [30].

The metaheuristics with evolution strategies were applied by Mester [19] and Gehring and Homberger [10], [11], [14].

This paper presents a parallel EAX-based algorithm for minimizing the number of routes in the vehicle routing problem with time windows. It extends our previous re- search concerning the parallel heuristic (BC) for the route- minimization stage in the VRPTW [2], [3] and Nalepa and Czech’s improvements [20]. The parallel BC algorithm exhibited very good performance in terms of quality and

(2)

1: for Pi← P1 to PN do in parallel

2: create the initial solution σ

3: while not finished do

4: initialize the ejection pool (EP ) with the customers from a randomly removed route

5: initialize the penalty counters p[vi] ← 1(i = 1, ..., M )

6: while EP 6= ∅ and not f inished do

7: cre ← cre+ 1 . increase elimination steps count

8: select and eject the customer vi from EP

9: if Sinsertf e (vi, σ) 6= ∅ then

10: σ ← a new solution σ0 selected randomly from Sinsertf e (vi)

11: else

12: σ ← Squeeze(vi, σ)

13: end if

14: if vi is not inserted into σ then

15: p[vi] ← p[vi] + 1

16: σ ← σ0 from Sej(vi) with min. Psum = p[vout(1)] + p[vout(2)] + ... + p[vout(km)]

17: add the ejected customers: vout(1), v(2)out, ..., vout(km)to EP

18: σ ← P erturb(σ)

19: end if

20: if cre mod δc = 0 then

21: f inished ← Cooperation(σ) . EAX recombination performed during co-operation

22: end if

23: end while

24: end while

25: end for

Figure 1. Parallel EAX-based algorithm

accuracy of solutions and enabled us to find the twelve new best-known solutions. It originated from the route minimiza- tion algorithm by Nagata and Br¨aysy [21] and was based on the notion of the ejection pool used in the heuristic by Lim and Zhang [17], combined with guided local searches and the diversification strategy by Voudouris and Tsang [34]. In this work, we suggest a novel approach based on usage of the edge assembly crossover (EAX) operator during exchanging best solutions between the processes. The EAX operator for the VRPTW was first proposed by Nagata et al. [22]. Its basic idea is to remove and replace edges in two selected parent solutions, considering common and different edges.

The objective of the work is to analyze the achieved accuracy of solutions, and the speedup and scalability of the MPI implementation. The parallel EAX-based algorithm is presented in section II. Section III contains the discussion of the experimental results. Section IV concludes the paper.

II. PARALLELEAX-BASED ALGORITHM

The parallel EAX-based algorithm for minimizing the number of routes in the VRPTW extends the parallel version of the algorithm by Błocho and Czech [3] by introducing the usage of the EAX operator during the phases of exchanging the best solutions between the processes.

The parallel algorithm contains N components which are

executed as processes P1, P2, . . . , PN (Fig. 2). The algo- rithm starts with an initial solution σ where each customer is served by a single vehicle (line 2 in Fig. 1). The consecutive attempts to reduce the number of routes in σ are then applied until the total computation time reaches a given limit. A randomly selected route is removed from σ and the excluded customers are used to initialize the ejection pool EP(line 4). The penalty counters p[vi] for all customers are set to 1 (line 5), whose role is to estimate the difficulties of re-inserting the customers back into σ.

In each iteration (lines 6-23) a customer is selected from EP and the attempts are made to insert it into the routes of σ without violating the capacity and time windows constraints. At first, a set containing all feasible insertion positions Sinsertf e (vi, σ) is considered (line 9). If there exists at least one feasible solution then it is chosen randomly from this set (line 10), otherwise the function Squeeze is called (line 12), which temporarily accepts an infeasible insertion with the minimal penalty function value Fp(σ) defined in [21]. A solution with the smallest penalty is selected and the local search moves are undertaken in order to restore the feasibility.

If the squeezing could not produce a feasible solution then the penalty counter of the customer is increased (line 15) and the ejections of other customers are tested (at most

(3)

σ(init)1 ⇒ σ2(init) ⇒ σ3(init) ⇒ • • • ⇒ σN −1(init) ⇒ σ(init)N ⇒ σ(init)1

↓ ↓ ↓ ↓ ↓ ↓

σ1(1δc) ⇒ σ(1δr c)

1(1) ⇒ σr(1δc)

1(2) ⇒ • • • ⇒ σr(1δc)

1(N −2) ⇒ σ(1δr c)

1(N −1) ⇒ σ1(1δc)

↓ ↓ ↓ ↓ ↓ ↓

σ1(2δc) ⇒ σ(2δr c)

2(1) ⇒ σr(2δc)

2(2) ⇒ • • • ⇒ σr(2δc)

2(N −2) ⇒ σ(2δr c)

2(N −1) ⇒ σ1(2δc)

↓ ↓ ↓ ↓ ↓ ↓

• • • • • • • • •

↓ ↓ ↓ ↓ ↓ ↓

σ1(xδc) ⇒ σr(xδc)

x(1) ⇒ σ(xδr c)

x(2) ⇒ • • • ⇒ σ(xδr c)

x(N −2) ⇒ σr(xδc)

x(N −1) ⇒ σ1(xδc)

Figure 2. The co-operation scheme of N processes (σ1- solution of the master process P1; σi(init)- initial solution of the process Pi; σr(jδc)

j(i) - solution of the process Prj(i)at j co-operation step; rj(i) - i element of a random permutation rj ∈ {2, . . . , N } at j co-operation step; x - co-operation steps count; δc- number of steps between co-operations)

km customers [21]). For this purpose the set Sej(vi) is generated, which contains the solutions with various ejected customers and the given customer inserted at different route positions. The customers with minimized sum of the penalty counters are ejected (line 16) and added to EP (line 17) as they should be relatively easy to reinsert in further steps.

The obtained solution is then perturbed with a number of feasible local moves (line 18).

The processes co-operate periodically every δcelimination steps (line 20; smaller δc means higher frequency of co- operation). At the beginning of each co-operation step the master1process P1generates a random sequence of the pro- cesses rj ∈ {2, . . . , N } and broadcasts it asynchronosuly.

Such a co-operation scheme differs from our previous more static approach [3] and allows for increasing the chances of better reproductive opportunities. The scheme of the co- operation between the processes is illustared in Fig. 2. Every co-operation step is started by P1 and the best solution is transferred to the rest of the processes until it reaches the last one in the actual permutation rj. Then the best achieved solution is sent back to the master process P1. Such a way of the co-operation between the processes guarantees that (1) P1 holds the best solution found to date, (2) all other processes hold at least as good solution as the best found in a previous co-operation step. Furthermore, in order to achieve a sufficient diversification, the processes create their own solutions with a number of route elemination steps and then the co-operation is started.

If a process receives a solution with a smaller number of routes then it replaces the current one. Otherwise, the EAX operation is performed on both solutions and a new children solution σch is created. Then the local moves are carried out to restore the feasibility of σch(if it is not already feasible) due to the criteria based on decreasing the sum of

1We distinguish process P1 calling it master because it decides on the order in which processes co-operate in each phase. Moreover, it controls the execution time of the algorithm by sending to the remaining processes the signal to finish computations when this time elapsed.

the capacity and time window penalties in each repairing iteration. If σchbecomes feasible then it replaces the current solution. This approach is motivated by the efficiency of hy- brid genetic algorithms, combining evolutionary adaptation of a population with individual learning within a lifetime.

The master process P1 determines the execution time of the algorithm by sending in each co-operation step (line 21) to the remaining processes the signal to finish computations when this time elapsed.

The edge assembly crossover (EAX) operator was first proposed for the travelling salesman problem (TSP) by Na- gata and Kobayashi [23] and later adapted to the capacitated vehicle routing problem (CVRP) by Nagata [24] and finally to the VRPTW by Nagata [21]. The main idea of EAX is to remove and replace edges in a chosen parent solution with the other parent solution, based on the common and different edges. The EAX operator generates each time only one offspring solution and consists of five main steps, as illustrated in Fig. 3.

In step I, a graph GAB = (GA∪ GB)\(GA∩ GB) is formed, where GAand GBcorrespond to the graphs created from the parent solutions σAand σB. In other words, graph GAB contains the edges by which the GA and GB graphs differ from each other.

In step II, all edges from GAB are divided into so-called AB-cycles. An AB-cycle is defined as a cycle on GAB such that edges from σA and σB are linked alternately in the opposite directions. The process of creating AB-cycles is started by randomly selecting an initial node on GAB and then tracing in turn edges belonging to σA and σB until a cycle is found. Then the AB-cycle is removed from GAB

and the process of generating AB-cycles is continued until all edges in GAB have been removed (as an example, consider Fig. 3 where six AB-cycles were found).

In step III, an E-set is formed by a combination of any AB-cycles. Two strategies called single and block can be applied (in the example of Fig. 3, a single strategy is used to select the third AB-cycle as the E-set).

(4)

Figure 3. The illustration of the EAX operator

In step IV, σA is chosen as the base solution and an in- termediate solution is constructed by removing E-set ∩ GA

and adding E-set ∩ GB.

In the last V step, the possible subtours are merged with the routes already connected to the depot.

III. EXPERIMENTAL RESULTS

The algorithm was implemented in C++ using the MPI interface and was tested on the benchmarking tests proposed by Gehring and Homberger [12]. The computations were performed on Galera supercomputer [9] on nodes equipped with Intel Xeon Quad Core 2.33 GHz processors, each with 12 MB level 3 cache. The nodes were connected by the Infiniband DDR fat-free network (throughput 20 Gbps, delay 5 µs). The computer was executing Linux operating system and the source code was compiled using Intel 10.1 compiler and MVAPICH1 v. 0.9.9 MPI library. The maximal execution time was set to 30 minutes, the number of steps between co-operations δc was set to 100, the maximal number of customers to be ejected km was set to 4 and the EAX strategy (single, block) was chosen randomly.

In order to evaluate the MPI implementation of the parallel algorithm, it was tested on 300 benchmarking tests elaborated by Gehring and Homberger [12]. Six sets of test cases (C1, C2, R1, R2, RC1, RC2) were designed to highlight the factors that affect a behavior of the routing algorithms including the geographical data, the average

number of customers serviced by a vehicle, the positioning and tightness of the time windows. The customer locations are randomly generated in sets R1 and R2, clustered in sets C1 and C2, and a mix of clustered and random locations in sets RC1 and RC2. The sets C1, R1 and RC1 have a short scheduling horizon and allow for only a few customers per route. In contrast, the sets C2, R2 and RC2 have a long scheduling horizon, which permits many customers to be serviced by the same vehicle.

Overall 15000 experiments (50 for each test instance) were carried out. The results obtained through the extensive tests showed that the EAX-based algorithm (called further EAX) was competitive to the existing basic parallel approach [3] (called further BC). The testing results of the implemen- tation on 64 processors2indicate that 89% of GH tests were solved to good accuracy in time less than 10 seconds and only benchmarking tests from C/RC groups having 600-1000 customers were more difficult to solve in such a short time.

Based on the experimental results, the average number of ejected customers ranged between 1 and 2 for C tests and between 1 and 3 for R/RC tests. The ejections of km = 4 customers were tested only in several R test instances having 800-1000 customers. The number of steps between co-operations set to δc = 100 proved to be a good choice for most of the C/RC tests. However smaller value of δc

2Each process was run on a single processor

(5)

Table I

NEW BEST-KNOWN SOLUTIONS(N –CUSTOMERS COUNT, p – PROCESSES COUNT)

Best-known New best

Instance N p number number Time [min]

of routes of routes

RC2 4 5 400 16 9 8 1

C1 6 6 600 64 60 59 19

C1 8 2 800 16 73 72 0.5

C1 8 6 800 64 80 79 15

C2 8 6 800 64 24 23 29

C1 10 6 1000 64 29 28 16

C1 10 7 1000 64 98 97 28

C2 10 8 1000 64 100 99 18

probably could give better results for R tests where more extensive search process was required and higher frequency of co-operation would be very beneficial.

Considering the best solutions found, the EAX-based algorithm outperforms the BC algorithm by finding 8 new best-known solutions (see Tab. I) and 287 ties. Moreover, comparing the CVN (Cumulative Vehicles Number) of all GH tests, the EAX-based algorithm proved to be much more effective than BC one by obtaining CVNEAX = 10295 instead of CVNBC = 10304. It is worth noting that the CVN of all best world results published so far by Sintef [12] is also higher (CVNworld = 10297) than the value obtained by the proposed EAX-based algorithm. The detailed comparison of the CVN values between the EAX-algorithm and the world- best results is given in Tab. II.

A number of GH tests were selected to analyze the speedup of the EAX-based implementation. The results of the experiments are illustrated in Fig. 4 and additionally compared with the results obtained by the BC algorithm.

The detailed comparisons of the average execution times along with the achieved speedups are presented in Tab. III (C2 6 2, C2 8 9, C2 10 7) and in Tab. IV (RC2 6 2, RC2 8 5, RC2 10 5).

It can be noticed that the EAX-based algorithm obtains better speedups than the BC one, for the larger number of processes (≥ 16). The achieved speedups for the tests from RC groups for the EAX-based algorithm are slightly smaller than speedups for tests from C groups (what is not a case for the BC algorithm). It may indicate that the benefits coming from the recombination of solutions by the EAX operator exceed the overhead associated with processes communication, idling, synchronization and EAX operations. The better speedups obtained for C tests can be explained by the fact that the EAX operator generates offspring solutions without introducing long edges, which is particularly important for the clustered customers. The new best-known solutions were found mostly for the tests from C groups (7 out of 8), thus additionally confirming the above

Table III

RESULTS FOR SELECTEDGHTESTS: C2 6 2, C2 8 9, C2 10 7 (p –NUMBER OF PROCESSES, ¯τ –AVERAGE EXECUTION TIME[S],

S –SPEEDUP)

p ¯τ (EAX) τ (BC)¯ S(EAX) S(BC)

C2 6 2

1 492.1 492.1 1.00 1.00

8 60.8 65.4 8.09 7.52

16 34.6 49.2 14.21 10.01

24 23.6 28.1 20.85 17.54

32 16.7 19.8 29.41 24.92

40 14.0 16.0 35.12 30.77

48 11.7 14.3 42.15 34.48

56 10.4 12.6 47.20 39.18

64 9.3 11.0 52.69 44.66

C2 8 9

1 1564.6 1564.6 1.00 1.00

8 211.1 213.7 7.41 7.32

16 112.5 152.5 13.91 10.27

24 77.3 90.9 20.23 17.22

32 55.8 64.6 28.03 24.21

40 48.6 54.6 32.19 28.64

48 39.3 49.2 39.77 31.82

56 34.5 42.5 45.30 36.81

64 29.6 36.5 52.90 42.92

C2 10 7

1 852.7 852.7 1.00 1.00

8 121.6 122.5 7.01 6.96

16 71.2 90.1 11.97 9.47

24 41.0 53.1 20.81 16.06

32 31.7 40.6 26.92 21.02

40 26.5 31.6 32.14 27.00

48 21.9 26.1 38.87 32.70

56 19.8 24.3 42.97 35.08

64 17.2 21.4 49.48 39.92

explanation.

Similarly as in [20], the problem of saturating the popu- lation of solutions occured also in our algorithm. Especially in case of experiments with a small number of processes (2 to 8) this effect was particularly perceptible and the gain from usage of the EAX operator was hardly noticeable.

The probability of ending up with a set of similar solu- tions is much smaller in case of large populations and for that reason our algorithm obtained much better results for larger number of processes (≥ 16), as indicated in Fig. 4.

Generating a random permutation of processor numbers in each co-operation as well as allowing for a co-operation only after the base solutions (with a specified number of

(6)

1 16 32 48 64

1 16 32 48 64

S

p

C2 6 2 Ideal

EAX

◦ ◦

◦ ◦

◦ ◦

◦ ◦ ◦ ◦ ◦ ◦

◦ ◦ ◦ ◦ ◦

◦ BC

N N N N N N N N N N N N N N N N N N

1 16 32 48 64

1 16 32 48 64

S

p

RC2 6 2 Ideal

EAX

◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦

◦ BC

N N N N N N N N

N N N N N N N N N N

1 16 32 48 64

1 16 32 48 64

S

p

C2 8 9 Ideal

EAX

◦ ◦

◦ ◦

◦ ◦

◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦

◦ BC

N N N N N N N N

N N N N N

N N N N N

1 16 32 48 64

1 16 32 48 64

S

p

RC2 8 5 Ideal

EAX

◦ ◦

◦ ◦ ◦ ◦ ◦

◦ ◦ ◦

◦ ◦ ◦ ◦ ◦ ◦ ◦

◦ BC

N N N N N N N N N N N N N N N N N N

1 16 32 48 64

1 16 32 48 64

S

p

C2 10 7 Ideal

EAX

◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦

◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦

◦ BC

N N N N N NNN N N N N N N N N N N

1 16 32 48 64

1 16 32 48 64

S

p

RC2 10 5 Ideal

EAX

◦ ◦

◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦

◦ ◦ ◦ ◦

◦ BC

N N N N N N N N

N N N N N N N N N N

Figure 4. Speedup S vs. number of processes p for tests C2 6 2, C2 8 9, C2 10 7, RC2 6 2, RC2 8 5 and RC2 10 5 (Ideal - theoretical speedup, EAX - speedup of the parallel EAX-based algorithm, BC - speedup of the parallel algorithm [3])

route elimination steps) have already been created by each process, seem to be justified. These features of our algorithm significantly help to achieve a sufficient diversification of the solutions, thus minimize the risk of saturating the population and increase the chances of better reproductive opportunities.

IV. CONCLUSIONS

The parallel EAX-based algorithm for minimizing the number of routes in the VRPTW along with the experimental results of the MPI implementation were presented. The new approach differs from the previous parallel algorithm in the way the recombination of the solutions is performed. For this goal the EAX operator is used. The new algorithm proved very robust and effective by solving nearly 100% of GH

problem instances to the current known optimum and finding new best-known solutions to eight tests, with respect to the number of routes. The extensive experiments for various benchmarking tests showed that the relative speedups were significantly larger than those achieved by the BC parallel algorithm.

Solving the VRPTW is based on a two-stage approach, which allows for joining the presented algorithm with other heuristics, e.g. tabu search or genetic algorithms. Our ongoing research is focused on the parallelization of the edge assembly memetic algorithm by Nagata et al. [22]

and combining it with the presented EAX-based parallel algorithm for minimizing the number of routes in the first stage of the VRPTW.

(7)

Table II

COMPARISON OFCVN (CUMULATIVEVEHICLENUMBER)VALUES FORGHTESTS BETWEENEAX-ALGORITHM AND WORLD-BEST PUBLISHED RESULTS[12] (BOLDFACED RESULTS WITH BETTERCVN).

C1 C2 R1 R2 RC1 RC2 CVN

EAX/best EAX/best EAX/best EAX/best EAX/best EAX/best EAX/best

200 189 / 188 60/60 182 / 181 40 / 40 180 / 180 43 / 43 694 / 692 400 376 / 376 117 / 117 364 / 362 80 / 80 360 / 360 84 / 85 1381 / 1380 600 573 / 574 174 / 174 545 / 545 110 / 110 550 / 550 114 / 114 2066 / 2067 800 750 / 752 233 / 234 728 / 727 150 / 150 720 / 720 154 / 154 2735 / 2737 1000 940 / 941 288 / 289 919 / 919 190 / 190 900 / 900 182 / 182 3419 / 3421

CVN 2828 / 2831 872 / 874 2738 / 2734 570 / 570 2710 / 2710 577 / 578 10295 / 10297

ACKNOWLEDGMENT

We thank the following computing centers where the com- putations of our project were carried out: Academic Com- puter Centre in Gda´nsk TASK, Academic Computer Centre CYFRONET AGH, Krak´ow (computing grant 027/2004), Pozna´n Supercomputing and Networking Center, Interdisci- plinary Centre for Mathematical and Computational Model- ing, Warsaw University (computing grant G27-9), Wrocław Centre for Networking and Supercomputing (computing grant 30).

We would like to thank also Jakub Nalepa for his valuable comments and feedback on the contents of this paper.

REFERENCES

[1] Berger J., Barkaoui M., Brysy O., A route-directed hybrid genetic approach for the vehicle routing problem with time windows, INFOR 2003;41: 179–94.

[2] Błocho M., Czech Z.J. An improved route minimization algorithm for the vehicle routing problem with time windows, Studia Informatica Vol.32, No. 3B(99), Gliwice 2011, 5–19.

[3] Błocho M., Czech Z.J. A parallel algorithm for minimizing the number of routes in the vehicle routing problem with time windows, R. Wyrzykowski et al. (Eds.): PPAM 2011, Part I, LNCS 7203, pp. 255–265. Springer, Heidelberg (2012).

[4] Br¨aysy O., Hasle G., Dullaert W., A multi-start local search algorithm for the vehicle routing problem with time windows, European Journal of Operational Research, 2002.

[5] Caseau Y., Laburthe F., Heuristics for large constrained vehicle routing problems, Journal of Heuristics 1999;5: 281–

303.

[6] Chiang WC., Russell RA., A reactive tabu search meta- heuristic for the vehicle routing problem with time windows, INFORMS Journal on Computing 1997;9: 417–430.

[7] Cordeau J-F., Laporte G., Mercier A., A unified tabu search heuristic for vehicle routing problems with time windows, Journal of the Operational Research Society 2001;52: 928–

936.

[8] Dullaert W., Br¨aysy O., Routing with relatively few customers per route, Top, 2002.

[9] CI TASK - Galera:

http://www.task.gda.pl/kdm/sprzet/Galera

[10] Gehring H., Homberger J., A parallel hybrid evolutionary metaheuristic for the vehicle routing problem with time windows, In: Miettinen K, Mkel M, Toivanen J, editors.

Proceedings of EUROGEN99. Jyvskyl: University of Jyvskyl, 1999. p. 57–64.

[11] Gehring H., Homberger J., Parallelization of a two-phase metaheuristic for routing problems with time windows, Asia- Pacific Journal of Operational Research 2001;18: 35–47.

[12] GH benchmarking tests:

http://www.sintef.no/Projectweb/TOP/Problems/VRPTW/

[13] Glover F., Future paths for integer programming and links to artificial intelligence, Computers and Operations Research 1986;13: 533–549.

[14] Homberger J, Gehring H., Two evolutionary meta-heuristics for the vehicle routing problem with time windows, INFOR 1999;37: 297–318.

[15] Holland JH., Adaptation in natural and artificial systems, Ann Arbor: University of Michigan Press, 1975.

[16] Jung S., Moon B-R., A hybrid genetic algorithm for the vehicle routing problem with time windows, In: Proceedings of Genetic and Evolutionary Computation Conference. San Francisco: Morgan Kaufmann, 2002. p. 1309–1316.

[17] Lim A., Zhang X., A two-stage heuristic with ejection pools and generalized ejection chains for the vehicle routing prob- lem with time windows, Informs Journal on Computing 19 (2007) 443–457.

[18] Mester D., A parallel dichotomy algorithm for vehicle routing problem with time windows, Working paper, Minerva Opti- mization Center, Technion, Israel, 1999.

(8)

Table IV

RESULTS FOR SELECTEDGHTESTS: RC2 6 2, RC2 8 5, RC2 10 5 (p –NUMBER OF PROCESSES, ¯τ –AVERAGE EXECUTION TIME[S],

S –SPEEDUP)

p τ (EAX)¯ ¯τ (BC) S(EAX) S(BC)

RC2 6 2

1 2573.1 2573.1 1.00 1.00

8 381.2 374.0 6.75 6.88

16 184.3 203.9 13.96 12.62

24 121.8 123.9 21.13 20.76

32 86.1 91.1 29.87 28.24

40 70.6 73.9 36.43 34.82

48 59.0 62.8 43.61 40.99

56 53.6 58.5 48.03 44.02

64 49.6 52.4 51.89 49.12

RC2 8 5

1 369.7 369.7 1.00 1.00

8 49.6 51.2 7.45 7.22

16 25.9 30.4 14.27 12.16

24 17.5 18.5 21.18 19.97

32 12.3 13.3 30.02 27.81

40 10.1 11.1 36.50 33.20

48 8.2 9.5 44.90 39.01

56 7.3 8.5 50.49 43.39

64 6.9 7.6 53.54 48.97

RC2 10 5

1 454.7 454.7 1.00 1.00

8 61.5 64.2 7.39 7.08

16 31.3 35.6 14.51 12.64

24 20.7 24.1 21.99 18.88

32 14.8 16.8 30.80 27.02

40 12.3 14.8 37.00 30.81

48 10.8 11.9 41.93 38.21

56 9.0 10.4 50.28 43.91

64 8.8 9.5 51.91 47.88

[19] Mester D., An evolutionary strategies algorithm for large scale vehicle routing problem with capacitate and time windows restrictions, Working paper, Institute of Evolution, University of Haifa, Israel, 2002.

[20] Nalepa J., Czech Z.J. A parallel heuristic algorithm to solve the vehicle routing problem with time windows, Studia Infor- matica Vol.30, No. 1(82), Gliwice 2011 (submitted).

[21] Nagata Y., Br¨aysy O. A Powerful Route Minimization Heuris- tic for the Vehicle Routing Problem with Time Windows.

Operations Research Letters 37, 2009, 333–338.

[22] Nagata Y., Br¨aysy O., Dullaert W., A penalty-based edge assembly memetic algorithm for the vehicle routing problem with time windows. Operations Research Letters 37, 2010, 724–737.

[23] Nagata Y. Kobayashi S.: Edge assembly crossover: a high- power genetic algorithm for the travelling salesman problem.

In: Proceedings of the 7th international conference on genetic algorithms, 1997. p. 450–457.

[24] Nagata Y.: Edge assembly crossover for the capacitated vehicle routing problem.In: Proceedings of the 7th European Conference on evolutinary computation in combinatorial op- timization, 2007. p. 124–153.

[25] Potvin J-Y., Rousseau J-M., An exchange heuristic for routing problems with time windows, Journal of the Operational Research Society 1995;46: 1433–1446.

[26] Potvin J-Y., Rousseau J-M., A parallel route building algo- rithm for the vehicle routing and scheduling problem with time windows, European Journal of Operational Research 1993;66: 331–340.

[27] Rechenberg I., Evolutionsstrategie, Stuttgart: Fromman- Holzboog, 1973.

[28] Rochat Y., Taillard E., Probabilistic diversification and in- tensification in local search for vehicle routing, Journal of Heuristics 1995;1: 147–167.

[29] Russell RA., Hybrid heuristics for the vehicle routing problem with time windows, Transportation Science 1995;29: 156–166.

[30] Schulze J., Fahle T., A parallel algorithm for the vehicle routing problem with time window constraints, Annals of Operations Research 1999;86: 585–607.

[31] Solomon MM., Algorithms for the vehicle routing and scheduling problems with time window constraints, Opera- tions Research 1987;35(2):254–265.

[32] Taillard E., Badeau P., Gendreau M., Guertin F., Potvin J-Y., A tabu search heuristic for the vehicle routing problem with soft time windows, Transportation Science 1997;31: 170–186.

[33] Thompson PM., Psaraftis HN., Cyclic transfer algorithms for multivehicle routing and scheduling problems, Operations Research 1993;41: 935–946.

[34] Voudouris C., Tsang E., Guided local search, in: F. Glover (Ed.), Handbook of Metaheuristics, Kluwer, 2003, 185–218.

Cytaty

Powiązane dokumenty

Для визначення впливу зміни факторів (прибутку, середньорічної величини основних виробничих фондів і середньорічної величини матеріальних оборотних коштів)

A parallel algorithm for minimizing the number of routes in the vehicle routing problem with time windows (VRPTW) is presented.. The algorithm components cooperate periodically

Keywords-parallel memetic algorithm, parallel processes co- operation schemes, genetic and local search algorithms, vehicle routing problem with time windows..

Gemiddeld verminderden de verkasmethode Remaining Stack Capacity Improved (RSC Improved) en Remaining Stack Capacity without time window (RSC no C) de meeste verkasbewegingen. Als

Overall the (re)stack method Remaining Stack Capacity Improved (RSC Improved) and Remaining Stack Capacity without time window (RSC no C) reduce the most restack movements. If

(We follow the popular shorthand of writing with probability one for a probability that approaches 1 as n in- creases. In our case, the probability approaches 1 exponentially fast.)

Techniques, whose impact on results achieved for DVRP is analyzed, include: solving the current state of a problem with a capacitated clustering and routing heuristic algorithms,

To estimate the value of the agent-based solution approach, we study it in comparison to two optimization based solution approaches: (i) a mixed-integer program for solving the static