school of computer studies research report series - University of Leeds

8 downloads 0 Views 96KB Size Report
University of Leeds. SCHOOL OF COMPUTER STUDIES. RESEARCH REPORT SERIES. Report 2000.20. Evolutionary Driver Scheduling with Relief Chains by.
University of Leeds

SCHOOL OF COMPUTER STUDIES RESEARCH REPORT SERIES Report 2000.20

Evolutionary Driver Scheduling with Relief Chains by Raymond S K Kwan, Ann S K Kwan & Anthony Wren

July 2000

Abstract - Public transport driver scheduling problems are well known to be NP-hard, for which meta-heuristics are efficient and practical means of deriving near-optimal solutions. A hybrid approach is proposed, in which a Genetic Algorithm (GA) collaborates with a greedy heuristic to derive solution schedules. The role of the GA is to derive a small selection of good shifts to seed the greedy heuristics. The schedules constructed by the greedy heuristic are fed back to the GA for fitness evaluation and for extraction of any important traits identified in the schedule. These traits represent strong domain knowledge, which are propagated and utilised by the GA in the evolutionary process. In this paper, one particularly important trait called ‘Relief Chains’ is discussed. The new approach has been tested using real-life data sets, some of which represent very large problem instances. The results are generally better than those compiled by experienced schedulers, and are comparable to solutions found by integer linear programming (ILP). In some cases, solutions were yielded when the ILP failed within practical computational limits.

Keywords: Genetic Algorithm, metaheuristics, driver scheduling

1.

Introduction

Driver scheduling discussed in this paper is specifically for public transport, e.g. train, bus, and tram. Potential saving is significant because driver wages are a very large cost element of public transport operations. For example, bus driver wages account for about 45% of the total operating cost (Meilton (2000)).

A shift is referred to as a day’s work for a driver, which usually includes one or more breaks. Driver scheduling is a process of compiling a set of shifts, the driver schedule, which together cover all the vehicle work such that:

1



every piece of work is assigned to a shift ;



the shifts must comply with all the operational constraints and labour rules;



the total number of shifts is minimised;



the total cost is minimised.

Drivers can only be relieved at some designated places called relief points. The times when vehicles are at the relief points are known as relief opportunities. The work of a vehicle with relief opportunities is illustrated by a vehicle graph as shown in Figure 1.

Relief

opportunities are marked by ‘+’ imposed on a horizontal line, which represents the work of the vehicle in a day. Above the ‘+’ sign is the corresponding relief time, while below is a code for the relief point. A shift may contain several spells of continuous work on one or more vehicles.

Vehicle 38 :

0600 0715 0832 0943 1058 1203 1310 1420 1540 1605

1718

1920 2031 2144 2301 2316

+--+----+----+-----+----+---+-----+----+---+-----+-------+----+----+-----+---+ G

G

A

A

B

C

A

A

C

C

C

A

A

D

G

G

Figure 1. A vehicle graph

Driver scheduling has attracted much research interest since the 1960’s. Wren & Rousseau (1995) gave an overview of the approaches, mainly for solving bus driver scheduling problems. Research on train driver scheduling problems has only been more active since the 1990's (Kwan (1999), Kwan, Kwan, Parker, & Wren (1999), Caprara, Fischetti, Toth, Vigo,

2

& Guida (1997)). Many driver scheduling methods and systems have been reported in a series of international workshop conferences (e.g. Wilson (1999)).

Driver scheduling problems are well known NP-hard problems; it is not in general possible to obtain an optimal solution. In recent years, meta-heuristics (Glover & Laguna (1993), Rayward-Smith, Osman, Reeves, & Smith (1996)) have been widely used for seeking practical near-optimal solutions to NP-hard problems. The main advantages of metaheuristics are that they are usually very efficient in searching through very large solution spaces, always returning a solution, and each class of meta-heuristics has a methodical and strategic structure that is problem domain independent.

Genetic Algorithms form a major

class of meta-heuristics, which have been used for driver scheduling and related problems.

Wren & Wren (1995) started some exploratory work on applying GA’s for driver scheduling based on relatively small problems. Clement & Wren (1995) furthered the investigation. Both used a chromosome to represent the work pieces, the gene values indicating the selected shifts.

Since several positions on the chromosome must share the same value in

order to maintain integrity of individual shifts, a simple crossover operator will not be feasible and specialised crossover operators were investigated. The GA’s were very quick, but the resulting schedules were generally not very satisfactory.

A GA based on a divide and conquer approach was proposed by Hernandez & Corne (1996). Each problem was divided into several sub-problems by fragmenting a chromosome into smaller contiguous segments. Each sub-problem was allocated a sub-population that would evolve independently. Individuals from each sub-population are chosen and combined to

3

form an overall solution. The chromosome representation is similar to that of Wren & Wren. No comparative results were reported.

Kwan & Wren (1996) described a GA used as a pre-processor to ban many of the relief opportunities without affecting the quality of the prospective schedules, so that other driver scheduling methods could be run much faster on the reduced problem. Beasley & Chu (1996) reported some straightforward applications of GA’s on the classical set covering problem, which is often the base model for driver scheduling methods.

The research above and experience within our research group have suggested that it would be very difficult for a traditional GA to yield near optimal solutions for driver scheduling. A hybrid Genetic Algorithm has therefore been proposed by the authors and preliminarily outlined in Kwan, Kwan, & Wren (1999).

The proposed GA aims to solve the driver

scheduling problem as a set covering problem. The GA itself does not directly form or manipulate a full driver schedule. Instead, some shifts for seeding a schedule construction heuristic are evolved in the process. Also, special characteristics in good schedules are carried forward to new generations to assist the schedule construction heuristic, thereby focussing the search on a reduced solution space. In this paper we articulate the approach from a fresh and clearer perspective, and report on further research developments and their results.

2.

The GACT approach

A good driver schedule is expected to contain some patterns of work piece and relief combinations that are keys to making the shifts involved fit seamlessly. We call such patterns and characteristics combinatorial traits. Combinatorial traits are problem dependent

4

and very difficult to generalise, but they might be valuable in greatly reducing the search space if they are used to guide the scheduling process.

Our approach exploits combinatorial traits and is therefore called GACT (Genetic Algorithm with Combinatorial Traits). As a GA progresses, some fitter members persist for generations, and are therefore targets for the extraction of combinatorial traits.. Once a combinatorial trait is associated with a chromosome, it will be subject to the survival-of-the-fittest principle. If a weak combinatorial trait is by chance present in a schedule associated with a fit member and is extracted, it is likely to render the inheriting members inferior and therefore will not survive the evolution in future generations. In Section 4, we describe ‘Relief Chains’ as one of the combinatorial traits identified and how it is used in GACT.

The GACT approach (Figure 2) takes as input all the legal shifts that may potentially be useful. About 30,000 to 75,000 potential shifts typically would be input to the process, when the final schedule may contain only about 100 shifts.

All legal potential shifts Appraise

Construct

Potential seeding shifts

Seeding shifts

GA

Fitne ss

Combinatorial traits

evalu

ation

Schedule

Figure 2. The GACT approach

5

The solution search space is obviously enormous, causing difficulty in finding near optimal solutions. An appraisal process therefore eliminates potential shifts which are unlikely to be useful as seeding shifts. Every population member within the GA component consists of a set of suitable ‘seeding’ shifts instead of a complete schedule. These seeding shifts are then used as the basis for constructing a complete schedule by a greedy heuristic (details in Section 3). The schedule constructed is fed back to the GA for fitness evaluation of the corresponding population member and for the extraction of combinatorial traits. In Sections 2.2 and 2.3, two alternative methods investigated for appraising the potential shifts and forming a much smaller set of potential seeding shifts are described. The first method is based on the continuous solution of a relaxed LP, and the second is heuristic.

2.1

The GA component

The GA component of GACT is fairly standard with the exception of its mutation scheme, which will be discussed in Section 5. A fixed size population with replacement between generations is used.

Chromosome Representation The chromosome is a 0-1 binary representation in which each gene indicates whether a particular potential seeding shift is selected or not. Figure 3 shows a case in which the appraisal process has eliminated all the potential shifts except shifts 833, 1011, 1132, 1157, etc.

Not all of these will actually become seeding shifts. This chromosome has selected

shifts 1011, 1157, etc. as actual seeding shifts. If the potential seeding shift set is obtained from the relaxed LP solution, the number of genes to be assigned a value ‘1’ is further restricted to no more than the sum of the shift variables in the solution; which has been shown to be a very accurate estimate of the minimum number of shifts in the integer solution.

6

833 1011 1132 1157 2198 3056 3214 ....

0

1

0

1

1

0

0

...

8769 9654 9982 10232

0

1

0

Indices of the seeding shifts

0

Figure 3. Chromosome representation

Although only the chromosome will be operated on by the GA, there is other associated information stored along with each chromosome. First, the chromosome may have some inherited combinatorial traits. For instance, the relief chain trait (see Section 4) is a list of shifts involved in the chain. Unlike a chromosome, the list will not be split up but is passed on to the next generation in full. Second, the chromosome will have an associated solution schedule constructed based on the selected seeding shifts (see Section 3).

Fitness Function The fitness of a chromosome in GACT is not simply a function of its gene values, because the chromosome does not represent a complete schedule. Instead fitness assessment is based on the weighted cost of the solution schedule associated with the chromosome:

∑(C n

Unfitness =

j =1

j

+ 5000 )

where n = number of shifts in the schedule, and Cj is the cost of shift j. Since the higher the weighted schedule cost the less fit the chromosome is, the above function is a measure of unfitness. In most driver scheduling problems, the first objective is to minimise the number of shifts, and a large constant of 5000 per shift gives priority to this.

7

Crossover with inheritance The standard roulette wheel method is used for selecting parents for crossover. The number of crossovers per generation has been arbitrarily set to be half the population size. Offspring are not chosen for reproduction in the current generation, and the population replacement rate is governed by a given parameter.

Experiments have shown that the quality of offspring produced by uniform crossover is poor compared with those produced by single point crossover, even when good quality parents were used. The explanation could be that uniform crossover, by fragmenting the bit strings of the parent chromosomes, fails to preserve a good set of shifts that fit well together, and some useful characteristics conveyed through groups of neighbouring bits in the original bit strings of the parents might be lost. Single point crossover is therefore adopted.

Combinatorial traits, if any, from the parents are copied to the offspring. One child inherits all the traits from one of the parents chosen randomly, and the other child inherits the traits from the other parent.

The shifts in the inherited traits are then associated with the

corresponding chromosome by means of an attached list. Hence, combinatorial traits are not lost through crossover.

2.2

Potential seeding shifts from relaxed LP solution

The driver scheduling problem can be formulated as a set covering Integer Linear Programme (ILP). The basic model is shown below. In practice, the model is extended to cater for other practical objectives and constraints (Fores, Proll, & Wren (1999)).

8

n

Number of legal potential shifts

m

Number of driving work pieces to be covered

cj

Cost of shift j

aij

0-1 integer constants; 1 indicates shift j covers work piece i, and 0 otherwise

xj

0-1 integer variables; 1 indicates shift j is used in the solution, and 0 that it is not n

∑c x

Minimise

j=1

j

(1)

j

Subject to: n

∑a j=1

ij

x j ≥ 1,

xj = 0 or 1,

for i = 1, 2, ..., m

(2)

for j = 1, 2, ..., n

(3)

Objective (1) minimises the total cost. Constraint (2) ensures that each piece of work is covered by at least one driver. Constraint (3) requires that whole shifts are used.

Integer solution techniques, e.g. Branch-and-bound, are limited by the amount of search space that can be explored within reasonable time. For this reason ILP solution processes may sometimes have to be terminated before any integer solution is found. However the relaxed LP, i.e. ignoring the integer constraints, can usually be solved quickly. Reported in Kwan, Kwan, & Wren (1999), the non-integer relaxed LP solution has been shown to contain an average of 79% of the shifts forming the integer solution yielded by the full ILP. The maximum number of variables involved in the relaxed LP solution is equal to the total number, usually several hundred, of work pieces. However, several of these are usually

9

surplus variables from the inequalities (2), so that the number of shift variables in the relaxed solution is less than this.

In the relaxed LP solution, the values of the shift variables lie between 0 and 1. It has been observed that the closer to a value of 1, the higher the chance the shift will be used in the final solution schedule Kwan, Kwan, & Wren (1999). Hence all the shifts in the relaxed LP solution that have their solution values greater than a given parameter (e.g. 0.3) are included in the potential seeding shift set.

Guerinik & Caneghem (1995), Rodosek, Wallace, & Hajian (1996) and Curtis, Smith, & Wren (1999) have also utilised the relaxed LP solution in solving scheduling problems by means of Constraint Programming. They use the fractional values of the relaxed LP solution as a guide for choosing the variables to be satisfied. Curtis et al differed from Guerinik & Rodosek in that the fractional values are first assigned to relief opportunities whereas the latter use the fractional values of individual shifts in the relaxed LP solution.

2.3

Potential seeding shifts selected by heuristic

This heuristic progressively eliminates shifts from the very large set of legal potential shifts to form a seeding shift set. It is based on the rationale that at any time during the algorithm, those shifts heavily overlapping with other shifts in terms of the work they cover are candidates for elimination. The degree of overlap changes as shifts are eliminated, and has to be continually updated for the shifts remaining.

A shift is heavily overlapped if every work piece making up the shift is also present in many other shifts. Two attributes namely MinCoverage and AveCoverage are used to quantify the

10

degree of overlap for each shift. MinCoverage of a shift is the minimum count considering the numbers of shifts covering individual work pieces making up the shift. For example, the following shift S1 is made up of five work pieces. Piece number 74 is covered by 56 shifts (including S1), piece number 75 is covered by 17 shifts etc. The MinCoverage of S1 is therefore 17. Shift S1 Work Piece No.

74

75

126

127

128

Coverage Count

56

17

57

39

42

AveCoverage of a shift is the average count considering the numbers of shifts covering individual work pieces making up the shift. For example AveCoverage for S1 is (56 + 17 + 57 + 39 + 42) / 5 = 42.2.

Each shift also has an attribute called EfficiencyIndex, which is a ratio of the amount of work covered over the total duration of the shift.

The smaller the value of EfficiencyIndex the

better.

Initially the potential shifts are ordered by ascending attribute values. The priority order of attributes are first MinCoverage, second EfficiencyIndex and third AveCoverage.

Shifts at the bottom of the ordered list are the least desirable and eliminated in small batches. Every time a batch of shifts has been eliminated, the attributes and order of the remaining affected shifts are recomputed. The process is repeated until the required size of the seeding shift set is achieved.

11

3.

Schedule construction heuristic

This is a greedy heuristic to construct a driver schedule associated with a given chromosome. Apart from the obvious need to derive a complete solution, the cost of the schedule constructed is used to assess the fitness of its associated chromosome. Also, the schedule may be analysed for extraction of combinatorial traits. This heuristic does not alter any of the chromosomes.

The schedule to be constructed must be valid in the sense that each piece of work is covered by at least one of the shifts chosen to form the schedule. Overcover, i.e. a piece of work covered by more than one shift, is allowed by the heuristic and usually can be resolved easily by manual editing before the schedule is implemented.

The heuristic can be regarded as a process of assigning a shift to cover each work piece. To start with, the seeding shifts selected by the chromosome and the shifts in any of its inherited combinatorial traits are assigned to the corresponding pieces of work covered. Each of the remaining unassigned work pieces will have a list, called a coverage list, of potential shifts that can cover it.

Potential shifts are assigned to the remaining uncovered work pieces sequentially. The criterion for the next uncovered work piece for assignment is that it has the shortest coverage list. From the coverage list, the shift that covers most other work is assigned. In the case of a tie, the shift with a lower cost is chosen. Experiments have shown that there is no advantage to giving the potential seeding shifts preference in this step.

12

At the beginning, many work pieces may already be over-covered by the selected seeding shifts. This may be due to the random generation of population members, or to some shifts inherited due to combinatorial traits.

While the other shifts added during schedule

construction will not be redundant themselves, because each shift is chosen to cover an uncovered work piece, they may increase the amount of over-cover and cause some of the seeding shifts to become redundant. The redundant shifts are removed in two passes. First, the process will remove any redundant shifts that are not seeding shifts. In the second pass, the process will remove any redundant shifts.

The speed of this schedule construction algorithm may be improved by optionally banning any potential shifts that do not use the relief opportunities used by the potential seeding shifts, when they are obtained from the relaxed LP solution. This shift reduction technique is employed at the branch-and-bound phase of an ILP solver (Fores, Proll, & Wren (1999)), which has shown that the technique can reduce the problem size considerably without significantly affecting the quality of the final solution.

4.

Relief chains – a combinatorial trait

An important feature in driver scheduling is that driver shifts have one or more breaks, e.g. for having a meal, in them. After a break, the driver is usually assigned to work on another vehicle, often taking over from another driver who is due for a break. Thus a chain of events of drivers relieving each other is formed, and we call the relief opportunities involved a “relief chain”.

Well-formed relief chains, especially critical during peak periods, can avoid using extra drivers unnecessarily. This is because it is usually more efficient to relieve drivers who are

13

due for a break by drivers who have already finished their mealbreaks.

This is illustrated in

Figure 4. The schedule contains work on three vehicles. In the absence of any relief chain, six drivers are needed to cover the work, whereas the schedule with a relief chain requires only four drivers.

S1

S2

S3

S4

S5

S6

(a) Schedule without relief chain

S1

S1

Driver relief A shift Vehicle work Driving work Relief chain

S2

S3

S1

S4

S3

(b) Schedule with a relief chain

Figure 4. Relief chain example

The solution schedule associated with each chromosome is examined during the GA process and the subset of shifts, called relief chain shifts, that form the longest relief chain in the schedule will be recorded. The relief chain shifts will be passed on to the offspring and used as seeding shifts if the offspring is selected for reproduction in future generations. Thus, the relief chain trait is preserved and propagated in subsequent generations.

5.

Adaptive mutation

Mutation may take place after a crossover. The mutation rate is variable mainly dependent on the convergence rate of the GA. In early generations, the GA is less likely to be trapped at local optima, and the rate of mutation should therefore be kept low so that the population will

14

evolve progressively. The rate of mutation should then gradually increase to a high level when convergence is near. The mutation scheme used in GACT is ’aggressive’ because the criterion to mutate an offspring is when the gene has the same value for both parents rather than, in the conventional way, for the entire population.

The objective is to bring in new

species dissimilar to the parents. This has the effect of enlarging the search space when the GA process starts to converge. Since aggressive mutation brings in new species to the population continuously, a small population size is sufficient to give good results and the performance of the GA is therefore much improved.

The mutation rate depends on three parameters: a control value, M; the number of generations the GA process has been set to run, g; and the number of generations the fittest member has survived, s. After each successful mating, a random number, r, is generated with value between 1 and (g × M). If r ≤ s, the offspring will be subject to mutation.

The mutation rate is probabilistic and the chance to mutate increases if s increases. A high s value indicates that the fittest member has become dominant in the GA process, and mutation should therefore be intensified to introduce new species. The chance of mutation is less if either or both M and g are large.

Table 1 shows for a sample problem instance the mutation rate at different numbers of generations with M = 5 and different maximum numbers of generations the GA is set to run. Table 2 shows the effect of using different M values on a particular problem for a total of 50 generations.

15

Generations completed

10

20

30

Max. Generations (g)

40

50

60

70

80

90

100

150

Accumulated number of mutations

50

3

14

20

28

44

-

-

-

-

-

-

100

2

6

13

18

30

31

32

45

75

104

-

150

2

3

5

12

22

23

26

31

35

36

72

Table 1. Effect of adaptive mutation (M = 5)

Generations completed

Accumulated number of mutations M=1

M=5

M=10

M=20

10

12

3

2

1

20

56

14

6

2

30

85

20

13

3

40

139

28

18

8

50

243

44

30

8

Table 2: Number of mutations for different M values

When mutation is enabled for an offspring, those genes for which its parents both have the same value will be noted. Some of these genes belonging to the offspring will be selected at random for mutation. A gene is mutated by switch a ‘0’ to a ‘1’ and vice versa.

6.

Results

GACT has been implemented and tested on a Pentium II 333 MHz PC with 196 megabyte RAM. Comparative results on twenty real-life problems from the public transport industry are presented in Table 3. Problem instances prefixed by 'B' are bus problems; 'T' are train problems and 'R' are tram problems. The GACT results consist of two sets corresponding to whether the potential seeding shifts have been taken from relaxed LP solutions or selected by heuristic. The GACT results are compared with those compiled manually by the transport operators and those obtained by a specialised set covering ILP (Fores, Proll, & Wren (1999)).

16

The majority of the problem instances are complex. In some cases, the ILP process being compared fails to find an integer solution after a large number of nodes of the branch-andbound search tree has been explored. In these circumstances, the target is raised by one shift and the ILP is re-run. The process is repeated if an integer solution still cannot be found. In three instances, T4, B4 and B8, the process was abandoned after the target had been raised many times without success. T9 and T10 are very large problem instances, which had to be decomposed into smaller sub-problems and solved independently by the ILP process. The ILP results shown are for the combined results of individual sub-problems. No manual solutions are available for these large instances.

Both GACT (LP) and the branch-and-bound phase of the ILP process take the relaxed LP solution as a starting point, and therefore the elapsed times for them are compared.

In

instances T7, T9 and T10 the ILP has been run repeatedly with increasing targets due to difficulty in finding an integer solution. The time for each failed run varies from less than half an hour for T7 to about two hours for T10.

The results have shown that GACT can achieve very good solutions if good quality shifts can be identified before the GA is applied. Also, GACT generally performs better when the potential seeding shifts are taken from the relaxed LP solutions than when obtained by heuristic. The results from GACT (LP) are particularly good in that in many cases it achieves solutions that are as good as the ILP process in terms of number of shifts. The costs of the GACT solutions are in general higher than those of the ILP solutions. This may be because the fitness function used in GACT is biased towards minimising the number of shifts. When the ILP process is used, very large problems may have to be decomposed into smaller subproblems and solved independently. In contrast, GACT can be used to solve large problems

17

in one go.

Also, GACT has the advantage of always being able to produce a solution,

whereas the ILP process in some cases may need several runs with increasing target number of shifts and still not able to find any integer solution.

Data

B1 B2 T1 T2 T3 B3 B5 T4 B8 T5 T6 T7 B4 R1 R2 B7 T8 B6 T9 T10

+

Work piece s

127 154 158 196 236 254 338 340 345 359 400 434 461 483 483 485 537 557 1108 1438

Solution schedule size (no. of shifts)

Shifts variable s

3560 11817 16379 12343 11950 74816 31394 25000 29999 29380 16636 25099 22568 29500 6437 112546 14818 73068 29465 28639

Manua l

ILP

34 34 76 31 49 68 49 116 50* 50* 73* 115 60 -

34 34 14 42 74 29 47 Fail Fail 89 50 116 Fail 49 49 73 112 58 276+ 349+

GAC T (LP) 34 35 14 42 74 29 48 62 48 91 51 116 75 50 51 74 113 60 269 341

GACT (heuristic ) 35 36 15 43 76 31 52 63 50 97 54 119 77 55 54 78 114 64 292 372

Cost comparison**

Elapsed time GACT(LP)

%

(seconds)

Elapsed time ILP (B&B only) (seconds)

2.02 2.00 0.40 0.13 -0.08 2.28 4.40 2.52 1.23 0.20 2.52 4.11 3.29 0.71 3.35 -

36 22 14 0.4 41 78 65 955 231 303 97 80 452 96 14 290 263 362 9352 13333

22 84 185 13 4 10 36 Large Large 724 34 69 Large 139 24 118 20 22 N/a N/a

Combined result of subdivided problems

* Manual schedule has violated the labour agreement rules ** Percentage increase in schedule cost of GACT (LP) against ILP

Table 3. Comparative test results

In most cases where a manual solution is known, a solution at least as good, and often better, is found by the ILP or the GACT (LP). All except three (B2, R2 and B7) of the solutions obtained by the GA method have smaller or equal number of shifts compared with the known manual solutions. For R2 and B7, the manual schedule contains shifts that violate the given labour agreement rules.

18

The performance of GACT (LP) is very similar to the branch-and-bound phase of the ILP process. The largest problem takes about just under 4 hours and the rest take less than an hour to run. The comparison has not included the time taken by the failed ILP runs before the final results were obtained.

Table 4 shows the similarity in the lengths of the longest relief chains found in the GACT (LP) and in the ILP solutions, which indicates that the relief chain trait may have contributed to the good performance of GACT.

In a separate set of experiments, the relief chain trait

feature was disabled in GACT(LP). The solution schedules were worse off by one shift for nine of the data sets (T1, B8, T6, T7, T4, T9, T10, B5, B6), and worse off with higher costs in seventeen. Also, the run times were slightly higher.

Length of the longest relief chain Data

GACT(LP)

ILP

Data

GACT(LP)

ILP

B1

7

6

T7

4

5

B2

6

7

R1

7

7

T1

6

6

R2

6

7

T2

4

5

B7

12

9

T3

2

2

B4

6

-

B3

11

8

B8

12

-

B5

7

10

T8

8

7

T4

7

-

B6

9

9

T5

8

10

T9

8

-

T6

9

9

T10

7

-

Table 4.

7.

Relief Chain trait in GACT and ILP solutions

Conclusions

The GACT approach has set out a framework whereby the power of search heuristics is augmented by domain knowledge in a structured manner.

Combinatorial traits represent

strong domain knowledge, but they are difficult to generalise. By subjecting combinatorial

19

traits to the evolutionary process, the burden of accurately identifying and assessing them is lessened.

The main advantages of GACT are that it can always produce feasible good quality solutions even in cases which are difficult for ILP to solve, and that it can solve very large problem instances without the need to subdivide them. In many instances the results are better than the manual solutions compiled, perhaps over a long time, by experienced schedulers. Many of the results are at least as good as those obtained by ILP.

Although the heuristic method for selecting potential seeding shifts (Appraise in Figure 2) has not been as effective as using the relaxed LP solution, its results are in fact not very far off and therefore the heuristic approach may still have potential to be explored.

Its

advantages, and similarly for the Construct heuristic (Figure 2), are that it is computationally very fast, and that being heuristic it is flexible for exploiting domain specific knowledge and easier to incorporate complex scheduling constraints.

Experiments have shown that the relief chain combinatorial trait does help to improve the quality of solutions and computational performance. Further research may investigate the use of some other combinatorial traits identified in Kwan, Kwan, & Wren (1999). Also, it might be useful to apply a local search to improve the solutions obtained by GACT.

Acknowledgement The authors would like to thank the EPSRC for funding this research and all the transport operators who have provided many challenging problems over the years.

20

References Beasley, J.E., & Chu, P.C. (1996). A genetic algorithm for the set covering problem. EJOR., 94, 392-404. Caprara, A., Fischetti, M., Toth, P., Vigo, D., & Guida, P.L. (1997). Algorithms for railway crew management. Mathematical Programming, 79, 25-141. Clement, R., & Wren, A. (1995). Greedy genetic algorithms, optimising mutations and bus driver scheduling. In Daduna, J.R., Branco, I., & Paixao, J.M.P. (Eds.), ComputerAided Transit Scheduling (pp.213-235). Springer Verlag. Curtis, S.D., Smith, B.M., & Wren, A. (1999). Forming bus driver schedules using constraint programming. In: Proc. 1st International Conference on the Practical Applications of Constraint Technologies and Logic Programming (PACLP99) (pp.239-254). Fores, S., Proll, L.G., & Wren, A. (1999). An improved ILP system for driver scheduling. In Wilson, N.H.M. (Ed.), Computer-Aided Transit Scheduling (pp.43-61). Springer-Verlag. Glover, F. & Laguna, M. (1993). Tabu search. In Reeves, C.R. (Ed.), Modern heuristic techniques for combinatorial problems (pp.70-150). Blackwell Scientific Publications. Guerinik, N., & Caneghem, M.V. (1995). Solving crew scheduling problems by constraint programming. In Montanari, U., & Rossi, F. (Eds.), Principles and Practice of Constraint Programming – CP ’95 (pp.481-498). Springer. Hernandez, L.F.G., & Corne, D.W. (1996). Evolutionary divide and conquer of the set covering problem. In Fogarty, T.C. (Ed.), Springer.

21

Evolutionary Computing

(pp.198-208).

Kwan, A.S.K. (1999). Train driver scheduling. PhD Thesis, University of Leeds. Kwan, A.S.K., Kwan, R.S.K., & Wren, A. (1999). Driver scheduling using genetic algorithms with embedded combinatorial traits. In Wilson, N.H.M. (Ed.), Computer-Aided Transit Scheduling (pp.81-102). Springer-Verlag. Kwan, A.S.K., Kwan, R.S.K., Parker, M.E., & Wren, A. (1999). Producing train driver schedules under different operating strategies. In Wilson, N.H.M. (Ed.), ComputerAided Transit Scheduling (pp.129-154). Springer-Verlag. Kwan, R.S.K., & Wren, A. (1996). Hybrid genetic algorithms for bus driver scheduling. In Bianco, I., & Toth, P. (Eds.), Advanced Methods in Transportation Analysis (pp. 609-619). Springer-Verlag. Meilton, M. (2000). Selecting and implementing a computer aided scheduling system for a large bus company. Presented at: CASPT2000 – the 8th International Conference on Computer Aided Transit Scheduling, Berlin. Rayward-Smith, V.J., Osman, I., Reeves, C.R., & Smith, G.D. (Eds.) (1996). Modern heuristic search methods. Wiley. Rodosek, R., Wallace, M.G., & Hajian, T. (1996). A new approach to integrate mixed integer programming,

CP96 workshop on Constraint Programming Applications: An

Inventory and Taxonomy. Wilson, N.H.M. (Ed.) (1999). Computer-Aided Transit Scheduling, Proceedings of the 7th International Workshop on Computer-Aided Scheduling of Public Transport. SpringerVerlag. Wren, A., & Rousseau, J.-M. (1995). Bus driver scheduling – An overview. In Daduna, J.R., Branco, I., & Paixao, J.M.P. (Eds.), Computer-Aided Transit Scheduling (pp.173-187). Springer Verlag.

22

Wren, A., & Wren, D.O. (1995). A Genetic Algorithm for Public Transport Driver Scheduling. Computers and Operations Research, 22, 101-110.

23