Beruflich Dokumente
Kultur Dokumente
com
Discrete Optimization
Antai College of Economics and Management, Shanghai Jiao Tong University, Shanghai 200052, China
b
College of Management, Shenzhen University, Shenzhen 518060, China
c
School of Business, The University of Hong Kong, Pokfulam Road, Hong Kong
Received 16 May 2006; accepted 22 January 2008
Available online 1 February 2008
Abstract
Motivated by just-in-time manufacturing, we consider a single machine scheduling problem with dual criteria, i.e., the minimization of
the total weighted earliness subject to minimum number of tardy jobs. We discuss several dominance properties of optimal solutions. We
then develop a heuristic algorithm with time complexity O(n3) and a branch and bound algorithm to solve the problem. The computational experiments show that the heuristic algorithm is eective in terms of solution quality in many instances while the branch and
bound algorithm is ecient for medium-size problems.
2008 Elsevier B.V. All rights reserved.
Keywords: Scheduling; Single machine; Dual criteria; Earliness; Number of tardy jobs
1. Introduction
Scheduling models with both earliness and tardiness
costs are consistent with the philosophy of just-in-time
(JIT) manufacturing, which emphasizes producing goods
only when they are needed. In these scheduling models,
jobs are scheduled to complete as close as possible to their
due dates. A large body of literature on scheduling models
with earliness and tardiness has appeared in the last two
decades; see Baker and Scudder (1990) for an extensive
review in 1990. However, most of the research focuses on
JIT scheduling models with objective of minimizing total
(weighted) costs of early and tardy jobs. For example,
Sridharan and Zhou (1996) considered a single machine
total weighted earliness and tardiness scheduling problem
and developed a solution procedure based on decision theory; Cai and Zhou (1999) studied a parallel machine sto*
Corresponding author. Address: Antai College of Economics and
Management, Shanghai Jiao Tong University, Shanghai 200052, China.
Tel.: +86 21 52301045; fax: +86 21 62932577.
E-mail address: ghwan@sjtu.edu.cn (G. Wan).
0377-2217/$ - see front matter 2008 Elsevier B.V. All rights reserved.
doi:10.1016/j.ejor.2008.01.029
90
G. Wan, B.P.-C. Yen / European Journal of Operational Research 195 (2009) 8997
Subject to :
U j p U min
and
p 2 P;
G. Wan, B.P.-C. Yen / European Journal of Operational Research 195 (2009) 8997
91
and
and
ai pj R < aj pi d 0j d i
al
l2Bfi;jg
92
G. Wan, B.P.-C. Yen / European Journal of Operational Research 195 (2009) 8997
pj
Case 1:
pi
di
pi
min (dj, s)
pi
min(dj, s) di
pj
di
pj
min (dj, s)
min(dj, s) d
i
Fig. 1. The last two adjacent jobs in a block: (a) job j precedes job i, (b)
job i precedes job j.
Case 2:
Remark 3. Propositions 3 and 4 specify two sucient conditions on how to arrange two adjacent jobs within a block,
for the non-last two jobs and the last two jobs, respectively,
in an optimal schedule. They are the generalization of the
WLPT rule.
Now we consider a condition for interchanging a tardy
job and a non-tardy job.
0
pi > pj
X
and
X
pj
di
min(dj, s)
job interchange, thus by inequality (5), interchanging the two jobs may decrease the total cost
because the savings are greater than the cost.
Therefore, in an optimal schedule, job j should
be scheduled in the original position of job i in
block B, and job i is scheduled as a tardy job.
Case 2: Similar to the proof in Case 1.
By Cases 1 and 2, the proposition holds. h
Remark 4. This proposition indicates two sucient conditions for interchanging a non-tardy job (in a block) and a
tardy job. It eectively reduced the earliness cost as
observed in the computational experiments.
3. The algorithms
or
Case 2:
d i 6 minfd j ; sg
di min(dj, s)
l2B0
> aj d j minfd j ; sg
pi
and
pi > pj minfd j ; sg d i
l2B0
G. Wan, B.P.-C. Yen / European Journal of Operational Research 195 (2009) 8997
93
P
(3) Large due dates: d j P nj1 pj , for j = 1, 2, . . . , n.
In this case, it is easy to see that there is no tardy job.
Thus the schedule by HA is optimal by Lemma 3 of
Chand and Schneeberger (1988).
(4) pi/ai P pj/aj implies pi P pj and dj P di, for
j = 1, 2, . . . , n.
In this case, the non-tardy jobs in the same block are
scheduled by WLPT, and tardy jobs cannot be interchanged with non-tardy jobs (see Proposition 5). Thus by
Theorem 2 in Chand and Schneeberger (1988), HA nds
the optimal solutions.
Hence in all these cases, we could obtain the optimal
solutions for the problems by using the heuristic HA.
3.2. A branch and bound algorithm
This subsection presents a branch and bound algorithm
based on the properties developed in the last section to
solve problem (P) optimally. The basic elements of the
branch and bound algorithm are described as follows:
Search strategy: In the branch and bound algorithm,
jobs are scheduled backwards by depth rst search, and
an incumbent value is obtained by heuristic HA.
Node representation: Let r be the sequence of scheduled
jobs (in increasing order of due dates, obtained backwards)
and r0 be the set of unscheduled jobs, respectively. Let s(r)
be the starting time of the rst job in r. Initially (when
r = ;), s(r) = d p, where arg maxi2r0 fd i g (break ties
with smallest processing time). Now in the branch and
bound tree, let r also represent a node and f(r) be the lower
bound of this node, which can be obtained by estimation
(described below). Assume the job to be scheduled next is
job k. Then job k is scheduled to start at time
min{s(r), dk} pk, and r and r0 are updated as r [ {k}
and r0 {k}, respectively. Continue this procedure until
there are m scheduled jobs (where m is the number of
non-tardy jobs).
Lower bound estimation: In the branch and bound algorithm, the following method is used to estimate the lower
bound.
Dene f(r [ {k}) = f(r) + g0 as a lower bound, where
f(r) is the lower bound of node r, and g0 is obtained by calculating the earliness cost(s) of the unscheduled jobs whose
due dates are greater than or equal to s(r). Note that
f(r) = 0 if r = ;.
Dominance conditions: In order to solve problems with
a reasonable number of jobs, the following conditions
for pruning the branches or nodes in the search tree are
used.
Condition 1. Schedule the unscheduled job set r0 using the
MooreHodgson algorithm and assume the non-tardy job
set is E. LetPjob k be the job to be scheduled next. If
sr [ fkg < j2E pj , then scheduling job k next (in the rst
position of the partial schedule) cannot lead to an optimal
schedule.
94
G. Wan, B.P.-C. Yen / European Journal of Operational Research 195 (2009) 8997
LB=1
J5
J1
J3
J3
J1
J2
LB=4
LB=0
J4
The following two conditions (Conditions 2 and 3) follow from Propositions 3 and 4.
Condition 2. Suppose job j is the rst job in r. If dj 6 dk,
and pj/aj 6 pk/ak, then scheduling job k next (in the rst
position of the partial schedule) cannot lead to an optimal
schedule.
J4
LB=2
J2
5
Optimal
Table 2
Job data in Example 2
pj
dj
aj
4
4
1
3
5
2
10
10
1
5
20
2
HA. Then consider job 4. However, job 4 cannot be scheduled at this position since the sum of processing times of any
two other jobs is greater than 12 6 = 6 (by Condition 1).
Now consider job 5, then we reach node 2, whose total cost
is not greater than the lower bound. Next, consider job 4,
then we reach node 3, whose total cost is less than the lower
bound 1. We continue this procedure until reach node 9,
which gives an optimal solution to the problem.
On the other hand, by the MooreHodgson algorithm,
we know r0 = {2, 3} and jr0 j = 2. Now by heuristic HA,
we
P can obtain a schedule {1(2), 4(6), 5(15)}{2, 3} with
j aj E j 0, which is an optimal schedule in this example.
pj
dj
aj
3
6
1
7
8
1
5
10
1
6
12
1
10
25
1
G. Wan, B.P.-C. Yen / European Journal of Operational Research 195 (2009) 8997
Table 4
The performance of the branch and bound algorithm (n = 20)
Table 3
The performance of the heuristic algorithm (n = 20)
(EF, RDD)
Average (%)
Maximum (%)
# of optimal solutions
(0.1, 0.8)
(0.1, 1.0)
(0.1, 1.2)
(0.1, 1.4)
(0.1, 1.6)
(0.1, 1.8)
6.2
9.3
5.5
4.7
5.2
2.8
20.4
27
15.6
16.3
18.9
9.8
2
3
2
2
3
4
(0.2, 0.8)
(0.2, 1.0)
(0.2, 1.2)
(0.2, 1.4)
(0.2, 1.6)
9.2
2.3
4.5
3.2
0.6
15.7
12.3
16.4
15.5
3.4
2
6
5
4
5
(0.3,0.8)
(0.3,1.0)
(0.3,1.2)
(0.3,1.4)
4.2
4.1
3.9
5.8
22.6
18.6
32.8
25.1
7
5
9
4
(0.4,0.8)
(0.4,1.0)
(0.4,1.2)
9.4
3.9
4.9
30.3
16.2
17.4
5
6
4
(0.5,0.8)
(0.5,1.0)
17.7
8.3
37.9
21.6
3
4
Overall
5.785
19.69
(42.5%)
tributed in U[1, 10] and the weights are randomly from the
set {1, 2, 4}. Problem hardness depends on two parameters: EF (since we focus on the earliness penalties here,
we call it earliness factor, similar to the tardiness factor
as in Potts and van Wassenhove, 1985) and RDD (range
of due date). EF takes value from set {0.1, 0.2, 0.3, 0.4,
0.5} while RDD takes value from set {0.8, 1.0, 1.2, 1.4,
1.6, 1.8}. For a particular pair (EF, RDD), the due dates
are integers uniformly distributed in [(1 EF RDD/
2) * MS, (1 EF + RDD/2) * MS], where MS is the total
processing time of all the jobs. Combinations of EF and
RDD values are selected such that the due dates are nonnegative (similar to those in Kim and Yano, 1994).
Experiment 1. To test heuristic HA in terms of the quality
of the solutions with respect to (EF, RDD).
The average and the maximal deviations of objective
values over the optimal solutions (which can be obtained
by the branch and bound algorithm) are used as the
performance measure. For problem instance k, dene:
Performancek
95
HAk Optimumk
100%;
Optimumk
Problem
instances
(EF, RDD)
B&B with
incumbent
value (Average:
seconds)
B&B with
dominance
conditions
(Average:
seconds)
Maximum
(seconds)
(0.1, 0.8)
(0.1, 1.0)
(0.1, 1.2)
(0.1, 1.4)
(0.1, 1.6)
(0.1, 1.8)
1083.6
437.9
77.7
15.6
9.5
8.9
581.8
208.9
39.5
7.8
5.4
3.97
438.4
147.4
27.7
4.3
2.4
2.2
2423.9
673.8
179.8
9.2
10.4
5
(0.2, 0.8)
(0.2, 1.0)
(0.2, 1.2)
(0.2, 1.4)
(0.2, 1.6)
1254.9
86.2
49.7
5.8
4.5
477.9
33
8.8
1.9
2.8
353.7
24.5
7.3
0.7
1.3
2113.6
194.4
60.4
5.3
2.2
(0.3, 0.8)
(0.3, 1.0)
(0.3, 1.2)
(0.3, 1.4)
3.9
14.7
13.9
6.4
2.1
6.7
6.2
4.1
1.6
4.7
4.8
2.7
2.5
18.6
21.7
4.2
(0.4,0.8)
(0.4,1.0)
(0.4,1.2)
20.6
1.4
12.9
11.3
0.8
8.6
6.9
0.4
5.9
43.9
1.8
32.3
(0.5,0.8)
(0.5,1.0)
14.1
6.9
5.5
4.7
6.3
2.8
47.4
5.2
Overall
156.5
71.1
52.3
292.78
and
Maximum max fPerformancek g:
k1;...;L
96
G. Wan, B.P.-C. Yen / European Journal of Operational Research 195 (2009) 8997
Table 5
The computation time of the branch and bound algorithm
5. Conclusions
N (number of
jobs)
Average
(seconds)
Minimum
(seconds)
Maximal
(seconds)
15
20
25
26
27
28
29
30
17.8
84.3
189.4
234.7
321.9
413.5
757.3
997.8
0.4
1.3
3.7
3.2
5.4
6.9
6.3
9.7
443.8
1798.7
4074.2
5991.3
8215.2
10173.9
13872.1
17410.3
Experiment 3. To evaluate the branch and bound algorithm BBA in terms of computation time with respect to
the number of jobs.
The numbers of jobs were set to be 15, 20, 25, 26, 27, 28,
29, and 30. The number of randomly generated problem
instances was 30 for each case. All the parameters,
including processing times, due dates and weights, were
generated randomly. The results are summarized in Table
5, which shows the average, the minimum and the
maximum running time in the experiment.
The computational results indicate the branch and
bound algorithm can be used preferably for problems with
less than 30 jobs (note that it almost doubled the job size of
the algorithm in Chand and Schneeberger, 1988), while the
maximal computational time may be relatively long and
the algorithm may not be practical when the number of
jobs exceeds 30.
Acknowledgements
The authors thank two anonymous referees for their
constructive comments, which help to improve presentation of the paper substantially. This research is supported
in part by NSF of China (70372058) and Guangdong
NSF (031808).
References
Azizoglu, M., Kondakci, S., Koksalan, M., 2003a. Single machine
scheduling with maximum earliness and number tardy. Computers
and Industrial Engineering 45, 257268.
Azizoglu, M., Koksalan, M., Koksalan, S.K., 2003b. Scheduling to
minimize maximum earliness and number of tardy jobs where machine
idle time is allowed. Journal of the Operational Research Society 54,
661664.
Baker, K.R., Scudder, G.D., 1990. Sequencing with earliness and tardiness
penalties: A review. Operations Research 38, 2236.
Cai, X., Zhou, S., 1999. Stochastic scheduling on parallel machines subject
to random breakdowns to minimize expected costs for earliness and
tardy jobs. Operations Research 47, 422437.
Chand, S., Schneeberger, H., 1988. Single machine scheduling to minimize
weighted earliness subject to no tardy jobs. European Journal of
Operations Research 34, 221230.
Chen, C.L., Buln, R.L., 1993. Complexity of single machine multicriteria scheduling problems. European Journal of Operations
Research 70, 115125.
Chen, T., Qi, X., Tu, F., 1997. Single machine scheduling to minimize
weighted earliness subject to maximum tardiness. Computers and
Operations Research 24, 147152.
Duuaa, S.O., Raouf, A., Ben-Daya, M., Makki, M., 1997. One machine
scheduling to minimize mean tardiness with minimum number tardy.
Production Planning and Control 8, 226230.
Guner, E., Erol, S., Tani, K., 1998. One machine scheduling to minimize
the maximum earliness with minimum number of tardy jobs. International Journal of Production Economics 55, 213219.
Hino, C.M., Ronconi, D.P., Mendes, A.B., 2005. Minimizing earliness
and tardiness penalties in a single-machine problem with a common
due date. European Journal of Operational Research 160,
190201.
Karasakal, E.K., Koksalan, M., 2000. A simulated annealing approach to
bicriteria scheduling problems on a single machine. Journal of
Heuristics 6, 311327.
Kim, Y.D., Yano, C.A., 1994. Minimizing mean tardiness and earliness in
single-machine scheduling problems with unequal due dates. Naval
Research Logistics 41, 913933.
G. Wan, B.P.-C. Yen / European Journal of Operational Research 195 (2009) 8997
Koksalan, M., Keha, A.B., 2003. Using genetic algorithms for singlemachine bicriteria scheduling problems. European Journal of Operational Research 145, 543556.
Lee, C.Y., Vairaktarakis, G.L., 1993. Complexity of single machine
hierarchical scheduling. In: Pardalos, P.M. (Ed.), Complexity in
Numerical Optimization. World Scientic, Singapore, pp. 269298.
Mazzini, R., Armentano, V.A., 2001. A heuristic for single machine
scheduling with early and tardy costs. European Journal of Operational Research 128, 129146.
Nagar, A., Haddock, J., Heragu, S., 1995. Multiple and bicriteria
scheduling: A literature survey. European Journal of Operational
Research 81, 88104.
Pathumnakul, S., Egbelu, P.J., 2005. Algorithm for minimizing weighted
earliness penalty in single-machine problem. European Journal of
Operational Research 161, 780796.
Potts, C.N., van Wassenhove, L.N., 1985. A branch and bound algorithm for
the total weighted tardiness problem. Operations Research 33, 363377.
97