7
Applied Soft Computing 11 (2011) 5551–5557 Contents lists available at ScienceDirect Applied Soft Computing j ourna l ho mepage: www.elsevier.com/locate/asoc Parallel machine scheduling problem to minimize the makespan with resource dependent processing times Kai Li a,b,, Ye Shi a , Shan-lin Yang a,b , Ba-yi Cheng a,b a School of Management, Hefei University of Technology, Hefei 230009, PR China b Key Laboratory of Process Optimization and Intelligent Decision-making, Ministry of Education, Hefei 230009, PR China a r t i c l e i n f o Article history: Received 27 January 2010 Received in revised form 28 December 2010 Accepted 1 May 2011 Available online 6 May 2011 Keywords: Parallel-machine Scheduling Makespan Resource allocation Controllable processing time a b s t r a c t This paper considers the identical parallel machine scheduling problem to minimize the makespan with controllable processing times, in which the processing times are linear decreasing functions of the con- sumed resource. The total resource consumption is limited. This problem is NP-hard even if the total resource consumption equals to zero. Two kinds of machines, critical machine and non-critical machine, are defined. Some theoretical results are provided. And then, a simulated annealing algorithm is designed to obtain the near-optimal solutions with high quality. To evaluate the performance of the proposed algorithm, we generate the random test data in our experiment to simulate the ingot preheating before hot-rolling process in steel mills. The accuracy and efficiency of the simulated annealing algorithm is tested based on the data with problem size varying from 200 jobs to 1000 jobs. By examining 10,000 ran- domly generated instances, the proposed simulated annealing algorithm shows an excellent performance in not only the solution quality but also the computation time. © 2011 Elsevier B.V. All rights reserved. 1. Introduction Most classical scheduling problems assume that the job process- ing times are fixed numbers. However, the job processing times maybe depend on some resources, such as manpower, energy, gas, catalyzer and money. For example, in the steel industry, the ingot preheated process before hot rolling consumes lots of energy. The manufacture can improve the efficiency of the production by allo- cating some extra energy. Hence it is necessary to balance the conflict between the production efficiency and the energy con- sumption. Another practical example comes from a case where a manufacturer can improve the production efficiency by adding the workers, overtime, outsourcing and so on, which will consume more money. In this paper, we consider the corresponding parallel machine scheduling problem with resource dependent processing times, in which the resource consumption function is assumed as a linear decreasing function. The goal is to minimize the makespan under the constraint of the limited total resource consumption. This prob- lem can be described generally as P m |p j = p j x j , n j=1 x j ˆ X|C max , where P m means that there are m identical parallel machines, p j is the basic processing time of J j , x j is the shortened amount of the Corresponding author at: School of Management, Hefei University of Technology, Hefei 230009, PR China. Tel.: +86 551 2919156. E-mail address: [email protected] (K. Li). processing time by consuming resource and it can be regarded as the consumed resource amount, and thus the real processing time p j = p j x j , n j=1 x j ˆ X means the total resource consumption can not exceed the limited value ˆ X, C max means that the objective is to minimize the makespan. Obviously the P m ||C max problem is a spe- cial case of this problem with ˆ X = 0, and is NP-hard [1], therefore this problem is also NP-hard. The remainder of this paper is organized as follows. The next sec- tion gives the literature review about the scheduling problems with resource dependent processing times. Section 3 gives the math- ematical formalized presentation of the P m |p j = p j x j , n j=1 x j ˆ X|C max problem. Section 4 analyzes the properties of the optimal solutions, and then a simulated annealing algorithm is proposed in Section 5 to obtain near-optimal solutions with high quality. Sec- tion 6 tests and analyzes the accuracy and efficiency of the proposed simulated annealing algorithm experimentally. Finally, Section 7 gives the conclusions. 2. Literature review It is usually believed that the initial research work on the resource dependent scheduling problems is done by Vickson [2,3] and Van Wassenhove and Baker [4]. The resource dependent scheduling problems have received much attention in recent years. Janiak et al. [5], Shabtay and Steiner [6] and Nowicki and Zdrałka [7] summarize the existing work respectively. 1568-4946/$ see front matter © 2011 Elsevier B.V. All rights reserved. doi:10.1016/j.asoc.2011.05.005

Parallel machine scheduling problem to minimize the makespan with resource dependent processing times

  • Upload
    kai-li

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Parallel machine scheduling problem to minimize the makespan with resource dependent processing times

Pd

Ka

b

a

ARR2AA

KPMRC

1

imcpmccsatm

swdtlwt

H

1d

Applied Soft Computing 11 (2011) 5551–5557

Contents lists available at ScienceDirect

Applied Soft Computing

j ourna l ho mepage: www.elsev ier .com/ locate /asoc

arallel machine scheduling problem to minimize the makespan with resourceependent processing times

ai Lia,b,∗, Ye Shia, Shan-lin Yanga,b, Ba-yi Chenga,b

School of Management, Hefei University of Technology, Hefei 230009, PR ChinaKey Laboratory of Process Optimization and Intelligent Decision-making, Ministry of Education, Hefei 230009, PR China

r t i c l e i n f o

rticle history:eceived 27 January 2010eceived in revised form8 December 2010ccepted 1 May 2011vailable online 6 May 2011

a b s t r a c t

This paper considers the identical parallel machine scheduling problem to minimize the makespan withcontrollable processing times, in which the processing times are linear decreasing functions of the con-sumed resource. The total resource consumption is limited. This problem is NP-hard even if the totalresource consumption equals to zero. Two kinds of machines, critical machine and non-critical machine,are defined. Some theoretical results are provided. And then, a simulated annealing algorithm is designed

eywords:arallel-machine Schedulingakespan

esource allocationontrollable processing time

to obtain the near-optimal solutions with high quality. To evaluate the performance of the proposedalgorithm, we generate the random test data in our experiment to simulate the ingot preheating beforehot-rolling process in steel mills. The accuracy and efficiency of the simulated annealing algorithm istested based on the data with problem size varying from 200 jobs to 1000 jobs. By examining 10,000 ran-domly generated instances, the proposed simulated annealing algorithm shows an excellent performancein not only the solution quality but also the computation time.

. Introduction

Most classical scheduling problems assume that the job process-ng times are fixed numbers. However, the job processing times

aybe depend on some resources, such as manpower, energy, gas,atalyzer and money. For example, in the steel industry, the ingotreheated process before hot rolling consumes lots of energy. Theanufacture can improve the efficiency of the production by allo-

ating some extra energy. Hence it is necessary to balance theonflict between the production efficiency and the energy con-umption. Another practical example comes from a case where

manufacturer can improve the production efficiency by addinghe workers, overtime, outsourcing and so on, which will consume

ore money.In this paper, we consider the corresponding parallel machine

cheduling problem with resource dependent processing times, inhich the resource consumption function is assumed as a linearecreasing function. The goal is to minimize the makespan underhe constraint of the limited total resource consumption. This prob-∑

em can be described generally as Pm|pj = pj − xj,

nj=1xj ≤ X̂|Cmax,

here Pm means that there are m identical parallel machines, pj ishe basic processing time of Jj, xj is the shortened amount of the

∗ Corresponding author at: School of Management, Hefei University of Technology,efei 230009, PR China. Tel.: +86 551 2919156.

E-mail address: [email protected] (K. Li).

568-4946/$ – see front matter © 2011 Elsevier B.V. All rights reserved.oi:10.1016/j.asoc.2011.05.005

© 2011 Elsevier B.V. All rights reserved.

processing time by consuming resource and it can be regarded asthe consumed resource amount, and thus the real processing timepj = pj − xj ,

∑nj=1xj ≤ X̂ means the total resource consumption can

not exceed the limited value X̂ , Cmax means that the objective is tominimize the makespan. Obviously the Pm||Cmax problem is a spe-cial case of this problem with X̂ = 0, and is NP-hard [1], thereforethis problem is also NP-hard.

The remainder of this paper is organized as follows. The next sec-tion gives the literature review about the scheduling problems withresource dependent processing times. Section 3 gives the math-ematical formalized presentation of the Pm|pj = pj − xj,

∑nj=1xj ≤

X̂|Cmax problem. Section 4 analyzes the properties of the optimalsolutions, and then a simulated annealing algorithm is proposed inSection 5 to obtain near-optimal solutions with high quality. Sec-tion 6 tests and analyzes the accuracy and efficiency of the proposedsimulated annealing algorithm experimentally. Finally, Section 7gives the conclusions.

2. Literature review

It is usually believed that the initial research work on theresource dependent scheduling problems is done by Vickson [2,3]

and Van Wassenhove and Baker [4]. The resource dependentscheduling problems have received much attention in recent years.Janiak et al. [5], Shabtay and Steiner [6] and Nowicki and Zdrałka[7] summarize the existing work respectively.
Page 2: Parallel machine scheduling problem to minimize the makespan with resource dependent processing times

5 mput

fnswsrerXittDitpjpatjapsmdOi

pcApmstccttvp

v[oaTrotpatcKtpp

pccgm

552 K. Li et al. / Applied Soft Co

Most of the papers about resource dependent processing timesocus on the single machine scheduling problems. For the linearon-increasing functions, Vickson [2] considers the single machinecheduling problem to minimize the total compression cost pluseighted completion times. He proposes a branch-and-bound

cheme for solving this problem optimally and a heuristic algo-ithm for fast solution approximation. Wan et al. [8] and Jainakt al. [9] analyze the computational complexity of the same problemespectively. They show that this problem is NP-hard. Wang andia [10] consider the problem to minimize a cost function contain-

ng total completion time, total absolute differences in completionimes and total compression cost. This problem can be transformedo an assignment problem and thus can be solved in O(n3) time.aniels and Sarin [11] provide theoretical results for construct-

ng the trade-off curve between the number of tardy jobs and theotal amount of allocated resource. Cheng et al. [12] prove that theroblem of minimizing the total amount of allocated resource sub-

ect to a limited number of tardy jobs is NP-hard and propose aseudo-polynomial-time dynamic programming algorithm. Janiaknd Kovalyov [13] consider the single machine problem with con-rollable processing time to find simultaneously a sequence of theobs and a resource allocation so that the deadlines are satisfiednd the total weighted resource consumption is minimized. Thisroblem is shown to be solvable in O(n log n) time. Ng et al. [14]tudy the single machine scheduling problem with a variable com-on due date to minimize a linear combination of scheduling, due

ate assignment and resource consumption costs. Algorithms with(n2 log n) running times are presented for scheduling costs involv-

ng the earliness/tardiness and the number of tardy jobs.Nowicki and Zdrzalka [15] deal with a bicriterion approach to

reemptive scheduling of m parallel machines for jobs having pro-essing costs which are linear function of variable processing times.n O(n2) greedy algorithm is given which generates all break-oints of a piecewise linear efficient frontier for the case of identicalachines. For uniform machines, an algorithm is provided which

olves a problem of least processing cost under limited comple-ion time in O(n max {m, log n}) time. Jansen and Mastrolilli [16]onsider the identical parallel machine scheduling problems withontrollable processing times, in which the processing times ofhe jobs lie in different intervals and the costs depend linearly onhe position of the corresponding processing times in the inter-als. They present polynomial time approximation schemes for theroblems.

In some papers, the job processing time is described by a con-ex decreasing resource consumption function. Kaspi and Shabtay17] present a single machine scheduling problem to simultane-usly determine the optimal job permutation and the resourcellocation, such that the maximal completion time is minimized.hey provide an O(n) time optimization for the case of identical jobelease dates, and an O(n2) time optimization algorithm for the casef non-identical job release dates. Shabtay and Kaspi [18] considerhe identical parallel machine problems. They show the makespanroblem with nonpreemptive jobs is NP-hard. If preemptive jobsre allowed, the makespan problem is shown to be solvable in O(n2)ime. They also show that the problem of minimizing the sum ofompletion times can be solvable in O(nlogn) time. Shabtay andaspi [19] consider the single machine problem to minimize the

otal weighted flow time with controllable processing times. Theyropose an exact dynamic programming algorithm for small-scaleroblems and some heuristic algorithms for large scale problems.

Cheng and Janiak [20] consider a single machine schedulingroblem in which the job release dates are given but the pro-

essing times are decreasing functions of the amount of resourceonsumed. They show that ordering jobs in non-decreasing releaseive an optimal solution and the problem to minimize both theakespan and resource consumption is polynomially solvable.

ing 11 (2011) 5551–5557

Some other papers assume that the release dates and processingtimes are all dependent on resource (e.g. Wang and Cheng [21], Choiet al. [22], Cheng et al. [23,24], Kaspi and Shabtay [25]). In this paper,we only consider the problems with resource dependent processingtimes, hence these papers are not reviewed in detail.

3. Problem description

Given n jobs Jj (j = 1, 2, ..., n), the processing time of Jj is pj =pj − xj , where pj is the basic processing time without resourceallocation, xj corresponds the consumed resource by Jj (xj ≤ pj).The total resource consumption is limited:

∑nj=1xj ≤ X̂

(≤

∑nj=1pj

),

where X̂ is the limited amount. Given m machines Mi (i = 1, 2, ..., m)with the same speed 1. Once a machine begins processing a job, itmust continue the processing until the jobs is finished. A machinecan process at most one job at a time, and a job can only run on onemachine at a time.

Let ̆ be the universal set of the schedules. � (� ∈ ˘) is anindividual schedule and can be denoted as � = {�1, �2, ..., �m}, inwhich �i is the sub-schedule on the machine Mi and there are ni(ni ≥ 0) jobs in �i, then

∑mi=1ni = n. Let �ij is the jth job in the

sub-schedule �i, then � ={

{�i1, �i2, ..., �ini}|i = 1, 2, ..., m

}and

⋃mi=1{�i1, �i2, ..., �ini

} = {Jj|j = 1, 2, ..., n}.Let � be the universal set of the resource allocations. �

(� ∈ �) is a certain resource allocation and can be denoted as� = {�1, �2, ..., �m}, where �i = {�i1, �i2, ..., �ini

} is the resourceallocation corresponding to the sub-schedule �i, then � ={

{�i1, �i2, ..., �ini}|i = 1, 2, ..., m

}and the corresponding total con-

sumed resource is X =∑m

i=1

∑nij=1�ij ≤ X̂ . Let Xi means the total

resource consumption corresponding to �i, then X = ∑mi=1Xi.

For a fixed solution (�, �) (� ∈ ˘ , � ∈ �), then Cij =∑j

q=1piq =∑j

q=1

(piq − �iq

)=

∑jq=1piq −

∑jq=1�iq.

The maximal completion time of (�i, �i) is Cimax =

∑nj=1pij =

∑nij=1

(pij − �ij

)=

∑nij=1pij −

∑nij=1�ij .

The makespan of the solution (�, �) is Cmax = maxmi=1Ci

max =maxm

i=1

(∑nij=1pij −

∑nij=1�ij

).

The goal of this problem is to find an optimal solution (� * ,� *) such that Cmax(�∗, �∗) = min

� ∈ ˘min� ∈ �

Cmax(�, �) and subject to

X(�∗, �∗) ≤ X̂ .

4. Problem analysis

In this section, we give the definitions of critical and non-criticalmachines firstly, and then propose some properties for the prob-lem.

Definition 1. In a solution (�, �), if the maximal completion timeof the sub-solution (�i, �i) (i = 1, 2, ..., m) equals to the makespan,i.e. Ci

max = Cmax, then we call the machine is a critical machine;otherwise a non-critical machine.

Denote the universal set of the critical machines in the solution(�, �) as K(�, �) = {i|Ci

max = Cmax}.Property 1. There is at least one optimal solution (� * , � *) such that∑m

i=1

∑nij=1�∗

ij= X̂ .

Proof. Proof by contradiction. Suppose that (� * , � *) is an opti-mal solution, hence it is feasible and such that

∑mi=1

∑nij=1�∗

ij≤ X̂ .

∑ ∑ ∑ ∑

Suppose that m

i=1nij=1�∗

ij< X̂ . Let m

i=1nij=1�∗

ij= X∗. Then we

can construct another solution (�, �) as follows:Suppose that there are k (1 ≤ k ≤ m) critical machines in (� * , � *),

then we append (X̂ − X∗)/k for each sub-solution corresponding to

Page 3: Parallel machine scheduling problem to minimize the makespan with resource dependent processing times

mputing 11 (2011) 5551–5557 5553

ta−w

P

X

eabwtt

Pcim

f∑

v

t

Pbt

ai

P(

.am

5

5

ctPimftn(do

ptsim(dtt

ı

makespan Cmax = maxi=1Cmax. (∑ )

K. Li et al. / Applied Soft Co

he k machines and the corresponding maximal completion timesre all decreased, i.e., for any machine Mi ∈ K(� * , � *), Ci

max = Cimax ∗

(X̂ − X∗)/k. (X̂ − X∗)/k > 0, therefore Cimax < Ci

max∗. It conflictsith the assumed condition that (� * , � *) is an optimal solution.

roperty 2. If the solution (�, �) is not optimal and∑m

i=1

∑nij=1�ij =

ˆ , then there is at least one non-critical machine in the solution.

It is obvious that the inverse negative proposition of this prop-rty is tenable, i.e., for ∀i, h ∈ {1, 2, ..., m}, if i /= h, Ci

max = Chmax and

ll the available resource is consumed, then the solution (�, �) muste optimal. This property shows that in the non-optimal solutionshen all the limited total resource is consumed, there are certainly

wo different machines Mi and Mh, i /= h, i, h ∈ {1, 2, ..., m}, suchhat Ci

max /= Chmax.

roperty 3. In the solution (�, �), if the value of the total resourceonsumption Xi of �i is unchanged, then the change of the job positionsn �i or the change of the resource allocation of �i cannot change the

aximal completion time Cimax of �i.

This property holds obviously according to the formulaor Ci

max: Cimax =

∑nj=1pij =

∑nij=1

(pij − �ij

)=

∑nij=1pij −

∑nij=1�ij =

nij=1pij − Xi. Therefore when the jobs in �i are not changed, the

alue of∑ni

j=1pij is also unchanged. If the total resource consump-

ion Xi of �i is fixed, then Cimax is also fixed.

roperty 4. In a solution (�, 0) without consumed resource, let Mle the machine with the minimal maximal completion time among allhe machines, i.e. l = arg min

1≤i≤mCi

max. If∑m

i=1

(Ci

max − Clmax

)≤ X̂ , then

n optimal solution can be obtained which is transformed from (�, 0)n O(n) time.

roof. For the solution (�, 0), we only allocate Cimax − Cl

max +X̂ −

∑mi=1(Ci

max − Clmax)

)/m resource to each machine Mi (i = 1, 2,

.., m), then it can assure that all the machines are critical machinesnd all the total available resource is consumed. Therefore an opti-al solution is obtained.

. Simulated annealing algorithm

.1. Algorithm idea

According to property 1, there are at least one optimal solutiononsuming all the available resource, therefore we only considerhe solutions (�, �) such that

∑mi=1

∑nij=1�ij = X̂ . According to

roperty 2, if the current solution (�, �) consumes all the lim-ted resource but is not optimal, then there is at least one critical

achine and one non-critical machine in the solution. There-ore, in our simulated annealing algorithm, we primarily aim athe local solution with a critical machine Mi (i ∈ K(�, �)) and theon-critical machine with minimal maximal completion time Mll:=arg min{Ch

max|h = 1, 2, ..., m}). It is hoped to quickly shorten theifference between the maximal completion times Ci

max and Clmax

n the two machines Mi and Ml by local transformation.According to Property 3, the influent effects for Ci

max are twoarts:

∑nij=1pij and Xi. Hence Ci

max does not depend on the job posi-ions in �i and the resource allocation in �i. Therefore, for the localolution formed by (�i, �i) and (�l, �l), we consider the correspond-ng local solution without resource allocation firstly, i.e., let the

aximal completion times corresponding to the two sub-solutions�i, 0) and (�l, 0) be Ci ’

max and Cl ’max respectively. We shorten the

ifference between Ci ’max and Cl ’

max firstly. Secondly, we can shorten

he difference further by allocating the resource. A certain localransformation is shown in Fig. 1.

Fig. 1(a) is a local solution formed by (�i, �i) and (�l, �l). Let =

∣∣Ci

max − Clmax

∣∣, then ı /= 0 if the solution (�, �) is not optimal

Fig. 1. The transformation for the local solution.

according to property 1. Fig. 1(b) is the corresponding local solu-tion without resource allocation formed by (�i

’, 0) and (�l’, 0). Let

ı′ =

∣∣Ci ’

max − Cl ’max

∣∣. Fig. 1(c) is the transformed result for the local

solution in Fig. 1(b). Let the transformed sub-solutions be (�i”, 0)

and (�l”, 0). Let ı

′′ =∣∣Ci ”

max − Cl ”max

∣∣. Then we reallocate the total

local resource as follows:

(1) If ı” > Xi + Xl, then allocate Xi + Xl resource to the machine Mk,k = arg min

{Ch ”

max|h = i, l}

, hence ı” is decreased;(2) If ı” ≤ Xi + Xl, then we can obtain an optimal local solution

according to Property 4.

5.2. Algorithm presentation

Simulated annealing is a neighborhood search approach toobtain a global optimum solution for combinatorial optimal prob-lems. It was proposed by Metropolis [27] and popularized byKirkpatrick et al. [28]. Many researchers use simulated anneal-ing to solve scheduling problems (e.g. see the work by Zhang andWu [29], Naderi et al. [30], Loo and Wells [31] and Figielska [32]).The steps of the proposed simulated annealing algorithm for thePm|pj = pj − xj,

∑nj=1xj ≤ X̂|Cmax problem are as follows:

Step 1. Construct an initial solution by the following ModifiedLPT (Longest Processing Time firstly) algorithm (MLPT): Considerthe corresponding problem without resource allocation, use LPTrule to obtain a solution (�’, 0). Allocate X̂/m resource to anysub-schedule �

′i. Compute the maximal completion time Ci

max =Ci ’

max − X̂/m of each sub-solution (�i, �i) (i = 1, 2, ..., m) and them i

Step 2. Compute the lower bound LB:= nj=1pj − X̂ /m.

Step 3. If (Cmax − LB) /LB < ε1 (ε1 = 0.0002), then obtain the (near)optimal solution (�, �) and the corresponding makespan Cmax.Stop.

Page 4: Parallel machine scheduling problem to minimize the makespan with resource dependent processing times

5 mput

6

oT6tmc2X

sgpittti

554 K. Li et al. / Applied Soft Co

Step 4. Choose a critical machine Mi, i ∈ K(�, �) and the non-critical machine with the minimal maximal completion time Ml,l:=arg min{Ch

max|h = 1, 2, ..., m}. Denote the local solution com-posed by the two sub-solutions (�i, �i) and (�l, �l) as (�Local, �Local),the corresponding maximal completion time is ZLocal, and the cor-responding total resource consumption of the local solution isX̂Local . Denote the corresponding local solution without resourceallocation as (�

′Local

, 0), the maximal completion time of (�′Local

, 0)is Z

′Local

= max(Ci ’max, Cl ’

max), where Ci ’max = Ci

max − ∑nih=1�ih and

Cl ’max = Cl

max −∑nl

h=1�lh.Step 5. Compute the lower bound of the local solution withoutresource allocation LB

′Local

:=(

Ci ’max + Cl ’

max

)/2.

Step 6. Set the initial temperature T:=(

Z′Local

− LB′Local

)· K

(K: = 300).Step 7. If T < ε2 (ε2 = 0.0005) or there is no new solution beingaccepted under the same temperature, then go to Step 12.Step 8. Set the number of the loop times under the same temper-ature L := 10.Step 9. Randomly choose a job �

′ij

in (�′i, 0) and a job �

′lq

in (�′l, 0).

Exchange the positions of the two jobs �′ij

and �′lq

. Obtain the

new local solution with resource allocation (�′ ’Local

, 0), the corre-sponding maximal completion time Z

′′Local

, and the correspondingmaximal completion times Ci ”

max and Cl ”max of the two sub-schedules

(�′′i, 0) and (�

′′l, 0), respectively.

Step 10. Compute �Z′Local

= Z′′Local

− Z′Local

. If �Z′Local

< 0, or�Z

′Local

≥ 0 and Exp(−�Z′Local

/T) > r (r is a random number,0 ≤ r < 1), then �

′Local

:=�′′Local

, Z′Local

:=Z′′Local

.Step 11. L := L − 1. If L = 0, then T := T × ˛, ̨ := 0.7, go to Step 7;otherwise, go to Step 9.Step 12. If |Ci ”

max − Cl ”max| ≤ X̂Local , then go to Step 14.

Step 13. If Ci ”max ≥ Cl ”

max, then allocate X̂Local resource to the jobsin �

′′l; otherwise allocate it to the jobs in �

′′i. Compute the corre-

sponding maximal completion time on the two machines and theglobal makespan Cmax. Go to Step 3.Step 14. If Ci ”

max ≥ Cl ”max, then allocate

(X̂ + Cl ”

max − Ci ”max

)/2

resource to �′′i, and allocate Ci ”

max − Cl ”max +

(X̂ + Cl ”

max − Ci ”max

)/2

resource to �′′l; otherwise, allocate Cl ”

max − Ci ”max +(

X̂ + Ci ”max − Cl ”

max

)/2 resource to �

′′i, and allocate(

X̂ + Ci ”max − Cl ”

max

)/2 resource to �

′′l. Compute the corresponding

maximal completion time on the two machines and the globalmakespan Cmax. Go to Step 3.

. Computational experiments

In this section, we test and analyze the accuracy and efficiencyf the Pm|pj = pj − xj,

∑nj=1xj ≤ X̂|Cmax problem by experiments.

he problems we considered include the problems with 200, 400,00, 800, 1000 jobs and 2, 4, 6, 8 machines. For the convenienceo present, we let n × m mean the problems with n jobs and m

achines. The algorithm is realized in C++ using Dev-C++ 4.9.9.2ompiler. The environment of our experiments is CPU: Pentium IV.93 GHz, memory: 480 MB, operating system: Microsoft WindowsP SP1.

In order to evaluate their performances, a data-generatingcheme is necessary. Janiak [26] provide a uniform-distribution-enerating scheme according to the intervals typical of the ingotreheating before hot-rolling process in their experiments. Follow-

ng him, in this paper, for each job Jj, an integer basic processing

ime pj was generated from the uniform distribution [170,890]. Toest the influence that the total resource consumption X̂ put onhe solutions, we let X̂ = � ·

∑nj=1pj , and � ∈ {0.1, 0.2, 0.3, 0.4, 0.5},

.e., the total processing times can be decreased from 10% to 50%

ing 11 (2011) 5551–5557

by the resource consumption in different problems. To improvethe objectivity of the experiment results, for the same � and thesame problem size, we did experiment 100 times and observedthe average, the minimal and the maximal values. Therefore, thealgorithm is used to solve 5 × 5 × 4 × 100 = 10,000 random probleminstances.

Let Cmax(H) be the value of the objective function that algo-rithm H obtained, and thus the gap percentage between Cmax(H)and the lower bound LB can be calculated as Gap(H) = (Cmax(H) −LB)/LB · 100. It is obvious that the value Gap(H)% is always lowerthan the relative error between Cmax(H) and the optimal value.Time(H) means the CPU time occupied by the algorithm H and theunit is second. T1 means the number of the times that the optimalsolutions are obtained in the 100 randomly generated instances.T2 means the number of times that the CPU time is near to zero inthe 100 randomly generated instances. Tables 1–5 give the exper-imental results according to different � values. Table 6 gives thecomprehensive comparison.

Table 1 gives the experimental results of the problems withthe setting � = 0.1. This experiment corresponds to the problemswith the minimal total available resource in all the five experi-ments. When � = 0.1, the average relative error of all the problemsis 0.000532%. For all the {400, 800, 1000} × 2 and {400, 800} × 4problems, the simulated annealing algorithm obtains the optimalsolutions. The CPU time occupied by the simulated annealing algo-rithm lies between zero and 0.875 s, and the average CPU time is0.010226 s.

Table 2 gives the experimental results of the problems with� = 0.2. The total available resource is increased, then the averagerelative error for all the instances in Table 2 is 0.00029%, which islower than the corresponding value in Table 1. In Table 2, the sim-ulated annealing algorithm obtains the optimal solutions for sixsituations, the {400, 600} × 2 and {200, 600, 800, 1000} × 4 prob-lems. The CPU time occupied by the simulated annealing algorithmis less than 0.375 s, and the average CPU time is 0.005012 s.

Table 3 gives the experimental results of the problems with� = 0.3. The average relative error of the solutions obtained by thesimulated annealing is further reduced to 0.00012%. Seven situ-ations of the {200, 400} × 2 and {200, 400, 600, 800, 1000} × 4problems can be solved optimally by the simulated annealing algo-rithm. The simulated annealing for each problem in Table 3 can beterminated within 0.484 s, and the average CPU time of the simu-lated annealing algorithm is 0.00379 s.

Table 4 gives the experimental results of the problems with thesetting � = 0.4. The solutions obtained by simulated annealing algo-rithm average convergence to the lower bound 0.0000469%. Thesimulated annealing algorithm can obtain the optimal solutions forall the {200, 600, 1000} × {2, 4} and {400, 800} × 4 problems. TheCPU time in Table 4 lies between zero and 0.016 s, and the averagevalue is 0.003362 s.

Table 5 gives the experimental results of the problems with� = 0.5. This setting presents the problems with the maximal totalavailable resource in all the 5 experiments. The average relativeerror of the simulated annealing algorithm under this setting is0.0000184%. For all the {200, 600, 800, 1000} × {2, 4} and 400 × 4problems, the simulated annealing obtains the optimal solutions.The CPU time occupied by the simulated annealing algorithm liesbetween zero and 0.016 s. The average CPU time for the problemswith � = 0.5 is 0.003266 s.

Overall, from all the data in Tables 1–6, we can find the follow-ing:

(1) The accuracy and efficiency of the proposed simulated anneal-ing algorithm are all improved with the increasing of thevalue of �. Obviously, the more total available resource meansthat it is easier to balance the difference of the maximal

Page 5: Parallel machine scheduling problem to minimize the makespan with resource dependent processing times

K. Li et al. / Applied Soft Computing 11 (2011) 5551–5557 5555

Table 1Experimental results for the problems with the setting � = 0.1.

n m Gap (MLPT) Gap (SA) Time (SA) T1 T2

Ave Min Max Ave Min Max Ave Min Max

200 2 2.15114 0.007093 6.62102 0.000197 0 0.012618 0.00109 0 0.016 98 93200 4 5.62875 0.973664 18.888 9.74E−06 0 0.000974 0.00126 0 0.016 99 92200 6 8.6641 1.54851 18.0236 0.000884 0 0.018693 0.01673 0 0.078 49 27200 8 11.6112 3.36429 21.2446 0.001284 0 0.019844 0.01374 0 0.156 73 41400 2 1.70621 0.020645 6.53523 0 0 0 0.00203 0 0.016 100 87400 4 3.80516 0.211328 8.33588 0 0 0 0.00329 0 0.078 100 84400 6 6.03187 1.48469 12.2038 0.000971 0 0.015987 0.0164 0 0.187 52 31400 8 8.13234 2.86056 16.986 0.001813 0 0.018973 0.01406 0 0.25 71 45600 2 1.25295 0.008126 5.53367 0.000349 0 0.016129 0.00217 0 0.016 97 86600 4 3.78992 0.894932 9.79986 9.56E−05 0 0.009565 0.00343 0 0.016 99 78600 6 4.89551 1.75513 10.1583 0.000578 0 0.016745 0.01767 0 0.141 41 29600 8 6.62913 2.63402 12.1485 0.000985 0 0.018005 0.01156 0 0.078 76 41800 2 1.18614 0.029033 3.71788 0 0 0 0.00313 0 0.016 100 80800 4 2.96986 0.314109 7.24998 0 0 0 0.00454 0 0.047 100 73800 6 4.51384 1.21047 13.4199 0.000432 0 0.007633 0.02031 0 0.141 47 21800 8 5.4034 2.52997 11.4341 0.000968 0 0.017296 0.01499 0 0.484 77 39

1000 2 1.03148 0.016789 3.77909 0.000349 0 0.01808 0.00376 0 0.016 98 761000 4 2.62615 0.276964 7.10152 0 0 0 0.00842 0 0.375 100 691000 6 4.00418 0.959536 9.06018 0.000269 0 0.005146 0.0222 0 0.141 44 181000 8 5.17385 2.06394 10.042 0.001446 0 0.016065 0.02374 0 0.875 77 26

Table 2Experimental results for the problems with the setting � = 0.2.

n m Gap (MLPT) Gap (SA) Time (SA) T1 T2

Ave Min Max Ave Min Max Ave Min Max

200 2 2.60896 0.008366 8.71202 0.000223 0 0.013939 0.00063 0 0.016 98 96200 4 5.87424 1.47522 14.4341 0 0 0 0.00125 0 0.016 100 92200 6 9.57239 0.905265 21.7058 0.001068 0 0.016986 0.00687 0 0.078 43 62200 8 11.2718 3.57973 22.2174 0.000805 0 0.016969 0.0047 0 0.047 84 72400 2 1.70218 0.038606 4.90137 0 0 0 0.00143 0 0.016 100 91400 4 4.19256 0.534823 11.4889 1.68E−06 0 0.000168 0.00171 0 0.016 99 89400 6 6.42145 1.56792 12.8985 0.000464 0 0.01439 0.00735 0 0.031 46 54400 8 7.68048 2.77336 16.574 0.000889 0 0.015305 0.0072 0 0.172 78 70600 2 1.61703 0.029909 5.29818 0 0 0 0.00217 0 0.016 100 86600 4 3.7518 0.375815 10.4542 0 0 0 0.0025 0 0.016 100 84600 6 5.09311 1.97683 13.0923 0.000255 0 0.005543 0.00844 0 0.032 45 51600 8 6.82995 1.96003 12.8995 0.000532 0 0.014923 0.00577 0 0.031 83 64800 2 1.26869 0.002412 3.97944 2.41E−05 0 0.002412 0.0033 0 0.016 99 79800 4 3.2034 0.535046 7.64653 0 0 0 0.00298 0 0.016 100 81800 6 4.59746 1.68129 8.81079 9.27E−05 0 0.003834 0.00843 0 0.031 43 49800 8 5.51701 1.9331 11.6173 0.00051 0 0.008794 0.00656 0 0.047 77 61

1000 2 1.17144 0 2.92463 0.000173 0 0.017304 0.00376 0 0.016 99 761000 4 2.56358 0.338198 6.15324 0 0 0 0.00267 0 0.016 100 831000 6 3.74199 1.28336 7.06054 0.000101 0 0.008189 0.01484 0 0.375 64 361000 8 5.23925 2.0566 11.7891 0.000664 0 0.019946 0.00767 0 0.047 85 55

Table 3Experimental results for the problems with the setting � = 0.3.

n m Gap (MLPT) Gap (SA) Time (SA) T1 T2

Ave Min Max Ave Min Max Ave Min Max

200 2 2.5844 0.051625 7.58702 0 0 0 0.00061 0 0.016 100 96200 4 6.54069 0.965094 13.9615 0 0 0 0.00094 0 0.016 100 94200 6 9.86171 1.92498 18.6796 0.000371 0 0.010487 0.00391 0 0.016 34 75200 8 11.4426 5.18836 21.4123 0.000553 0 0.013077 0.00251 0 0.016 85 84400 2 1.90273 0.022321 4.98303 0 0 0 0.00141 0 0.016 100 91400 4 4.24968 0.467233 10.8465 0 0 0 0.00155 0 0.016 100 90400 6 6.58327 1.19382 14.3311 7.60E−05 0 0.002019 0.00579 0 0.031 41 64400 8 8.20195 2.92219 23.1693 0.000232 0 0.016502 0.00329 0 0.063 92 82600 2 1.52189 0.001498 4.89156 0.00014 0 0.012523 0.00236 0 0.016 98 85600 4 3.40156 0.816408 7.4969 0 0 0 0.0025 0 0.016 100 84600 6 5.03151 1.4081 10.6793 8.87E−06 0 0.000366 0.00548 0 0.016 43 65600 8 6.62883 1.92029 12.6082 8.08E−05 0 0.007 0.00422 0 0.031 95 74800 2 1.31636 0.004177 5.17397 0.00017 0 0.012853 0.0028 0 0.016 98 82800 4 2.97276 0.615036 7.56037 0 0 0 0.00172 0 0.016 100 89800 6 4.47175 1.2119 9.66122 4.37E−06 1.51E−13 6.98E−05 0.01237 0 0.484 64 51800 8 5.87707 2.55385 12.2573 0.000119 0 0.007882 0.00437 0 0.031 94 73

1000 2 1.21837 0.006868 4.42955 0.000518 0 0.019149 0.00325 0 0.016 96 791000 4 2.74795 0.705359 7.24295 0 0 0 0.00375 0 0.016 100 761000 6 4.11157 0.885482 10.6483 3.59E−05 1.63E−12 0.002311 0.00844 0 0.016 74 461000 8 5.18386 2.08247 9.60562 8.53E−05 0 0.004302 0.00452 0 0.016 96 71

Page 6: Parallel machine scheduling problem to minimize the makespan with resource dependent processing times

5556 K. Li et al. / Applied Soft Computing 11 (2011) 5551–5557

Table 4Experimental results for the problems with the setting � = 0.4.

n m Gap (MLPT) Gap (SA) Time (SA) T1 T2

Ave Min Max Ave Min Max Ave Min Max

200 2 2.60731 0.055529 11.4923 0 0 0 0.00093 0 0.016 100 94200 4 6.05246 1.32389 14.5833 0 0 0 0.00094 0 0.016 100 94200 6 9.61169 3.38066 24.5077 5.19E−05 0 0.002153 0.00343 0 0.016 43 78200 8 12.0771 3.11382 23.6647 0.000651 0 0.014391 0.00204 0 0.016 89 87400 2 1.91204 0.001192 5.63289 1.19E−05 0 0.001192 0.00156 0 0.016 99 90400 4 4.4699 1.06534 10.3179 0 0 0 0.00141 0 0.016 100 91400 6 6.21415 1.75701 13.3896 4.96E−06 0 6.78E−05 0.00469 0 0.016 51 70400 8 8.079 2.34686 15.9487 1.71E−05 0 0.001294 0.00235 0 0.016 98 85600 2 1.5794 0.038607 5.44847 0 0 0 0.00203 0 0.016 100 87600 4 3.76646 0.470428 8.67168 0 0 0 0.00219 0 0.016 100 86600 6 5.66749 2.08364 12.0618 1.42E−06 2.69E−13 1.23E−05 0.005 0 0.016 62 68600 8 6.7453 2.72352 12.8801 1.84E−05 0 0.001469 0.00375 0 0.016 96 76800 2 1.35219 0.018091 4.04134 0.000181 0 0.018091 0.00312 0 0.016 99 80800 4 3.10401 0.515826 7.5087 0 0 0 0.00312 0 0.016 100 80800 6 4.87077 1.26527 12.2258 5.88E−07 1.70E−13 3.54E−06 0.00687 0 0.016 81 56800 8 5.67742 2.57161 11.6343 1.15E−08 0 1.15E−06 0.00344 0 0.016 99 78

1000 2 1.2229 0.021477 4.12597 0 0 0 0.00407 0 0.016 100 741000 4 2.72937 0.609776 6.59835 0 0 0 0.00315 0 0.016 100 801000 6 4.20821 1.22607 9.30621 5.60E−07 2.73E−12 4.52E−06 0.00844 0 0.016 83 461000 8 5.45148 1.43845 10.1709 6.51E−08 0 6.51E−06 0.00471 0 0.016 99 70

Table 5Experimental results for the problems with the setting � = 0.5.

n m Gap (MLPT) Gap (SA) Time (SA) T1 T2

Ave Min Max Ave Min Max Ave Min Max

200 2 2.97995 0.105502 11.1494 0 0 0 0.00078 0 0.016 100 95200 4 6.819 0.909469 20.52 0 0 0 0.00094 0 0.016 100 94200 6 9.88049 3.01836 25.3232 3.40E−05 0 0.002005 0.00282 0 0.016 33 82200 8 11.7871 3.13369 23.3011 1.55E−05 0 0.000853 0.00155 0 0.016 98 90400 2 1.90676 0.000638 7.50522 0.00014 0 0.013411 0.00142 0 0.016 98 91400 4 4.45375 1.03781 11.6408 0 0 0 0.00173 0 0.016 100 89400 6 6.95917 1.89384 16.6949 0.000108 2.54E−12 0.009858 0.00406 0 0.016 50 74400 8 8.58556 3.27137 18.5966 3.49E−06 0 0.000255 0.00187 0 0.016 98 88600 2 1.82557 0.023281 6.43588 0 0 0 0.00218 0 0.016 100 86600 4 3.68295 0.415454 10.0707 0 0 0 0.00266 0 0.016 100 83600 6 5.03857 2.1101 9.27677 6.18E−05 2.16E−13 0.00611 0.0053 0 0.016 78 66600 8 6.99803 2.11927 13.1386 3.53E−06 0 0.000353 0.00297 0 0.016 99 81800 2 1.5576 0.044364 4.35216 0 0 0 0.0033 0 0.016 100 79800 4 3.25993 0.911831 7.79392 0 0 0 0.0028 0 0.016 100 82800 6 4.81562 1.09837 8.95811 5.58E−07 0 4.59E−06 0.00642 0 0.016 84 59800 8 5.49245 1.75874 12.8345 8.64E−08 0 7.12E−06 0.00327 0 0.016 98 79

1000 2 1.3021 0.029463 5.16914 0 0 0 0.00407 0 0.016 100 740

3.20

(

TT

1000 4 2.90082 0.441783 6.87262 0

1000 6 4.24312 1.21769 8.89599 5.23E−07

1000 8 5.22396 1.45827 10.99 6.35E−08

completion times corresponding to the sub-schedules accord-ing to Property 4.

2) The dependent relationship between the efficiency of the pro-posed simulated annealing algorithm and the problem size isnot obvious, therefore our simulated annealing algorithm can

be used to solve the problems with large size. The reason is thatthe number of the inner loop times is set to a fixed number, andthe well-directed local search also improves the efficiency ofthe proposed simulated annealing algorithm.

able 6he statistic experimental results according to the values of �.

� Gap (MLPT) Gap (SA)

Ave Min Max Ave Min

0.1 4.560359 0.007093 21.2446 5.32 E−04 0

0.2 4.695939 0 22.2174 2.9 E−04 0

0.3 4.792526 0.001498 23.1693 1.2 E−04 0

0.4 4.869933 0.001192 24.5077 4.69E−05 0

0.5 4.985625 0.000638 25.3232 1.84E−05 0

Statistic 4.780876 0 25.3232 0.000201 0

0 0.00485 0 0.016 100 697E−13 3.76E−06 0.0081 0 0.016 88 48

6.35E−06 0.00423 0 0.016 99 73

(3) In all the 10,000 randomly generated problems, the simulatedannealing algorithm obtains the optimal solutions 8573 times,and the CPU times are near to zero for 7270 instances. The aver-age relative error of the solutions for all instances obtainedby the simulated annealing algorithm is only 0.000201%, and

the worst case of the relative error is 0.019946%. The averageCPU time for all instances occupied by the simulated anneal-ing algorithm is 0.005131 s, and the worst case of the CPUtime is 0.875 s. The simulated annealing algorithm can reach

Time (SA) T1 T2

Max Ave Min Max

0.019844 0.010226 0 0.875 79.9 56.80.019946 0.005012 0 0.375 82.15 71.550.019149 0.00379 0 0.484 85.5 77.550.018091 0.003362 0 0.016 89.95 78.50.013411 0.003266 0 0.016 91.15 79.1

0.019946 0.005131 0 0.875 85.73 72.7

Page 7: Parallel machine scheduling problem to minimize the makespan with resource dependent processing times

mput

7

tlmpiaoafsndauo

iwtrp

A

tiN7c

R

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

[

K. Li et al. / Applied Soft Co

a (near) global optimum solution when the initial tempera-ture T (T:=

(Z

′Local

− LB′Local

)· K) is large enough. The idea of the

proposed simulated annealing algorithm is to improve the effi-ciency by dealing with the sub-problems with two machinesfirstly, therefore we set K: = 300 and the efficiency is alsoguaranteed. It shows that the proposed simulated annealingalgorithm is very accurate and efficient.

. Conclusions

In this paper, we propose a simulated annealing algorithm forhe Pm|pj = pj − xj,

∑nj=1xj ≤ X̂|Cmax problem. The idea aims at the

ocal solution formed by a critical machine and the non-criticalachine with the minimal maximal completion time, therefore the

rocess of the search is pointed and fast. In the experiments, wentroduce the parameter � to control the total available resource,nd consider the problems with 5 kinds of � settings. A massf experimental results show that the average relative error ofll the solutions obtained by the simulated annealing algorithmor different problems is only 0.000201%, therefore the proposedimulated annealing algorithm is very accurate. Additionally, theumber of the inner loop times is a constant value, hence theependent relationship between the efficiency of the simulatednnealing algorithm and the problem size is not obvious. The sim-lated annealing algorithm can solve the problems with 1000 jobsnly within 0.875 s.

The further research work on this paper may test the practicabil-ty of the proposed simulated annealing algorithm for the problems

ith super-large size, e.g. more than 1000 jobs. We also devoteo expanding the idea of the proposed simulated annealing algo-ithm for some more complex practical parallel machine schedulingroblems.

cknowledgements

The authors would like to thank the anonymous referees forheir valuable comments and suggestions that have significantlymproved the paper. This work was supported by the fund fromational Natural Science Foundation of China under grant number0871032, 90924021, 70971035 and the fund from Anhui Provin-ial Natural Science Foundation under grant 11040606Q27.

eferences

[1] J.K. Lenstra, A.H.G. Rinnooy Kan, P. Brucker, Complexity of machine schedulingproblems, Annals of Discrete Mathematics 1 (1977) 343–362.

[2] R.G. Vickson, Choosing the job sequence and processing times to minimize totalprocessing plus flow cost on a single machine, Operations Research 28 (1980)1155–1167.

[3] R.G. Vickson, Two single machine sequencing problems involving controllablejob processing times, AIIE Transactions 12 (3) (1980) 258–262.

[4] L. VanWassenhove, K.R. Baker, A bicriterion approach to time/cost trade-offsin sequencing, European Journal of Operational Research 11 (1982) 48–54.

[5] A. Janiak, W. Janiak, M. Lichtenstein, Resource management in machinescheduling problems: a survey, Decision Making in Manufacturing and Services

1 (2) (2007) 59–89.

[6] D. Shabtay, G. Steiner, A survey of scheduling with controllable processingtimes, Discrete Applied Mathematics 155 (2007) 1643–1666.

[7] E. Nowicki, S. Zdrzalka, A survey of results for sequencing problems with con-trollable processing times, Discrete Applied Mathematics 26 (1990) 271–287.

[

ing 11 (2011) 5551–5557 5557

[8] G. Wan, B.P.-C. Yen, C.-L. Li, Single machine scheduling to minimize total com-pression plus weighted flow cost is NP-hard, Information Processing Letters 79(2001) 273–280.

[9] A. Janiak, M.Y. Kovalyov, W. Kubiak, F. Werner, Positive half-product andscheduling with controllable processing times, European Journal of OperationalResearch 165 (2005) 413–422.

10] J.-B. Wang, Z.-Q. Xia, Single machine scheduling problems with controllableprocessing times and total absolute differences penalties, European Journal ofOperational Research 177 (2007) 638–645.

11] R.L. Danial, R.K. Sarin, Single machine scheduling with controllable processingtimes and number of jobs tardy, Operations Research 37 (6) (1989) 981–984.

12] T.C.E. Cheng, Z.-L. Chen, C.-L. Li, Single-machine scheduling with trade-offbetween number of tardy jobs and resource allocation, Operations ResearchLetters 19 (1996) 237–242.

13] A. Janiak, M.Y. Kovalyov, Single machine scheduling subject to deadlinesand resource dependent processing times, European Journal of OperationalResearch 94 (1996) 284–291.

14] C.T.D. Ng, T.C.E. Cheng, M.Y. Kovalyov, S.S. Lam, Single machine schedulingwith a variable common due date and resource-dependent processing times,Computers & Operations Research 30 (2003) 1173–1185.

15] E. Nowicki, S. Zdrzałka, A bicriterion approach to preemptive scheduling ofparallel machines with controllable job processing times, Discrete AppliedMathematics 63 (1995) 237–256.

16] K. Jansen, M. Mastrolilli, Approximation schemes for parallel machine schedul-ing problem with controllable processing times, Computers & OperationsResearch 31 (2004) 1565–1581.

17] M. Kaspi, D. Shabtay, Convex resource allocation for minimizing the makespanin a single machine with job release dates, Computers & Operations Research31 (2004) 1481–1489.

18] D. Shabtay, M. Kaspi, Parallel machine scheduling with a convex resource con-sumption function, European Journal of Operational Research 173 (1) (2006)92–107.

19] D. Shabtay, M. Kaspi, Minimizing the total weighted flow time in a singlemachine with controllable processing times, Computers & Operations Research31 (2004) 2279–2289.

20] T.C.E. Cheng, A. Janiak, Resource optimal control in some single-machinescheduling problems, IEEE Transactions on Automatic Control 39 (6) (1994)1243–1246.

21] X. Wang, T.C.E. Cheng, Single machine scheduling with resource dependentrelease times and processing times, European Journal of Operational Research162 (2005) 727–739.

22] B.-C. Choi, S.-H. Yoon, S.-J. Chung, Single machine scheduling problems withcontrollable processing times and resource dependent release times, EuropeanJournal of Operational Research 181 (2007) 645–653.

23] T.C.E. Cheng, M.Y. Kovalyov, N.V. Shakhlevich, Scheduling with controllablerelease dates and processing times: Makespan minimization, European Journalof Operational Research 175 (2006) 751–768.

24] T.C.E. Cheng, M.Y. Kovalyov, N.V. Shakhlevich, Scheduling with controllablerelease dates and processing times: Total completion time minimization, Euro-pean Journal of Operational Research 175 (2006) 769–781.

25] M. Kaspi, D. Shabtay, A bicriterion approach to time/cost trade-offs in schedul-ing with convex resource-dependent job processing times and release dates,Computers & Operations Research 33 (2006) 3015–3033.

26] A. Janiak, Single machine scheduling problem with common deadline andresource dependent release dates, European Journal of Operational Research53 (1991) 317–325.

27] N. Metropolis, A. Rosenbluth, M. Resenbluth, et al., Equation of state calcu-lations by fast computing machines, Journal of Chemical Physics 21 (1953)1087–1092.

28] S. Kirkpatrick, C.D. Gelatt Jr., M.P. Vecchi, Optimization by simulated annealing,Science 220 (1983) 671–680.

29] R. Zhang, C. Wu, A hybrid immune simulated annealing algorithm for the jobshop scheduling problem, Applied Soft Computing 10 (2010) 79–89.

30] B. Naderi, R. Tavakkoli-Moghaddam, M. Khalili, Electromagnetism-like mech-anism and simulated annealing algorithms for flowshop scheduling problemsminimizing the total weighted tardiness and makespan, Knowledge-Based Sys-tems 23 (2010) 77–85.

31] S.M. Loo, B.E. Wells, Task scheduling in a finite-resource, reconfigurable hard-ware/software codesign environment, INFORMS Journal on Computing 18

(2006) 151–172.

32] E Figielska, A genetic algorithm and a simulated annealing algorithm combinedwith column generation technique for solving the problem of scheduling in thehybrid flowshop with additional resources, Computers & Industrial Engineering56 (2009) 142–151.