• 沒有找到結果。

A Family Competition Genetic Algorithm for the Pickup and Delivery Problems with Time Window

N/A
N/A
Protected

Academic year: 2022

Share "A Family Competition Genetic Algorithm for the Pickup and Delivery Problems with Time Window"

Copied!
15
0
0

加載中.... (立即查看全文)

全文

(1)

A Family Competition Genetic Algorithm for the Pickup and Delivery Problems with

Time Window

Wan-rong Jih

Jane Yung-jen Hsu

jih@agents.csie.ntu.edu.tw yjhsu@csie.ntu.edu.tw

Department of Computer Science and Information Engineering National Taiwan University

Abstract

This paper presents a new approach based on genetic algorithms to solving the single- vehicle pickup and delivery problem with time window constraints (1-PDPTW). In partic- ular, we illustrate how the Family Competition Genetic Algoritm (FCGA) is applied to the 1-PDPTW, and compare its results with previous solutions to the problem. Genetic algo- rithms have been shown to find feasible or near-optimal solutions when traditional methods would fail within a reasonble amount of time. By incorporating the concept of families to maintain diversity, FCGA further improves solution quality and increases the proba- bility of finding the optimal solutions without much extra resource demands. Extensive experiments on FCGA with various crossover and mutation operators show that the new approach succeeds in finding the optimal solutions for 1-PDPTW under 50 tasks, and can obtain near-optimal or feasible solutions in most problems up to 100 tasks.

Keywords: pickup and delivery problem, vehicle routing problem, time windows, genetic algo- rithm

1 Introduction

Many real-world transportation problems, such as vehicle dispatching[28, 37] and winter gritting[11, 26], can be formulated as the pickup and delivery problems (PDP)[2]. When the problem involves finding a set of minimum-cost routes for a fleet of vehicles to satisfy transportation requests with time constraints, it is called the pickup and delivery problem with time windows (PDPTW).

Vehicles are assumed to depart from a common depot. For each transportation request, or a task, loading and unloading shall be done within a particular time interval. It is also associated with

PhD student, Department of Computer Science and Information Engineering, National Taiwan University

Associate Professor, Department of Computer Science and Information Engineering, National Taiwan Uni- versity

(2)

a load, that is, the specific weight to be delivered. Each vehicle can carry a limited weight. A special class of PDPTW, the 1-PDPTW, is to find the optimal route for a single vehicle to serve all the transportation requests.

The PDPTW belongs to the class of NP-hard problems[25], that is, the computation required to find a solution grows exponentially with its problem size. Psaraftis[31, 32, 33] proposed a solution using dynamic programming with a time complexity of O(n23n), where n is the number of tasks. The proposed method solved PDPTW problems with up to 10 transportation requests, i.e.

the solution route involves at most 21 location points. Desrosiers et al.[9] improved the original dynamic programming algorithm with elimination criteria, and solved the problems up to 40 tasks effectively. While faster CPUs have enable optimal solutions to be obtained for slightly larger problems, the algorithms still fail to find optimal solutions except for problems of relatively small size. Therefore, heuristic methods are designed to solve large problems of PDPTW on demand.

Sexton et al.[36] formulated the problem as a linear program and decompose it into independent subproblems. Dumas et al.[10] employed the column generation scheme to solve 1-PDPTW for up to 55 paired requests. Comprehensive surveys have been compiled by Dumas[10], Savelsbergh[35]

and Sigurd[38].

There are several well-known problems related to PDPTW. In the dial-a-ride problem (DARP), customers making the transportation requests are the load to be carried, and each customer is assumed to be of unit weight. DARP can be solved by dynamic programming as proposed by Psaraftis[31, 32, 33] and Desrosiers[9]. Furthermore, approximation algorithms for solving DARP were given in Madsen[27] and Charikar et al.[5]. Surveys by Christofides[6] and Laporte[21]

include both exact and heuristic cases to solving the traveling salesman problem (TSP). The traveling salesman problem with precedence constraints (TSPPC) imposes an ordering on the locations to be visited. Heuristic approaches have been developed by Anily[1], Gendreau[14] and Moon[4]. The vehicle routing problem (VRP) is a PDP, except that every task has been assigned to a common delivery location. Overviews of exact and approximate algorithms for VRP are provided by Psaraftis[34] and Laporte[22]. Readers may refer to Golden[16], Solomon[39] and Desrochers[8] for surveys on VRPTW, and a recent survey by Desaulniers et al.[7]. Laporte[23]

collected a bibliography of routing related problems, including references on VRP and TSP.

Genetic algorithms (GAs) have been successfully applied to solve many combinatorial prob- lems, including several types of VRP and TSP. Two edge-based recombination operators, al- ternate edges crossover and edge recombination crossover, were proposed by Grefenstette[17]

and Whitley[43]. Starkweather[40] introduced the enhanced edge recombination crossover on TSP. He also compared many genetic operators including order crossover, order crossover#2[41], partially-mapped crossover[15] and cycle crossover[29]. Homaifar[18] presented matrix represen- tation and matrix crossover for solving the TSP. Freisleben and Merz[12, 13] invented distance preserving crossover for TSP such that the offspring of this operator can escape the local optima in the search space. Surveys of GA on TSP were presented by Potvin[30] and Larranaga[24].

Blanton and Wainwright[3] proposed two crossover operators, merge crossover#1 and merge crossover#2, that utilize global knowledge to explore the solution space. Jih[19, 20] performed a comparative study of GA with various recombination operators in solving PDPTW, and showed that the merge crossover operators are superior to the traditional ones. On the other hand, a new variation of GA called Family Competition Genetic Algorithm (FCGA) has been successfully applied to TSP and routing-related problems[42]. This research explores FCGA-based solutions

(3)

to 1-PDPTW.

Section 2 presents the formal definition of 1-PDPTW, followed by the GA construction in terms of the chromosome representation, fitness function, and genetic operators. The FCGA algorithm is outlined in Section 4. Experimental results are summarized in Section 5, followed by the conclusions in Section 6.

2 Pickup and Delivery Problem with Time Windows

In the single-vehicle pickup and delivery problem (1-PDP), a route must be constructed in order to satisfy transportation requests. Each transportation request specifies the weight of the load to be transported, a location where it is to be picked up and another location where it is to be delivered. Suppose that the beginning of a route is a depot from which the vehicle departs.

Starting from the depot, the vehicle travels through all the locations where the transportation requests are specified. After the vehicle has fulfilled all the transportation requests, the vehicle will park at one of the delivery locations.

The single-vehicle pickup and delivery problems with time constraints (1-PDPTW) are strictly harder than the basic 1-PDP problems. In addition to the intrinsic precedence and capacity constraints, the temporal constraints complicate the problem significantly. Each pickup and delivery location is associated with a time window, which specifies the service time interval allowed.

2.1 1-PDPTW

Let N = {1, . . . , n} represent the set of n transportation requests. For each task i ∈ N, the time windows [ai+, bi+] and [ai, bi] denote the available time interval of pickup location i+ and delivery location i, respectively. A positive number qiindicates the load of task i. While serving the transportation requests, the vehicle shall not exceed the capcaity limit Q.

Given a directed graph G = (V, A), let V = {0} ∪ V+∪ V be a set of nodes, where 0 is an initial depot. V+ = {i+ | i ∈ N} is the set of pickup locations, and V = {i| i ∈ N} is the set of delivery locations. The arc set is A = {(r, s) | r 6= s, r, s ∈ V }.

There are three types of constraints for 1-PDPTW: precedence constraints, capacity constraints and time window constraints. Assume that a vehicle is parked at the initial depot 0, and it shall visit all the specified locations exactly once. To accomplish a task i ∈ N, the vehicle shall serve the pickup location i+ before the delivery location i; this is the precedence constraint. The capacity constraint states that the total load of a vehicle cannot exceed its capacity Q.

If the vehicle arrives at location r ∈ V+∪ V, its arrival time tr should meet the criterion ar ≤ tr ≤ br, where [ar, br] is the time window of location r. However, if the arrival time tr is earlier than the lower bound of the available time interval ar, it has to wait until the time reaches ar. That is, the departure time of a vehicle at location r will be equal to max{ar, tr}.

These criteria form the time window constraints.

(4)

2.2 Goal

Our goal is to find a vehicle route that starts from an initial depot, fulfills all the transportation requests, and ends at one of the delivery locations. The path should be a feasible route that satisfies the associated constraints, and minimizes the total traveling time and the total waiting time of the vehicle.

3 Construction of Genetic Algorithm

Genetic algorithms (GAs) are search algorithms based on the mechanics of natural selection and natural genetics. As in evolution, genetic algorithms utilize genetic recombination and replication on strings as the optimization procedures. The approach has been shown to be very effective in searching for solutions to NP-hard problems[25].

Deployment of any genetic algorithm requires defining the problem encoded in some chro- mosome representation, as well as the corresponding evaluation function, also called the fitness function. Parent selection methods often choose individuals from the current population based on their fitness functions. Given a chromosome representation, recombination operators are designed to create new individuals from the selected parents.

3.1 Chromosome representation

A solution to 1-PDPTW will be represented as an ordered list of locations. Given a set of transportation requests N = {1, . . . , n}, let i+ and i denote the pickup and delivery location of task i, respectively. For instance, (0 3+1+12+23) is the chromosome representation of route 0 → 3+→ 1+→ 1→ 2+→ 2→ 3. By simply counting the pickup and delivery locations of every transportation request and an initial depot, the length of every chromosome will be 2n + 1.

The simple permutation representation intuitively follows the travelling sequence, and it is the most common and popular representation for solving the order-based problems.

3.2 Fitness function

Given a chromosome that represents a route S, the corresponding fitness function is defined in Equation (1).

Φ(S) = ftravelcost(S) + fpenalty(S) (1) The value of ftravelcost(S) is the total travel time for a vehicle to complete route S, including the waiting time if the vehicle arrives at a location early. The penalty function of route S, fpenalty(S), defines the punishments for violating some of the constraints. The vehicle receives a penalty if it is overloaded or late at any location. In a route, if any specific task i violates the precedence contraint, an adjustment procedure will be performed. This procedure swaps the positions of location i+ and i and makes the pickup location i+ to appear before the delivery location i.

A route may violate the constraints during the exploration of genetic algorithm. A route is feasible if it does not violate any constraint; otherwise, it is infeasible. According to the definition of Φ(S), the value of Φ(Sinf easible) is typically much larger than that of Φ(Sf easible), where Sf easible

(5)

denotes a feasible route and Sinf easibleis an infeasible route. The goal of the 1-PDPTW is to find a feasible route S such that minimize Φ(S).

3.3 Crossover

In this paper, we consider four crossover operators. The order crossover[29] (OX) and uniform order-based crossover[41] (UOX) are two popular traditional crossovers to solve routing-related problems. Merge crossover#1 (MX1) and merge crossover#2 (MX2) are recently invented by Blanton[3] for solving VRPTW; these two merge crossovers utilize global knowledge to explore their search space. The two traditional crossover operators have been introduced by many exhaustive studies[41, 29].

Most traditional order-based crossover operators do not have strong connections to the con- straints in the problem domain. In contrast, the merge crossover operators utilize global knowl- edge about 1-PDPTW constraints, in the form of a global precedence vector, in order to achieve the precedence relationship among the genes. For example, in 1-PDPTW, the order of time windows can be represented as a global precedence vector for the merge crossovers. Operators MX1 and MX2 will produce new chromosomes according to the precedence among the genes.

Operator MX1 produces a child with the sequence of order close to the global precedence vector;

while MX2 produces an offspring in which the genes with lower priority are moved to the end of the chromosome.

3.4 Mutation

A mutation operator works on a single chromosome, which will be substituted by the mutated individual. In this approach, instead of using a fixed mutation rate, mutation is applied only when the offspring are identical to their parents.

The genetic algorithms in our experiments applied two mutation operators in solving the 1- PDPTW. The first mutation operator, named 2-point mutation, selects two genes randomly, and their positions are interchanged. This operator creates a new route with four different edges from its original route. The second mutation operator chooses two cut sites randomly and reverse the sub-route among the cut sites. This mutation operator is identical to the 2-opt move in TSP[41], in which the new route differs from the original one by two edges.

4 Family Competition GA

The family competition genetic algorithm (FCGA) is a modern approach introduced by Yang[44].

Adapting the concept of families to traditional GA yields the principal of FCGA. Once an individual has been selected to perform crossover, traditional GA selects another individual to produce a single offspring, whereas FCGA produces a family with more than one offspring, one from each randomly selected mate. In FCGA, the scheme of family competition maintains a constant size of the population, that is, only the champion of each family survives.

Algorithm 1 elaborates the procedure of the family competition genetic algorithm. The first three steps are the initialization process of FCGA. For any given generation t, the population Pt

(6)

Algorithm 1 The procedures of FCGA

1: t = 0;

2: Initial population : Pt ← {I1t, I2t, . . . , Imt };

3: Evaluation: Φ(I1t), Φ(I2t), . . . , Φ(Imt );

4: repeat

5: T ← ∅;

6: for i = 1 to m do

7: Family father: Fit← Iit;

8: Family: Cit ← ∅;

9: for j = 1 to u do

10: Selection: alternative parent Atj ∈ Pt;

11: Recombination: cj ← Om(Oc(Fit, Atj));

12: Evaluation: Φ(cj);

13: Cit← Cit∪ {cj};

14: end for

15: T ← T ∪ best(Cit);

16: end for

17: Pt+1⊂ {Pt∪ T };

18: t = t + 1;

19: until reach the termination condition

20: Output the solutions;

contains m individuals. The evaluation function Φ is as defined in Equation (1) of section 3.2.

Steps 4 through 19 present the main procedure of FCGA in generation t. Each individual Iit in Pt, where i = 1, 2, . . . , m, takes turn to be the father Fitin creating a family Citof u offspring.

The family construction process is detailed in Steps 9 to 14. To produce a new offspring cj, an alternative parent Atj, which should be distinct from the family father Fit, is randomly selected from population Pt. Crossover operator Oc and mutation operator Om are then applied to Fit and Atj. In Step 15, function best(Cit) returns the individual with the best, i.e. lowest, fitness value from family Cit. The best members of each family are collected in a temporary set T . In Step 17, the best m individuals from either Pt or T are selected to form the next generation.

Algorithm 1 repeats the main loop until the termination conditions are met. Upon termination, FCGA outputs the best solutions explored so far.

5 Experimental design and results

A major problem for research on solving PDPTW is the lack of standard test sets. While standard data sets for several related problems do exist, they cannot be used to test PDPTW. The TSP data sets do not include precedence, capacity or time window constraints; while the VRPTW data sets lack precedence constraints. In order to compare the genetic algorithms for solving PDPTW under various combinations of operators and parameters, it is necessary to create our own test data sets.

(7)

5.1 Experimental design

Algorithm 2 desribes the procedure for generating the random test sets used in our experiments.

The main challenge is to create test data that is random enough to provide good coverage on the problem space, while ensuring the constraints are not too tight to exclude all possible solutions.

Algorithm 2 Create test data for 1-PDPTW

Require: Given the number of task n, and the width of time window width.

Ensure: To produce a task set N with n transportation requests, including pickup and delivery locations from a set V , loads {q1· · · qn} and time window {[a1, b1] · · · [an, bn]}, which admits feasible solutions.

1: 0 is an initial depot;

2: N = {1, · · · , n}

3: for i ∈ N do

4: Generate the pickup location i+∈ V+ randomly;

5: Generate the delivery location i ∈ V randomly;

6: Generate the load qi randomly;

7: end for

8: V = 0 ∪ V+∪ V;

9: Evaluate the traveling time drs, r, s ∈ V ;

10: Randomly generate a route, which satisifies the precedence contraint;

11: AverageT ime =

P

r∈V

P

s∈V drs

|V |×|V |

12: Suppose that the vehicle arrives location i at time ti;

13: for i ∈ V+∪ V do

14: ai = ti− random(width) × AverageT ime;

15: bi = ti+ random(width) × AverageT ime;

16: end for

17: [ai, bi] is the time window of location i ∈ V ;

18: Output the test data;

Each generated test set consists of n tasks with 2n + 1 locations. Steps 1 to 8 in Algorithm 2 initialize the essential elements of tasks, including the pickup locations, delivery locations and the loads. Step 9 calculates the travel time between any locations involved in the requests.

Moreover, this algorithm guarantees the existence of solutions. To assure the production of a test set with at least one solution, Algorithm 2 randomly generates a primary route that satisfies the intrinsic precedence constraint. The arrival time ti of location i is used to generate the corre- sponding time window [ai, bi] using the parameter width in deciding the width of time window.

Function random(width) in Steps 14 and 15, randomly generates a real number between 0 and width. As a result, the difference between ai and bi is no more than 2 × width × AverageT ime.

5.2 Experimental results

In our experiments, the family competition genetic algorithm (FCGA) is compared with the tra- ditional genetic algorithm (GA) using four crossovers operators under three different crossover

(8)

rates (0.45, 0.60, and 0.75). Comparative results are tabulated for the four crossover opera- tors, which are referred to as order-based crossover (OX), uniform crossover (UOX)[41], merge crossover#1 (MX1), and merge crossover#2 (MX2)[3]. The experiments also adopt two muta- tion operators: 2-point mutation and the 2-opt mutation. For each test case, we perform 30 trials under the same configuration of parameters.

Table 1: A Comparison of the best results.

Genetic Operators & approaches The best or

task OX UOX MX1 MX2 optimal result

size GA FCGA GA FCGA GA FCGA GA FCGA GA FCGA DP

10 875 872 872 872 872 872 872 872 872 872 872

1 2 18 27 30 30 30 30

20 x 2186 2030 2030 2030 2030 2030 2030 2030 2030 2030

x 1 22 30 1 1 21 11

30 x x 3713 3713 3713 3720 3713 3713 3713 3713 3713

x x 5 20 2 4 24 7

40 x x 4386 4386 4389 4389 4386 4386 4386 4386 4386

x x 3 23 2 10 28 12

50 x x 5752 5752 5753 5753 5752 5753 5752 5752 5752

x x 1 17 30 30 3 24

60 x x 5658 5658 5658 5658 5658 5658 5658 5658 x

x x 3 5 3 1 29 30

70 x x 7221 7221 7252 7239 7221 7221 7221 7221 x

x x 2 19 10 1 2 2

80 x x 7849 7849 7903 7909 7850 7849 7849 7849 x

x x 1 4 1 18 1 1

90 x x x 8618 8622 8645 8618 8618 8618 8618 x

x x x 5 1 1 1 1

100 x x 10600 10600 10616 10600 10600 10600 10600 10600 x

x x 1 5 4 3 10 26

Table 1 shows the best results of running the four crossover operators respectively. The first column represents the number of transportation requests. Under the common heading

”Genetic Operators & approaches”, Columns 2 to 9 list the results of using the four crossover operators. Each cell consists of two elements: the top value indicates the best result found by the corresponding approach, whereas the value in the bottom represents the number of times when the best result is found. The latter is also called the appearance count. Symbol ’x’ indicates that no feasible solution can be found. Values equal to the best-known result are printed in

(9)

italicized style. The rightmost columns record the best solutions obtained by using GA, FCGA, and dynamic programming (DP)[33] respectively.

The results in Table 1 show that the order-based crossover OX is unable to find any feasible solution for relatively small problems. Therefore, it is not suitable for 1-PDPTW. On the other hand, dynamic programming produces optimal solutions for problems with size smaller than 50; the uniform crossover and two merge crossover operators can find optimal solutions in most cases. The results also show that FCGA consistently improves the quality of solutions and the chance of producing optimal solutions using the uniform crossover operator. When applied with the merge crossover operators, FCGA improves the quality of solutions for most, while slightly worsens the solutions of MX1 for task size 30, 80 and 90, as well as the solution of MX2 for 50 tasks.

Consider the chance of producing the best solutions for the various combinations. Applying UOX in FCGA generally increases the appearance count of the best results. In contrast, the appearance count decrases for MX1 in FCGA for task size 60 and larger; FCGA with MX2 obtains fewer optimal solutions for task size of 20, 30 and 40.

0 50000 100000 150000 200000 250000 300000 350000 400000 450000 500000

0 50 100 150 200 250

Fitness value

Generation

The average fitness value of 80 tasks (MX1, 60% crossover rate, 2-point mutation, 30 runs)

GA(avg) FCGA(avg) GA(best) FCGA(best)

Figure 1: The best and average fitness values of MX1 in 80 tasks.

To evaluate the quality of the solutions found by the various genetic algorithms, Figure 1 depicts the best and average fitness values of the solutions for 1-PDPTW involving 80 tasks.

The x-coordinate denotes the number of generations, whereas the y-coordinate corresponds to the fitness values. Compared with FCGA, the average fitness values for GA are much higher (i.e. worse) in every generation and the curve converges more slowly. In addition, the results indicate that the best results obtained by FCGA and GA are very close and the lines converge

(10)

at the same point.

Most of the configurations in our experiments generated similar results to the ones shown in Figure 1. There are notable exceptions. For example, Figure 2 shows the best and average fitness values of solutions found by MX2 over thirty trials on 50-task PDPTWs. The curve denoting the average fitness values for FCGA converges prematurely into a higher value. One possible explanation is that the merge crossover operators can create near-optimal solutions earlier in the evolution process based on some domain knowledge. Unfortunately, FCGA has a higher tendency of being trapped in a local minimum, and converges to a non-optimal solution.

0 5e+06 1e+07 1.5e+07

2e+07 2.5e+07

3e+07

0 50 100 150 200 250 300 350

Fitness value

Generation

The average fitness value of 50 tasks (MX2, 60% crossover rate, 2-opt mutation, 30 runs)

GA(avg) FCGA(avg) GA(best) FCGA(best)

Figure 2: The best and average fitness values of MX2 in 50 tasks.

Figure 3 illustrates the average CPU time required by FCGA and GA in solving the problems.

The x-coordinate represents the problem size, and the y-coordinate denotes the execution time measured in seconds. In general, the execution time for GA is shorter than that of FCGA due to the overhead in the reproductive process. Figure 3 also show that UOX takes more time than the merge crossover operators in finding a solution. The experimental results in Table 1 and Figure 3 demonstrate that UOX works well with FCGA in generating the best solutions despite a longer execution time.

In real-world applications, it is often better to start serving customer requests based on a feasible (or near-optimal) solution instead of keeping them waiting while searching for the optimal solution. Table 2 summerizes the hit ratio, in terms of percentage, of finding a feasible solution.

The results indicate that FCGA improves the probability of obtaining feasible solutions in most cases. Based on the results in Figure 3 and Table 2, we can conclude that MX1 and MX2 are the better choices for real-time applications.

(11)

0 500 1000 1500 2000

0 20 40 60 80 100

CPU time(sec)

Task size

The average CPU execution time, 180 runs

UOX(FCGA) UOX(GA) MX2(FCGA) MX2(GA) MX1(FCGA) MX1(GA)

Figure 3: A comparison of CPU time (UOX, MX1, and MX2).

Table 2: Hit ratios of the feasible solution in 180 trials.

feasible/trials(%)

task UOX MX1 MX2

size GA FCGA GA FCGA GA FCGA

10 100.00 100.00 100.00 100.00 100.00 100.00 20 98.89 100.00 100.00 100.00 100.00 100.00 30 70.00 93.33 100.00 97.78 98.89 98.33 40 45.00 90.00 100.00 100.00 99.44 96.11 50 8.33 46.67 100.00 100.00 99.44 84.44 60 5.00 15.56 98.33 100.00 96.67 87.22 70 7.22 47.22 100.00 100.00 97.22 95.00 80 11.67 11.67 21.67 55.00 61.11 80.56

90 x 8.89 61.11 96.11 71.67 87.22

100 1.11 13.33 7.78 26.67 25.00 63.89

(12)

Let us summarize the results from our experiments. First, FCGA improves the solution quality of UOX, both the solution costs and the appearance count. Second, for uniform order-based crossover operator like UOX, FCGA can enhance its local search capability, thereby increase the opportunity of reaching the optimal solution. On the other hand, while FCGA improves the execution time of the merge crossover operators, it does not increase the solution qualities as it tends to get stuck in the local minimum.

6 Conclusion and discussion

This paper presented a comprehensive study on genetic algorithm-based approach to solving the single-vehicle pickup and delivery problem with time constraints. Genetic algorithms have been shown to find feasible or near-optimal solutions when traditional methods would fail within a reasonble amount of time. Instead of utilizing offsprings of parent chromosomes directly, the Family Competition Genetic Algorithm (FCGA) selects a champion offspring from siblings from the same parents to maintain diversity and balance of population. By incorporating the concept of families, FCGA further improves solution quality and increases the probability of finding the optimal solutions without much extra resource demands.

Extensive experiments were conducted to compare the FCGA with traditional GA’s under various crossover and mutation operators. The results showed that the FCGA succeeds in finding the optimal solutions for 1-PDPTW under 50 tasks, and can obtain near-optimal or feasible solutions in most problems up to 100 tasks. Addtionally, by comparing the solution cost of FCGA with that of traditional GA, we found that FCGA improves the solution qualities in most cases.

One important observation from the experiments in solving the 1-PDPTW is that not all recombination operators benefit from FCGA. In particular, FCGA is best suited for genetic op- erators that explore the search space uniformly, such as uniform crossover. For genetic operators designed to do greedy search, FCGA may be trapped in local minimum. Our experiments showed that applying family competition in merge crossovers did not improve the solutions substantially.

We expect to continue designing additional recombination operators in order to further under- stand the characteristics of the proposed scheme in solving PDPTW and other related problems.

References

[1] S. Anily and G. Mosheiov. The traveling salesman problem with delivery and backhauls.

Operations Research Letters, 16:11–18, 1994.

[2] A. A. Assad. Modeling and implentation issues in vehicle routing. In B. L. Golden and A. A. Assad, editors, Vehicle Routing: Methods and Studies, pages 7–45. Elsevier Science Publishers, North-Holland, Amsterdan, 1988.

[3] J. L. Blanton Jr. and R. L. Wainwright. Multiple vehicle routing with time and capacity constraints using genetic algorithms. In Proceedings of the Fifth International Conference on Genetic Algorithms and Their Applications, pages 452–459, 1993.

(13)

[4] G. Choi C. Moon, J. Kim and Y. Seo. An efficient genetic algorithm for the traveling salesman problem with precedence constraints. European Journal of Operational Research, 140(3):606–617, 2002.

[5] M. Charikar and B. Raghavachari. The finite capacity dial-a-ride problem. In IEEE Sym- posium on Foundations of Computer Science, pages 458–467, 1998.

[6] N. Christofides. Vehicle routing. In E. L. Lawler, J. K. Lenstra, A. H. G. Rinnooy Kan, and D. B. Shmoys, editors, The Traveling Salesman Problem: a guided tour of combinatorial optimization, pages 431–448. Elsevier Science Publishers, John Wiley & Sons Ltd, 1985.

[7] G. Desaulniers, J. Desrosiers, A. Erdmann, M.M. Solomon, and F. Soumis. The vrp with pickup and delivery. Cahiers du GERARD G-2000-25, Ecole des Hautes Etudes Commer- ciales, Montreal, 2000.

[8] M. Desrochers, J. K. Lenstra, and M. W. P. Soumis. Vehicle routing with time windows:

Optimization and approximation. In B. L. Golden and A. A. Assad, editors, Vehicle Rout- ing:Methods and Studies, pages 65–84. Elsevier Science Publishers, North-Holland, Amster- dan, 1988.

[9] J. Desrosiers, Y. Dumas, and F. Soumis. A dynamic programming solution of the large-scale single-vehicle dial-a-ride problem with time windows. American Journal of Mathematical and Management Sciences, 6(3 & 4):301–325, 1986.

[10] Y. Dumas, J. Desrosiers, and F. Soumis. The pickup and delivery problem with time windows. European Journal of Operational Research, 54:7–22, 1991.

[11] R. W. Eglese. Routeing winter gritting vehicles. Discrete Applied Mathematics, 48:231–244, 1994.

[12] B. Freisleben and P. Merz. New genetic local search operators for the traveling salesman problem. In Proceedings of the 1996 IEEE International Conference on Evolutionary Com- putation, pages 616–621, 1996.

[13] B. Freisleben and P. Merz. New genetic local search operators for the traveling salesman problem. In Proceedings of the 4th International Conference on Parallel Problem Solving from Nature (PPSN’96), pages 890–899, 1996.

[14] M. Gendreau, G. Laporte, and D. Vigo. Heuristics for the traveling salesman problem with pickup and delivery. Computers and Operations Research, 26(7):699–714, 1999.

[15] D. E. Goldberg and R. Lingle Jr. Allels, loci, and the traveling salesman problem. In Proceed- ings of the First International Conference on Genetic Algorithms and Their Applications, pages 154–159, 1985.

[16] B. L. Golden and A. A. Assad. Vehicle routing with time-window constraints. American Journal of Mathematical and Management Sciences, 6(3 & 4):251–260, 1986.

(14)

[17] J. Grefenstette, R. Gopal, B. Rosmaita, and D. Gucht. Genetic algorithms for the trav- eling salesman problem. In Proceedings of the First International Conference on Genetic Algorithms and Their Applications, pages 160–168, 1985.

[18] A. Homaifar, S. Guan, and G. E. Liepins. A new approach on the traveling salesman problem by genetic algorithms. In Proceedings of the Fifth International Conference on Genetic Algorithms and Their Applications, pages 460–466, 1993.

[19] W. R. Jih, Y. P. Chen, and Y. J. Hsu. A comparative study of genetic algorithms for vehicle routing with time constraints. In Proceedings of the 1996 International Computer Symposium, pages 17–24, 1996.

[20] W. R. Jih and Y. J. Hsu. Dynamic vehicle routing using hybrid genetic algorithms. In Proceedings of the 1999 IEEE International Conference on Robotics & Automation, pages 453–458, 1999.

[21] G. Laporte. The traveling salesman problem: An overview of exact and approximate algo- rithms. Management Science, 59:231–247, 1992.

[22] G. Laporte. The vehicle routing problem: An overview of exact and approximate algorithms.

Management Science, 59:345–358, 1992.

[23] G. Laporte. Routing problems: A bibliography. Annals of Operations Research, 61:227–262, 1995.

[24] P. Larranaga, C. Kuijpers, R. Murga, I. Inza, and S. Dizdarevich. Genetic algorithms for the travelling salesman problem: A review of representations and operators. Artificial Intelligence Review, 13:129–170, 1999.

[25] J. K. Lenstra and A. H. G. Rinnooy Kan. Complexity of vehicle routing and scheduling problems. Networks, 11:221–227, 1981.

[26] Y. O. Li and R. W. Eglese. An interactive algorithm for vehicle routeing for winter-gritting.

Journal of the Operational Research Society, 47:217–228, 1996.

[27] O. B. G. Madsen, H. F. Ravn, and J. M. Rygaard. A heuristic algorithm for a dial-a- ride problem with time windows, multiple capacities, and multiple objectives. Annals of Operations Research, 60:193–208, 1995.

[28] O. B. G. Madsen, K. Tosti, and J. Væds. A heuristic method for dispatching repair men.

Annals of Operations Research, 61:213–226, 1995.

[29] I. M. Oliver, D. J. Smith, and J. R. C. Holland. A study of permutation crossover operators on the traveling salesman problem. In Proceedings of the Second International Conference on Genetic Algorithms and Their Applications, pages 224–230, 1987.

[30] J. Y. Potvin. Genetic algorithms for the traveling salesman problem. Annals of Operations Research, 63:339–370, 1996.

(15)

[31] H. N. Psaraftis. A dynamic programming solution to the single vehicle many-to-many immediate request dial-a-ride problem. Transportation Science, 14(2):130–154, 1980.

[32] H. N. Psaraftis. An exact algorithm for the single vehicle many-to-many dial-a-ride problem with time windows. Transportation Science, 17(3):351–357, 1983.

[33] H. N. Psaraftis. Scheduling large-scale advance-request dial-a-ride systems. American Jour- nal of Mathematical and Management Sciences, 6(3 & 4):327–341, 1986.

[34] H. N. Psaraftis. Dynamic vehicle routing problems. In B. L. Golden and A. A. Assad, editors, Vehicle Routing:Methods and Studies, pages 223–248. Elsevier Science Publishers, North-Holland, Amsterdan, 1988.

[35] M. W. P. Savelsbergh and M. Sol. The general pickup and delivery problem. Transportation Science, 29(1):17–29, 1995.

[36] T. R. Sexton and Y. M. Choi. Pickup and delivery of partial loads with soft time windows.

American Journal of Mathematical and Management Sciences, 6(3 & 4):369–398, 1986.

[37] Y. Shen, J. Y. Potvin, J. M. Rousseau, and S. Roy. A computer assistant for vehicle dispatching with learning capabilities. Annals of Operations Research, 61:189–211, 1995.

[38] Mikkel Sigurd, David Pisinger, and Michael Sig. The pickup and delivery problem with time windows and precedences. Technical report, University of Copenhagen, August 2000.

[39] M. M. Solomon and J. Desrosiers. Time window constrained routing and scheduling prob- lems. Transportation Science, 1(1):1–13, Feburary 1988.

[40] T. Starkweather, S. McDaniel, K. Mathias, D. Whitley, and C. Whitley. A comparison of genetic sequencing operators. In Proceedings of the Fourth International Conference on Genetic Algorithms and Their Applications, pages 69–76, 1991.

[41] G. Syswerda. Schedule optimization using genetic algorithms. In L. Davis, editor, Handbook of Genetic Algorithms, pages 332–349. Van Nostrand Reinhold, New York, 1991.

[42] H.K. Tsai, J.M. Yang, and C.Y. Kao. A genetic algorithm for traveling salesman problems.

In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO-2001), pages 687–693, 2001.

[43] D. Whitley, T. Starkweather, and D. Fuquay. Scheduling problems and traveling sales- men: The genetic edge recombination operator. In Proceedings of the Third International Conference on Genetic Algorithms and Their Applications, pages 133–140, 1989.

[44] J. M. Yang and C. Y. Kao. Integrating adaptive mutations and family competition into genetic algorithms as function optimizer. Soft Computing, 4(2):89–102, 2000.

參考文獻

相關文件

In this paper, we build a new class of neural networks based on the smoothing method for NCP introduced by Haddou and Maheux [18] using some family F of smoothing functions.

In this paper, we propose a family of new NCP functions, which include the Fischer-Burmeister function as a special case, based on a p-norm with p being any fixed real number in

PROXIMAL POINT ALGORITHM FOR NONLINEAR COMPLEMENTARITY PROBLEM BASED ON THE GENERALIZED FISCHER-BURMEISTER MERIT FUNCTION.. Yu-Lin Chang and

A 60 s noise signal sampled at 1,087 Hz was applied for EEMD analysis. The original signal is plotted in Fig. 11, in which the multiple time scales of the noise and the blade

“A Nonlinear Optimization Approach for Solving Facility Layout Problems.” European Journal of Operational Research, Vol.57, 174-189. Genetic Algorithms and Engineering Design,

Biases in Pricing Continuously Monitored Options with Monte Carlo (continued).. • If all of the sampled prices are below the barrier, this sample path pays max(S(t n ) −

– If all the text fits in the view port then no scroll bars will be visible If all the text fits in the view port, then no scroll bars will be visible

(2004), "Waiting Strategies for the Dynamic Pickup and Delivery Problem with Time Window", Transportation Research Part B, Vol. Odoni (1995),"Stochastic and Dynamic