scheduling using tabu search methods with intensification and diversification

18
Computers & Operations Research 28 (2001) 1075}1092 Scheduling using tabu search methods with intensi"cation and diversi"cation Jacques A. Ferland*, Soumia Ichoua, Alain Lavoie, Eric Gagne H De & partement d'informatique et de recherche ope & rationelle, Universite & de Montre & al, C.P. 6128, Succursale Centre-ville, Montreal, Quebec, Canada H3C 3J7 Received 1 March 1999; received in revised form 1 August 1999 Abstract After spending "ve years in Medical School, physician students have to complete additional study including several interships before becoming full members of their professional guild. In this paper, we deal with the annual scheduling of internships taking into account the supervision capacities of the hospitals. The problem is modeled as an assignment-type problem. Several variants of Tabu Search procedures including intensi"cation and diversi"cation strategies are proposed and tested to deal with this problem. The numerical results indicate that the solution quality can be improved using intensi"cation and diversi"cation, at the expense of increasing solution time. Scope and purpose After spending "ve years in Medical School, future physicians have to complete additional study includ- ing several internships before becoming full members of their professional guild. The number of internships to be completed, their subject area, and their length depend on the student specialization. In this paper, we analyze the problem faced by the medical school each year to specify the schedule for each student's internships. For each of his internships, a student speci"es preferences about its time period and the location. The objective function is to maximize the overall satisfaction of the students. The constraints correspond to the bounds (lower and upper) on the number of students that the hospitals are ready to supervise for each type of internships and for each period of the year. The problem is formulated as an assignment-type problem. To deal with this problem, we propose several variants of local search heuristic procedures including strategies to intensify the search in speci"c region of the feasible domain (intensi"cation), and others to search the whole feasible domain more extensively (diversi"cation). These variants are tested and Supported by a FRSQ Grant (930913) and a FCAR Grant (ER-1654) from the Government of Que H bec and a NSERC Grant (OGP0008312) from the Government of Canada. * Corresponding author. Tel.: 1-514-343-5687; fax: 1-514-343-5834. E-mail address: ferland@iro.umontreal.ca (J.A. Ferland). 0305-0548/01/$ - see front matter 2001 Elsevier Science Ltd. All rights reserved. PII: S 0 3 0 5 - 0 5 4 8 ( 0 0 ) 0 0 0 2 7 - 7

Upload: jacques-a-ferland

Post on 03-Jul-2016

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Scheduling using tabu search methods with intensification and diversification

Computers & Operations Research 28 (2001) 1075}1092

Scheduling using tabu search methods with intensi"cationand diversi"cation�

Jacques A. Ferland*, Soumia Ichoua, Alain Lavoie, Eric GagneH

De&partement d'informatique et de recherche ope& rationelle, Universite& de Montre&al, C.P. 6128, Succursale Centre-ville,Montreal, Quebec, Canada H3C 3J7

Received 1 March 1999; received in revised form 1 August 1999

Abstract

After spending "ve years in Medical School, physician students have to complete additional studyincluding several interships before becoming full members of their professional guild. In this paper, we dealwith the annual scheduling of internships taking into account the supervision capacities of the hospitals. Theproblem is modeled as an assignment-type problem. Several variants of Tabu Search procedures includingintensi"cation and diversi"cation strategies are proposed and tested to deal with this problem. Thenumerical results indicate that the solution quality can be improved using intensi"cation and diversi"cation,at the expense of increasing solution time.

Scope and purpose

After spending "ve years in Medical School, future physicians have to complete additional study includ-ing several internships before becoming full members of their professional guild. The number of internshipsto be completed, their subject area, and their length depend on the student specialization. In this paper, weanalyze the problem faced by the medical school each year to specify the schedule for each student'sinternships. For each of his internships, a student speci"es preferences about its time period and the location.The objective function is to maximize the overall satisfaction of the students. The constraints correspond tothe bounds (lower and upper) on the number of students that the hospitals are ready to supervise for eachtype of internships and for each period of the year. The problem is formulated as an assignment-typeproblem. To deal with this problem, we propose several variants of local search heuristic proceduresincluding strategies to intensify the search in speci"c region of the feasible domain (intensi"cation), andothers to search the whole feasible domain more extensively (diversi"cation). These variants are tested and

�Supported by a FRSQGrant (930913) and a FCARGrant (ER-1654) from the Government of QueH bec and a NSERCGrant (OGP0008312) from the Government of Canada.*Corresponding author. Tel.: 1-514-343-5687; fax: 1-514-343-5834.E-mail address: [email protected] (J.A. Ferland).

0305-0548/01/$ - see front matter � 2001 Elsevier Science Ltd. All rights reserved.PII: S 0 3 0 5 - 0 5 4 8 ( 0 0 ) 0 0 0 2 7 - 7

Page 2: Scheduling using tabu search methods with intensification and diversification

compared to establish the tradeo! between solution time and solution quality. � 2001 Elsevier Science Ltd.All rights reserved.

Keywords: Tabu search; Intensi"cation; Diversi"cation; Internships; Assignment

1. Introduction

After spending "ve years in medical school, future physicians have to complete additional studyincluding several internships before becoming full members of their professional guild (association).The number of internships to be completed, their subject area and their length are speci"edaccording to the student's specialization (for instance, the internships program is longer to becomea brain surgeon than to become a general practitioner). Every year, the medical school authoritieshave to schedule each student's internships. We assume that for each of his internships, a studentspeci"es preferences about its time period and location. These internships have to be completed inhospitals (medical centers) having the appropriate supervising personnel and environment. Eachhospital speci"es an upper bound on the number of internships in each specialization that can besupervised during each period. Furthermore the hospital can also specify a lower bound to indicatethat below this number of students, it is not worthwhile to provide the supervising personnel andenvironment required. Hence, the model has to account for the situation where, for a speci"cinternships type during a given period, the sum of the lower bounds of all the hospitals may exceedthe total number of students having to complete the internships during the period. We useeither}or constraints to formulate these constraints in our model.The problem is then to assign a period and a location to each internship of each student in order

to maximize the preference satisfaction of the students such that no student has to complete morethan one internship simultaneously and the bound constraints are satis"ed. Hence, it makes senseto formulate it as an assignment type problem (ATP) [1] that can be summarized as follows:

Given a set of items and a set of resources, determine an assignment of the items to the resourcesoptimizing an objective function and satisfying a set of additional side constraints.

This formulation is introduced in Section 2.In Ferland et al. [1], the authors discuss several neighborhood search techniques (tabu search,

exchanges procedure, simulated annealing) to deal with (ATP). They use the object-orientedmethodology to derive a general purpose software for (ATP) including these search techniques andallowing to easily establish the connection between the data structure used to formulate any (ATP)with the one used in the software. In Section 3, we summarize the tabu search method witha short-term component that we use to solve our problem. An intensi"cation strategy is proposedin Section 4 to allow searching more deeply in the neighborhood of the current solution as themethod progress.In Section 5, we introduce metaheuristic including diversi"cation strategies to restart the tabu

search method with short-term component. One of these strategies is based on random generationof new initial solutions. The other two are implementation of "rst- and second-order diversi"cationstrategies introduced in [2] by Kelly et al. for the quadratic assignment problem. Note

1076 J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092

Page 3: Scheduling using tabu search methods with intensification and diversification

that in this paper we add intensi"cation and diversi"cation strategies to the tabu search methodwith a short-term component presented in Ferland et al. [1]. Finally, numerical results are given inSection 6 to indicate the bene"ts and the computational e!ort of using and combining thesestrategies.

2. Internships problem formulation

To specify the problem, we introduce the following notation:

S set of students¹ set of internships types¹

�set of internships to be completed by student s3S during the planning horizon

S�

set of students that have to complete an internship of type t3¹ during the planning horizonH

�set of hospitals o!ering internships of type t3¹ during the planning horizon

P set of periods"�1, 2,2, 13� included in the planning horizon (there are 13 periods of4 weeks during a planning horizon of 52 weeks)

Furthermore, let

d��be the length (in number of periods) of internships t of student s for all s3S, t3¹

�.

The decision variables are as follows:

y����

"�1 if internships t of student s is initiated in period p at hospital h,

0 otherwise

for all s3S, t3¹�, h3H

�, p)13!d

��#1.

2.1. The bound constraints

To specify the bound constraints, for all t3¹, h3H�, p3P, denote

l���

the lower bound on the number of internships of type t that hospital h is ready to superviseduring period p,

u���

the upper bound on the number of internships of type t that hospital h is ready to superviseduring period p.

Let the value of the coe$cient ¸�����

indicate if internships t of student s initiated in period p is stillgoing on during period p�:

¸�����

"�1 if 0)p�!p)d

��!1,

0 otherwise

for all s3S, t3¹�, p, p�3P.

J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092 1077

Page 4: Scheduling using tabu search methods with intensification and diversification

Hence, the function �����(y) indicates the number of internships of type t going on in period p� at

hospital h:

�����(y)" �

����

����

¸�����

y����

for all t3¹, h3H�, p�3P.

Now, for some pairs t3¹, p�3P, the sum of the lower bounds on the number of internships oftype t during period p� over all hospital h3H

�(�

����l����) is small enough to have a feasible

solution y where the bound constraints are satis"ed for all h3H�:

l����

)�����(y))u

����. (2.1)

But, for some other pairs t3¹, p�3P,�����

l����

may be so large that there is no feasible solutiony where constraint (2.1) is satis"ed for all h3H

�. Hence, in this case we may enforce the bounds

constraint (2.1) for some h3H�, but for the other h3H

�, we enforce the either}or constraint

l����

)�����(y))u

����or �

����(y)"0 (2.2)

in order to have feasible solutions.It is worthy to note that we assume that for each pair t3¹, p�3P the upper bounds u

����are such

that�����

u����

is always large enough to allow for a feasible solution y to exist. Hence no either}orconstraints are required because of the upper bounds.

2.2. The conyict constraints

Additional con#ict constraints are required to assert that no student has more than oneinternships scheduled during any period:

����(y)" �

����

�����

����������

¸�����

y����

)1

for all s3S, p�3P.

2.3. The objective function

The objective function is also linear, and the coe$cients of the variables are speci"ed to assertthat minimizing the function is equivalent to maximizing the overall satisfaction of students. Foreach of his internships t3¹

�, student s3S speci"es in decreasing order of preference a subset

P��

LP of periods and a subset H��

LH�of hospitals where he would like to complete it.

Furthermore, he indicates if the period choice is more important than the hospital choice. The coststructure is then speci"ed as follows. First, the pairs of indices (h, p) are lexicographically orderedaccording to the student's preference where the most important criterion is the period or thehospital according to the student's speci"cation. For instance, suppose that H

��"�h

�, h

�, h

�� and

P��

"�p�, p

��. Now, if the period choice is more important, then the pairs are ordered as follows:

(h�, p

�), (h

�, p

�), (h

�, p

�), (h

�, p

�), (h

�, p

�), (h

�, p

�).

1078 J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092

Page 5: Scheduling using tabu search methods with intensification and diversification

Otherwise, they are ordered as follows:

(h�, p

�), (h

�, p

�), (h

�, p

�), (h

�, p

�), (h

�, p

�), (h

�, p

�).

Then the costs associated with the pairs are speci"ed such that the "rst pair cost is equal to 1, andsuch that the cost increases by one from one pair to the next. Hence, it is easy to see that the costc����

of initiating internships t3¹�of student s in period p3P at hospital h3H

�is speci"ed as

follows:

(i) if p3P��is the ith selection of period and h3H

��is the jth selection of hospital,

c����

"�j#(i!1)�H

��� if the period choice is more important than the hospital choice

i#( j!1)�P��� otherwise,

where � ) � denote the number of elements in the set ) ;(ii) if p �P

��or h �H

��

c����

"M,

where

M<�max�������

��H������max���

����

��P�����.

Hence, the objective function �(y) to be minimized is

�(y)"����

�����

�����

�������

���

c����

y����.

2.4. Model formulation

The traineeships scheduling problem is summarized in the following model:

Min �(y)

Subject to (assignment constraints)

�����

�������

���

y����

"1, s3S, t3¹�,

(2.3)

(conflict constraints)

����(y))1, (s, p�)3K

�,

(2.4)

(bound constraints)

l����

)�����(y))u

����, (t, h, p�)3K

�,

(2.5)

J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092 1079

Page 6: Scheduling using tabu search methods with intensification and diversification

(either}or constraints)

l����

)�����(y))u

����or

�����(y)"0, (t, h, p�)3K

�,

(2.6)

(0}1 variables)

y����

"0 or 1, s3S, t3¹�, h3H

�, p3P,

where K�"�(s, p�): s3S, p�3P�, K

�"�(t, h, p�): triplets t3¹, h3H

�, p�3P associated with bound

constraints�, and K�"�(t, h, p�): triplets t3¹, h3H

�, p�3P associated with either}or constraints�.

Note that constraints (2.3) guarantee that a period and a location are assigned to each intership ofeach student.

2.5. (ATP) Formulation

First, note that �����(y)*0 for all (t, h, p�)3K

��K

�. Then, using additional 0}1 variables

����,

either}or constraints (2.6) can be written as

l����

)�����(y)#

����u����

)u����, (t, h, p�)3K

�. (2.7)

Furthermore, to formulate the internships scheduling problem as an (ATP), constraints (2.7) arerewritten using two additional 0}1 variables y

����������and y

������ and an additional constraint asfollows:

l����

)�����(y)#y

����������u����

)u����, (t, h, p�)3K

�, (2.8)

(assignment constraints)

y����������

#y������"1, (t, h, p�)3K

�. (2.9)

Hence, the additional assignment constraints (2.9) indicate that each item (t, h, p�)3K�is either

assigned to the dummy resource (t, h, p�) (used only for this item (t, h, p�)) (i.e., y����������

"1) whichcorresponds to requiring that �

����(y)"0, or to the dummy resource (i.e., y

������"1) whichcorresponds to requiring that l

����)�

����(y))u

����.

To complete the (ATP) formulation:

(i) associate an item i3IS with each pair (s, t), s3S, t3¹�(i.e., with each internships of each

student);(ii) associate an item i3IK with each triplets (t, h, p�)3K

�;

(iii) associate a resource j3J with each pair (h, p), h3H, p3P (i.e., with each period in each hospital)and with each triplet (t, h, p�)3K

�. The set J also includes the dummy resource .

Let I"IS�IK. Furthermore the set of admissible resources J�for item i is speci"ed as follows:

� for i3IS (associated with (s, t), s3S, t3¹�),

J�"�(h, p): h3H

�, 1)p)13!d

��#1�.

1080 J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092

Page 7: Scheduling using tabu search methods with intensification and diversification

� for i3IK (associated with (t, h, p�)3K�),

J�"�(t, h, p�), �.

Constraints (2.4) can be written as

����(y)!1)0, (2.10)

each constraint (2.5) can be replaced by two constraints,

l����

!�����(y))0, (2.11)

�����(y)!u

����)0 (2.12)

and each constraint (2.8) by two constraints

l����

!�����(y)!y

����������u����

)0, (2.13)

�����(y)!(1!y

����������)u

����)0. (2.14)

Hence, to simplify the notation, the internships scheduling problem can be summarized asfollows:

(P) Min f (x),

Subject to g�(x))0, k3K,

x3X,

(2.15)

where x corresponds to the vector of decision variables, the objective function f (x) to �(y), theconstraint functions g

�(x) correspond to constraints (2.10)}(2.14), and

X"�x: � ���

x�

"1, i3I; x�

"0 or 1, i3I, j3J��.

3. Tabu search method with short-term component

To reduce the notation complexity, the method is introduced for problem (P). It can besummarized as follows:

Given an initial solution x3X, a pseudo-local optimal solution of (P) is obtained using a tabusearch method with short-term component as introduced in Ferland et al. [1]. At each iteration,a new solution x� in the neighborhood N(x) of the current solution x is generated or theprocedure stops.

Each point z in the neighborhoodN(x) is generated from x by modifying the assignment of exactlyone item; i.e., if R(x, i) denotes the resource to which i is assigned in x, then z3N(x) if there exist anitem i3I and a resource j3J

�, jOR(x, i) such that

z��

"x��, p3I, pOi, q3J

�,

z��

"x��, q3J

�, qOj, R(x, i),

z������

"0, z�

"1.

J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092 1081

Page 8: Scheduling using tabu search methods with intensification and diversification

Then z is denoted as z"x�(i, j). Hence

N(x)"�z3X: �(i, j), i3I, j3J�, jOR(x, i) such that z"x�(i, j)�.

Referring to problem (P), let I�(x) denote the total violation of constraints (2.13) for x3X:

I�(x)"�

���

max�0, g�(x)�. (3.1)

A penalty approach is used to deal with (P) where the penalty function P(x)"� f (x)#�I�(x) is

minimized over X. The values of �*0 and �*0 measure the relative importance of feasibilitywith regards to optimality. In our presentation, we assume that �<� to put more importance onfeasibility. This assumption is far from being unrealistic since in general it is di$cult to come upwith a feasible solution for this type of problem in practical situations. Hence, we introduce thenotion of current best solution (CBS) to denote the best solution generated so far, i.e., among thosesolutions with the smallest value I

�, it is the one minimizing f. Hence, if XN denotes the set of

solutions in X generated until now,

�N"�x�: x�"Argmin����

�I�(x)��,

CBS"Argmin����

� f (x)�.

Then, for any solution x3X, we say that x(CBS if I�(x)(I

�(CBS), or if I

�(x)"I

�(CBS) and

f (x)(f (CBS).For each x3X, the size ofN(x) increases rapidly with the number of resources �J�. To reduce the

searching e!ort at each iteration, x� is rather selected in an `interesting subseta of N(x) where itshould be easier to identify a `good solutiona even better than x. To determine this subset, weintroduce the two auxiliary notions of interesting items and interesting resources.For each i3I, partition J

�"J�

��J�

�where J�

�denotes the subset of interesting resources for item i.

Referring to the internships scheduling problem, for each i3IS, the elements of J��correspond to

the pairs (h, p)3H���P

��of preferred hospitals and periods by student s for his internships t (i.e.,

c����

(M). For each i3IK, J��"J

�and J�

�"�. Denote NM (x)LN(x) the subset of the neighbor-

hood associated with the interesting resources of the items, i.e.

NM (x)"�z3X: �(i, j), i3I, j3J��, jOR(x, i) such that z"x�(i, j)�. (3.2)

Assume that we refer to the �(�'0) most violated constraints g�(x))0 to specify the interesting

subset of N(x). Then, item i is said to belong to the set of interesting items II�(x) (i.e., i3II�(x)) ifmodifying x

������from 1 to 0 or x

� from 0 to 1 for some j3J�

�induces a reduction of the violation of

one of the � most violated constraints, or a decrease of f whenever I�(x)"0 (i.e., whenever �"0).

(Note that if the number of violated constraints is less than �, then all (but only) these are used tospecify the interesting items.)The interesting neighborhood IN�(x) is de"ned as follows:

IN� (x)"�x�3X: x� is generated from x by modifying the assignment of an item i3II�(x) toa resource j3J�

��.

1082 J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092

Page 9: Scheduling using tabu search methods with intensification and diversification

It is worth to note that the modi"cations used to specify the solutions in IN�(x) are such thatstudent's internships are reassigned to periods in an hospital preferred by students.At each iteration of a standard descent method, the interesting neighbourhood IN�(x) of the

current solution x is scanned until an element x� is found for which P(x�)(P(x) or x(CBS. If nosuch x� exists, the procedure stops, and the current solution is a pseudo-local minimum. The tabusearch method allows to move away from a pseudo-local optimum since it does not require that x�improves function P. Indeed, at each iteration, a subset NH(x)LN(x) is generated, and x�3NH(x)such that

x�"Argmin���H��

�P(z)�

becomes the current solution. Since this technique allows non-descent moves, a short-term tabu listis used to avoid cycling. This list includes the most recent moves, and the next iteration is selected inorder to avoid reversing these moves. Nevertheless, it might be interesting to use a tabu move if anaspiration test ASP(x�) is veri"ed indicating that x�(CBS or P(x�)(CBP (where CBP denotes thebest value of P encountered so far).The stopping criterion for this procedure is speci"ed in terms of a maximal number of iterations

MA and in term of a maximal number of successive iterationsMI inducing no improvement (i.e.,CBS and CBP are not modi"ed).The tabu search method with short-term component to deal with (P) can be summarized as

follows:

Algorithm ¹SS¹(xo).Step 0. Let (x) be an initial solution, i.e., x"x.

Specify:MA (maximal number of iterations).MI (maximal number of iterations with no improvement).N< (maximal number of elements in NH(x)).Let CBS"x�, CBP"P(x�), I¹ER"0, NI¹ER"0, �"1.

Step 1. IN(x)"IN�(x),NH(x)"�. (IN(x)"current interesting neighborhood).Step 2. Generate an element z3IN(x). IN(x)"IN(x)!�z�.

If ASP(z) is veri"ed, then x�"z and go to Step 6.Otherwise, if the move from x to z is not tabu, then NH(x)"NH(x)��z�.Repeat Step 2 until (IN�(x)"�) or (�NH(x)�"N<).

Step 3. If �NH(x)�"N<, then go to Step 5. Otherwise IN(x)"N(x)!IN(x).(Complete the set NH(x) using the original neighborhood if necessary).

Step 4. Generate an element z3IN(x). IN(x)"IN(x)!�z�.If ASP(z) is veri"ed, then x�"z and go to Step 6.Otherwise, if the move from x to z is not tabu, then NH(x)"NH(x)��z�.Repeat Step 4 until (IN(x)"�) or (�NH(x)�"N<).

Step 5. x�"Argmin���H��

�P(z)�.Step 6. Update the tabu list.

If x�(CBS, then CBS"x� and NI¹ER"0.If P(x�)(CBP, then CBP"P(x�) and NI¹ER"0.

J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092 1083

Page 10: Scheduling using tabu search methods with intensification and diversification

Step 7. x"x�.I¹ER"I¹ER#1, NI¹ER"NI¹ER#1.

Step 8. If I¹ER(MA and NI¹ER(MI, then repeat Step 1.Step 9. Stop the procedure.

Generate the pseudo-local minimum x 3X as follows:� each item i3IS is assigned to resource R(x, i)� each item i3IK is assigned to j3J

�to minimize I

�(x ), and the tabu list is updated each

time that an item i3IK is reassigned.At each iteration of the procedure, we try "rst to identify a solution z3IN�(x) satisfying the

aspiration test ASP(z) in Step 2. If we are not successful, then we continue to search theneighbourhood by generating additional elements of NM (x) at random until the number of elementsin NH(x) reaches N<. In a sense, Step 3 can be viewed as an intensixcation strategy to search theneighbourhood.In our implementation we are using a tabu list including pairs (item, resource). Assuming that x�

is generated from x by modifying the assignment of item i, then pair (i,R(x, i)) is introduced into thelist, and the oldest element of the list is removed. Referring to Kelly et al. [3], Taillard [4], thelength of the list used at each iteration is variable and selected randomly in the interval[�0.9�A� , �1.1�A�] where A is equal to the number of violated constraints at the currentsolution.Finally, the initial solution x is generated as follows:

(i) each item i3IS (i.e., item associated with a student's internship) is assigned to a resource tominimize f (x) (i.e., to the most preferred pair (h, p)3H�P of the student);

(ii) each item i3IK (i.e., item associated with a triplet (t, h, p�)3K�corresponding to an either}or

constraint) is assigned to j3J�to minimize I

�(x).

4. Intensi5cation strategy

To develop an intensi"cation strategy we increase the size of the interesting neighbourhoodIN� (x) as the method progress in order to select a better current solution x. During the earlyiterations of the procedure, �"1, and the most violated constraint is used to generate IN�(x).Instead of stopping the procedure when NI¹ER (number of iterations with no improvement)reaches the valueMI in Step 6, the number � of most violated constraints used to generate IN�(x) isincreased by 1, and the procedure continues by repeating Step 1. This strategy is applied until� reaches value � . It is interesting to note that this is an alternate strategy to the one proposed inCharest and Ferland [5] where � is "xed to 1 but the violated constraint used to generate IN� (x) isselected at random among the "ve most violated constraints.This revised version of the Tabu search method with short-term component and intensi"cation

is summarized in the algorithm TSSTI(x0) obtained by replacing Steps 0 and 8 in¹SS¹(x�) by Steps0� and 8�, respectively:

Step 0� Let x be an initial solution, i.e., x"x.Specify:MA (maximal number of iterations).

1084 J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092

Page 11: Scheduling using tabu search methods with intensification and diversification

MI (maximal number of iterations with no improvement).N< (maximal number of elements in NH(x)).� (maximal number of most violated constraints used to generate IN�(x)).Let CBS"x�, CBP"P(x�), I¹ER"0, NI¹ER"0, �"1.

Step 8� If I¹ER(MA and NI¹ER(MI, then repeat Step 1.If I¹ER(MA, NI¹ER"MI, and �(� , then �"�#1, NI¹ER"0, and repeatStep 1.

5. Diversi5cation strategies

A metaheuristic to deal with the internship problem is obtained by applying a diversi"cationstrategy to a pseudo-local minimum x generated with algorithms such as ¹SS¹( ) ) or ¹SS¹I( ) )described in the preceding sections (or any other algorithm). The diversi"cation strategy generatesa new initial solution to initiate a new major iteration generating another pseudo-local minimum.Three di!erent strategies are tested in this paper.

5.1. Random strategy

Determine a subset ISLIS including NM elements of IS selected at random. This set ispartitioned randomly into two subsets:

IS"IS��IS�.

A new initial solution is generated by reassigning the NM items in IS and randomly adjusting theassignment of items i3IK as follows:

(i) for i3IS�, item i is reassigned randomly to a resource j3J��;

(ii) for i3IS�, item i is reassigned randomly to a resource j3J�;

(iii) for i3IS!IS, the assignment of item i remains unchanged;(iv) for i3IK, item i is assigned to resource j3J

�in order to minimize I

�(x).

Note that the Tabu list is updated each time that an item is reassigned.

5.2. First-order diversixcation [6,2]

A description of this strategy applied to the quadratic assignment can be found in Kelly et al. [2].The basic idea is to move away from the current pseudo-local minimum by modifying the currentassignment of some items in such a way as to deteriorate P as little as possible and even to improveit if possible. An exchange procedure is used, but the only admissible moves are those modifying theassignment of an item away from the resource to which it is assigned in the current pseudo-localminimum.To specify the procedure, we introduce the notion of current best global solution (CBGS) to

denote the best pseudo-local minimum solution encountered so far. Hence, let X¸ denotes the set

J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092 1085

Page 12: Scheduling using tabu search methods with intensification and diversification

of pseudo-local minimum solutions in X generated so far,

�¸N"�x�: x�"Argmin����

�I�(x)��,

CBGS"Argmin�����

� f (x)�.

The procedure is summarized as follows:

Algorithm FOD(x ).

Step 0. Let x be the current pseudo-local minimum. Specify:NM (the maximal number of items to be reassigned).Let N"0, ID"IS, x"x .

Step 1. Select randomly an item i3ID.ID"ID!�i�.New(x)"�x� : x� is generated from x by reassigning i to j3J�

�!�R(x , i)��.

x"Argmin�������

�P(z)�.Update the tabu list.If x(CBGS, then go to Step 3.

Step 2. N"N#1.If N(NM , repeat Step 1.

Step 3. A new initial solution x is generated by assigning each item i3IK to a resource j3J�in

order to minimize I�(x). The Tabu list is updated each time that an item i3IK is

reassigned.If x(CBGS, then CBGS"x.

This procedure generates a new initial solution by selecting randomly at mostNM items in IS to bereassigned to a resource di!erent from the current one in the pseudo-local minimum. At eachiteration, we determine the resource to which the selected item is reassigned in order to minimizeP( ) ). Furthermore, the procedure stops whenever a new solution x is generated which is better thanthe best pseudo-local minimum CBGS encountered so far.

5.3. Second-order diversixcation [2]

This type of strategy is also applied to the quadratic assignment problem in Kelly et al. [2]. Thebasic idea is to use a frequency count to keep track of the number of times each item i is assigned toeach resource j. This information is then used to generate a new initial solution including leastfrequent assignments.To implement this strategy, we introduce the matrixM where component m

� is the number of

pseudo-local minimum solutions generated so far where item i is assigned to resource j. Thestrategy is summarized in the algorithm SOD(x ) which can be derived from algorithm FOD(x ) by

1086 J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092

Page 13: Scheduling using tabu search methods with intensification and diversification

replacing Step 1 by Step 1�:

Step 1�: Select randomly an item i3ID.ID"ID!�i�.New(i)"�jM :m

� M"min

�����m

� ��.

New(x)"�x� : x� is generated from x by reassigning i to j3New(i)�.x"Argmin

��������P(z)�.

Update the tabu list.If x(CBGS, then go to Step 3.

This procedure generates a new initial solution by selecting randomly at most NM items inIS to be reassigned. At each iteration, the selected item is reassigned to a resource towhich it has been assigned the least frequently in the pseudo-local minimum solutionsencountered so far in order to minimize P( ) ). Furthermore, the procedure stops whenever anew solution x is generated which is better than the best pseudo-local minimum CBGS encoun-tered so far.

6. Numerical results

Several variants of the solution approaches have been tested on randomly generatedproblems and on a real-world problem to indicate relative improvements in the solutionquality and the increase in computational e!ort induced. These tests were performed on aPentium 100 MHz PC-compatible using experimental computer programs written in BorlandC##.In all the problems tested we assume that all bound constraints related to hospitals are either}or

constraints (i.e., referring to Section 2.4, K�"�). Five sets of randomly generated problems and

one real-world problem are used as speci"ed in Table 1 where NBP is number of problems, �S� isnumber of students, �H�¹� is number of pairs (hospital, internship),NAC is number of additionalconstraints in the corresponding A¹P, �IS�

�"number of items (student, internship) for the "rst

problem in each set, and �IS��is average number of items (student, internship) for problems in the

set.For each randomly generated problem, the number of internships for each student is selected

randomly in the interval [1,7], and their length is adjusted accordingly. Furthermore, the upperbound and the lower bound for each triplet (hospital, internship, period) are selected randomly insuch a way that the problem has at least one solution x with I

�(x)"0.

In all variants, the initial solution for any problem is selected in such a way that eachpair (student, internship) is assigned to the most desired pair (hospital, period) (i.e., the assign-ment is made according to the smallest cost). Then, the items associated with the either}orconstraints are assigned to reduce the overall value of I

�. The values of I

�associated with the initial

solutions of the problems are summarized in Table 2 where I��is the value of I

�for the initial

solution of "rst problem in each set, and I��is average value of I

�for initial solutions of problems in

the set.

J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092 1087

Page 14: Scheduling using tabu search methods with intensification and diversification

Table 1Problems sets

Set NBP �S� �H�¹� NAC �IS��

�IS�a

1 5 35 35 1365 136 1482 5 35 50 1755 146 1483 5 35 100 3055 155 1534 3 50 60 2010 246 2345 1 100 60 2860 443 443

Real world 1 37 52 1833 229 229

Table 2I�of initial solution

Set I��

I��

1 159 1672 181 1753 166 1614 237 2505 560 560

Real world 68 68

Referring to algorithms ¹SS¹(x) and ¹SS¹I(x), the parameters take the following values:

MA (maximal number of iterations)"500.MI (maximal number of iterations with no improvement)"5.N< (number of elements in NH(x))"random number in the interval [1, �IS�/2].� (maximal number of most violated constraints used to generate IN�(x))"5.

The parameters for the diversi"cation strategies are selected as follows:

NM (maximal number of items to be reassigned)"20.

The partition of the set IS of the NM items into IS� and IS� is done randomly.MD (maximal number of times a given strategy is applied to a problem)"�IS�/10.

Finally, note that MA corresponds to an upper bound on the total number of tabu searchiterations completed during all the reinitializations of TSST (or TSSTI) when diversi"cationstrategies are used.In a "rst series of tests, we "x �"0, �"1. Table 3 summarizes the results when the "rst problem

in each set, and the real world problem (i.e., problems 1.1, 2.1, 3.1, 4.1, 5.1, and RW) are solved "vetimes with "ve variants:

T1: algorithm ¹SS¹(x�).T5: algorithm ¹SS¹I(x�).R1: algorithm ¹SS¹I(x�) and random diversi"cation.F1: algorithm ¹SS¹I(x�) and "rst order diversi"cation.S1: algorithm ¹SS¹I(x�) and second order diversi"cation.

In this table, I�denotes the values of I

�for the current best global solution (CBGS), %, the

percentage of improvement of I�with respect to the initial solution, f"value of the objective

function, and CPU the average solution time in s.; B,M and= are the best, the average, and theworst value over the 5 runs, respectively. The results in Table 3 clearly indicate the degree ofimprovement of the quality induces by the intensi"cation and diversi"cation strategies. Indeed, theaverage (M)% (the percentage of improvement of I

�) is increased by more than 20% in ¹5 with

respect to T1, and at least another 10% is gained with any diversi"cation strategy (R1, F1, S1). On

1088 J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092

Page 15: Scheduling using tabu search methods with intensification and diversification

average, T5 requires twice as much CPU time as T1, and R1, F1, S1 twice as much as T5.Nevertheless, the tradeo! on solution time to improve the quality is good considering the smallvalues of the CPU times.The results in Table 4 allows to compare of the three di!erent diversi"cation strategies and the

in#uence of Step 4 in algorithm ¹SS¹I(x�):

R2: algorithm ¹SS¹I(x) without Step 4 and random diversi"cation.F2: algorithm ¹SS¹I(x) without Step 4 and "rst-order diversi"cation.S2: algorithm ¹SS¹I(x) without Step 4 and second-order diversi"cation.

The "gures in Table 4 are obtained by solving "ve solutions for each problem in each set and for thereal-world problem. Hence B,M,= are the best, the average, and the worst over the total numberof runs (25 for set 1, 2, and 3, 15 for set 4, and 5 for set 5 and RW), respectively. The average value(M) of I

�, % and f, and the average CPU time are quite comparable for all variants. In general,

F1(F2) has slightly better average values for I�and % than R1 and S1 (R2 and S2), but there is no

variant clearly dominating the others by a neat margin.Another series of tests tries to measure the in#uence of the values of parameter � and �. We

compare the results obtained with �"1 and �"10 with those obtained with �"0 and �"1.Recall that if �"1 and �"10, then I

�is 10 times more important than f in the objective penalty

function P, whereas, if �"0 and �"1, then P reduces to I�. The results are consistent with the

de"nition of P. Indeed, the average values of f are improved by a factor of 25% when �"1 and�"10 but the values of I

�deteriorate by a much smaller factor of 14%. In general, the solution

time CPU is quite similar when �"1, and �"10 or where �"0 and �"10.In all the tests analyzed so far, the e!ective stopping criterion in all variants is the maximal

number of iterationsMA"500. This value is rather small in comparison with the problem sizes.To verify the in#uence of the valueMA, we complete a last series of tests using variants F1 for bothcases (�"0, �"1) and (�"1, �"10) where:

MA"3000 for problems 1.1, 2.1, 3.1, and 4.1.

MA"5000 for problems 5.1 and RW.

The results indicate that the two variants in both cases show quite a similar behavior. With the newvalues ofMA, the average value of I

�is reduced by half, the average value of % is increased by more

than 12%, and the average value of f also increases by more than 15%. But more importantly, theCPU time required is multiplied by a factor of 8. The tradeo! in CPU time is not so badconsidering its small values.All these tests allow to conclude that the intensi"cation and diversi"cation strategies induce an

improvement quality at the expense of a larger CPU time solution. Nevertheless they are worthusing in connection with tabu search since the tradeo! in CPU time required is not an importantlimitation considering its small absolute value. But, it is not possible to identify a diversi"cationstrategy clearly dominating the others, notwithstanding the fact that F1(F2) seems slightly betterthan R1 and S1 (R2 and S2) in general.Finally we observe that the CPU time required to increase the percentage of improvement

% (i.e., the quality of the solution) increases rapidly with the value of %. Indeed, whenMA"500,

J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092 1089

Page 16: Scheduling using tabu search methods with intensification and diversification

Table 3Intensi"cation and diversi"cation e!ects

Variant Problem I�

% f CPU

B M = B M = B M =

T1 1.1 64 74.8 90 59.7 53.0 43.4 365 402.4 445 1.0T1 2.1 42 62.2 83 76.8 65.6 54.1 436 491.0 564 1.2T1 3.1 22 55.6 86 86.7 66.5 48.2 353 484.2 632 1.2T1 4.1 75 90.0 120 68.4 62.0 49.4 602 772.4 902 2.2T1 5.1 263 286.8 304 53.0 48.8 45.7 1095 1210.4 1320 5.2T1 RW 59 61.8 63 13.2 9.1 7.4 l4 20.6 28 0.0

T5 1.1 24 34.6 43 84.9 78.2 73.0 555 607.4 659 1.8T5 2.1 34 37.6 46 81.2 79.2 74.6 590 646.2 677 2.0T5 3.1 14 19.0 25 91.6 88.6 84.9 624 650.2 681 2.4T5 4.1 56 63.0 73 76.4 73.4 69.2 910 969.4 1109 4.2T5 5.1 174 222.4 273 68.9 60.3 51.2 1276 1493.0 1698 9.0T5 RW 49 54.6 59 27.9 19.7 13.2 55 73.0 107 1.0

R1 1.1 24 26.2 29 84.9 83.5 81.8 652 728.6 800 5.2R1 2.1 23 29.0 34 87.3 84.0 81.2 652 672.2 711 5.2R1 3.1 8 12.0 15 95.2 92.8 91.0 610 648.8 719 5.4R1 4.1 42 49.4 53 82.3 79.2 77.6 1104 1127.4 1150 7.2R1 5.1 172 193.6 216 69.3 65.4 61.4 1674 1783.6 1931 11.4R1 RW 27 31.2 39 60.3 54.1 42.6 252 267.4 289 7.0

F1 1.1 20 25.0 30 87.4 84.3 81.1 631 688.8 769 5.2F1 2.1 25 30.4 39 86.2 83.2 78.5 655 698.6 727 6.0F1 3.1 9 12.0 15 94.6 92.8 91.0 611 674.8 718 6.0F1 4.1 41 45.4 53 82.7 80.8 77.6 1022 1071.8 1099 6.8F1 5.1 173 189.8 216 69.1 66.1 61.4 1653 1725.0 1781 11.8F1 RW 27 31.6 36 60.3 53.5 47.1 161 206.8 271 6.8

S1 1.1 19 25.6 30 88.1 83.9 81.1 659 737.0 902 4.0S1 2.1 27 36.4 45 85.1 79.9 75.1 634 705.0 791 5.2S1 3.1 15 17.2 23 91.0 89.6 86.1 629 673.8 718 5.6S1 4.1 38 51.2 63 84.0 78.4 73.4 998 1056.0 1184 7.0S1 5.1 172 196.2 223 69.3 65.0 60.2 1569 1714.2 1866 11.2S1 RW 26 31.2 34 61.8 54.1 50.0 238 274.8 330 6.0

T5 allows increasing the average value of % by 20% using twice as much CPU time as T1, and R1,F1 or S1 induce a gain of another 10% for the average value of % also using twice as much CPUtime as T5. But in attempting to improve the quality of the solutions even more by using largervalue forMA, we observe that, on average, a gain of 12% for % requires multiplying the CPU timeby a factor of 8. It is worth noting that this is typical behavior for many heuristic methods.

1090 J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092

Page 17: Scheduling using tabu search methods with intensification and diversification

Table 4Diversi"cation strategies

Variant Problem I�

% f CPU

B M = B M = B M =

R1 1 16 26.2 45 90.0 84.5 74.6 613 727.3 856 5.1R1 2 21 32.0 47 88.7 81.7 73.6 542 666.1 838 5.4R1 3 11 21.6 40 93.4 86.7 77.4 613 712.6 865 5.9R1 4 32 47.0 70 87.5 81.2 72.9 851 1024.0 1175 7.2R1 5 172 193.6 216 69.3 65.4 61.4 1674 1783.6 1931 11.4R1 RW 27 31.2 39 60.3 54.1 42.6 252 267.4 289 7.0

F1 1 15 25.7 41 90.6 84.7 76.8 617 726.4 868 5.4F1 2 18 31.2 55 89.6 82.2 69.1 565 679.7 806 5.8F1 3 8 19.0 32 95.2 88.3 81.9 593 712.1 796 6.2F1 4 27 46.6 75 89.5 81.4 70.9 934 1044.3 1204 7.5F1 5 173 189.8 216 69.1 66.1 61.4 1653 1725.0 1781 11.8F1 RW 27 31.6 36 60.3 53.5 47.1 161 206.8 271 6.8

S1 1 16 28.6 52 90.6 83.0 70.6 540 720.9 835 4.8S1 2 21 34.3 51 88.2 80.4 71.3 536 684.1 938 5.2S1 3 7 20.5 36 95.8 87.4 79.7 656 740.8 816 5.5S1 4 33 49.1 71 87.1 80.4 72.5 937 1045.0 1239 6.7S1 5 172 196.2 223 69.3 65.0 60.2 1569 1714.2 1866 11.2S1 RW 26 31.2 34 61.8 54.1 50.0 238 274.8 330 6.0

R2 1 16 25.9 40 90.6 84.6 77.4 617 770.9 907 4.6R2 2 19 31.8 48 89.8 81.8 72.3 618 741.2 861 4.8R2 3 15 23.7 38 91.0 85.3 78.5 683 794.5 942 5.2R2 4 31 46.3 67 87.9 81.5 74.0 984 1147.1 1246 6.3R2 5 183 191.6 197 67.3 65.8 64.8 1837 1982.0 2050 9.8R2 RW 20 26.0 31 70.6 61.8 54.4 256 304.4 360 5.0

F2 1 10 24.2 38 94.2 85.6 78.5 648 777.0 893 4.9F2 2 20 31.5 55 89.2 82.0 69.1 558 725.2 878 5.3F2 3 3 20.0 33 95.8 87.7 81.4 595 775.8 1005 5.7F2 4 28 48.1 76 89.1 80.8 70.5 1006 1153.2 1313 6.8F2 5 189 204.2 214 66.2 63.5 61.8 1848 1942.6 2021 9.6F2 RW 21 29.4 37 69.1 56.8 45.6 324 365.4 404 5.0

S2 1 18 28.6 44 89.5 82.9 72.5 675 803.8 925 4.2S2 2 24 38.2 50 86.6 78.1 71.9 591 758.3 937 4.7S2 3 11 23.6 37 93.4 85.4 79.1 661 805.1 969 5.1S2 4 39 53.5 80 84.0 78.7 69.0 852 1164.8 1341 16.7S2 5 182 201.4 226 67.5 64.0 59.6 1809 1918.6 2025 9.2S2 RW 21 25.8 33 69.1 62.1 51.5 301 427.6 518 4.6

J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092 1091

Page 18: Scheduling using tabu search methods with intensification and diversification

References

[1] Ferland JA, Hertz A, Lavoie A. An object-oriented methodology for solving assignment type problems withneighborhood search techniques. Operations Research 1996;44:347}59.

[2] Kelly JP, Laguna M, Glover F. A study of diversi"cation strategies for the quadratic assignment problem.Computers and Operations Research 1994;21:885}93.

[3] Fleurent C, Ferland JA. Object-oriented implementation of heuristic search methods for graph coloring, maximumclique and satis"ability. DIMACS Series in Mathematics and Theoretical Computer Science 1996;26:619}56.

[4] Taillard E. Robust tabu search for the quadratic assignment problem. Parallel Computing 1991;17:443}55.[5] Charest M, Ferland JA. Preventive maintenance scheduling of power generating units. Annals of Operations

Research 1993;41:185}206.[6] Hubscher R, Glover F. Applying tabu search with in#uential diversi"cation to multiprocessor scheduling. Com-

puters Operations Research 1984;21:877}84.[7] Ichoua S. Problemes d'a!ectation avec contraintes d'alternatives et application a la gestion des stages de reH sidence.

Master thesis, DeH partement d'Informatique et de Recherche OpeH rationnelle, UniversiteH de MontreH al, Canada, 1995.

Further Reading

[1] Glover F. Tabu Search, Part 1. ORSA Journal of Computing 1989;1:190}206.[2] Glover F, Laguna M. in: Reeves C, editor, Tabu Search. Modern heuristic techniques for combinatorial problems.

Oxford: Blackwell Scienti"c Publishing, 1993, p. 70}150.

Jacques A. Ferland is a professor in the Department d'informatique et recherche opeH rationnelle at the UniversiteH deMontreH al. His research interests include scheduling and timetabling problems, energy planning problems, applications ofoperations research in health care, heuristic programming and generalized convexity.Soumia Ichoua is presently a Ph.D. student in the Department d'informatique et de recherche opeH rationnelle a the

University ofMontreal. She is conducting her research in the C.R.T. (Centre de recherche sur les transports). Her researchinterests include parallel heuristics, real-time vehicle dispatching, time-dependent vehicle routing and stochastic vehiclerouting problems.Alain Lavoiewas a computer analyst at the Optimization Laboratory of the Department f'informatique et de recherche

opeH rationnelle at the UniversiteH de MontreH al. His research interests include solution techniques and software develop-ment for scheduling and timetabling problems.Eric GagneH is a computer analyst at I.S.M. (Information SystemsManagement corporation) in Montreal. His research

interests include exact and heuristic methods for scheduling and bag-packing problems, and applications of operationsresearch in health care.

1092 J.A. Ferland et al. / Computers & Operations Research 28 (2001) 1075}1092