eliiyi working time

24
International Journal of Production Research Vol. 48, No. 21, 1 November 2010, 6211–6233 Working time constraints in operational fixed job scheduling Deniz Tu¨rsel Eliiyi a and Meral Azizog˘lu b * a Department of Business Administration, Izmir University of Economics, Sakarya Cad., No: 156, Izmir, 35330 Turkey; b Department of Industrial Engineering, Middle East Technical University, Ankara, 06531, Turkey (Received 14 January 2009; final version received 25 August 2009) In this study we consider the operational fixed job scheduling problem under working time limitations. The problem has several practical implications in both production and service operations; however the relevant research is scarce. We analyse pre-emptive and non pre-emptive versions of the problem and its special cases. We provide polynomial-time algorithms for some special cases. We show that the non pre-emptive jobs problem is strongly NP-hard, and propose a branch-and-bound algorithm that employs efficient bounding procedures and dominance properties. We conduct a numerical experiment to observe the effects of parameters on the quality of the solution. The results of our computational tests for the branch-and-bound algorithm reveal that our algorithm can solve the instances with up to 100 jobs in reasonable times. To the best of our knowledge our branch-and-bound algorithm is the first optimisation attempt to solve the problem. Keywords: fixed job scheduling; working time constraints; branch-and-bound 1. Introduction Fixed job scheduling (FJS) is a well-studied and applied area of scheduling where tasks with specified weights, ready times and deadlines are to be processed on a number of parallel resources. A task can be processed only between its ready time and its deadline, and the processing time of the job is equal to the exact difference between these. The problem has two variants: tactical and operational. The tactical fixed job scheduling (TFJS) problem aims to minimise the total cost of the resources to accommodate all tasks, whereas the operational fixed job scheduling (OFJS) problem assumes fixed resource availability and selects a subset of tasks for processing so as to maximise the total weight. The FJS problem appears in many applications in manufacturing and service operations such as maintenance scheduling, transportation systems and shift scheduling. Martello and Toth (1986), and Fischetti et al. (1987, 1992) consider the TFJS problem in scheduling of bus drivers. Kroon (1990), and Kroon et al. (1995) study both tactical and operational versions of the problem in the assignment of incoming aircraft to gates and the capacity planning of aircraft maintenance personnel. The OFJS problem may also be encountered in scheduling earth-observing satellites, as mentioned in Wolfe and Sorensen (2000). Other application areas include class scheduling (Kolen and Kroon 1991), satellite *Corresponding author. Email: [email protected] ISSN 0020–7543 print/ISSN 1366–588X online ß 2010 Taylor & Francis DOI: 10.1080/00207540903289771 http://www.informaworld.com

Upload: valeria-silveira

Post on 25-May-2015

35 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Eliiyi   working time

International Journal of Production ResearchVol. 48, No. 21, 1 November 2010, 6211–6233

Working time constraints in operational fixed job scheduling

Deniz Tursel Eliiyia and Meral Azizoglub*

aDepartment of Business Administration, Izmir University of Economics, Sakarya Cad.,No: 156, Izmir, 35330 Turkey; bDepartment of Industrial Engineering, Middle East

Technical University, Ankara, 06531, Turkey

(Received 14 January 2009; final version received 25 August 2009)

In this study we consider the operational fixed job scheduling problem underworking time limitations. The problem has several practical implications in bothproduction and service operations; however the relevant research is scarce. Weanalyse pre-emptive and non pre-emptive versions of the problem and its specialcases. We provide polynomial-time algorithms for some special cases. We showthat the non pre-emptive jobs problem is strongly NP-hard, and propose abranch-and-bound algorithm that employs efficient bounding procedures anddominance properties. We conduct a numerical experiment to observe the effectsof parameters on the quality of the solution. The results of our computationaltests for the branch-and-bound algorithm reveal that our algorithm can solve theinstances with up to 100 jobs in reasonable times. To the best of our knowledgeour branch-and-bound algorithm is the first optimisation attempt to solve theproblem.

Keywords: fixed job scheduling; working time constraints; branch-and-bound

1. Introduction

Fixed job scheduling (FJS) is a well-studied and applied area of scheduling where taskswith specified weights, ready times and deadlines are to be processed on a number ofparallel resources. A task can be processed only between its ready time and its deadline,and the processing time of the job is equal to the exact difference between these. Theproblem has two variants: tactical and operational. The tactical fixed job scheduling(TFJS) problem aims to minimise the total cost of the resources to accommodate all tasks,whereas the operational fixed job scheduling (OFJS) problem assumes fixed resourceavailability and selects a subset of tasks for processing so as to maximise the total weight.

The FJS problem appears in many applications in manufacturing and serviceoperations such as maintenance scheduling, transportation systems and shift scheduling.Martello and Toth (1986), and Fischetti et al. (1987, 1992) consider the TFJS problem inscheduling of bus drivers. Kroon (1990), and Kroon et al. (1995) study both tactical andoperational versions of the problem in the assignment of incoming aircraft to gates and thecapacity planning of aircraft maintenance personnel. The OFJS problem may also beencountered in scheduling earth-observing satellites, as mentioned in Wolfe and Sorensen(2000). Other application areas include class scheduling (Kolen and Kroon 1991), satellite

*Corresponding author. Email: [email protected]

ISSN 0020–7543 print/ISSN 1366–588X online

� 2010 Taylor & Francis

DOI: 10.1080/00207540903289771

http://www.informaworld.com

Page 2: Eliiyi   working time

data transmission (Faigle et al. 1999) and printed circuit board manufacturing (Spieksma1999).

Kovalyov et al. (2007) provide a thorough review on the applications and theory of theFJS problem. Another recent survey by Kolen et al. (2007) on FJS problems provides areview of the previous studies, presents proofs of some known results, and discussespotential application areas. The reader is referred to these survey articles for more detailedtheory and applications of the FJS problem.

In the basic FJS model, there are no restrictions on the capacity of the machines, andall machines are available at all times. However, the practical cases are often moresophisticated so that additional or more general constraints/parameters are needed; hencedifferent variants of the problem arise. One such variant in the literature involvesoperating time constraints on machines. Spread time and working time are two studiedforms of the operating time constraints. Spread time constraints impose an upper boundon the difference between the start time of the first operation and finish time of the lastoperation on any machine. The machine idle times are included in the spread time. TheTFJS problem with spread time constraints is studied by Fischetti et al. (1987, 1992) andthe OFJS problem with the spread time constraints is studied by Eliiyi and Azizoglu(2006). Working time constraints limit the actual operation time of each machine; nomachine is allowed to operate for more than T working time units. Consequently, theworking time of a machine is the sum of the processing times of the jobs scheduled onthat machine. Unlike spread time, it does not include the idle times of machines. Fischettiet al. (1989) report on a real life application of the bus driver scheduling problem withworking time constraints, where the drivers are not allowed to drive for more than eighthours in a day. The working time constraints may also find their applications inproduction environments where it may not be economical to operate some high precisionmachines more than some pre-specified time limit.

The research on the FJS problem with working time constraints is quite limited despiteits practical importance. To the best of our knowledge, there is a unique study on the OFJSproblem under working time constraints which is by Bouzina and Emmons (1996). Theauthors show that the problem of maximising the number of completed jobs ispolynomially solvable when pre-emption is allowed. The authors also prove that whenpre-emption is allowed the problem of maximising the weighted number of completed jobsis NP-hard in the ordinary sense, through transformation from the well-known binaryNP-hard knapsack problem (see Garey and Johnson 1979). There are two studies on thetactical problem by Fischetti et al. (1989, 1992). The authors deal with the bus driverscheduling problem with the objective of minimising the number of drivers necessary toperform all duties, where a driver cannot work for more than a given working time Tduring a day. The authors prove that the problem is NP-hard in the strong sense andpresent some polynomially solvable special cases (Fischetti et al. 1989). They present abranch-and-bound algorithm and observe its satisfactory performance on instancesgenerated close to the real-life situations. In their later study, Fischetti et al. (1992) providesome polynomial-time approximation algorithms for the problem.

In this study, we consider the OFJS problem with working time constraints and aim tomaximise the total weight of the processed jobs. Consequently, our study fills an importantgap in the FJS literature. The rest of the paper is organised as follows. We first present themathematical formulation of the OFJS problem with working time constraints (OFJSW)and provide the related literature. We then present our result settling the complexity of theproblem and analyse some polynomially solvable special cases of the pre-emptive problem.

6212 D.T. Eliiyi and M. Azizoglu

Page 3: Eliiyi   working time

The non pre-emptive problem and the specifics of our optimisation procedure together

with the results of a computational experiment are presented next. Finally, we conclude

with some further research topics.

2. The OFJSW models

There are n jobs to be scheduled for processing on m identical parallel machines. Job j

arrives at its integer ready time rj, and completes at its deadline dj if it is selected for

processing. The integer processing time of job j is pj, where dj ¼ pj þ rj. If partial

processing is allowed, then a job can be processed by less than pj units between rj and dj.

The weight of job j, indicating its relative importance, is denoted by wj. Each machine can

process for at most T units of processing time. We assume the total processing time,Pnj¼1 pj, is greater than T, so that the working time constraint is not redundant.The time is assumed to be divided into periods not necessarily equal in length; let

ft1, t2, . . . , tzg be the sequence of the rj and dj values in chronological order with duplicates

removed, and Sa be the set of jobs that resides the interval ta, taþ1½ Þ between its ready time

and deadline for all a ¼ 1, 2, . . . , z� 1. The only decision variable of the model is the

binary assignment variable, which is defined as follows:

xjk ¼1, if job j is processed on machine k

0, otherwise

�, 8j, k :

Bouzina and Emmons (1996) present the following integer programming model for the

OFJSW problem:

MaximiseXmk¼1

Xnj¼1

wjxjk ð1Þ

subject to:

Xmk¼1

xjk � 1, j ¼ 1, . . . , n ð2Þ

Xj2Sa

xjk � 1, k ¼ 1, . . . ,m, a ¼ 1, 2, . . . , z� 1ð3Þ

Xnj¼1

pjxjk � T, k ¼ 1, . . . ,m ð4Þ

The objective function in (1) requires the maximisation of the total weight of the

processed jobs. Constraint set (2) ensures that each job j is processed by at most one

machine. The condition that no machine can process more than one job at a time is

handled by constraint set (3). Working time constraints for the machines (T-constraints)

are stated in constraint set (4). Constraint set (5) below forces the integrality in job-

machine assignments, i.e., does not allow the pre-emption of the jobs between the

machines and requires full processing of the jobs.

xjk 2 0, 1f g, k ¼ 1, . . . ,m, j ¼ 1, . . . , n ð5Þ

International Journal of Production Research 6213

Page 4: Eliiyi   working time

If the pre-emption of the jobs between machines, partial processing of the jobs or jobsplitting is allowed, constraint set (5) should be replaced by constraint set (6):

0 � xjk � 1, k ¼ 1, . . . ,m, j ¼ 1, . . . , n ð6Þ

We study the pre-emptive and non pre-emptive versions of the OFJSW problem in thefollowing sections.

3. The pre-emptive OFJSW model – partial processing allowed

In this section, we assume pre-emption and partial processing are allowed for jobs.However, the simultaneous processing of the jobs on more than one machine, i.e., jobsplitting, is not allowed. When a job is partially processed, its uncompleted part is simplydiscarded without occupying any machine’s capacity. For example, when job j is partiallyprocessed for p 0j 5 pj units, the weight gained is p 0j ðwj=pjÞ. We analyse two special casesthat are polynomially solvable. For each case, we provide a polynomial-time algorithm,prove that the algorithm solves the case, and settle its time complexity.

Special case 1: there is only one machine, i.e., m^ 1

We develop an algorithm for this case, utilising the idea of a continuous single knapsacksolution. The algorithm assigns jobs, starting from the one with the highest weight/processing time ratio to the intervals within their processing window. It defines timeintervals such that there are no arrivals or completions between two consecutive intervals.The job is scheduled if the machine is available during that interval and if such anassignment does not violate the T-constraint. Below is the stepwise description of thealgorithm.

Algorithm 1

S1. Index the jobs in their non-increasing order of wj/pj ratios.S2. Let ft1, t2, . . . , tzg be the sequence of rj and dj values in chronological order with no

duplicates.S3. Scan forward through time stopping at t1, t2, . . . , tz�1. For each interval ta, taþ1½ Þ,

store the index of the highest-ratio processable job ha in list: H ¼ fhag,a ¼ 1, . . . , z� 1.

S4. While satisfying the T-constraint and H 6¼ ;:

Find:

j ¼ minfhag and a 0 ¼ argmina

haf g, a ¼ 1, . . . , z� 1:

Assign job j in interval ta 0 , ta 0þ1½ Þ. Remove j from list H.The correctness proof of Algorithm 1 can be done simply by standard job interchange

arguments and thus it is omitted. Theorem 1 below states the complexity result.

Theorem 1: Algorithm 1 runs in Oðn log nÞ.

Proof: S1 requires sorting n values; this can be done in Oðn log nÞ. S2 requires sorting 2nvalues (i.e., rj and dj, for j¼ 1, . . . , n) thus the complexity of S2 is Oðn log nÞ. In S3, wescan forward through time stopping at t1, t2, . . . recording the processable job with the

6214 D.T. Eliiyi and M. Azizoglu

Page 5: Eliiyi   working time

highest ratio. It takes Oðlog nÞ time to update this list every time we reach a new ta(a¼ 1, . . . , z�1), so the total run-time is Oðn log nÞ. S4 re-scans the list at most 2n�1 timesassigning the highest-ratio job. This process takes Oðn log nÞ time, as in S3. Hence, theworst-case complexity of Algorithm 1 is Oðn log nÞ.

Special case 2: processing times are identical to weights, i.e., wj^ pj, }j

When wj ¼ pj, 8j, the objective reduces to maximising the total processing time.Algorithm 2 solves this special case optimally. The algorithm considers each intervalseparately in chronological order and assigns the available jobs to the machines.

Algorithm 2

S1. Let ft1, t2, . . . , tzg be the sequence of rj and dj values in chronological order withduplicates removed.

S2. While satisfying T-constraints for k ¼ 1, . . . ,m:

For each interval ðta, taþ1Þ for a ¼ 1, 2, . . . , z� 1 do:Let Sa be the set of jobs processable in the interval ðta, taþ1Þ for a ¼ 1,2, . . . , z� 1;Assign the first minf Saj j,mg jobs, each to one machine.

The correctness of Algorithm 2 follows from that of Algorithm 1, as it is an adaptationof Algorithm 1 for jobs having equal weights per unit time. Theorem 2 states thecomplexity result.

Theorem 2: Algorithm 2 runs in Oðn �maxfm, log ngÞ.

Proof: S1 runs in Oðn log nÞ as we sort 2n values. S2 runs in OðmnÞ as there are mnintervals over all machines. Hence, the total running time of the algorithm isOðn �maxfm, log ngÞ, determining its complexity.

4. The non pre-emptive OFJSW model

In this section we analyse the OFJSW problem with non pre-emptive jobs. We first settlethe complexity of the problem.

When m¼ 1, the problem reduces to the single knapsack problem with conflicts withthe following analogy. Consider a knapsack problem consisting of items with weights aj,capacity requirements cj, an integer capacity of C, and a set E that consists of the pairs ofthe items that are not allowed to be packed together into the knapsack. Also, consider aninstance of the OFJSW problem where wj ¼ aj, pj ¼ cj, T ¼ C and the jobs in sets Sa for allintervals a altogether form set E. The single knapsack problem with conflicts is stronglyNP-hard, then so is our problem with m¼ 1. The single knapsack problem with conflicts,hence the single-machine case of our problem, can be seen as a generalisation of themaximum weighted independent set problem in an interval graph (Golumbic 2004).

For general m, the problem reduces to the bin packing problem with conflicts with thefollowing analogy. Consider a bin packing problem consisting of items with weights aj,capacity requirements cj, an integer capacity of C for each of the m bins and set E thatconsists of the pairs of items that are not allowed to be packed together into the same bin.Also, consider an instance of the OFJSW problem where wj ¼ aj, pj ¼ cj, T ¼ C and thejobs in set Sa for all intervals a altogether form set E. The bin packing problem with

International Journal of Production Research 6215

Page 6: Eliiyi   working time

conflicts is strongly NP-hard (see Jansen and Ohring 1997), so is our problem forgeneral m.

In the rest of this section, we examine some special polynomially solvable cases of theproblem and present an optimisation algorithm together with the computational results.

4.1 Special polynomially solvable cases

The special cases arise from some special characteristics of the problem parameters. Foreach special case, we provide a polynomial time algorithm, prove that the algorithm solvesthis particular case, and settle its time complexity.

Special case 3: all processing times are equal to one, i.e. pj^ 1, }j

For the unit processing times case, we propose a greedy algorithm that sorts the jobs innon-increasing order of their weights and assigns them to the machines until no more jobscan be processed without violating feasibility. Below is the stepwise description of thealgorithm.

Algorithm 3

S1. Index the jobs in their non-increasing order of wj values.S2. While satisfying T-constraints,

For j ¼ 1, . . . , n:If no machine is available at time rj, do not schedule job j;Else, assign job j to any available machine at time rj.

The correctness proof of Algorithm 3 can be done simply by standard job interchangearguments and thus it is omitted. Theorem 3 below states the complexity result.

Theorem 3: Algorithm 3 runs in Oðn log nÞ.

Proof: The sorting operation in S1 takes Oðn log nÞ time. The check ‘If no machine isavailable at time rj’ in S2 can be performed in constant time by simply considering for eachtime rj the number Mrj of available machines (initialising Mrj ¼ m for each rj, checking ifMrj 4 0, and setting Mrj ¼Mrj � 1 if job j is scheduled at time rj). As we consider n jobs,S2 takes OðnÞ time. The overall complexity of the algorithm is therefore Oðn log nÞ.

Special case 4: all ready times are identical, i.e. rj^ r, }j

The following Oðn log nÞ algorithm solves the case where all jobs are ready at the sametime. The algorithm simply selects m highest-weighted jobs and assigns each to a differentmachine.

Algorithm 4

S1. Select m jobs that have highest wj values.S2. Assign the selected jobs each to a different machine.

Theorem 4: Algorithm 4 runs in Oðn log nÞ time and solves the non pre-emptive OFJSWproblem when all ready times are identical.

Proof: The complexity of the algorithm is defined by the complexity of the sorting oper-ation, i.e., Oðn log nÞ, in S1. For proving correctness, letW be the sum of m highest weights.

6216 D.T. Eliiyi and M. Azizoglu

Page 7: Eliiyi   working time

Clearly no higher weight than W can be achieved by any schedule, and Algorithm 4achieves W.

4.2 Optimisation procedure for the general problem

We propose a branch-and-bound (BB) algorithm to find the optimal schedule for the nonpre-emptive OFJSW problem. Our algorithm incorporates several reduction and boundingmechanisms. We first derive some properties about the structure of an optimal solution,and present our lower and upper bounding procedures. Then, we provide the implemen-tation details of our branch-and-bound algorithm.

4.2.1 Properties of an optimal solution

In this section, we present some properties that characterise the structure of an optimalsolution. Properties 1, 2 and 3 are extended from Eliiyi and Azizoglu (2006) that aredeveloped for the OJFS problem with spread time constraints.

Property 1: If wj 4wi, ri � rj and di � dj then any optimal solution that includes job ishould also include job j.

The proof of Property 1 can be based on standard job-interchange arguments and istherefore omitted.

Property 2: If wj ¼ wi, ri � rj and di � dj with strict inequality holding at least once, thenthere exists an optimal schedule that includes job j if job i is processed.

The proof directly follows from the proof of Property 1, and is therefore omitted.We hereafter say that job j dominates job i if wj 4wi, ri � rj and di � dj, or if wj ¼ wi,

ri � rj and di � dj with strict inequality holding at least once. We let Si be the set of jobsthat dominate job i. Property 3 establishes another characteristic of an optimal solution,which is a direct consequence of Properties 1 and 2.

Property 3: If Sij j � m, then no optimal solution processes job i.

The proof directly follows the definition of the dominance, and is therefore omitted.The jobs that satisfy the conditions of Property 3 can be eliminated, thereby reducing

the problem size. As in Eliiyi and Azizoglu (2006), we generalise Properties 1 and 2 byconsidering the fact that there may exist a job that is dominated by a set of jobs, howevernot by a single job. We find this job set by the following procedure. Assume Di is the set ofjobs that can replace job i without altering any processing sequence, henceDi ¼ fj jrj � ri, dj � dig. Let Mi be the maximum weighted independent set formed bythe jobs in Di. This set can be found in Oðn log nÞ steps. Note that when no jobs in set Di

overlap, the maximum weighted independent set solution includes all jobs in Di. Considera 5-job problem with the following data:

j 1 2 3 4 5

rj 1 2 2 4 5

pj 5 1 1 2 1

wj 7 5 4 1 3

International Journal of Production Research 6217

Page 8: Eliiyi   working time

Note that D1¼ {2, 3, 4, 5} and M1¼ {2, 5}.The following property establishes a relation between job i and the jobs in set Mi.

Property 4: In an optimal solution, if job i is processed andP

j2Miwj 4wi, then at least

one job in Mi should be processed.

Proof: A solution that consists of job i but not any job in Mi cannot be optimal as its

objective function value increases byP

j2Miwj�wi 4 0 units by replacing job i with all jobs

in Mi.

Properties 5 and 6 establish some further features of an optimal solution.

Property 5: If ri 5 rj 5 di 5 dj, wi 4wj, pi � pj, and no job is available for processing

during ½ri, rj �, then any solution that includes job j, but not job i, cannot be optimal.

Proof: The condition stated is illustrated in the following figure:

ri rj djdi

ij

A

Consider an optimal solution that includes job j, but not job i. Let Zj be the associated

objective function value. Note that there is no processable job in the interval ½ri, rj �, i.e., set

A in the figure is empty. Assume we remove job j from the solution and assign job i to the

machine that is freed by job j. The objective function value of this new solution is

Zi ¼ Zj � wj þ wi. Note that Zi 4Zj, as wi 4wj. Hence a solution that includes job j but

not job i cannot be optimal.

Property 6: If ri 5 rj 5 di 5 dj, wj 4wi, and no job is available for processing during

½di, dj �, then any optimal solution that includes job i, but not job j, cannot be optimal.

Proof: The condition is illustrated in the following figure:

i jB

ri rj djdi

Consider an optimal solution that includes job i, but not job j, with an objective

function value of Zi. As there is no processable job in the interval ½di, dj �, set B is empty.

Assume we remove job i and assign job j to the machine that is freed by job i. The objective

function value of this new solution is Zj ¼ Zi � wi þ wj. Since Zj 4Zi as wj 4wi, a

solution that includes job i, but not job j, cannot be optimal.

4.2.2 Upper bounds

Consider the surrogate relaxation of our problem, where instead of constraint set (4)

representing the T-constraints, we have:

Xmk¼1

Xnj¼1

pjxjk � mT: ð7Þ

6218 D.T. Eliiyi and M. Azizoglu

Page 9: Eliiyi   working time

In the absence of overlapping constraints, this representation reduces our problem to

the well-known single knapsack problem with capacity mT. This problem is known to be

NP-hard in the ordinary sense (Garey and Johnson 1979), then so is the surrogate relax-

ation of our problem. We show through Theorem5 that the surrogate relaxation problem

can be solved in polynomial-time when partial processing and pre-emption are allowed.

Consequently, we find an upper bound to the OFJSW problem by Algorithm UB1.

Algorithm UB1

S1. Index the jobs in their non-increasing order of wj/pj ratios.S2. Let ft1, t2, . . . , tzg be the sequence of rj and dj values in chronological order with no

duplicates.S3. Scan forward through time stopping at t1, t2, . . . , tz�1. Let Sa be the set of jobs

processable in the interval ðta, taþ1Þ. For each interval, store the indices of the

minfm, Saj jg processable jobs with highest-ratios in the list:

H ¼ haka� �

, a ¼ 1, . . . , z� 1, ka ¼ 1, . . . , minfm, Saj jg :

S4. While T 04 0 and H 6¼ ;:

Find:

j ¼ min haka� �

and a 0 ¼ argmina

haka� �

, a ¼ 1, . . . , z� 1

ka ¼ 1, . . . , min m, Saj jf g;

If no machine is available in interval ½ta 0 , ta 0þ1Þ, do not schedule job j;Else, assign job j to one of the available machines of the interval;Set:

UB1 ¼ UB1 þmin T 0, ta 0þ1 � ta 0ð Þ

� �pj

wj and T 0 ¼ T 0 � ta 0þ1 � tað Þ

Remove j from list H.

The correctness proof of Algorithm UB1 can be done simply by standard job

interchange arguments and thus it is omitted. Theorem 5 below states the complexity

result.

Theorem 5: Algorithm UB1 runs in Oðmn log nÞ.

Proof: The relaxed problem reduces to a single machine problem with m overlaps at-

a-time, hence the solution procedure is merely an adaptation of Algorithm 1 for this case.

S1 requires sorting n values; this can be done in Oðn log nÞ. S2 requires sorting 2n values

(i.e., rj and dj, for j¼ 1, . . . , n) thus the complexity of S2 is Oðn log nÞ. In S3, we scan

forward through time stopping at t1, t2, . . . , to find the set of m processable jobs with

highest-ratios. It takes Oðm log nÞ time to update this list every time we reach a new

ta (a¼ 1, . . . , z�1), so the total run-time is Oðmn log nÞ. S4 re-scans the list at most 2mn�1

times assigning the highest-ratio jobs. This process takes OðmnÞ time, as the availability

of machines can be checked in constant time (see the proof of Theorem3). Hence,

the worst-case complexity of Algorithm UB1 is Oðmn log nÞ þOðmnÞ, which reduces to

Oðmn log nÞ.

International Journal of Production Research 6219

Page 10: Eliiyi   working time

UB1 is the upper bound value found by Algorithm UB1. Another upper bound can befound by simply ignoring the T-constraints. This relaxation reduces to the basic OFJSproblem. Bouzina and Emmons (1996) formulate this case as a minimum cost networkflow (MCNF) model, where the optimal solution can be found in O(n3) time (see Ahujaet al. 1993). For a single machine, the optimal solution can be found by a longest pathalgorithm. The results of our initial experiments have revealed that employing the MCNFalgorithm at each partial solution of the branch-and-bound algorithm is very timeconsuming, i.e., the effort spent to calculate the bound has outweighed the savingsobtained through partial solution eliminations. However, we employ the longest pathalgorithm and obtain satisfactory results when there is a single available machine in thepartial solution (due to the T-constraints). We hereafter let UB2 denote this second upperbound value obtained by the longest path solution for a single available machine.

4.2.3 Lower bounds

The lower bounds can enhance the efficiency of the branch-and-bound procedure viagenerating powerful initial feasible solutions. Algorithm LB below selects the best out ofthree lower bounds constructed by simple greedy procedures.

Algorithm LB

S1.

(a) Index jobs in non-increasing order of wj/pj values.(b) While satisfying T-constraints for k ¼ 1, . . . ,m:

For j ¼ 1, . . . , n:If no machine is available during ½rj, dj �, do not schedule job j;Else assign job j to one of the available machines in the interval.

(c) Let LB1 be the resulting objective function value.

S2. Index jobs in their non-increasing order of wj values and perform step S1.b. LB2 isthe resulting objective function value.

S3. Index jobs in their non-decreasing order of pj values and perform step S1.b. LB3 isthe resulting objective function value.

S4. Set LB¼Max {LB1, LB2, LB3}.

4.2.4 Branch-and-bound algorithm

In our branch-and-bound (BB) procedure, we assume that the jobs are indexed in theirnon-decreasing order of ready times. A node at level l corresponds to a partial solution inwhich the decisions about the l jobs having the smallest ready times are set. For each nodeemanating from level l, there are at most mþ 1 decisions: one for rejecting job lþ 1 andone for processing job lþ 1 on machine k, k ¼ 1, . . . ,m. The assignment to machine k isfeasible if the machine does not process any overlapping job and the assignment does notviolate the T-constraint.

When there is more than one machine with no job assignments, we increase theefficiency of branching by considering only one empty machine to eliminate theduplication of the partial sequences, as all machines are identical. Specifically, weconsider only the first machine for the first job, leaving only two decisions. If job 1 is

6220 D.T. Eliiyi and M. Azizoglu

Page 11: Eliiyi   working time

rejected then there are two decisions for job 2: rejection or assignment to machine 1, as allmachines are empty. If job 1 is scheduled, there are three decisions for job 2: rejection,assignment to machine 1 and assignment to machine 2. Similarly, for job l there are atmost min {m,l}þ 1 alternatives, and if only R (5m) machines are in use then there areRþ 2 decisions for job l: one for rejecting and one for assignment to machine k,k¼ 1, . . . ,Rþ 1. A depth-first strategy that introduces one job at a time to the partialschedule is employed. The power of fathoming is increased in this strategy, since completesolutions yielding early high-quality lower bounds are likely to be reached earlier. Thenode having the maximum upper bound is selected for branching. The remaining nodes arestored in a stack in non-increasing order of their upper bounds.

We first reduce the problem size by using the result of Property 3. We remove job ifrom the partial solution if Sij j � m, where Si is the set of jobs that dominate job i. Duringthe BB procedure, we remove a job from consideration if its assignment to any machineleads to an infeasible solution. We also remove a machine from consideration if no job canbe scheduled on it feasibly. We fathom the node representing the rejection of job i, if thereexists a scheduled job j such that wi 4wj, rj � ri and dj � di (otherwise Property 1 isviolated). We fathom the node representing the rejection of job i if there exists a scheduledjob j such that wi ¼ wj, rj � ri and dj � di, with strict inequality holding at least once(otherwise Property 2 is violated). We fathom the node representing the assignment of job jto any machine if all jobs in Mj are already rejected (otherwise Property 4 is violated). Ifthere exists an unscheduled job i (such that pi � pj), and no job k that satisfiesri � rk � dk � rj is scheduled, then job j such that ri 5 rj � di 5 dj and wi 4wj cannot bescheduled on any machine (otherwise Property 5 is violated).

We find the initial lower bound by Algorithm LB. We also calculate a lower bound fora partial schedule with a set of unassigned jobs, say U, when the total processing time ofunassigned jobs is no more than the slack of our surrogate constraint. That is, whenP

j2U pj � mT�Pm

k¼1 Lk, where Lk is the load of machine k in the partial schedule. Indoing so, we update the machine available times and apply Algorithm LB to the jobs in setU. If the solution produced by Algorithm LB contains all jobs in U, then the optimalcompletion from the partial schedule is available, hence the node is not considered further.

We calculate an upper bound for a node if it cannot be fathomed by any of the aboveconditions. If only a single machine remains available for further assignments, we useminfUB1,UB2g as an upper bound. Otherwise we merely use UB1. The node is fathomed ifits upper bound is not greater than the best-known lower bound.

We update the best-known lower bound whenever a complete solution with a betterobjective function value is reached.

4.3 Computational experiment

A computational experiment was designed for assessing the performance of the boundingprocedures and the branch-and-bound algorithm. Random test problems were generatedfor n ¼ 20, 30, . . . , 100 jobs and m ¼ 2, 3, 4 machines. Our experimental setting is similar tothe one described in Fischetti et al. (1989). Two sets of ready times were generated; in thefirst set (when r ¼ 1), ready times follow a discrete uniform distribution in the range[0,200], while in the second set (r ¼ 2), a peak time distribution is considered where 30% ofthe ready times are uniformly random in the range [30,40], 30% in the range [130,140] andthe remaining 40% in ranges [0,29], [41,129] and [141,200]. For each set, two uniform

International Journal of Production Research 6221

Page 12: Eliiyi   working time

distributions for processing times were utilised: [5,10] (p ¼ 1) and [5,40] (p ¼ 2). T¼ 50 isused. Three weight sets were considered: wj ¼ pj (w ¼ 1), uniform in range [5,10] (the lowvariability case, w ¼ 2) and [5,40] (the high variability case, w ¼ 3). Note that, whenwj ¼ pj, the objective reduces to the maximisation of the total processing time. Ten randominstances were generated for each problem combination.

All algorithms are coded in MS Visual Cþþ 6.0, and solved on a computer having2.8GHz Pentium IV processor with 1GB memory. We impose a one-hour limit on thecentral processing unit (CPU) time, i.e., the execution of the branch-and-bound algorithmis terminated if it cannot reach an optimal solution in one hour.

We first investigate the performance of our lower and upper bounds. Table 1 andTable 2 report the average and maximum root node lower bound and upper bounddeviations, expressed as a percentage of optimal objective values and the number of timesthe bounds find optimal solutions for r ¼ 1 and r ¼ 2 settings, respectively. An emptyentry in the tables indicates that the algorithm could not return an optimal solution withinthe one-hour time limit for any of the 10 problem instances. The lower and upper boundsseem quite powerful. For r ¼ 1, the lower and upper bounding procedures yield respectivedeviations of no more than 14% and 11% from the optimal solutions. For r ¼ 2, themaximum respective deviations are 18% and 25%.

The average and maximum CPU times (in seconds) and the average and maximumnumber of nodes for r ¼ 1 and r ¼ 2 are presented in Tables 3 and 4, respectively. Thenumbers in parentheses are the numbers of instances that cannot be solved within thetermination limit. It can be seen that the p ¼ 1 case (low variability in processing times)reduces the efficiency, as expected. This is because fewer node evaluations are necessary, asthe number of alternative machines becomes lower for longer processing times. The r ¼ 1setting is easier than r ¼ 2 setting, as was hinted by the values in Tables 1 and 2. Note thatwhen r ¼ 1, the upper bound performances are better, reducing the CPU time. It can alsobe observed that when wj ¼ pj, the problem becomes easier than the other two weightsettings. When the variability of the weights is higher, the change in the objective functionis higher with a minor change in the solution. This in turn causes frequent updates in thebest solution and increases the CPU time for the other two weight settings.

To see the effect of number of the machines on the CPU time and the percentdeviations more clearly, we perform some additional runs with six and eight machines for20 to 70 jobs for r ¼ 1, p ¼ 2. Table 5 presents the results of the associated runs. Theexponential effect of the number of machines on the CPU time and the number of nodesare quite obvious. However, as the number of machines increases our initial upper boundseems to become better. This is because more jobs can be processed feasibly as m increasesfor a given n, thereby decreasing the gap between the surrogate relaxation and the optimalobjective value.

5. Conclusions

This study considered the operational fixed job scheduling problem under working timeconstraints. The objective was to maximise the total weight of the processed jobs. Weshowed that the non pre-emptive problem is NP-hard in the strong sense. We settled thecomplexity of several special cases and proposed a branch-and-bound algorithm for thegeneral problem. The branch and bound algorithm employs several efficient dominanceconditions between jobs and effective bounding mechanisms. We observed from the results

6222 D.T. Eliiyi and M. Azizoglu

Page 13: Eliiyi   working time

Table

1.Lower

andupper

bounddeviationsatrootnodeforr¼1.

m¼2

m¼3

m¼4

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

npw

Avg.

Max.

Avg.

Max.

#opt.*

Avg.

Max.

Avg.

Max.

#opt.

Avg.

Max.

Avg.

Max.

#opt.

20

11

3.00

7.00

0.00

0.00

12.20

4.03

0.42

2.90

30.00

0.00

0.30

2.96

10

22.81

6.15

1.03

2.52

22.02

6.08

0.84

2.88

40.00

0.00

0.50

2.88

10

30.74

2.17

1.64

3.54

31.71

3.95

0.62

3.59

20.00

0.00

0.00

0.00

10

21

3.40

13.00

0.00

0.00

15.13

14.00

0.00

0.00

04.32

8.63

0.25

1.52

12

4.24

8.77

4.14

7.46

16.01

10.53

3.30

6.58

07.25

13.98

3.41

10.81

13

3.83

13.44

4.55

8.63

26.13

11.69

2.47

7.17

05.06

8.51

2.85

6.16

0

30

11

2.30

5.00

0.00

0.00

21.80

3.33

0.00

0.00

02.45

5.00

0.20

1.52

12

2.68

6.14

0.34

0.88

12.96

5.45

0.17

0.60

03.00

4.93

0.67

1.48

03

2.86

5.68

1.64

6.75

01.55

3.26

1.25

3.27

20.88

2.37

0.41

0.98

221

1.30

4.00

0.00

0.00

42.07

4.00

0.00

0.00

22.45

9.50

0.00

0.00

22

3.46

7.04

3.34

6.33

25.33

9.78

1.79

5.43

17.12

9.82

1.58

4.31

03

3.78

7.60

2.02

4.29

24.12

8.97

2.23

4.92

05.97

8.66

2.34

6.50

0

40

11

1.50

3.00

0.00

0.00

31.93

3.33

0.00

0.00

21.80

4.50

0.51

2.04

22

2.32

5.04

0.67

1.63

02.07

3.59

0.37

1.60

0–

––

––

33.49

7.19

0.85

2.25

02.51

5.66

0.88

2.69

0–

––

––

21

2.00

5.00

0.00

0.00

32.67

6.67

0.00

0.00

12.70

9.50

0.00

0.00

02

5.02

10.71

2.40

6.58

05.93

11.21

0.91

2.75

16.00

9.09

0.63

2.63

03

3.75

7.97

2.81

6.03

15.16

9.54

1.29

4.62

06.15

8.64

0.66

1.36

0

50

11

1.90

4.00

0.00

0.00

21.53

2.67

0.00

0.00

22.05

4.00

0.25

2.04

12

3.08

5.81

0.55

1.49

03.00

6.00

0.15

0.54

0–

––

––

32.88

7.34

0.66

1.89

12.89

5.30

0.31

0.74

0–

––

––

21

1.30

3.00

0.00

0.00

41.67

3.33

0.00

0.00

00.85

2.00

0.00

0.00

22

5.36

12.90

0.74

3.95

15.56

8.74

0.60

1.72

05.12

9.02

0.79

2.14

03

4.73

11.30

2.03

3.56

14.72

8.87

1.83

3.29

14.24

7.71

0.90

1.81

0

60

11

1.10

3.00

0.00

0.00

21.67

4.67

0.00

0.00

30.60

1.52

0.92

3.09

42

2.54

5.52

0.20

0.66

22.28

4.05

0.21

1.59

0–

––

––

33.15

6.17

0.54

1.35

13.70

5.36

0.17

0.56

0–

––

––

21

1.10

4.00

0.00

0.00

51.07

3.33

0.00

0.00

31.40

3.00

0.00

0.00

22

2.81

8.00

2.11

4.17

15.21

10.83

0.73

3.33

05.87

8.61

0.28

0.71

03

2.81

5.78

2.30

5.31

25.14

8.10

1.12

4.38

04.79

7.71

0.66

1.75

0

(continued

)

International Journal of Production Research 6223

Page 14: Eliiyi   working time

Table

1.Continued.

m¼2

m¼3

m¼4

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

(OPT-LB)/OPT(%

)(U

B-O

PT)/OPT

(%)

npw

Avg.

Max.

Avg.

Max.

#opt.*

Avg.

Max.

Avg.

Max.

#opt.

Avg.

Max.

Avg.

Max.

#opt.

7011

0.50

3.00

0.00

0.00

71.47

3.33

0.00

0.00

11.15

2.50

0.36

2.04

32

2.69

5.44

0.54

1.36

02.56

4.29

0.00

0.00

0–

––

––

33.51

7.06

0.49

1.65

03.03

3.85

0.20

0.42

0–

––

––

21

0.60

2.00

0.00

0.00

60.73

2.00

0.00

0.00

30.80

2.50

0.00

0.00

42

3.82

8.82

1.81

5.05

15.13

11.58

0.62

2.21

15.24

9.42

0.60

1.81

03

3.10

7.14

0.87

3.79

13.99

8.08

0.58

1.14

05.04

11.62

0.77

1.69

0

8011

0.00

0.00

0.00

0.00

10

1.47

4.00

0.00

0.00

21.25

3.00

0.30

1.52

42

2.30

4.17

0.82

1.33

13.28

5.94

0.18

0.86

0–

––

––

33.45

6.79

0.52

1.40

02.31

3.58

0.18

1.37

0–

––

––

21

0.80

4.00

0.00

0.00

70.87

2.67

0.00

0.00

30.65

2.50

0.00

0.00

42

3.53

5.93

0.96

2.17

14.55

8.26

0.93

2.63

05.38

8.43

0.28

1.06

03

3.93

6.69

1.96

4.00

13.38

7.97

0.60

1.14

03.35

5.29

0.38

0.78

0

9011

0.00

0.00

0.00

0.00

10

1.20

2.00

0.00

0.00

10.55

1.50

0.36

2.04

42

2.61

4.67

0.31

0.66

13.05

4.63

0.23

0.99

0–

––

––

32.44

4.49

0.64

1.84

02.80

5.13

0.43

1.29

0–

––

––

21

0.10

1.00

0.00

0.00

90.93

3.33

0.00

0.00

40.80

3.50

0.00

0.00

32

1.70

4.13

1.67

4.08

43.49

7.44

0.37

0.83

04.55

8.44

0.48

1.16

03

2.90

7.08

1.63

4.75

14.41

7.62

0.85

2.57

13.91

7.00

0.63

2.41

0

10011

0.00

0.00

0.00

0.00

10

0.40

2.00

0.00

0.00

60.90

2.50

0.25

1.52

32

3.41

5.06

0.50

0.64

02.35

4.18

0.18

0.47

2–

––

––

32.94

5.65

0.70

1.80

02.16

4.44

0.28

0.86

0–

––

––

21

0.00

0.00

0.00

0.00

10

0.20

0.67

0.00

0.00

70.60

2.00

0.00

0.00

42

2.86

6.93

0.63

1.90

23.73

8.63

0.46

1.87

04.49

6.67

0.17

0.57

03

2.32

4.28

1.62

3.91

13.86

7.01

0.67

1.23

03.74

7.60

0.32

0.85

0

Note:*Frequency

offindingoptimalsolutions(outof10instances).

6224 D.T. Eliiyi and M. Azizoglu

Page 15: Eliiyi   working time

Table

2.Lower

andupper

bounddeviationsatrootnodeforr¼2.

m¼2

m¼3

m¼4

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

#opt.

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

np

wAvg.

Max.

Avg.

Max.

#opt.*

Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

#opt.

20

11

3.87

10.64

4.52

25.45

33.12

8.96

7.47

15.24

40.95

3.92

4.08

8.00

72

2.55

6.73

8.42

19.59

21.98

5.13

10.33

17.00

40.51

5.08

8.93

17.48

93

1.48

9.56

12.81

23.45

61.58

5.83

7.81

15.79

60.33

1.97

4.30

19.65

82

14.60

14.00

0.00

0.00

11.80

4.00

0.07

0.67

24.45

10.00

0.10

1.01

02

6.46

12.00

9.40

15.79

16.31

10.75

5.14

13.70

04.97

8.70

6.68

20.25

13

5.25

10.16

4.96

10.40

14.65

13.00

3.62

6.21

15.72

11.03

3.69

6.83

0

30

11

2.20

7.00

0.00

0.00

25.17

12.08

1.85

10.83

03.81

11.31

7.49

14.86

32

3.30

5.88

3.55

10.34

02.96

6.75

7.95

19.35

11.68

3.98

11.87

19.08

43

2.81

4.91

8.73

18.36

11.95

3.54

6.84

14.56

01.43

3.32

7.25

12.70

12

11.60

4.00

0.00

0.00

22.67

5.33

0.00

0.00

04.15

12.00

0.00

0.00

02

6.31

11.67

7.40

20.75

09.26

16.09

4.40

8.75

07.50

11.86

2.14

3.77

03

4.93

13.33

10.62

17.73

14.71

9.92

6.34

15.15

26.32

9.64

5.66

12.46

0

40

11

2.40

4.00

0.00

0.00

12.45

5.67

1.06

6.38

12.61

5.50

2.76

7.53

22

2.43

4.27

3.80

9.40

14.83

9.04

4.00

9.04

04.16

6.33

5.45

9.91

03

3.54

6.48

5.17

8.80

14.35

8.25

9.86

21.32

03.24

7.50

6.25

11.87

02

12.10

5.00

0.00

0.00

11.13

3.33

0.00

0.00

22.40

4.00

0.00

0.00

12

6.56

13.51

5.70

12.99

06.93

13.19

3.90

7.69

06.91

11.21

3.43

7.89

03

5.49

11.57

8.72

19.72

16.82

14.98

4.03

7.72

15.86

9.46

2.68

7.53

0

50

11

1.90

5.00

0.00

0.00

12.20

3.33

0.00

0.00

01.52

7.65

1.91

10.50

52

4.12

7.75

4.67

8.80

04.47

11.23

3.15

5.24

0–

––

––

32.78

5.84

3.78

6.78

03.21

6.74

4.31

10.91

0–

––

––

21

1.00

4.00

0.00

0.00

41.20

3.33

0.00

0.00

22.15

4.50

0.00

0.00

02

5.10

10.64

5.44

11.59

17.06

10.78

4.03

9.28

05.16

11.72

3.52

6.50

03

4.74

10.80

5.98

20.49

36.35

10.30

5.64

10.88

05.87

8.32

3.56

6.47

0

60

11

1.50

4.00

0.00

0.00

22.27

3.33

0.00

0.00

01.40

3.00

0.82

3.09

22

3.02

9.68

3.56

6.87

13.34

4.52

2.69

5.29

0–

––

––

33.82

7.49

4.00

8.26

12.61

4.23

3.97

6.76

0–

––

––

21

0.60

1.00

0.00

0.00

40.73

2.67

0.00

0.00

41.65

4.00

0.00

0.00

22

6.56

13.64

4.97

12.12

07.50

10.19

5.21

13.68

05.91

9.36

3.83

7.25

03

3.83

11.89

6.04

19.22

15.95

9.32

5.57

12.50

05.02

8.28

2.76

6.12

0

(continued

)

International Journal of Production Research 6225

Page 16: Eliiyi   working time

Table

2.Continued.

m¼2

m¼3

m¼4

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

#opt.

(OPT-LB)/OPT

(%)

(UB-O

PT)/OPT

(%)

np

wAvg.

Max.

Avg.

Max.

#opt.*

Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

#opt.

70

11

1.20

3.00

0.00

0.00

42.47

4.67

0.00

0.00

01.31

3.50

0.91

2.56

32

2.55

5.30

2.30

5.19

04.22

6.45

2.85

6.45

0–

––

––

33.64

6.69

2.68

6.39

02.61

4.65

3.09

6.20

0–

––

––

21

0.60

2.00

0.00

0.00

70.87

6.00

0.00

0.00

60.90

2.00

0.00

0.00

22

5.46

9.64

6.29

10.77

06.71

18.18

4.39

17.27

06.54

10.14

3.95

7.19

03

3.86

10.03

5.98

9.89

15.83

7.99

2.24

6.76

06.02

8.60

1.91

5.02

0

80

11

1.30

3.00

0.00

0.00

31.53

3.33

0.00

0.00

01.80

4.00

0.41

2.04

12

3.38

6.54

1.94

3.40

03.33

5.29

2.16

4.09

0–

––

––

32.75

4.64

2.34

4.43

02.84

5.94

2.70

5.42

0–

––

––

21

0.90

2.00

0.00

0.00

30.67

2.00

0.00

0.00

31.20

3.50

0.00

0.00

22

4.90

10.23

6.33

10.48

06.82

11.86

4.74

11.21

06.40

9.09

3.09

7.88

03

2.96

4.89

4.57

13.42

24.77

8.07

6.16

11.06

05.11

9.28

2.58

5.85

0

90

11

1.00

2.00

0.00

0.00

31.67

4.67

0.00

0.00

21.45

3.50

0.56

2.56

32

3.15

4.67

2.66

5.04

02.70

5.74

2.19

4.76

0–

––

––

32.53

5.69

3.30

5.44

13.73

5.50

2.81

6.09

0–

––

––

21

0.60

4.00

0.00

0.00

70.60

2.00

0.00

0.00

50.30

1.00

0.00

0.00

52

4.45

11.24

5.28

13.48

14.95

11.40

3.02

10.71

15.69

10.53

3.71

8.19

03

4.78

10.06

4.99

19.53

04.62

7.18

4.78

6.81

04.88

8.85

2.98

6.78

0

100

11

1.10

4.00

0.00

0.00

51.47

3.33

0.00

0.00

21.31

2.04

0.72

3.09

02

3.50

6.54

1.78

3.87

04.00

7.14

2.02

3.57

0–

––

––

32.81

5.83

2.50

4.04

12.62

5.08

3.40

8.13

0–

––

––

21

0.80

4.00

0.00

0.00

61.13

4.00

0.00

0.00

20.60

2.00

0.00

0.00

42

3.10

4.26

3.51

7.76

16.44

12.12

3.57

5.65

06.28

8.23

4.73

9.49

03

3.59

7.92

5.45

9.66

05.53

9.98

3.46

11.74

03.40

4.85

3.76

5.21

0

Note:*Frequency

offindingoptimalsolutions(outof10instances).

6226 D.T. Eliiyi and M. Azizoglu

Page 17: Eliiyi   working time

Table

3.Branch-and-boundperform

ance

forr¼1.

m¼2

m¼3

m¼4

CPU

time(sec.)

#ofnodes

CPU

time

#ofnodes

CPU

time

#ofnodes

np

wAvg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

20

11

0.04

0.28

2255

14,751

1.12

4.47

61,905

236,514

12.08

120.84

455,175

4,551,746

20.03

0.17

1704

9384

2.17

11.03

130,228

669,221

0.00

0.00

14

30.03

0.06

1357

3264

7.35

56.92

332,563

2,384,084

0.00

0.00

00

21

0.01

0.03

547

1713

0.32

1.98

14,843

88,113

1.26

4.39

67,434

260,438

20.01

0.02

254

762

0.03

0.05

907

2336

0.17

0.42

8200

22,063

30.01

0.05

266

1113

0.03

0.08

1409

4602

0.07

0.33

3130

15,714

30

11

0.08

0.47

3437

22,349

2.19

12.34

106,510

602,532

963.05(2)

3600.00

47,706,930

188,082,533

20.10

0.78

5465

41,529

37.14

277.77

1,991,300

14,838,614

2520.02(7)

3600.00

116,987,251

187,180,706

30.15

0.52

8170

28,359

336.67

2418.14

17,043,266

125,146,611

2881.15(7)

3600.00

138,628,253

181,540,361

21

0.01

0.03

277

1033

0.14

0.66

6632

31,344

4.40

32.67

184,036

1,357,997

20.02

0.05

862

1713

0.13

0.77

6101

38,496

2.24

9.89

95,917

408,137

30.02

0.05

701

1982

0.10

0.39

4813

19,861

0.79

3.72

35,488

176,688

40

11

0.06

0.17

2524

7446

3.27

13.31

131,369

537,121

1533.50(4)

3600.00

59,914,293

149,620,847

20.44

3.45

20,766

160,614

93.57

492.23

3,894,037

19,982,092

––

––

30.28

1.80

14,339

94,792

249.13

1892.11

10,656,156

82,029,375

––

––

21

0.01

0.03

283

897

0.36

1.06

13,061

36,880

11.76

99.72

421,261

3,509,020

20.04

0.08

1386

3067

0.71

1.84

26,221

72,336

6.40

30.22

243,168

1,119,148

30.04

0.17

1639

8004

0.41

1.53

16,697

67,787

4.30

27.22

175,171

1,135,865

50

11

0.06

0.17

2540

7079

3.07

22.09

113,939

843,035

1165.81(2)

3600.00

40,755,533

123,408,814

21.81

16.05

82,142

725,648

318.68

945.11

12,820,574

39,482,886

––

––

30.38

2.52

17,244

115,344

276.46

1286.64

11,493,919

49,969,862

––

––

21

0.03

0.14

976

6204

0.20

0.81

7179

30,927

14.81

51.42

503,061

1,719,003

20.02

0.05

554

1738

0.58

1.89

22,576

77,077

44.96

198.92

1,543,412

6,903,348

30.05

0.14

2011

6037

0.59

2.09

22,931

81,819

7.95

25.31

288,802

919,564

60

11

0.04

0.06

1228

2515

13.49

73.09

443,468

2,366,539

1779.68(4)

3600.00

53,837,505

115,986,396

20.26

0.88

11,090

38,892

739.94(1)

3600.00

27,273,438

129,892,759

––

––

30.71

3.44

30,117

148,358

773.43(1)

3600.00

29,729,577

138,196,738

––

––

21

0.01

0.06

387

2167

0.28

1.31

10,114

49,123

8.97

31.78

271,624

977,645

20.08

0.27

3199

11,431

0.91

1.56

34,334

63,447

125.84

807.06

4,185,758

27,441,930

30.05

0.20

2190

7807

1.36

6.38

49,788

235,553

80.90

361.25

2,584,951

11,979,150

(continued

)

International Journal of Production Research 6227

Page 18: Eliiyi   working time

Table

3.Continued.

m¼2

m¼3

m¼4

CPU

time(sec.)

#ofnodes

CPU

time

#ofnodes

CPU

time

#ofnodes

np

wAvg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

70

11

0.05

0.22

1618

8113

27.05

248.58

772,443

7,012,419

750.06(2)

3600.00

21,208,634

101,877,972

20.52

2.72

20,630

105,039

32.68

184.49

1,083,869

6,002,817

––

––

31.11

4.20

44,356

167,444

718.71(1)

3600.00

25,756,284

132,163,848

––

––

21

0.02

0.09

683

2,751

0.49

1.53

16,098

47,114

8.20

38.58

236,023

1,146,168

20.13

0.45

5273

17,519

4.11

17.78

142,954

622,702

73.13

483.73

2,157,757

14,365,845

30.06

0.19

2069

6950

2.76

12.41

99,147

463,961

165.67

1013.55

4,759,861

29,319,246

80

11

0.00

0.00

00

35.59

231.00

1,069,718

6,892,184

1286.10(3)

3600.00

33,229,105

100,026,328

24.84

27.77

196,588

1,142,307

360.22

3056.53

11,851,756

101,496,713

––

––

32.75

12.49

105,645

469,581

363.40

1087.00

12,030,410

37,132,849

––

––

21

0.00

0.02

101

619

0.16

0.52

4391

15,272

5.26

19.94

136,086

510,438

20.06

0.20

2338

7881

47.60

457.55

1,610,061

15,493,529

1025.06(2)

3600.00

30,348,360

111,404,924

30.08

0.19

3006

7498

2.48

6.52

79,249

208,546

84.36

267.52

2,432,865

8,414,521

90

11

0.00

0.00

00

26.69

222.14

812,143

6,811,096

1280.50(2)

3600.00

31,361,953

87,459,048

23.04

12.17

113,407

458,314

1257.52(3)

3600.00

38,198,267

114,949,812

––

––

35.76

37.47

218,731

1,441,512

2095.43(4)

3600.00

64,554,775

112,365,762

––

––

21

0.00

0.03

52

523

0.40

2.50

11,014

71,299

32.49

223.33

803,980

5,508,533

20.33

1.58

12,742

60,096

6.33

42.56

194,613

1,270,281

256.57

870.69

6,758,644

22,420,936

30.15

0.31

5685

11,722

18.14

132.03

579,628

4,217,326

551.73(1)

3600.00

14,376,542

93,323,439

100

11

0.00

0.00

00

12.76

70.27

327,346

1,759,495

930.96(2)

3600.00

21,675,000

86,433,080

25.87

27.09

191,442

884,784

494.09(1)

3600.00

13,987,574

105,322,481

––

––

321.07

129.66

680,606

4,241,219

1756.85(3)

3600.00

47,757,270

103,131,644

––

––

21

0.00

0.00

00

0.93

7.75

23,428

194,441

1.73

13.77

37,434

297,511

20.08

0.33

2845

11,743

4.02

19.33

112,163

496,219

443.78

2871.89

10,341,580

67,096,572

30.10

0.44

3395

14,913

7.31

23.89

206,110

699,688

1059.38(2)

3600.00

25,576,680

89,482,565

Note:*Thenumbersin

parentheses

givethenumber

ofinstancesthatcannotbesolved

inonehour.

6228 D.T. Eliiyi and M. Azizoglu

Page 19: Eliiyi   working time

Table

4.Branch-and-boundperform

ance

forr¼2.

m¼2

m¼3

m¼4

CPU

time(sec.)

#ofnodes

CPU

time

#ofnodes

CPU

time

#ofnodes

np

wAvg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

20

11

0.04

0.13

1701

5802

3.77

13.22

152,248

546,482

16.56

91.64

613,899

3,455,385

20.06

0.19

2553

8428

1.42

11.61

61,085

510,281

17.87

108.38

675,444

3,980,648

30.03

0.08

1383

3134

1.10

4.77

43,538

194,579

4.77

23.69

177,641

894,889

21

0.01

0.03

652

1591

0.08

0.19

3680

9839

1.17

3.48

60,556

196,063

20.01

0.02

216

818

0.04

0.22

1953

11,715

0.16

1.13

7806

56,904

30.01

0.02

211

395

0.02

0.06

751

3968

0.04

0.09

1705

4496

30

11

0.05

0.34

2490

17,059

36.08

112.66

1,509,165

4,431,131

1984.63(3)

3600.00

64,845,823

122,148,892

20.35

1.08

17,938

54,897

84.89

457.11

3,808,246

19,970,149

1385.93(3)

3600.00

44,959,175

122,209,269

30.23

0.63

11,401

32,706

96.39

757.00

4,221,202

33,053,703

1588.04(1)

3600.00

51,829,897

117,327,504

21

0.01

0.03

368

1230

0.28

2.14

12,298

93,744

5.46

28.70

229,401

1,130,915

20.01

0.03

415

1254

0.09

0.34

4015

15,300

0.33

1.86

13,837

75,895

30.02

0.05

734

1869

0.12

0.48

5611

24,370

0.65

3.24

27,776

141,041

40

11

0.07

0.22

2581

9099

370.78(1)

3600.00

13,314,187

129,205,355

2453.74(5)

3600.00

79,957,005

130,434,318

20.75

3.11

32,930

133,484

640.87(1)

3600.00

25,732,711

144,011,865

2720.42(7)

3600.00

92,314,270

129,202,858

31.16

4.14

54,772

209,455

884.82(1)

3600.00

33,919,851

140,469,090

3069.20(8)

3600.00

105,064,084

147,289,758

21

0.05

0.13

2194

5452

0.23

0.77

8871

29,665

3.87

22.13

141,709

794,474

20.02

0.08

838

4435

0.64

4.23

26,450

171,383

1.73

7.25

67,835

281,170

30.03

0.14

1336

6437

0.55

1.64

22,566

67,021

6.82

25.08

243,521

872,498

50

11

0.11

0.52

4008

20,094

13.31

67.66

450,065

2,185,537

2691.28(7)

3600.00

79,566,263

113,804,538

22.40

7.11

105,903

331,529

698.90(1)

3600.00

25,968,710

132,816,308

––

––

32.02

8.39

91,900

370,013

1122.13(2)

3600.00

41,736,065

133,008,494

––

––

21

0.02

0.08

631

3636

0.60

4.28

23,381

172,457

7.85

37.80

256,636

1,160,066

20.04

0.08

1707

3396

1.72

9.53

69,934

393,340

8.87

29.53

306,621

1,058,260

30.08

0.66

3453

28,351

0.94

4.06

36,893

154,758

34.31

259.44

1,182,937

9,003,661

60

11

0.28

0.92

9802

30,220

23.96

145.02

785,185

4,909,083

1832.69(5)

3600.00

52,629,602

104,730,240

24.22

16.63

153,300

548,784

1479.43(2)

3600.00

54,027,089

130,330,895

––

––

39.21

40.34

376,500

1,615,600

1356.94(3)

3600.00

48,640,324

129,454,562

––

––

21

0.03

0.17

1086

5799

1.07

5.52

36,551

189,688

9.19

65.88

264,184

1,852,513

20.06

0.14

2216

5717

8.43

75.38

314,613

2,799,067

65.54

262.58

2,091,232

8,318,734

30.08

0.22

3061

9174

1.81

7.13

67,694

250,811

39.23

258.72

1,227,167

7,800,135

(continued

)

International Journal of Production Research 6229

Page 20: Eliiyi   working time

Table

4.Continued.

m¼2

m¼3

m¼4

CPU

time(sec.)

#ofnodes

CPU

time

#ofnodes

CPU

time

#ofnodes

np

wAvg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.

Max.

70

11

0.22

1.48

7910

55,217

34.61

279.78

1,003,681

8,023,430

2425.63(6)

3600.00

64,446,746

111,486,609

21.33

4.11

55,543

183,369

2045.36(5)

3600.00

67,746,358

133,064,064

––

––

31.70

8.19

68,507

325,967

1548.08(2)

3600.00

52,444,156

124,535,445

––

––

21

0.01

0.05

241

1876

0.40

2.74

11,923

81,741

11.84

55.47

326,960

1,536,813

20.09

0.19

3859

7696

1.56

9.97

58,156

375,302

143.98

982.38

4,233,507

28,324,634

30.17

1.03

7365

47,836

3.18

24.31

101,803

746,412

13.90

66.14

406,962

1,855,022

80

11

0.98

4.70

32,375

152,709

16.24

133.14

471,083

3,866,467

1194.81(3)

3600.00

31,555,975

104,083,969

25.39

38.64

204,012

1,444,332

1832.13(4)

3600.00

59,440,138

122,309,899

––

––

33.01

13.19

120,631

522,196

1160.48(2)

3600.00

37,419,184

116,600,539

––

––

21

0.02

0.08

738

2578

3.04

28.00

83,888

771,519

8.19

35.89

209,135

888,639

20.33

1.13

14,540

51,526

17.93

136.00

643,799

4,968,803

502.68

2200.52

14,824,632

59,611,463

30.07

0.25

2761

9900

31.62

248.97

1,164,729

9,145,666

171.11

947.38

4,808,975

26,731,680

90

11

0.23

1.00

7516

34,307

6.45

20.86

172,628

574,275

1755.49(3)

3600

41751941.5

92,437,815

22.80

8.95

113,809

362,239

1985.26(4)

3600.00

57,547,364

109,787,871

––

––

321.42

192.06

801,850

7,157,069

1684.64(3)

3600.00

53,435,972

118,592,306

––

––

21

0.03

0.16

797

4683

0.68

3.47

18,958

96,387

19.57

188.53

463,451

4,454,333

20.23

0.78

9665

33,852

95.01

864.08

3,361,004

30,621,360

1007.54(2)

3600.00

27,289,946

100,966,740

30.79

6.75

33,353

288,005

27.94

126.33

961,168

4,397,512

205.05

829.06

5,467,257

21,805,707

100

11

2.09

18.28

58,700

513,324

51.05

306.69

1,298,562

7,873,267

1509.23(4)

3600.00

32,669,626

79,635,312

24.68

30.34

151,832

959,209

1676.45(4)

3600.00

46,800,843

105,133,712

––

––

317.96

91.80

626,062

3,181,592

2614.42(6)

3600.00

72,376,520

101,598,681

––

––

21

0.04

0.23

835

4628

0.99

6.19

24,084

150,273

3.65

19.61

80,760

433,583

20.37

2.56

13,325

89,576

36.55

208.45

1,169,569

6,884,457

1890.09(3)

3600.00

47,173,985

96,236,669

30.23

0.69

9074

27,417

97.45

879.31

2,991,230

27,053,844

1830.76(4)

3600.00

43,822,443

95,097,436

Note:*Thenumbersin

parentheses

givethenumber

ofinstancesthatcannotbesolved

inonehour.

6230 D.T. Eliiyi and M. Azizoglu

Page 21: Eliiyi   working time

Table

5.Effectofm

onbranch-and-boundperform

ance

(r¼1,p¼2).

n¼20

n¼30

CPU

time(sec.)

#of

nodes

(OPT-LB)/

OPT(%

)(U

B-O

PT)/

OPT(%

)CPU

time

#of

nodes

(OPT-LB)/

OPT(%

)(U

B-O

PT)/

OPT(%

)

mw

Avg.

Max.

Avg.

Max.

Avg.Max.Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.Max.Avg.

Max.

21

0.01

0.03

547

1713

3.40

13.00

0.00

0.00

0.01

0.03

277

1033

1.30

4.00

0.00

0.00

20.01

0.02

254

762

4.24

8.77

4.14

7.46

0.02

0.05

862

1713

3.46

7.04

3.34

6.33

30.01

0.05

266

1113

3.83

13.44

4.55

8.63

0.02

0.05

701

1982

3.78

7.60

2.02

4.29

41

1.26

4.39

67,434

260,438

4.32

8.63

0.25

1.52

4.40

32.67

184,036

1,357,997

2.45

9.50

0.00

0.00

20.17

0.42

8200

22,063

7.25

13.98

3.41

10.81

2.24

9.89

95,917

408,137

7.12

9.82

1.58

4.31

30.07

0.33

3130

15,714

5.06

8.51

2.85

6.16

0.79

3.72

35,488

176,688

5.97

8.66

2.34

6.50

61

32.36

123.84

1,396,462

5,322,328

4.06

12.33

1.09

2.74

877.04(1)3600.0033,612,267140,644,420

3.77

11.00

0.03

0.33

20.98

5.34

43,996

237,480

5.69

8.73

1.92

4.35

23.33

78.39

837,681

2,903,934

7.55

9.93

0.70

1.45

30.82

4.63

36,149

205,950

3.78

8.40

2.93

9.25

17.93

80.63

708,896

3,463,208

4.29

6.39

1.71

3.17

81

48.76

237.14

1,840,429

10,039,399

2.76

8.77

3.60

14.29

2749.69(6)3600.0086,141,854137,849,126

3.77

7.75

0.48

2.04

22.67

16.78

112,125

747,403

3.98

8.15

2.18

7.20

1178.06(3)3600.0035,109,303109,556,513

5.63

9.93

1.23

1.83

34.34

31.56

152,596

1,058,180

1.95

4.76

2.78

7.73

544.29(1)3600.0017,690,621120,554,552

5.08

7.96

1.40

3.08

n¼40

n¼50

CPU

time(sec.)

#of

nodes

(OPT-LB)/

OPT(%

)(U

B-O

PT)/

OPT(%

)CPU

time

#of

nodes

(OPT-LB)/

OPT(%

)(U

B-O

PT)/

OPT(%

)

mw

Avg.

Max.

Avg.

Max.

Avg.Max.Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.Max.Avg.

Max.

21

0.01

0.03

283

897

2.00

5.00

0.00

0.00

0.03

0.14

976

6204

1.30

3.00

0.00

0.00

20.04

0.08

1386

3067

5.02

10.71

2.40

6.58

0.02

0.05

554

1738

5.36

12.90

0.74

3.95

30.04

0.17

1639

8004

3.75

7.97

2.81

6.03

0.05

0.14

2011

6037

4.73

11.30

2.03

3.56

41

11.76

99.72

421,261

3,509,020

2.70

9.50

0.00

0.00

14.81

51.42

503,061

1,719,003

0.85

2.00

0.00

0.00

26.40

30.22

243,168

1,119,148

6.00

9.09

0.63

2.63

44.96

198.92

1,543,412

6,903,348

5.12

9.02

0.79

2.14

34.30

27.22

175,171

1,135,865

6.15

8.64

0.66

1.36

7.95

25.31

288,802

919,564

4.24

7.71

0.90

1.81

61

682.81

2703.1321,925,012

82,154,631

3.04

11.00

0.00

0.00

458.96

2498.5312,760,873

69,861,017

1.73

3.00

0.00

0.00

2919.06(2)*

3600.0031,373,231135,276,346

5.79

9.09

0.74

1.75

1758.51(2)3600.0047,055,836100,160,719

7.51

10.42

0.62

1.62

(continued

)

International Journal of Production Research 6231

Page 22: Eliiyi   working time

Table

5.Continued.

n¼40

n¼50

CPU

time(sec.)

#of

nodes

(OPT-LB)/

OPT(%

)(U

B-O

PT)/

OPT(%

)CPU

time

#of

nodes

(OPT-LB)/

OPT(%

)(U

B-O

PT)/

OPT(%

)

mw

Avg.

Max.

Avg.

Max.

Avg.Max.Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.Max.Avg.

Max.

3320.97

1182.6610,504,905

41,112,652

5.25

8.79

1.29

4.95

1731.71(4)3600.0047,982,999104,944,678

5.12

9.65

0.54

1.44

81

––

––

––

––

––

––

––

––

21986.17(5)3600.0056,691,660111,271,281

7.07

9.26

0.81

2.28

––

––

––

––

32913.70(7)3600.0080,799,304110,991,764

4.08

6.75

1.16

2.85

––

––

––

––

n¼60

n¼70

CPU

time(sec.)

#of

nodes

(OPT-LB)/

OPT(%

)(U

B-O

PT)/

OPT(%

)CPU

time

#of

nodes

(OPT-LB)/

OPT(%

)(U

B-O

PT)/

OPT(%

)

mw

Avg.

Max.

Avg.

Max.

Avg.Max.Avg.

Max.

Avg.

Max.

Avg.

Max.

Avg.Max.Avg.

Max.

21

0.01

0.06

387

2167

1.10

4.00

0.00

0.00

0.02

0.09

683

2751

0.60

2.00

0.00

0.00

20.08

0.27

3199

11,431

2.81

8.00

2.11

4.17

0.13

0.45

5273

17,519

3.82

8.82

1.81

5.05

30.05

0.20

2190

7807

2.81

5.78

2.30

5.31

0.06

0.19

2069

6950

3.10

7.14

0.87

3.79

41

8.97

31.78

271,624

977,645

1.40

3.00

0.00

0.00

8.20

38.58

236,023

1,146,168

0.80

2.50

0.00

0.00

2125.84

807.06

4,185,758

27,441,930

5.87

8.61

0.28

0.71

73.13

483.73

2,157,757

14,365,845

5.24

9.42

0.60

1.81

380.90

361.25

2,584,951

11,979,150

4.79

7.71

0.66

1.75

165.67

1013.55

4,759,861

29,319,246

5.04

11.62

0.77

1.69

61

1102.09(1)3600.0027,291,029

86,624,145

1.77

3.33

0.03

0.33

879.32

3261.4120,443,914

74,694,778

1.10

4.33

0.00

0.00

22578.84(7)3600.0066,580,128100,350,675

4.36

9.94

0.60

1.60

––

––

––

––

31909.22(4)3600.0049,770,090112,076,808

4.07

6.36

0.48

1.09

2206.22(6)3600.0048,918,015

87,078,753

3.73

5.08

0.40

1.42

Note:*Thenumbersin

parentheses

givethenumber

ofinstancesthatcannotbesolved

inonehour.

6232 D.T. Eliiyi and M. Azizoglu

Page 23: Eliiyi   working time

of an extensive computational study that the algorithm returns optimal solutions for manylarge-sized problem instances within one hour of CPU time.

Efficient approximation algorithms for larger-sized problem instances may be worthstudying as the problem has many practical applications and is likely to be solvedfrequently, probably with a larger number of machines. Another further research area maybe the inclusion of the spread time constraints in this problem. The relationship betweenworking time and spread time constraints should be analysed in this case.

Acknowledgment

We thank the referees for their constructive comments that improved the clarity of the presentation.

References

Ahuja, R.K., Magnanti, T.L., and Orlin, J.B., 1993. Network flows: theory, algorithms andapplications. Englewood Cliffs, NJ: Prentice Hall.

Bouzina, K.I. and Emmons, H., 1996. Interval scheduling on identical machines. Journal of GlobalOptimization, 9 (3–4), 379–393.

Eliiyi, D.T. and Azizoglu, M., 2006. Spread time constraints in operational fixed job scheduling.

International Journal of Production Research, 44 (20), 4343–4365.Faigle, U., Kern, W., and Nawijn, W.M., 1999. A greedy online algorithm for the k-track

assignment algorithm. Journal of Algorithms, 31 (1), 196–210.Fischetti, M., Martello, S., and Toth, P., 1987. The fixed job schedule problem with spread-time

constraints. Operations Research, 35 (6), 849–858.Fischetti, M., Martello, S., and Toth, P., 1989. The fixed job schedule problem with working-time

constraints. Operations Research, 37 (3), 395–403.

Fischetti, M., Martello, S., and Toth, P., 1992. Approximation algorithms for fixed job scheduleproblems. Operations Research, 40 (51), S96–S108.

Garey, M.R. and Johnson, D.S., 1979. Computers and intractability: a guide to the theory of NP-

completeness. San Francisco, CA: Freeman.Golumbic, M.C., 2004. Algorithmic graph theory and perfect graphs. Amsterdam: North Holland.Jansen, K. and Ohring, S., 1997. Approximation algorithms for the time constrained scheduling.

Information and Computation, 132 (2), 85–108.

Kolen, A.J.W. and Kroon, L.G., 1991. On the computational complexity of (maximum) classscheduling. European Journal of Operational Research, 54 (1), 23–38.

Kolen, A.W.J., et al., 2007. Interval scheduling: a survey. Naval Research Logistics, 54 (5), 530–543.

Kovalyov, M.Y., Ng, C.T., and Cheng, T.C.E., 2007. Fixed interval scheduling: models,applications, computational complexity and algorithms. European Journal of OperationalResearch, 178 (2), 331–342.

Kroon, L.G. 1990. Job scheduling and capacity planning in aircraft maintenance. Thesis (PhD).Rotterdam School of Management, Erasmus University, The Netherlands.

Kroon, L.G., Salomon, M., and Van Wassenhove, L.N., 1995. Exact and approximation algorithms

for the operational fixed interval scheduling problem. European Journal of OperationalResearch, 82 (1), 190–205.

Martello, S. and Toth, P., 1986. A heuristic approach to the bus driver scheduling problem.European Journal of Operational Research, 24 (1), 106–117.

Spieksma, F.C.R., 1999. On the approximability of an interval scheduling problem. Journal ofScheduling, 2 (5), 215–227.

Wolfe, W.J. and Sorensen, S.E., 2000. Three scheduling algorithms applied to the earth observing

systems domain. Management Science, 46 (1), 148–168.

International Journal of Production Research 6233

Page 24: Eliiyi   working time

Copyright of International Journal of Production Research is the property of Taylor & Francis Ltd and its

content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's

express written permission. However, users may print, download, or email articles for individual use.