Vous êtes sur la page 1sur 13

Parallel machines scheduling to minimize job tardiness

and machine deteriorating cost with deteriorating jobs


Mohammad Mahdavi Mazdeh, Farzad Zaerpour, Abalfazl Zareei
*
, Ali Hajinezhad
Department of Industrial Engineering, Iran University of Science and Technology, Tehran, Iran
a r t i c l e i n f o
Article history:
Received 21 December 2008
Received in revised form 22 August 2009
Accepted 25 August 2009
Available online 29 August 2009
Keywords:
Scheduling and sequencing
Parallel machines
Machine deterioration
Job deterioration
Multi-objectives integer programming
a b s t r a c t
This paper studies the parallel machines bi-criteria scheduling problem (PMBSP) in a dete-
riorating system. Sequencing and scheduling problems (SSP) have seldom considered the
two phenomena concurrently. This paper discusses the parallel machines scheduling prob-
lem with the effects of machine and job deterioration. By the machine deterioration effect,
we mean that each machine deteriorates at a different rate. This deterioration is considered
in terms of cost which depends on the production rate, the machines operating character-
istics and the kind of work done by each machine. Moreover, job processing times are
increasing functions of their starting times and follow a simple linear deterioration. The
objective functions are minimizing total tardiness and machine deteriorating cost. The
problem of total tardiness on identical parallel machines is NP-hard, thus the problem with
machine deteriorating cost as an additional term is also NP-hard. We propose the LP-metric
method to show the importance of our proposed multi-objective problem. A metaheuristic
algorithm is developed to locate optimal or near optimal solutions based on a Tabu search
mechanism. Numerical examples are presented to show the efciency of this model.
2009 Elsevier Inc. All rights reserved.
1. Introduction
In most machine scheduling problems with different objective functions, it is assumed that machines are available all the
time. This assumption is not reasonable in reality because there are many situations such as periodical repair, preventive
maintenance, or accidental breakdown in which machines may not be available.
In a real world application, each machine works with variable efciency and depreciates because of usage and age at a
random rate. On the other hand, jobs also may deteriorate, while waiting to be processed. By the effect of job deterioration,
we mean that job processing times are dened by a function of their starting times and positions in the sequence. For exam-
ple, a drop in the temperature of an ingot, while waiting to enter the rolling machine, requires the ingot to be reheated before
rolling or the time required to control a re will be increased, if there is a delay in the re-ghting efforts. Scheduling in this
manner is known as the deteriorating job scheduling problem. It was rst introduced by Browne and Yechiali [1]. Since then,
deteriorating job scheduling problems have been widely discussed. Ruat et al. [2] considered the problem of scheduling a
given number of jobs on a single machine with time deteriorating job values and capacity constraints while the objective
function is to maximize total revenue. Gawiejnowicz et al. [3] considered a single machine time-dependent scheduling prob-
lem. They introduced two scenarios for a given sequence of job deterioration and formulated a greedy polynomial time
approximation algorithm for each scenario.
0307-904X/$ - see front matter 2009 Elsevier Inc. All rights reserved.
doi:10.1016/j.apm.2009.08.023
* Corresponding author.
E-mail addresses: Abalfazl_zareei@yahoo.com, abalfazl_zareei@ind.iust.ac.ir (A. Zareei).
Applied Mathematical Modelling 34 (2010) 14981510
Contents lists available at ScienceDirect
Applied Mathematical Modelling
j our nal homepage: www. el sevi er . com/ l ocat e/ apm
Wang [4] introduced the single-machine scheduling problem with the effects of learning and deterioration. He showed
that even in presence of the learning effect and deteriorating jobs, the single-machine makespan and sum of completion
times minimization problems remain polynomially solvable by the SPT rule. Xu et al. [5] investigated a parallel machine
scheduling problem with almost periodic maintenance activities in which they proposed a 2T
0
/T-approximation algorithm
to solve the P
m
, MS[T, T
0
]kC
max
problem.
Oron [6] considered a single machine scheduling problem with simple linear deterioration. He proved several properties
on the structure of an optimal schedule, and introduces two efcient heuristics for solving the problem. Wang and Xia [7]
considered the scheduling problems under decreasing linear deterioration. They proved that an optimal schedule can be ob-
tained by Johnsons rule for the two-machine owshop scheduling problemto minimize the makespan. Jeng and Lin [8] stud-
ied a scheduling problem of minimizing the total completion time on a single machine where the processing time of a job is a
step function of its starting time and a due date that is common to all jobs. They showed that this problem is NP-hard. They
developed a lower bound and two elimination rules to design a branch-and-bound algorithm to derive optimal solutions
from a practical aspect.
Unlike job deterioration, there are only a few studies that have considered machine deterioration. Amia and Nagraj [9]
considered machine deterioration as a function of jobs engineering-determined parameters such as the job feed rate, drilling
or cutting speed, chip removal rate, cooling efciency for the type of cut, etc. They state that basically, each job, based on the
complexity and speed of its operations, may be viewed as placing a certain amount of stress on the machine and the ma-
chine breaks down when the total stress exceeds the threshold value. They also proved that job sequencing has an important
role in minimizing the expected makespan in a deteriorating exible machine when it processes multiple jobs, each contrib-
uting to machine deterioration at a different rate.
Lam and Yeh [10] stated that a machine may continuously deteriorate due to cumulative wear, fatigue, corrosion and so
on. Due to the inevitable deterioration, manufacturing systems may not remain in a condition in which goods of acceptable
quality can be produced. They investigated ve maintenance policies for systems whose degrees of deterioration can be
identied only through inspection. Their objective is to determine an optimal inspection such that the expected long run cost
rate is minimized.
Grall et al. [11] considered a system subject to a random deterioration and monitored through perfect inspection. When
the system condition exceeds its failure level L, it passes into its failed state and a corrective replacement is immediately
carried out.
One of the familiar objective functions in parallel machine scheduling is the minimizing of weighted tardiness penalties.
Bilge et al. [12] used a Tabu search method to schedule parallel machines with total weighted tardiness penalties.
YI and Wang [13] introduced a model for scheduling grouped jobs on identical parallel machines. In their model a set-up
time is incurred when one-machine changes from processing one type of component to a different type of component. The
objective function here is to minimize the total earlinesstardiness penalties. Radhakrishnan et al. [14] emphasized the just-
in-time (JIT) production philosophy, and used simulated annealing for parallel machine scheduling with earlinesstardiness
penalties and sequence dependant set-up times (PETNDDSP).
Lee et al. [15] proposed an algorithm to minimize the number of tardy jobs. Park et al. [16] investigated the problem of
scheduling jobs on identical parallel machines to minimize the sum of weighted tardiness. They suggested an extension of
the ATS (Apparent Tardiness cost with Setup) rule.
While the body of literature in this area is huge, to the best of our knowledge there is not any paper that addresses the
objective functions which are considered in this paper. The most similar study to our work belongs to Cao et al. [17]. They
suggested a model to minimize the sum of machine holding cost and job tardiness cost without considering the effect of job
deterioration. They have showed that the problem is NP-hard and have suggested a heuristic algorithm to locate optimal or
near optimal solutions based on a Tabu search to control the search process in the solutions neighborhood for jobs sched-
uled on specic machines.
In this paper, the parallel machine scheduling problem and the effect of deterioration are considered concurrently. This
deterioration is considered in terms of cost which is a function of production rate, machines operating characteristics and
the kind of work done by each machine. Moreover, job processing times are increasing functions of their starting times and
follow a simple linear deterioration.
The rest of this paper is structured as follows: In Section 2, we dene the problem and introduce the objective functions in
detail. Next, the mathematical formulation for the model is developed. In Section 3, the Lp-metric method is proposed to
show the importance of considering these two objectives, simultaneously. In Section 4, we describe an approach in order
to consider the two objectives as a single objective and a numerical example is used to prove the accuracy of the model with
a single objective. In Section 5, a heuristic algorithm is developed to locate optimal or near optimal solutions based on a Tabu
search mechanism. In Section 6, numerical examples are presented to show the efciency of this model. Finally, Section 7
includes the conclusion and further research suggestions.
2. Problem description
Let there be N independent jobs, J
1
, J
2
, . . . , J
n
on a number of parallel machines selected from a set of M potential machines.
Each job J
i
has a processing time p
i
and a due dated
i
. All jobs are available at time zero and no preemption is allowed. Each
M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510 1499
machine is supposed to deteriorate at a different rate. This deterioration is a function of production rate, machines operating
characteristics and the kind of work accomplished by each machine and considered in terms of cost. Furthermore, we as-
sume that jobs deteriorate while waiting to be processed.
The job scheduling problem to minimize weighted tardiness in parallel machines is NP-hard in the strong sense [18,17],
then the combinational problem in which the objective functions are minimizing the total tardiness and machine deterio-
rating cost will also be NP-hard.
The notation and other assumptions we used in mathematical formulation is given below.
Assumptions:
Each machine has the ability for processing each job.
Job processing time may be different if processed by a different machine.
Job processing time is described by a function of the starting time and xed part of the processing time of the job
(p
jm
= a
jm
+ b
j
s
jm
).
The growth rate of the processing time (b
i
) is independent of machine.
Jobs deterioration are independent of machines deterioration.
The job is available at time zero.
The jobs are independent of each other.
No job preemption is allowed.
2.1. Objective functions
In this paper, a multi-objective integer programming model is proposed with total tardiness and machine deteriorating
cost as the rst and the second objective, respectively. The most important question in such a problem is how we can
consider the effect of machine deterioration in the model. According to the machines operating characteristics and the
kind of work done by each machine, each machine deteriorates at a different rate. Over time, machine condition crosses
a threshold and maintenance activities (e.g. preventive maintenance task) must be done. Each maintenance activity has a
cost. So, we introduce machine deterioration as an objective and consider its effect in terms of cost. A question that may
arise here is what the difference between machine deterioration cost and the holding cost dened in Cao et al. [17] is. If a
machine is selected to process the jobs, holding cost will be occurred. But there is no relation between this cost, the kind
of work and the amount of work done by the machine. Suppose the following matrix presents the costs relating to each
machine
c
11
c
12
c
1n
c
21
c
22
c
2n



c
m1
c
22
c
mn
2
6
6
6
6
6
6
6
6
4
3
7
7
7
7
7
7
7
7
5
: 1
Since in holding cost the kind of work and the amount of work done by each machine are not considered, the cost in every
column is equal
c
1i
c
2i
c
mi
; i 1; 2; . . . ; n: 2
But when deterioration cost is considered, we face a matrix of costs where the kind of work and the amount of work done by
each machine affects it and Eq. (2) is no longer valid.
On the other hand, each delay on delivering products can affect total tardiness. Jobs may also deteriorate while waiting to
be processed. By the job deterioration effect, we mean that job processing time is dened by a function of its starting time
and position in the sequence. (p
jm
= a
jm
+ b
j
s
jm
).
2.2. Input parameters
Before entering the mathematical formulation, we introduce the following notation:
N total number of jobs to be scheduled
M total number of machines available
i, j2I = {0, 1, . . . , N} designate the job, where job 0 is a dummy job, which is always at the rst position on a machine
d
i
due date of job i
C
i
completion time of job i
p
im
processing time of job i on machine m, i 2 I = {0, 1, . . . , N}, m 2 M = {0, 1, . . . , M}
S
im
starting time of job i on machine m, i 2 I = {0, 1, . . . , N}, m 2 M = {0, 1, . . . , M}
a
im
xed part of the processing time for job i on machine m, i 2 I = {0, 1, . . . , N}, m 2 M = {0, 1, . . . , M}
1500 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510
C
jm
machine deteriorating cost
b
i
the growth rate of the processing time of job i on machine m, i 2 I = {0, 1, . . . , N}
2.3. Decision variables
x
ijm

1 if job j immediately follows job i in sequence on machine m;
0 otherwise;

y
jm

1 if job j assigned to machine m;
0 otherwise:

Each machine deteriorates at a different rate. This deterioration is described in terms of cost. C
jm
is a function of machines
operating characteristics and the kind of work done by each machine. The mathematical formulation is presented below:
2.4. Mathematical formulation
Min Z1
X
N
i1
T
i
; 3
Min Z2
X
M
m1
X
N
j1
C
jm
y
jm
; 4
X
N
j1
x
0jm
6 1 m 1; 2; . . . ; M; 5
X
N
i0;i j
X
M
m1
x
ijm
1 j 1; 2; . . . ; N; 6
X
N
j1;i j
x
ijm
6 y
im
i 1; 2; . . . ; N; m 1; 2; . . . ; M; 7
X
N
i0;i j
x
ijm
y
jm
j 1; 2; . . . ; N; m 1; 2; . . . ; M; 8
X
M
m1
y
im
1 i 1; 2; . . . ; N; 9
C
j
PS
jm
P
jm
j 1; 2; . . . ; N; m 1; 2; . . . ; M; 10
P
jm
M1 Y
jm
Pa
jm
b
j
S
jm
j 1; 2; . . . ; N; m 1; 2; . . . ; M 11
S
jm
M1 x
ijm
PC
i
C
0
0; j 1; 2; . . . ; N; i j; i 0; 1; 2; . . . ; N; m 1; 2; . . . ; M; 12
S
0m
0 m 1; 2; . . . ; M; 13
T
i
PC
i
d
i
i 1; 2; . . . ; N; 14
C
i
; S
im
; T
i
P0;
x
ijm
; y
im
2 f0; 1g:
In the above model, Eqs. (1) and (2) are the objective functions, namely minimizing total tardiness and minimizing machine
deteriorating cost.
More precisely, Eq. (1) states that, if C
i
d
i
> 0 then delivering job i has been delayed and it causes tardiness. Otherwise,
no tardiness is assumed. Eq. (2) states that if a job is processed on one machine, machine deteriorating cost will happen. Eq.
(5) ensures that for each machine selected to assign jobs, only one real job follows the dummy job 0. Sometimes, in a job
scheduling scheme, it is possible to schedule only one job on a machine, in this situation a dummy job (i = 0) helps us to
dene X
ijm
. Also sometimes to minimize objective functions, no job is scheduled on one machine, in this situation no job fol-
lows the dummy job 0 and Eq. (5) is equal to zero. Eq. (6) determines that if a job is assigned to a machine, it will be imme-
diately preceded by one job and a job must be processed only at one position on a machine. Eqs. (7) and (8) state that N jobs
are assigned over M machines and if job i is immediately followed by j on machine m then both jobs i and j belong to machine
m. Eq. (9) states that each job is assigned to exactly one machine. Eq. (10) relates the processing time of each job to its start
time and completion time. Eq. (11) expresses the relation between the processing time of each job, its start time and xed
part of the processing time. On the other hand, this equation bounds the amount of processing time. Eq. (12) expresses that
the job starting time is at least equal to the completion time of the preceding job. Eq. (13) states that the starting time of the
dummy job on each machine is equal to zero. Eq. (14) expresses the relation between the completion time of each job, its due
date and tardiness variable.
M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510 1501
3. LP-metric method
In multi-objective problems, the decision making often involves two factors, determining and addressing the objectives.
In this paper, a multi-objective integer programming model is considered with total tardiness and machine deteriorating
cost as the rst and the second objectives respectively. Minimizing total tardiness is one of the objectives often discussed
in scheduling problems, but according to our knowledge minimizing machine deteriorating cost is not considered in any pa-
per. In this paper, the importance of considering these two objectives is rst shown through the LP-metric method and then
suitable weights will be used to simultaneously optimize these two objectives as an objective function,. We propose the LP-
metric method which is one of the famous MCDM methods for showing the importance of our proposed multi-objective
problem. According to this method, a multi-objective problem is solved for each objective function separately and then a
single objective is formulated which aims to minimize the sum of normalized differences between each objective and its
optimal value. For our proposed model assume that two objective functions are named as OB1 and OB2. According to the
LP-metric method, PMBSP should be solved for each of these two objective functions separately. If the optimal values for
these two problems are OB

1
and OB

2
the LP-metric objective function can be formulated as follows:
Min w
1

OB
1
OB

1
OB

1
w
2

OB
2
OB

2
OB

2

: 15
Here, w
1
and w
2
are the weights of the objective functions which are given by the decision maker. We used LINGO [19] to
solve our proposed model.
3.1. Experimental results
In this section, the efciency of the model is tested through four numerical examples. Therefore, three models are dened
as follows:
1. Model 1: consists of the rst objective function and its related constraints (Eqs. (5)(14)).
2. Model 2: consists of the second objective function and its related constraints (Eqs. (5)(9)).
3. LP-metric model: The objective function of this model is calculated by Eq. (15), in which weights of the objective func-
tions (w
1
, w
2
) are considered equal to 1 and the LP-metric objective function is subjected to all of the constraints of the
model (Eqs. (5)(14)).
OB
1=
First objective function of the model OB

1
Best objective value found for model
1
OB
2=
Second objective function of the model OB

2
Best objective value found for model
2
The results of the rst objective function for these models in the examples are shown in Fig. 1. The results of the second
objective function for these models in the examples are shown in Fig. 2. The best results for the rst objective are obtained
via model 1, but in this model the worst results for the second objective are obtained. On the other hand, the best results for
Fig. 1. Results for tardiness.
1502 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510
the second objective are obtained via model 2, but in this model the worst results for the rst objective are obtained. In other
words, considering merely one objective may sacrice the other. Comparison of results shows that the LP-metric model and
considering a multi-objective problem makes a tradeoff between these two objectives.
4. Addressing the objectives
In this section we establish a weighted objective function to include these two objective functions in a single objective
function as follows:
Min TC
X
N
i1
w
i
T
i

X
M
m1
X
N
j1
C
jm
y
jm
: 16
Using this objective function and considering PMBSP constraints, we have a single objective integer programming model,
which can be solved by linear programming solvers.
4.1. Numerical example
In this section, an example problem is solved using optimization software LINGO [19]. It demonstrates that the optimal
solution of the model leads to a job scheduling scheme balancing machine deteriorating cost and job weighted tardiness in
the manufacturing system. For solving the example problem, data are given in Tables 15. Table 1 presents job tardiness
penalty weights, w
i
, for the example problem. Tables 2 and 3 give the common data of due dates and xed part of the pro-
cessing times. Data for the growth rate of the processing times and machine deteriorating costs are given in Tables 4 and 5.
Table 6 summarizes the optimal solution to the example problem (see Fig. 3).
Fig. 2. Results for machine deteriorating cost.
Table 1
Weights (w
i
).
Job No. 1 2 3 4 5 6 7 8
w
i
1 1 2 2 2 1 2 2
Table 2
Due dates (d
i
).
Job No. 1 2 3 4 5 6 7 8
d
i
15 20 25 35 40 50 55 60
M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510 1503
The solution to this example problem for the proposed model leads to a job scheduling scheme balancing the machine
deteriorating cost and the job weighted tardiness. A small change in job weighted tardiness or machine deteriorating cost
can lead to a completely different job scheduling scheme.
Table 3
Fixed part of the processing times (a
im
).
Job No. a
i1
a
i2
a
i3
1 9 10 11
2 12 13 14
3 15 16 18
4 15 16 18
5 20 22 23
6 24 25 28
7 30 33 35
8 36 37 39
Table 4
The growth rate of the processing time (b
i
).
Job No. 1 2 3 4 5 6 7 8
b
i
0.25 0.25 0.5 0.6 0.65 0.72 0.75 0.82
Table 5
Machines deteriorating cost.
Job No. C
j1
C
j2
C
j3
1 2 1.5 2.5
2 3 3 3.5
3 4 4.5 5
4 4 4.5 5
5 5 5.5 6
6 6.5 7 7.5
7 8 8 8.5
8 9 8.5 10
Table 6
Optimal solutions.
Objective value Job scheduling scheme
172.1305 M1:4 ?7 ?2
M2:3 ?8
M3:1 ?5 ?6
Fig. 3. Job scheduling scheme.
1504 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510
5. The Tabu search solution methodology
The heuristic algorithm for PMBSP problem presented in this section is based on the Tabu search metaheuristic which is
one of the most frequently used methods in combinatorial optimization [20]. To our knowledge, direct solution methods for
solving the PMBSP, such as an integer programming method can solve small problems with up to 8 jobs and 3 machines.
Following, several concepts of Tabu search methodologies designed for the PMBSP problem are presented.
5.1. Starting solution methodology
A Tabu search procedure is started with an initial solution. Selection of an appropriate initial solution has an important
effect on the efciency of the search procedure. Following, a method of nding an initial solution for the PMBSP problem is
illustrated.
First, jobs are assigned to the machines using the following linear programming (LP) model:
Min
X
M
m1
X
N
j1
C
jm
y
jm
S:t:
X
M
m1
y
jm
1:
17
Second, the assigned jobs are scheduled according to the earliest due date (EDD) rule [21]. The LP model can be efciently
solved using optimization software such as LINGO and then an initial solution will be obtained by applying the EDD rule.
5.2. Neighborhood generation
Neighborhood generation results from a move strategy which determines the manner the neighbors are generated. In this
paper, the neighborhood generation methodology presented in Cao et al. [17] is utilized. They used three types of moves, i.e.
Machine Swap (MS), Job Insertion (JI) and Job Swap (JS). Machine Swap declares exchanging two machines without changing
job sequences. Job Insertion is related to placing one job immediately after another job subsequent to identifying two par-
ticular jobs loaded on different machines. Job Swap is concerned with exchanging positions of two different jobs on the same
machine.
5.3. Step and iteration
The search process in a Tabu search algorithm explores the neighborhood of the previous local optimum found in the
search process in order to nd a new local optimum. The attempts to nd new local optimum are called iterations and after
nding a new local optimum the search goes to the next step and the attempts to nd the new local optimum based on the
neighborhood of this local optimum. Therefore, steps represent the local optimums in which the search process for a new
local optimum is performed in their neighborhood.
5.4. Tabu lists
Variable x
ijm
is equal to 1 if job j immediately follows job i on machine m. This variable is dened for arc (i, j, m). The Tabu
list consists of different arcs in which any move that generates a value 1 for the related variable of these arcs is prohibited.
Therefore the Tabu list prevents cycling and guides the search through unexplored regions. The arc remains in the Tabu list
for number of times determined by the Tabu list size, TL, unless the move passes the aspiration criterion. The TL should be
determined before starting the search process.
5.5. Aspiration criterion
If a certain move is labeled as Tabu while the corresponding objective function value in model PMBSP passes the given
criterion, then the move will be performed.
5.6. Stopping condition
The search process will stop if a predetermined number of either iterations or steps are reached. These numbers are deter-
mined before starting the search process. In this paper, both stopping conditions are used.
5.7. The Tabu search algorithm
Mmax(m) = Job count assigned to machine m
M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510 1505
X
x
11
x
12
x
1m
x
21



x
j1
x
jm
2
6
6
6
6
6
6
4
3
7
7
7
7
7
7
5
;
1 < X
jm
< Mmaxm j 1; 2; . . . ; N; m 1; 2; . . . ; M;
X
jm
integer sequence of job j on machine m job j assigned to machine m
0 otherwise:
Set X = Initial Solution
1:
ftemp = M
X
*
= X
f(X
*
) = f(X)
For Each MachineSwap in MachineSwaps
X = MachineSwap
If f(X) < f(X
*
) then Goto1
If f(X) > ftemp then
addTabu(MachineSwap)
else
ftemp = f(X)
end if
next Machine Swap
For Each JobSwap in JobSwaps
X = JobSwap
If f(X) < f(X
*
) then Goto1
If f(X) > ftemp then
addTabu(JobSwap)
else
ftemp = f(X)
end if
next JobSwap
For Each JobInsertation in JobInsertations
X = JobInsertation
If f(X) < f(X
*
) then Goto1
If f(X) > ftemp then
addTabu(JobInsertation)
else
ftemp = f(X)
end if
next JobInsertation
end
*
M is a long integer
6. Computational experiments
In this section, the Tabu search algorithm is tested rst on the problem presented in Section 3, and then a medium prob-
lem is considered. Features of a medium problem with 20 jobs 4 machines are briey discussed. Finally the Tabu algorithm
is used to solve a larger problem. All experiments were performed on a Pentium 4, 1.86 GHz 1GB RAM personal computer.
The algorithm was coded in VBA.
6.1. Example 1. Illustrative example
The search process results are summarized in Table 7. The number of iterations and steps of the Tabu search process was
set to 600 and 30, respectively. Tabu list size is set to be equal to 10. The search results are presented in Table 7. Columns 1
1506 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510
and 2 give the initial solution and TL. Column 3 presents the best objective value found by the heuristic algorithm. Columns 4
and 5 present the steps and iterations needed to reach the best objective value in the search process. The best scheduling
scheme resulted from the search process is described in column 6.
Figs. 4 and 5 show the objective function value evolution based on the number of iterations and steps, respectively,
reached in the search process.
Table 7
Search result of Example 1.
Initial solution TL Total cost Steps needed Iterations needed Best scheduling scheme
M1:4 ?5 ?6 M1:4 ?5 ?6
M2:1 ?7 ?8 10 177.79 3 92 M2:1 ?2 ?8
M3:3 ?2 M3:3 ?7
Fig. 4. Objective value evolution based on the number of iteration (Example 3, TL = 30,000).
Fig. 5. Objective value evolution based on the number of step (Example 3, TL = 30,000).
Fig. 6. Objective value evolution based on the number of iteration (Example 2, TL = 50).
M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510 1507
6.2. Example 2. Medium example
In this section, the Tabu search algorithm is tested on a medium size problem i.e. 20 jobs 4 machines. The related infor-
mation of the example is shown in Table 8.
The search results are presented in Table 9. Columns 1 and 2 give the initial solution and TL. Column 3 presents the best
objective value found by the heuristic algorithm. Columns 4 and 5 present the steps and iterations needed to reach the best
objective value in the search process. The best scheduling scheme resulted from the search process is described in column 6.
Fig. 7 shows the objective function value evolution based on the number of steps reached in the search process. This
shows the number of local optimums found in the search process. Fig. 6 shows the number of iterations in each step of
the search process and as it can be seen in some of the steps in the search process, the number of iterations is large. This
is because of the fact that the search process has fallen in an optimum point in which by searching the neighborhoods based
on the Tabu algorithm no other optimum point is found.
6.3. Example 3. A larger size problem
The heuristic algorithm is also tested on several larger size problems. the features of one of these problems will be briey
discussed here. The problem size is 40 jobs 5 machines. Figs. 8 and 9 shows the objective function value evolution based on
the number of iterations and steps, respectively. The problem is solved with TL = 600 for 3000 search iterations and 500
steps. The search process reaches the best solution with objective value TC = 2212.88 at iteration 20753.
Table 8
Input data of Example 2.
Job No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
w
i
1 1 2 2 2 1 2 2 1 1 2 3 3 1 3 2 1 2 2 3
d
i
20 25 25 30 40 50 55 60 65 65 70 80 95 100 115 115 120 120 130 130
a
i1
5 6 6 7 7 8 8 8 9 10 11 11 11 12 14 14 15 15 15 16
a
i1
4 4 5 6 7 8 8 8 9 10 10 10 10 11 13 13 14 14 14 15
a
i3
6 7 7 9 9 9 9 9 10 11 12 12 12 14 15 15 17 17 17 18
a
i4
5 6 6 7 7 8 8 8 9 10 11 11 11 12 14 14 15 15 15 16
b
i
0.2 0.2 0.2 0.5 0.5 0.5 0.65 0.65 0.65 0.7 0.7 0.7 0.8 0.8 0.8 0.82 0.85 0.85 0.86 0.86
C
i1
4 6 6 7 7 8 8 8 9 10 9 9 10 12 13 12 12 16 15 14
C
i2
5 4 7 6 5 5 7 9 10 11 10 10 11 13 11 11 14 13 14 15
C
i3
7 7 4 8 9 9 9 10 11 8 8 12 14 15 10 17 18 18 13 17
C
i4
6 8 5 5 8 7 5 7 7 9 11 11 13 10 12 14 15 15 16 16
Table 9
Search result of Example 2.
Initial solution TL Total cost Steps needed Iterations needed Best scheduling scheme
M1:1 ?12 ?13 ?17 ?20 50 875.39 21 5308 M1:13 ?1 ?20 ?17
M2:2 ?5 ?6 ?16 ?18 M2:5 ?2 ?3 ?6 ?18 ?16
M3:3 ?10 ?11 ?15 ?19 M3:10 ?11 ?15 ?19
M4:4 ?7 ?8 ?9 ?14 M4:7 ?4 ?8 ?9 ?14
Fig. 7. Objective value evolution based on the number of step (Example 2, TL = 50).
1508 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510
Remarks
In this section, ve medium example problems are solved using lingo software and the proposed Tabu search. The
amounts of total cost and the solving time for the two methods are shown in Table 10. The time Lingo takes to solve
the problem is clearly more than the time the proposed Tabu search process takes. Results for the two methods are com-
pared, and the mean absolute percent error (MAPE
*
) is calculated less than 5.5%. In Table 11, the average runtime of dif-
ferent tools in solving ve medium examples are shown and we can compare them with each other.
Fig. 8. Objective value evolution based on the number of iteration (Example 3, TL = 30,000).
Fig. 9. Objective value evolution based on the number of step (Example 3, TL = 30,000).
Table 10
Comparison of Tabu search and Lingo results (TC) and runtime.
(Jobs machines) Tabu search Lingo Error
*
6 2 117.97/10 s 112.477/3 m 0.049
7 2 248.79/15 s 248.285/11 m 0.002
8 2 532.81/24 s 493.273/1 h 0.08
7 3 86.76/30 s 79.24/1.5 h 0.095
8 3 177.79/41 s 172.13/3 h 0.03
Table 11
Comparison of Tabu search and Lingo solution average runtime.
Tabu search Lingo
Average runtime 24 s More than 1 h
M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510 1509
*
Error = jGlobal optimumLocal optimumj Global optimum

MAPE
P
Error N 100
7. Conclusion and future research
In this paper, a model was developed for scheduling bi-criteria parallel machines to minimize job tardiness and machine
deteriorating cost with job deterioration. Production systems, because of machines, are subject to deterioration with usage
and age. Machine deteriorating cost is a function of production rate, machines operating characteristics and the kind of work
done by each machine. Minimizing this factor, along with job weighted tardiness cost, helps to schedule in a real world con-
dition. On the other hand, jobs also may deteriorate while waiting to be processed. By the effect of job deterioration, we
mean that job processing times are dened by a function of their starting times and position in the sequence. The proposed
model is vital as a decision support tool in a practice and helps companies to achieve a job scheduling scheme balancing the
machine deteriorating cost and the job weighted tardiness. A heuristic algorithm is developed to locate the optimal or near
optimal solutions based on a Tabu search mechanism. Numerical examples are presented to show the efciency of this
model.
In the Tabu search process, we used only one type of the three different neighborhood generation methodologies; Ma-
chine Swap (MS), Job Insertion (JI), and Job Swap (JS). It is obvious that changing the neighborhood generation methodologies
can affect the efciency of the search process. The methodology used has considerable effects on the search process. The
question that which neighborhood generation methodology is best to use cannot be taken into view through this paper
and needs to be considered separately.
References
[1] S. Browne, U. Yechiali, Scheduling deteriorating jobs on a single processor, Oper. Res. 38 (1990) 495498.
[2] S. Ruat, S. Swami, N.D. Gupta, Scheduling a capacitated single machine with time deteriorating job values, Product. Econ. 114 (2008) 769780.
[3] S. Gawiejnowicz, W. Kurc, L. Pankowska, Analysis of a time-dependent scheduling problem by signatures of deterioration rate sequences, Discrete
Appl. Math. 154 (2006) 21502166.
[4] J. Wang, Single-machine scheduling problems with the effects of learning and deterioration, Omega 35 (2007) 397402.
[5] D. Xu, K. Sun, H. Li, Parallel machine scheduling with almost periodic maintenance and non-preemptive jobs to minimize makespan, Comput. Oper.
Res. 35 (2008) 13441349.
[6] D. Oron, Single machine scheduling with simple linear deterioration to minimize total absolute deviation of completion times, Comput. Oper. Res. 35
(2008) 20712078.
[7] J. Wang, Z. Xia, Scheduling jobs under decreasing linear deterioration, Inform. Pro. Lett. 94 (2005) 6369.
[8] A. Jeng, B. Lin, Minimizing the total completion time in single-machine scheduling with step-deteriorating jobs, Comput. Oper. Res. 32 (2005) 521536.
[9] A.K. Chakravarty, N. Balakrislman, Job sequencing rules for minimizing the expected makespan in exible machines, Eur. J. Oper. Res. 96 (1996) 274
288.
[10] C.T. Lam, R.H. Yeh, Optimal maintenance policies for systems under various maintenance strategies, IEEE Trans. Reliab. (1993) 3192.
[11] A. Grall, C. Berenguer, L. Dieulle, A condition-based maintenance policy for stochastically deteriorating systems, Reliab. Eng. Syst. Safe. 76 (2002) 167
180.
[12] U. Bilge, F. Kirac, M. Kurtulan, P. Pekgun, A Tabu search algorithm for parallel machine total tardiness problem, Comput. Oper. Res. 31 (2004) 397414.
[13] Y. YI, D.W. Wang, Soft computing for scheduling with batch set up times earlinesstardiness penalties on parallel machine, J. Int. Man. 14 (2003) 311
322.
[14] S. Radhakrishnan, J. Ventura, Simulated annealing for parallel machine scheduling with earlinesstardiness penalties and sequence-dependent set-up
times, Int. J. Prod. Res. 38 (2000) 22332252.
[15] C.Y. Lee, R. Uzsoy, L. Martin-Vega, Efcient algorithms for scheduling semiconductor burn in operations, Oper. Res. 40 (1992) 764775.
[16] Y. Park, S. Kim, Y. Lee, Scheduling jobs on parallel machines applying neural network heuristic rules, Comput. Ind. Eng. 38 (2000) 189202.
[17] D. Cao, M. Chen, G. Wan, Parallel machine selection and job scheduling to minimize machine cost and job tardiness, Comput. Oper. Res. 32 (2005)
19952012.
[18] M. Pfund, W. Fowler J, A. Gadkari, Y. Chen, Scheduling jobs on parallel machines with setup times and ready times, Comput. Ind. Eng. 54 (2008) 764
782.
[19] Lingo Users Guide, LINDO Systems Inc., Chicago, 1999.
[20] F. Glover, M. Laguna, Tabu Search, Kluwer Academic Publishers, Boston, 1997.
[21] D. Sule, Industrial Scheduling, PWS Pub. Co., Boston, 1997.
1510 M.M. Mazdeh et al. / Applied Mathematical Modelling 34 (2010) 14981510

Vous aimerez peut-être aussi