You are on page 1of 21

Applied Mathematics and Computation 167 (2005) 1430–1450

www.elsevier.com/locate/amc

Optimal scheduling for a single machine


to minimize the sum of maximum
earliness and tardiness considering idle insert
R. Tavakkoli-Moghaddam a, G. Moslehi b,
M. Vasei a, A. Azaron c,*
a
Department of Industrial Engineering, Faculty of Engineering, University of Tehran, Iran
b
Department of Industrial Engineering, Isfahan University of Technology, Iran
c
Department of Artificial Complex Systems Engineering, Graduate School of Engineering,
Hiroshima University, Kagamiyama 1-4-1, Higashi-Hiroshima, Hiroshima 739-8527, Japan

Abstract

This paper presents the optimal scheduling in a single machine by considering idle
insert. The objective function is to minimize the sum of maximum earliness and tardi-
ness. This scheduling problem can be applied in different production systems such as just
in time (JIT) systems. Special case of common due date is presented and the associated
optimal solution is reported. In general case of a single machine scheduling, a number of
effective lemmas regarding idle insert (n/1/OI/ETmax) are also developed. In order to
show the efficiency of the proposed algorithm, 1020 problems with different job sizes,
ranging from 7 to 1000 jobs, are generated at random and then the idle insert algorithm
is applied to solve these problems.
 2004 Elsevier Inc. All rights reserved.

Keywords: Scheduling; Single machine; Maximum earliness; Maximum tardiness; Idle insert

*
Corresponding author.
E-mail address: azaron@msl.sys.hiroshima-u.ac.jp (A. Azaron).

0096-3003/$ - see front matter  2004 Elsevier Inc. All rights reserved.
doi:10.1016/j.amc.2004.08.022
R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450 1431

1. Introduction

Production planning is an important activity in a manufacturing and/or


service firm. The aim of production planning is to find optimal usage from re-
sources of a firm depending on the suitability of schedule. In modern manufac-
turing systems, sequencing and scheduling play an important role requiring a
special attention. Nowadays, only one objective or criterion is not good enough
to make a decision. However a multi-objective or criteria decision making
(MODM or MCDM) is needed. Thus, a great deal of researchers proposed
many algorithms to solve such difficult problems. A typical model for a single
machine scheduling problem consists of the same ready times for all jobs. It is
also assumed that all jobs have sequence-independent setup times, thus setup
time is combined and designated as the processing time. Besides, idle insert
is not allowable for each job and each machine. These assumptions exist in
most papers related to this matter [1,2].
Various objective functions exist in the literature survey for a single machine
scheduling problem with the above assumptions. Any of these functions pre-
sents a typical objective and makes an attempt for achieving objectives. Most
of these objective functions are introduced in terms of earliness and tardiness of
jobs. Earliest due date (EDD) order is used for minimizing the maximum dif-
ference between the due date and the completion time of jobs (Lmax) as well as
the maximum tardiness (Tmax) [1,2]. In most cases, the sum or mean of tardi-
ness of all jobs is considered as a criterion to determine job sequencing. The
mean criterion of tardiness is presented by T and in overall, traditional optimi-
zation methods like branch and bound (B&B) and dynamic programming (DP)
are used for minimizing T [1,3]. These methods are usually very timely and suit-
able for small number of jobs. These methods are generally inefficient for solv-
ing large-scale problems. Emmons [4] has introduced essential conditions to
find an optimal solution of T in a single machine problem after proving some
theorems.
Sen and Borah [5] have reduced the set of feasible solutions in order to find
the optimal solution using EmmonsÕ theorems. They obtained the optimal solu-
tion for 30-jobs problems by the B&B method. Holsenback and Russell [6]
have introduced a heuristic method for minimizing T according to EmmonsÕ
theorems. This heuristic method has been considered as a base for further re-
searches. Panwalker et al. [7] have proposed a heuristic algorithm, Ben-Daya
and Al-Fawzan [3] has introduced an efficient method based on simulated
annealing (SA) and Islam and Oksioglu [8] have proposed a method based
on tabu search (TS) in order to minimize T . These authors have compared their
methods with Holsenback and Russell algorithm [6].
Most researchers have been interested in a multi-objective function for
sequencing and scheduling problems to adapt and satisfy managersÕ require-
ments. One of the most important objectives is to minimize the sum (or
1432 R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450

weighted sum) of the earliness and tardiness of jobs. This matter is conformity
to just-in-time (JIT) systems [9,10]. Tardiness and earliness causes penalties in
losing customers and increasing inventory cost respectively. Thus, none of
these penalties are desirable. Most researchers are interested in various forms
and with various assumptions for the due dates of jobs, allowing idle insert,
and weighting of earliness and tardiness [11–13].
Ow and Morton [9] have first introduced this problem by assuming the dif-
ference between earliness and tardiness costs. They have also introduced an
effective theorem for preceding and succeeding of jobs to each other. According
to this theorem, some priority rules have been introduced in order to solve the
problem, using a heuristic method. James and Buchanan [14] have proposed a
tabu search (TS) method for this problem using the results of Ow and Morton.
Zegordi et al. [10] used simulated annealing (SA) method for minimizing the
weighted sum of earliness and tardiness of jobs.
There would be large values of earliness or tardiness for some jobs in re-
sults obtained from minimizing the sum (or weighted sum) of earliness and
tardiness. Thus, this problem causes some difficulties in production systems.
To identify this problem, consider a state that all jobs done on machines exit
from a firm as batches built-up many parts. If all jobs of a batch produce on
time but a job has tardiness, then other jobs of batch must wait. Thus, their
on time production is not an advantage. In such situation, if jobs are carried
out early date, they need some spaces and increase the inventory level. How-
ever, if there is earliness or tardiness, then their associated values should be
almost the same for all jobs. In other word, if a job in a batch has earliness,
then other jobs of batch will have earliness. Likewise, if a job has tardiness,
then other jobs will have tardiness. Thus, the interval time between earliness
and tardiness must be approximately zero. This aim is fulfilled by minimizing
the sum of the maximum earliness and tardiness. Another application of this
objective function is the part feeding in an assembly line by a machine. In
other word, the assembly line needs jobs in a known due date. If a job has
much earliness or tardiness, then other jobs will not be used resulting imbal-
ance in the assembly line. Thus, the objective is to minimize the sum of the
maximum earliness and tardiness in such a way that the above-mentioned dif-
ficulty reduces. This objective function forces jobs not to be early and/or
tardy.
In the case of existing any earliness or tardiness, their values are approxi-
mately the same for jobs and large earliness and tardiness are not existed. This
objective is associated with JIT production systems. The objective function va-
lue would be equal to zero in the optimal state. If whatever earliness and tar-
diness exist, then the value of the objective function will be bigger than zero. In
this case, the objective function tries to be reduced and this can be one of the
main objectives in JIT production systems. For better understanding of the
subject, consider the following example (Table 1):
R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450 1433

Table 1
Input data for a typical example
Job 1 2 3 4 5
Processing time 18 16 14 11 12
Due date 40 30 40 55 25

By solving the above example, the optimal sequence of 5–2–3–4–1 is


obtained in which the sum of earliness and tardiness is equal to 50. However,
the sum of the maximum earliness and maximum tardiness of the above
sequence is equal to 44. In other word, the interval between values of the max-
imum earliness and maximum tardiness is equal to 44 time units. Whereas, the
minimum of the maximum earliness and maximum tardiness of aforemen-
tioned problem with sequence 5–2–3–1–4 is equal to 33 in which about 25%
of the interval is reduced. The sum of earliness and tardiness of this sequence
is equal to 53.
Amin-Nayeri and Moslehi [15] studied a single-machine scheduling problem
to find an optimal sequence of jobs, in which the objective function is to min-
imize the maximum earliness and tardiness. In this paper, some assumptions
for the original and traditional model as well as the absence of idle insert for
a job and a machine have been considered.
Since ETmax (sum of maximum earliness and tardiness) is an irregular crite-
rion, then it is possible to eliminate the assumption of unallowable idle insert
and to define a new problem. In the new problem, a search is carried out for
finding the optimal sequence holding idle insert. This problem is presented as
n/1/I/ETmax. If the objective function is to minimize the sum of the maximum
earliness and maximum tardiness with allowing idle insert, then the objective is
to find the best value of idle insert in a known sequence for improving the
objective function. In this paper, an optimal algorithm is proposed to obtain
the best value of idle insert in the known sequence.
In the next section, we describe the symbols definition. In Section 3, the spe-
cial case of common due date is presented. Applied theorems in the proposed
algorithm are introduced, in Section 4. In Section 5, the proposed algorithm,
named idle insert algorithm, is presented. The computational results are re-
ported and compared with those results obtained by a complete enumeration
method, in Section 6. Section 7 is a remarking conclusion.

2. Symbols definition

To explain theorems and associated relationships, general symbols are de-


fined as follows and hereafter the terms of ‘‘job’’ and ‘‘parts’’ have the same
meaning. The number of jobs in a known sequence is n, in which processing
1434 R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450

time and due date of job i are presented by pi and di, respectively. All jobs have
two types of due date: equal and common due date. The former is known as a
prior and the latter is resulting from the final problem solving. Completion
time and the difference between completion time and due date are presented
by Ci and Li respectively. In a single machine scheduling, earliness (Ei) and tar-
diness (Ti) of job i, maximum earliness (Emax), maximum tardiness (Tmax), and
the sum of maximum earliness and tardiness (ETmax) in each sequence are ob-
tained as follows:
Ei ¼ maxð0; d i  C i Þ; ð1Þ

T i ¼ maxð0; C i  d i Þ; ð2Þ

Emax ¼ maxfEi g; ð3Þ


16i6n

T max ¼ maxfT i g; ð4Þ


16i6n

ET max ¼ Emax þ T max ; ð5Þ


id is the time of incremental idle insert in a sequence. Fig. 1 depicts three dif-
ferent sets of jobs considering Emax and Tmax in a single machine-scheduling
problem with illegal idle insert.
Suppose that a job with Tmax and another job with Emax are assigned in the
position of CT and CE in the sequence, respectively. The maximum tardiness of
set C, the minimum earliness of set C, and the maximum earliness of set A are
presented by max TC, min EC and max EA, respectively. Optimal scheduling of a
known sequence with the objective function of ETmax with idle insert and ille-
gal idle insert are presented by n/1/OI/ETmax and n/1/O/ETmax, respectively. In
this paper, two problems are studied; the value of the best idle insert and the
best position of idle insert.

3. Special case of common due date

Following lemmas are corresponding with the same due dates of jobs versus
a known sequence. These due dates may be assumed as input (same known due
date) or output (same unknown due date) that are called equal and common
due date.

A B C
CE CT

Fig. 1. A set of jobs.


R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450 1435

Lemma 1. In the problem n/1/O/ETmax, the best common due date is assigned in
each position within time space between the minimum completion time (Cmin) and
the maximum completion time (Cmax).

Proof. If jobs 1–n are arranged in which they have the completion times
C1, C2, . . . , Cn, then following states are investigated.

(1) C1 < d < Cn: If common due date is between C1(Cmin) and Cn(Cmax), then
the first job and the last job have the maximum earliness and maximum
tardiness, respectively. By considering the job position with the maximum
earliness and maximum tardiness, in the first and the last position in
sequence respectively, equations Emax = d  C1 and Tmax = Cn  d are
obtained resulting the following equation.

ET max ¼ Emax þ T max ¼ C n  C 1 ; ð6Þ

ETmax is a constant value due to the constant value of completion time for
the first and the last job.
(2) d 6 C1: If due date is before C1 then all jobs have tardiness whose value is
calculated by equation Tmax = Cn  d. Thus, ETmax is given by

ET max ¼ Emax þ T max ¼ C n  d: ð7Þ

Since Cn  d is bigger than Cn  C1, then a worse solution than 1 is


obtained.
(3) d P Cn: If due date is after Cn then all jobs are earliness whose value is
calculated by equation Emax = d  C1. Thus ETmax is given by

Emax þ T max ¼ d  C 1 : ð8Þ

Since d  C1 is bigger than Cn  C1, then a worse solution than 1 is ob-


tained. Hence the best common due date is related with 1, i.e. it is posi-
tioned between completion time of the first job (C1) and completion
time of the last job (Cn). The objective function is same for each due date
between C1 and Cn. h

Lemma 2. In the problem n/1/OI/ETmax with equal due date by considering idle
insert, the objective function value is improved if d is greater than Cn.

Proof. Feasible states of due date are investigated as follows:

(1) d 6 C1: In this state, all jobs with any sequence have tardiness and the
maximum tardiness is corresponding with the last job.
1436 R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450

8i; Ci  d < Cn  d ) T i < T n; T max ¼ T n : ð9Þ


Since the obtained maximum tardiness ðT 0max Þ
increases by id value, thus if
id is positioned before or after d then the objective function ETmax will be
increased.
T 0max ¼ T max þ id > T max : ð10Þ
(2) C1 < d < Cn: In this state, the following equations are given for the maxi-
mum earliness and tardiness.

8i; d  C 1 < d  C i ) Emax ¼ E1 ; ð11Þ

8i; C i  d < C n  d ) T max ¼ T n : ð12Þ

If id is positioned before C1, Tmax will be increased and Emax is decreased


as T 0max ¼ T max þ id and E0max ¼ Emax  id, respectively. The new objective
function will be equal to the old objective function.

ET 0max ¼ E0max þ T 0max ¼ Emax þ T max : ð13Þ

Thus, the objective function remains constant. Now, if id is positioned


after d and before Cn, then it causes increasing the maximum tardiness
and constant of the maximum earliness, i.e. T 0max ¼ T max þ id,
E0max ¼ Emax . Finally, the new objective function will be increased by
ET 0max ¼ Emax þ T max þ id. In other word, this id inserting changes the
objective function. The above state is also occurred when id is positioned
before d and after C1. Thus in this state, the objective function cannot be
improved by id inserting.
(3) d P Cn: In this state, all jobs have earliness, which their values are
obtained from equation Emax = d  C1 and the maximum tardiness is zero.
An increase in id before C1 improves the objective function by the d  Cn
value, i.e. E0max ¼ Emax  id, Tmax = 0. Since an increase in id is bigger than
d  Cn, then job n converts into a job being tardiness. If id = d  Cn, then
the maximum earliness will be obtained as follows:

En ¼ d  C n : ð14Þ

If id > d  Cn, then En = 0, Tn > 0. In this state, the problem is changed to


2. h
Lemma 3. In the problem n/1/OI/ETmax, the best common due date is assigned
after the completion time of the first job. In this case, the objective value is only
improved when d is greater than C1 and the best value of idle insert is assigned
before C1.
R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450 1437

Proof. Feasible states of due date is investigated as follows:

(1) C1 < d < Cn: In this state, if id is increased before the first job, then the
objective function remains constant, because an increase of the maximum
tardiness is equal to the maximum earliness reduction, i.e. T 0max ¼
T max þ id, E0max ¼ Emax id. Finally, the obtained objective function does
not change by id inserting.
ET 0max ¼ E0max þ T 0max ¼ Emax þ T max ¼ ET max : ð15Þ
If id is increased in a position before Cn and after C1, then the objective
function increases. Since the maximum tardiness and the maximum earli-
ness are equal to T 0max ¼ T max þ id and E0max ¼ Emax respectively, then the
obtained objective function by id inserting is given by
ET 0max ¼ Emax þ id > ET max : ð16Þ
(2) d 6 C1: In this state, all jobs have tardiness; therefore id increment causes
an increase of the objective function. Then the new objective function is
obtained as follows:
ET 0max ¼ T 0max ¼ T max þ id > ET max : ð17Þ
(3) d P Cn: In this state, all jobs have earliness (Tmax = 0). If id positions
before the sequence start (before C1), then the maximum earliness will
be reduced, i.e. E0max ¼ Emax  id. However, if an increase of id exceeds
from a threshold value, then earliness of job n changes to tardiness, i.e.
T 0max > 0, E0n ¼ 0. This value is shown by id > d  Cn, i.e. an increase of
id according to the above equation results tardiness and this increase does
not improve the objective function. Thus, the objective function improves
at most at d  Cn by an increase of id before starting the job sequence.
Hence, an increase of id only improves the objective function in state
3. h

4. Lemmas applied in the proposed algorithm

In this section, some lemmas that are the basis of the proposed algorithm are
presented. This section also provides an answer to this question; ‘‘when does
the idle insert improve the objective function of the sequence?’’

Lemma 4. In the problem n/1/OI/ETmax, if a job with Emax is positioned before a


job with Tmax, then the idle insert does not improve the objective function.

Proof. It is supposed that a known sequence with n jobs is existed. k is a job


that id immediately inserts after it. id value at least is increased into a set of A,
B, and C.
1438 R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450

if i > k ) C 0i ¼ C i þ id; 8i: ð18Þ


(1) Adding id in set A: The same job with Tmax remains. The tardiness is only
increased, i.e. T 0max ¼ T max þ id. Job with Emax may remain the same job or
change to another job. So, Emax value will reduce at most at id i.e.

E0max P Emax  id: ð19Þ

Hence, the following equation is presented.

E0max þ T 0max ¼ ET 0max P Emax þ T max þ id  id ) ET 0max P ET max : ð20Þ

(2) Adding id in set B: The same job with Tmax remains. The tardiness is only
increased, i.e. T 0max ¼ T max þ id. However, the same job with Emax remains,
i.e. E0max ¼ Emax .
Hence, the following equation is presented.

E0max þ T 0max ¼ Emax þ T max þ id ) ET 0max P ET max : ð21Þ

(3) Adding id in set C: A job with Tmax may remain the same job or change to
another job, i.e. T 0max P T max . The same job with Emax remains, i.e.
E0max ¼ Emax .
To summarize these three states, it results the following equation:

E0max þ T 0max P Emax þ T max þ id ) ET 0max P ET max : ð22Þ

By considering the three mentioned states, it is concluded that an increase of


the idle insert will not improve the objective function. h

Lemma 5. In the problem n/1/OI/ETmax, if a job with Tmax is positioned before a


job with Emax and idle insert is considered in the set B, then the idle insert may
improve the objective function.

Proof. An increase of the idle insert is considered in the following sets:

(1) Adding id in set A: With increasing idle insert in set A, the same job with
Tmax remains. The tardiness is only increased, i.e. T 0max ¼ T max þ id. A job
with Emax may remain the same job or change to another job. So, Emax
value will reduce at most at id, i.e. E0max P Emax  id. Thus, the following
changes are considered in the objective function resulting the following
equation:

ET 0max ¼ E0max þ T 0max P Emax þ T max ) ET 0max P ET max : ð23Þ


R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450 1439

(2) Adding id in set B: With increasing idle insert in set B, a job with Tmax and
job with Emax may remain the same jobs or change to another jobs, i.e.
T 0max P T max and E0max P Emax  id. Thus, the following equation is
concluded.

ET 0max ¼ E0max þ T 0max P Emax þ T max  id ) ET 0max P ET max : ð24Þ

It can be concluded that the objective function is improved in this state.


(3) Adding id in set C: With increasing idle insert in set C, a job with Tmax
may remain the same job or change to another job, i.e. T 0max P T max .
The same job with Emax remains, i.e. E0max ¼ Emax resulting Eq. (23).

By considering the three mentioned states, it is concluded that an increase of


the idle insert may only improve the objective function in state 2. h

According to Lemmas 4 and 5, the following notes may be considered for


the idle insert in the sequence.

Note 1. In the problem n/1/OI/ETmax, if the whole jobs in a known sequence


do not have earliness (they have tardiness bigger than or equal zero), then the
objective function may not be improved by considering the idle insert. This is a
special case of Lemma 4 with Emax = 0, in which the objective function is
converted into Tmax (ETmax = Emax + Tmax = Tmax). Thus, the value of Tmax
should be minimized. The reason is that any idle insert does not reduce the
completion time of any part and consequently Tmax is not reduced.

Note 2. In the problem n/1/OI/ETmax, if the whole jobs in a known sequence


have earliness, then the objective function is improved by considering the idle
insert. This is a special case of Lemma 5 with Tmax =0 such that the objective
function is converted into Emax (ETmax = Emax + Tmax = Emax). Thus, the value
of Emax should be minimized. If the value of the minimum earliness of a
sequence is represented by min E, then the earliness of the whole jobs is
obviously reduced by the value of min E and consequently Emax is reduced.

Following note and Lemma 6 investigate the position and the amount of
idle insert.

Note 3. In the problem n/1/OI/ETmax, the best objective function may be


obtained by adding the idle insert in several positions of a sequence. The best
improvement due to idle insert is not always obtained by entering idle insert in
one particular position of the sequence. However, multiple idle insert is
sometimes needed. For instance, five jobs with processing times 6, 1, 2, 3, and 6
as well as due dates 4, 9, 12, 17, and 28 are considered. Fig. 2 shows a sequence
1440 R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450

Tmax=2 A E1=2 B E2=3 C E3=2 D Emax=10

Fig. 2. Inserting idle insert in different positions.

Table 2
Calculation of the maximum earliness and the maximum tardiness
Position of idle insert Best idle insert Tmax Emax Objective function value
A 4 2 6 8
B 5 2 5 7
C 7 2 3 5
D 5 2 5 7

of 1–2–3–4–5, in which the first job has the maximum tardiness (i.e. Tmax = 2)
and the final job has the maximum earliness (i.e. Emax = 10). However, the jobs
between these two jobs have earliness equal to 2, 3, and 5, respectively.

Now, consider the idle insert in one position. Table 2 shows the best value of
idle insert. While if idle insert is entered in several points, then idle insert in-
creases 2, 1, 2, and 5 in position A, B, C, and D respectively resulting Tmax = 2,
Emax = 0, and ETmax = 2. It means that better objective function value is ob-
tained by inserting idle insert in multiple positions. Thus, the assumption of
single idle insert is dismissed in all conditions.

Lemma 6. In the problem n/1/OI/ETmax, the existence of a range for the idle
insert does not occasionally eliminate the optimum solution. By considering
Lemma 6, due to idle insert with various values from the beginning until the end of
a range, same improvements are obtained in the objective function value. Thus, the
minimum value of a range (i.e. beginning point) is searched in the idle insert
algorithm.

Proof. As it is proved formerly, if a job with Tmax is positioned before a job


with Emax, it can be expected that by adding id between these two jobs, better
objective function value is achieved. If i is the position of idle insert, by
increasing id, Emax reduces, i.e. E0max < Emax . Hence, the objective function
ETmax improves and ET 0max < ET max .
It is supposed that an earliness E1 is existed before position i. Then, Emax
reduces to E1 after adding id. Also, by increasing idle insert by ii value, Tmax
value does not increase and Emax remains equal to E1. Thus, the following
equation is concluded.
Emax  E1 6 id 6 ii ) ET 0max ¼ E0max ¼ T max : ð25Þ
In other word, the objective function remains constant. h
R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450 1441

The use of Lemmas 7–11 is in the idle insert algorithm. These lemmas are
used for considering or non-considering idle insert and determining the value
of idle insert.

Lemma 7. In the problem n /1/I/ ETmax, if a job with Tmax is positioned before a
job with Emax, then four-limit points exist that the idle insert will not be bigger
than the minimum of these limits. These limits are as follows:

Emax  max EA ; min EC þ T max ; T max  max T C ; Emax : ð26Þ

Proof. By considering the idle insert, only through reducing Emax, the objective
function may be improved. This reduction is possible until max EA value,
because the maximum earliness of set A cannot be reduced and the entry of idle
insert into set A does not improve the objective function. By considering this
matter, any of the following limits is considered.

(1) id 6 Emax  max EA: If id > Emax  max EA then Emax loses the property
of the maximum earliness and the maximum earliness positioned in set
A, i.e. E0max ¼ max EA and a job with Emax is positioned before a job with
Tmax. Thus, increasing idle insert may not improve the objective function
further. Hence, Emax  max EA is a limit point.
(2) id 6 min EC + Tmax: If id > min EC + Tmax then Tmax loses the property of
the maximum tardiness and the minimum earliness of set C converts into
the maximum tardiness, i.e. T 0max ¼ min EC and a job with Tmax is posi-
tioned after a job with Emax. Thus, an increase of the idle insert may
not improve the objective function. Hence, min EC + Tmax is a limit point.
(3) id 6 Tmax  max TC: If id > Tmax  max TC then the maximum tardiness
of set C is converted into the maximum earliness of the given sequence,
i.e. T 0max ¼ max T C . Thus, a job with Tmax is positioned after a job with
Emax. An increase of the idle insert may not improve the objective func-
tion. Hence, Tmax  max TC is a limit point.
(4) id 6 Emax: If id > Emax, this means that an idle insert bigger than the maxi-
mum earliness is considered. The objective function cannot be improved
more than Emax and the maximum improvement will be equal Emax. In this
case, the whole earliness of sequence is converted into zero and any earliness
does not exist as well as Tmax remains constant at the same value. It may be
possible that idle insert causes further Emax and the objective function ETmax
(it is converted into Tmax) does not deteriorate. Hence, Emax is a limit point.

Since these four limit points must observe, then the idle insert must be equal
or smaller than their minimum values, i.e.:
1442 R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450

id 6 fEmax  max EA ; min EC þ T max ; T max  max T C ; Emax g:  ð27Þ

Lemma 8. In the problem n /1/I/ETmax, if a job with Tmax is positioned before a


job with Emax and the maximum earliness except to a job with Emax is positioned
before a job with Tmax, then the position of the idle insert is immediately located
before the job with Emax and the value of idle insert is given by

id ¼ minfðEmax  max EA Þ; ðmin EC þ T max Þ; ðT max  max T C Þ; Emax g:


ð28Þ

Proof. In this state, id may only insert between jobs with Emax and Tmax and
the maximum improvement in the objective function will be equal
Emax  max EA, because if id = Emax  max EA then the new objective function
is obtained as follows:
ET 0max ¼ ET max  id ¼ ET max  ðEmax  max EA Þ: ð29Þ
By increasing further mentioned id value, a job with Emax positions before a job
with Tmax. Thus, the objective function cannot be improved. Furthermore,
according to the previous lemma, the following equation is concluded.
id 6 min fEmax  max EA ; min EC þ T max ; T max  max T C ; Emax g: ð30Þ
Hence, the final result is obtained by considering Eqs. (29) and (30) as follows:
id ¼ minfEmax  max EA ; min EC þ T max ; T max  max T C ; Emax g: ð31Þ
If this id is assigned to a position except than a position of immediately before a
job with Emax. Another tardiness may find as T00 that exists after position of id
inserting. Therefore Tmax  T00 > Emax  max EA. In this state, id at id1 is posi-
tioned before a job with T00 . Furthermore, the remainder of id at position
Emax  max EA  id1 immediately before a job with Emax, in which any tardi-
ness does not exist between a job with Tmax and a job with Emax and after men-
tioned position (i.e. immediately before a job with Emax). For simplifying, since
it has not any effect on the objective function improving, then a position for
inserting id is selected and single id is used instead of multiplying idle insert
in position of immediately before a job with Emax. h

Lemma 9. In the problem n /1/I/ETmax, if tardiness T 0 is existed after an entry


point of id that must be increased before earliness E, the following equation holds.
id 6 minfðT max T 0 Þ; ðE  the maximum earliness before id pointÞg: ð32Þ

Proof. If a tardiness as T 0 is existed, then the following equation is obtained.


ðT max  T 0 Þ < ðE  maximum earliness before id placeÞ; ð33Þ
R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450 1443

where id > Tmax  T 0 . Therefore, it results T 0max > T max and ET 0max > ET max and
consequently id inserting does not improve the objective function, as shown in
Eq. (34).
id 6 T max  T 0 : ð34Þ
Further, the objective function can be improved in a mentioned position
(E  maximum earliness before position id).
id ¼ minfðT max  T 0 Þ; ðE  maximum earliness before id placeÞg: 
ð35Þ

Lemma 10. In the problem n/1/I/ETmax, if a job with Tmax is positioned before a
job with Emax and a job with the maximum earliness except to a job with Emax is
positioned between a job with Tmax and a job with Emax (i.e. the set B), then id is
immediately increased before the first earliness which is bigger than max EA.

Proof. If id increases after it, e.g. in a place immediately before job with
00 00 00
earliness E , then it may be E > E and id at value E  E can insert in a
00
position immediately before E subject to observation of 4-limit point and as
the same value improvement is done in the objective function.
minfðmax EA  E0 Þ; ðT max  T 0 Þg > minfðE  E00 Þ; ðT max  T 0 Þg: ð36Þ
Therefore, the allowable improvement value in the objective function is re-
duced. However, if it does not exist in place immediately before it and id inserts
in a preceding position, it will not cause the objective function rather improve-
ment, because the first earliness is bigger than max EA, which must reduce, is E.
Since, it has not any effect on the objective function improving, a position for
inserting id is selected and single id is used instead of multi-idle inserts. h

Lemma 11. In the problem n/1/I/ETmax, there are several conditions must be
satisfied. If a job with Tmax is positioned before a job with Emax, then the idle
insert between two jobs with Emax and a job with Tmax improves the objective
function, and from allowable point for inserting the idle insert onward only
existing earliness, then increased idle insert must be equal or smaller than the
difference between the minimum of earliness and Tmax and the difference between
the maximum earliness after id point and the maximum earliness before id point.

Proof. If id is not equal or smaller than min Ei + Tmax, i.e. id > min Ei + Tmax.
Thus, the obtained objective function from inserting id will be ET 0max ¼
ET max  id. The obtained maximum tardiness from inserting idle insert will be
T 0max ¼ T max þ ðid  ðmin Ei þ T max ÞÞ. Thus, it can be concluded that
T 0max > T max . Finally, the new objective function follows the equation
ET 0max P ET max . If by increasing Tmax, Emax is reduced, then increasing id
1444 R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450

does not create any negative or positive effect on the objective function. If the
maximum earliness after and before id inserting position are represented with
max Ea and max Eb, respectively then id value must be equal or smaller than
max Ea  max Eb, because if id, which is bigger than max Ea  max Eb, inserts
then Emax cannot reduce further than max Eb. Thus, id in this position must be
equal or smaller than the minimum of max Ea  max Eb and consequently
minimum earliness after position id. h

5. Idle insert algorithm

In this section, the steps of the proposed algorithm are listed as follows:

Step 1. Calculate the earliness and tardiness of each job.


Step 2. If all jobs have earliness, then start from the first job having earliness
and add the idle insert at the minimum amount of the earliness of the
corresponding job, the least amount of the earliness after the job,
and the deviation between the maximum earliness after the job
and the maximum earliness before the job. After adding idle insert
in all positions of the sequence, go to step 15.
Step 3. If all jobs do not have earliness, then find a job with the maximum
earliness (Emax) and a job with maximum tardiness (Tmax). If a job
with Tmax is positioned before a job with Emax, then go to step 4.
Otherwise, go to step 5.
Step 4. If all jobs have tardiness, then the objective function cannot be
improved and go to step 15.
Step 5. Find the maximum earliness except Emax and name it as E 0 . If a job
with E 0 is before a job with Tmax, then add idle insert before a job
with Emax immediately at the minimum amount of a 4-limit point
and then go to step 15. Otherwise, go to step 6.
Step 6. If an earliness, which is greater than max EA, is between a job with
Tmax and a job with Emax, then add the idle insert before a job with
Emax immediately at the minimum amount of a 4-limit point and
then go to step 15. Otherwise, go to step 7.
Step 7. Select the position of the first job having earliness for adding the idle
insert, which is greater than the maximum amount of maximum ear-
liness before this position and max EA. If this position was selected
before, then go to the next position.
Step 8. If tardiness is not existed between a position for adding the idle insert
and a job with Emax, then calculate the deviation between all earli-
ness and Tmax. Then allocate the deviation between the maximum
earliness after adding id position and the maximum earliness before
R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450 1445

id position in set D. Find the minimum member of set D. If this


member is less than zero, then change it to zero and go to step 10.
Otherwise, go to step 9.
Step 9. Calculate the deviation between all tardiness after the position add-
ing idle insert and Tmax and then assign them to set B (i.e. set B con-
tains Tmax  Ti) and finally go to step 12.
Step 10. If the least member of set D is smaller than a 4-limit point, then add
the idle insert at the amount of the least member of set D and go to
step 1. Otherwise, go to step 11.
Step 11. Increase the idle insert at the minimum of a 4-limit point or before a
job with Emax; then go to step 15.
Step 12. If set B is not existed one member less than difference between E (i.e.
E is earliness immediately after the point of idle inserting) and
max EA (i.e. this difference is named as d), then go to step 13. Other-
wise, go to step 14.
Step 13. If d is less than a 4-limit point, then add the idle insert at d and go to
step 1. Otherwise, go to step 11.
Step 14. If the least member of set B is less than a 4-limit point, then add the
idle insert at the least amount of set B and go to step 1. Otherwise, go
to step 11.
Step 15. Stop.

6. Efficiency of the proposed algorithm

To show the efficiency of the idle insert algorithm in a single machine sched-
uling, it is necessary to design problems showing the strength or weakness of
the proposed algorithm. In this section, a set of problems [15] is solved and
the computational results are presented.

6.1. Design of the problem

Many researchers have used random samples for test problems in the field of
job earliness and tardiness. These researchers have considered two significant
factors in these problems. The first factor is tardiness presented by s. This fac-
tor specifies the proportion average of jobs due dates to the sum of processing
times, in single machine problem. Ow and Morton [9], Kim and Yano [16],
Yano and Kim [11] and James and Buchanan [14] have considered the above
two factors and presented the following equation for s.

X
n
d ¼ ð1  sÞ pj : ð37Þ
j¼1
1446 R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450

In the above equation, d is the average due dates of jobs. Processing times and
s are known as a priori and finally d is obtained. The second factor is a range of
due date. According to Zegordi et al. [10], processing times are generated by an
 is obtained by know-
uniform distribution in a range [5, 25]. Mean due date (d)
ing s as shown in Eq. (37). Then, the due dates of jobs are defined by an uni-
form distribution presented as follows:
  R=2Þ; dð1
½dð1  þ R=2Þ: ð38Þ
In the above equation, R is the range of due date and its value is known. Ow
and Morton [9] and Zegordi et al. [10] have considered s = 0.2, 1.6 and R = 0.6,
1.6. These standard values are used by most researches. Researchers use these
values for generating test problems at random.

6.2. Design of experiments

To show the efficiency of idle insert algorithm, four different types of prob-
lems are generated by combining two factors of tardiness and range of due
date. These four types are first with s = 0.2, R = 1.6, second with s = 0.6,
R = 1.6, third with s = 0.2, R = 0.6 and fourth with s = 0.6, R = 0.6. In each
type, problems in sizes 7, 15, 20, 25, 40, 60, 100, 150, 200, 250, 300, 350,
400, 500, 600, 800 and 1000 are considered. Fifteen iterations of each size in
every type are solved. Thus, 255 problems (15 · 7 = 255) for each type and
1020 problems for four types (4 · 255 = 1020) are generated. These problems
are solved by a personal computer, Pentium IV 1.2 GHz Processor.

6.3. Computational results

Tables 3–6 show the computational results for type one, two, three, and
four, respectively. The content of ‘‘time average of idle insert algorithm’’ is
the arithmetic mean of 15 iterations. The arithmetic mean of 15 iterations of
complete computation is presented in column ‘‘time average of complete com-
putation’’. In Table 3 and 5 out of 255 problems obtain a solution in time high-
er than 0.001 s. Other problems obtain a solution in time equal or smaller than
0.001 s by using idle insert algorithm. In Tables 4–6, the number of 8, 3, and 3
problems, respectively, from 255 problems obtain a solution in time higher
than 0.001 s showing the unique strength of idle insert algorithm.
As shown in Table 4, the average of complete numeration of running time is
increasing from 7 until 1000 jobs. For instance in 1000 jobs, 1545.94 s is spent
for complete numeration. As the time of complete numeration increases, the
idle insert algorithm would be more necessary. Thus, as the number of jobs
is more increased, this algorithm presents more self-efficiency in reduction of
computational time. In Tables 5 and 6, fast increment of complete numeration
time is illustrated beside increment of the number of jobs like Tables 3 and 4.
R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450 1447

Table 3
Computational results of the idle insert algorithm in type 1 (s = 0.2, R = 1.6)
Number of jobs Number of problems Time average of Time average of complete
algorithm running (s) computation running (s)
7 15 0.00 0.00
15 15 0.00 0.01
20 15 0.00 0.02
25 15 0.00 0.06
40 15 0.00 0.23
60 15 0.00 0.88
100 15 0.00 3.72
150 15 0.00 13.73
200 15 0.00 28.32
250 15 0.00 56.00
300 15 0.00 105.28
350 15 0.00 167.09
400 15 0.00 228.19
500 15 0.00 425.83
600 15 0.00 739.48
800 15 0.00 1820.34
1000 15 0.00 3352.21
Total 255

Table 4
Computational results of the idle insert algorithm in type 2 (s = 0.6, R = 1.6)
Number of jobs Number of problems Time average of Time average of complete
algorithm running (s) computation running (s)
7 15 0.00 0.00
15 15 0.00 0.00
20 15 0.00 0.00
25 15 0.00 0.02
40 15 0.00 0.10
60 15 0.00 0.34
100 15 0.00 1.65
150 15 0.00 5.50
200 15 0.00 14.08
250 15 0.00 27.80
300 15 0.00 46.64
350 15 0.00 74.26
400 15 0.00 96.76
500 15 0.00 186.58
600 15 0.00 326.34
800 15 0.00 790.16
1000 15 0.00 1545.94
Total 255
1448 R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450

Table 5
Computational results of the idle insert algorithm in type 3 (s = 0.2, R = 0.6)
Number of jobs Number of problems Time average of Time average of complete
algorithm running (s) computation running (s)
7 15 0.00 0.00
15 15 0.00 0.00
20 15 0.00 0.02
25 15 0.00 0.04
40 15 0.00 0.13
60 15 0.00 0.47
100 15 0.00 2.45
150 15 0.00 7.83
200 15 0.00 18.88
250 15 0.00 36.42
300 15 0.00 64.51
350 15 0.00 100.82
400 15 0.00 133.76
500 15 0.00 269.30
600 15 0.00 466.42
800 15 0.00 1124.68
1000 15 0.00 2229.48
Total 255

Table 6
Computational results of the idle insert algorithm in type 4 (s = 0.6, R = 0.6)
Number of jobs Number of problems Time average of Time average of complete
algorithm running (s) computation running (s)
7 15 0.00 0.00
15 15 0.00 0.00
20 15 0.00 0.00
25 15 0.00 0.03
40 15 0.00 0.06
60 15 0.00 0.22
100 15 0.00 1.73
150 15 0.00 3.63
200 15 0.00 8.62
250 15 0.00 16.42
300 15 0.00 30.89
350 15 0.00 48.78
400 15 0.00 60.64
500 15 0.00 124.08
600 15 0.00 206.40
800 15 0.00 496.98
1000 15 0.00 976.19
Total 255
R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450 1449

In the comparison between computational times generated for the four


types, it is concluded that the average of complete numeration time has follow-
ing relation: type 1 > type 3 > type 2 > type 4. In all problems, Lemma 1 is con-
firmed. Therefore, the increase of idle insert improves the objective function in
any problem. In every type (with constant s and R), complete numeration time
is increased when the number of jobs increases. This matter also occurs by
reduction of s. Computational time of complete numeration is also increased
with constant amount of s and increasing R. Thus, computational time of com-
plete numeration has a reverse relation with s and a direct relation with R.
Hence, the problem is simplified with increasing s. This case occurs among
the problems with constant amount of s and reducing R. As the problem is
more complicated, the efficiency of the algorithm is seen more clearly.
d increases when s reduces and upper bound of range of uniform distribu-
tion for due date generation is increased. Hence, the bigger due date is gener-
ated. Thus, current Emax is bigger than the last. Since, the computational time
of complete numeration has a direct relation with value of Emax, then the com-
putational time of complete numeration has a reverse relation with s, because
in each point of sequence for complete numeration, values between zero and
Emax are evaluated. The upper bound of range of uniform distribution for
due date generation is also increased when R increases. According to the men-
tioned illustration about reducing s, the computational time of complete
numeration is increased.

7. Conclusion

In this paper, the objective function is to minimize the sum of maximum ear-
liness and tardiness (ETmax). This objective can be adapted by production sys-
tems and the optimal scheduling is presented for single machine with maximum
earliness and tardiness considering an idle insert algorithm. Taking into ac-
count of the efficiency of the proposed algorithm, solving the scheduling prob-
lem in single machines (n/1/I/ETmax) would be very simplified.
For evaluating the efficiency of the idle insert algorithm, 1020 problems in
four types were designated and then solved. Generally, by increasing the prob-
lem size, the algorithm meets a strong increment in computational time. This
barrier almost exists in large-sized problems. However, the solved problems
in the idle insert algorithm, the mentioned barrier is not observed. As seen in
all types of problems generated for evaluating the efficiency of the idle insert
algorithm, the problem size of 150 jobs was solved in acceptable time. How-
ever, this time is only for increasing the idle insert in one sequence. For increas-
ing the idle insert in a number of feasible sequences it is needed to spend more
time.
1450 R. Tavakkoli-Moghaddam et al. / Appl. Math. Comput. 167 (2005) 1430–1450

Other applications of this objective function ETmax is in other types of


sequencing problems such as job shop, flow shop, and so forth.

References

[1] K.R. Baker, Introduction to Sequencing and Scheduling, John Wiley, NY, 1974.
[2] S. French, Sequencing and Scheduling: An Introduction to the Mathematics of the Job-Shop,
Ellis Horwood Limited, Chichester, 1986.
[3] M. Ben-daya, M. Al-fawzan, A simulated annealing approach for the one-machine mean
tardiness scheduling problem, European Journal of Operational Research 93 (1996) 61–67.
[4] H. Emmons, One-machine sequencing to minimize certain function of job tardiness, Operation
Research 17 (1969) 605–612.
[5] T. Sen, B.N. Borah, On the single-machine scheduling problem with tardiness penalties,
Journal of the Operational Research Society 42 (1991) 695–702.
[6] J.E. Holsenback, R.M. Russell, A heuristic algorithm for sequencing on one machine to
minimize total tardiness, Journal of the Operational Research Society 43 (1992) 53–62.
[7] S.S. Panwalker, M.L. Smith, C.P. Koulamas, A heuristic for the single machine tardiness
problem, European Journal of Operational Research Society 70 (1993) 304–310.
[8] A. Islam, M. Oksioglu, A tabu search approach for the single machine mean tardiness
problem, Journal of the Operational Research Society 48 (1997) 751–755.
[9] P.S. Ow, T.E. Morton, The single machine early/tardy problem, Management Science 35
(1989) 177–191.
[10] S.H. Zegordi, K. Itoh, T. Enkawa, A knowledgeable simulated annealing scheme for the early/
tardy flow shop scheduling problem, International Journal of Production Research 33 (1995)
1449–1466.
[11] C.A. Yano, Y.D. Kim, Algorithms for a class of single-machine weighted tardiness and
earliness problems, European Journal of Operational Research 52 (1991) 167–175.
[12] W. Szwarc, S.K. Mukhopadhyay, Optimal timing schedules in earliness–tardiness single
machine sequencing, Naval Research Logistics 42 (1995) 1109–1114.
[13] P. Dileepan, Common due date scheduling problem with separate earliness and tardiness
penalties, Computer and Operational Research 20 (1993) 179–184.
[14] R.J.W. James, J.T. Buchanan, A neighborhood scheme with a compressed solution space for
the early/tardy scheduling problem, European Journal of Operational Research 102 (1997)
513–527.
[15] M.R. Amin-Nayeri, G. Moslehi, Optimal algorithm for single machine sequencing to minimize
early/tardy cost, Esteghlal, Isfahan University of Technology 1 (2000) 35–48.
[16] Y.D. Kim, C.A. Yano, Minimizing mean tardiness and earliness in single-machine scheduling
problems with unequal due date, Naval Research Logistics 41 (1994) 913–933.

You might also like