† *
,
*
(1999 10 25 , 2000 4 4 )
Optimal Scheduling of Non-Sequential Multipurpose Batch Processes with Various Intermediate Storage Policies
Sang Beom Kim, Ho-Kyung Lee, In-Beum Lee† and Euy Soo Lee*
Automation Research Center, Dept. of Chemical Engineering, POSTECH,
*Department of Chemical Engineering, Dongguk University, (Received 25 October 1999; accepted 4 April 2000)
! "# $ %&
'(# ) . *+ ,-. /0 1 )* ) ,23 2 4 5 678 9: ) ;< => . 8, ? @AB# CD EF# GHI 1 )* ) ,2.
# JHK 1 ? )* L0 4 2 MN "KOP . 4 $ QR ST2 UVW
XK 1 ? YVZ ! B[\ ]^ B# )*\ L0 _`T2 11 ab c W d
%. 0 )e f# gK h ab igj d%4 k?Bl. '(m no%pqrsS(Mixed Integer Linear Programming, MILP) qt2 abuvTw, x 3Z y) gzD )j '( Eg{# |}.
Abstract−In this paper, we present mathematical models for optimal scheduling of non-sequential multipurpose batch pro- cesses under various intermediate storage policies. Compared with multiproduct processes, in non-sequential multipurpose batch processes, the production routes of products may be different from one another and may be backward direction. Conse- quently, in order to reduce idle time of units and to raise the efficiency of process, we have to make operation sequences of products in each unit differently by considering processing route of each product with a given intermediate storage policy. The basic concept of our approach for these problems is as follows. Firstly, we represented the starting and finishing time of a task in each unit with two coordinates for a given storage policy. One is based on products, and the other is based on sequences.
Then, we matched the variables used in the two coordinates into one with binary variables and logical constraints. We formu- lated these problems as MILP(Mixed Integer Linear Programming) models and apply them to three examples to show the effectiveness of the model.
Key words: Scheduling, Multipurpose Batch Process, Intermediate Storage Policies, MILP
†E-mail: iblee@postech.ac.kr
1.
!"# $ % &' () * + !". ,-, $. / 01
23+, 1 45 67 8# 9:' ;<
=>? =# @A B CD EF GH="[6].
IJKLM N OP "Q
R "SK LM T !LU, "SK
( VM OP " AWK(sequential) R XAWK (non-sequential) LM T !"[11].
"Q # YZ VMD I=7 [C , ( \7 8 ]# Q^_ A ` Ya b".
@A B "# e Bf YZ I=' K/\# = - c3 A B=# e g". hi 10jk
"Q 4K @AB C# l 0Tmn
opq 0T\9r sLU, , G t uq 1 6
7 8 /=# Gk v ;< Nw Ox ( @
yzk {=+, 4Q@yzk(makespan) 4| }#
@ A B C "~ C l \"[3-5, 10].
X "SK "Q R# 3 ( "
VMD M " 7 [C , ( \7 8 ]#
WK. "Q R# 3 XAW # N
t !". ' "Q # +=h t \# N LM . k @ 6
7 8# ( R Gk v ;< Nw +
Q "# @ A B CD =+ 9
h' ". M "SK @ A B C#
, GH1R H t T=+ "Q X 5KLM 0T D l 9hh ¡="D 4¢ n9 £¤ 6¥ OP "SK
@yzk {R I{¦ C "~ C l
\"[1-2, 7-9].
Pinto_ Grossmann[9] "SK I{¦ C 0§
k ¨(continuous time representation) / ©¢ªLM« 7
k ¨ Dh# { k { ¬=+m =
". MoonR Hrymak[7] ` "SK 4Q @yzk 4
|}# ®7 I{¦ C 8 MILP Y¯ ° !". ,
-, n IJK. "SK " 7"# "Q R
=' ( N I AWK ± 5LM
² ³ IJK. XAWK " h# ´".
BokR Park[1], Fuchino µ[2], ParkR Jung[8] ¶ -D
N =# IJK. XAW "SK
@yzk {R 4K I{¦ C " h±, Gk v
;< Nw +=h ´]-, UIS(Unlimited Intermediate Storage) Nw D=".
_ b 7 "SK 5 0Tn "Q
R =' ( N I AWK ± 5
LM ²]-[7, 9], XAWK " "+ hPt UIS Nw- vD ·# VF± +² ³[1-2, 8], "Q _ b
"¸ Gk v ;< Nw + 4K @A B C#
¹ºh " 9»° ·".
¼ C SK 7 "Q ½GKLM 0T\9» "
¸ Gk v ;< Nw Ox IJK. XAW "SK
4K @ A B 8 ¾K Y¯ ¿=+, Y¯
/ À9» 4Q@yzk 4| Á !# @
A B=# e". 8 5 LM ( V MD M " ³ ÂP AWK , N ªÃ =#
XAW "SK ÄM "~".
_ 5 Å, Y¯É H (Q Ê Ë 7Ìn
ÍÎ=tÏ =Ð". 3 # Gk v ;< Nw G UIS, ZW(Zero Wait), NIS(No Intermediate Storage), FIS(Finite Intermediate Storage) N w 5 4K @ A B !# ÑÒÓÔ{¦ Y¯
=+, 4 # Y¯ 3¿ Ä K/, , BR Õª LM« Y¯ /1 .".
2.
2-1.
¼ C # Ö@ ®{ =- ± !# XAW "SK
"~". "Q R "SK
@A B C W X×=7 8 Fig. 1R b 2Ç
tÏ =m. Fig. 1 # °_ b Ø Dh A, B, C# ((
VMD " U, AD 1→2→3 ]# AWK
Ù#Ú J B# 3→2→1 A N DhU,
C# 1 ]Û 3LM k Å " 2 ]#
D»".
"Q # YZ VMD I=7 [C
/ &' á9h' ". Fig. 2(a) # Fig. 1 -âi
Table 1R b @ k DhU UIS NwLM ;<"+ [, Y
→B→C)M c3\# VF ãä (Gantt) Wä -âåLU, Fig. 2(b) # UIS Nw 4Q@yz
k 4. VF ãä Wä -âå".
év c3=È k &' 9 1
\# e ç !". _ b XAW "SK
Fig. 1. Illustrative example.
Table 1. Data for illustrative example Unit
Product
Unit 1 Unit 2 Unit 3
Processing times
A 3 8 4
B 7 5 2
C 6 4 7
Fig. 2. (a) Schedule for the same production sequence(A→→→→B→→→C) in all→ units, and (b) Optimal schedule for Fig. 1 under UIS policy.
39 1 2001 2
/ 45M 67 8# ( VM_ Gk
' B À9± ".
2-2.
¼ C " +m =# C =È "ëR b". NDh
M¿ / "+ [, Fig. 1R b
5 (( =7 8 ]# Q^_ A, (
" c3 Dì Q^)_ Table 1R b @ k Úí, ,3+ /\# v ;<Nw(UIS, ZW, NIS, FIS) À 9hÈ, SKª. 4Q@yzk 4|Á !# (
î [ =# îk(transfer time)R c3
Æï H\# pXk(setup time) @ k ªÃ ðªñ +
=".
2-3.
c3 A(sequence) -âò". Y¯É H ½ÒR Ê, ( Q 7Ì =È "ëR b".
(a) ½Ò
I : c3 ½Ò
J : / ½Ò
K :
Ij : j c3\# ½Ò Ji : i c3=#Ú /\# ½Ò Kj :
Ò(|Ij|=|Kj|)
(b) H Ê Ë E¿Ê
Xijk : iD j kóôM c3\È 1 -õh VF# 0 SXikj' : iD j § v kóôM v\È 1 -õh# 0 tij : j i @ k
TSij : iD j c3ö [ @ Ö k TFij : iD j c3ö [ @ yz k TSUkj: j kóôM c3\# @ Ö k TFUkj: j kóôM c3\# @ yz k LFT : D -G ÷-# @ yz k(Latest Finishing Time) EST : D év Ö=# @ Ö k(Earliest Starting Time)
3. ! "#
| }# @ A B C ¾K Y¯ w=+m ". Ü 2Ǽ °_ b XAW "SK K. @ 8
a " ' ". 8 / ©¢ N Pinto_ Grossmann [9] w N ¢] eLM, év À9» Gk v ;<N w OP ( 9h# Ö@ @ yzk R
7pLM (( ¨ Å, » Ê / a ¨ /
Ên G £{ !# en M 0B(matching)}' ".
év YZ Gk v ;< Nw ùKLM K/\# ú
û ü(assignment constraints) 2ÇtÏ =m.
/\# j c3\# ½Ò IjP+ [,
½Ò §=# i# j ú c3 A KjG 9>
(1)
Z Dh ± c3 !LdM "ëR b û ü
1=' ".
(2)
(1)R (2) "Q ú üR X× [ (
c3\# Q^_ D " 7 [C T=7 8
Ox c3 A -â7 8 Ê Xikj jD ' ".
( v ;<Nw 5 @yzk _
7pLM ¨ Å 0B}# N 2ÇtÏ =m.
3-1. UIS
UIS Nw VF# v / ·# VFM ®{
@ ÷i "ë ®{ M 9D+ [ "ë ® { D "x c3=+ !# GP+ =¶Pt ¨ ®{
@G. vM + "ë @ Ý ! 7 [C , SLM . h\# k I !". UIS Nw 5 @ ÖR yzk R c3 A 7pLM ¨=È "
ëR b".
[ @ Ö kR yz k # "ëR b £{D 1".
(3)
(4)
(3) (2) Ö@ A k ú\#
i -õh n “0” \dM Bf kóôM c3\#
@k± -â' ". (4)# ÓÝ Ö@
yz\9± "ë Ö@ Ýö !ë -âò".
ó 7pLM @ ÖR yzk ¨ m.
(5) (6)
(5)# ®{ j i @ Ö kR yzk £{
-âU, (6) (j_)i# i VM j®{ "ë ®
@ Ö !ë -âò".
(3)-(6) ù _ 7pLM ¨ @k Ê
[
(7) (8)
(7)R (8) iD j kóôM c3\# VF ± êµ
¸Ê “0” \È 7pLM ¨ @ kR 7p LM ¨ @ k I}+ ,h VF # ¸Ê
r !# q UM . y|\9 û gh
ÖR yzk µLM ¨\9 !7 [C (7)R (8) Ó
K. e9 G 9> =-± /=È =# !".
Xikj
k
∑
∈Kj =1 j∀, i∈IjXikj
k
∑
∈Ij =1 j∀, k∈KjTFUkj TSUkj tijXikj
i
∑
∈Ij j∀, k∈Kj+
=
TSUkj≥TFU(k 1– )j ∀, k∈Kj tijXikj
i
∑
∈IjTFij=TSij+tij i∀,j∈Ji TSi j( )−i≥TFij ∀, j∈Ji
U 1 X( – ikj)
– ≤TSij–TSUkj≤U 1 X( – ikj) i∀, j∈Ji, k∈Kj U 1 X( – ikj)
– ≤TFij–TFUkj≤U 1 X( – ikj) i∀, j∈Ji, k∈Kj
SKª 4Q@yzk 4|P+ [ UIS Nw 5
j#
j D -G Ý\# @ -âU, k1 D év Ý
\# @ -âò".
SKª Min MS=LFT−EST
ûü j
ûü j
(1)-(8) ûü
8 Y¯ SKª_ ûü Ya ÓÔU, 0§ Ê_
» Ê ªÃ /=# ÑÒÓÔ{¦ CD ".
3-2. ZW
ZW Nw UIS NwR# 3 ( Gk vD ·+,
®{ @ ÷i h · °M "ë
µLM ¨\ 7p ¨ (6) "ëR b µ ü LM °' ".
(9) Ü UIS Nw 5 Y¯ (6) (9)M 5=È ZW Nw LM ;<\# "SK 4K@A B Y¯ ".
3-3. NIS
NIS Nw VF# ( ®{ Gk v v
D ·7 [C , ¨ ®{ @ ÷¶Pt "ë ®{ D
@G. VF # "ë ®{M 9Dh ¡=+ ¨ ®{ Gk
57=# NLM ;<". OP, UIS- ZW Nw R# 3 ( " "ë ®{ @ +=
¨ ®{ Ö@ Qz=+ "ë ®{ @LM 9 e.h,
ÂÈ ¨ ®{ 57 e.h B± ". 8 û
ü 3=È "ëR b".
UIS- ZW # µ (3)R (5)# NIS b VF ¨ ®{
@ Qz\¶Pt 57=# k !7 [C "ëR b
êµLM °' ".
(10)
(11)
`, vD ·7 [C @ yzkR "ë
# êµ (6) ZW N (9)c µ ".
( @ ¨ ®{ @R "ë ®{
@ X×=# û ü -âÈ "ëR b".
(12)
(12) ( j_)iD g=# ®{# "Q R 3 Y Z " M " 7 [C iD °È (j_)it OP °' ".
(12)# iD (j_)i
j @ yz k "ë ®{ (j_)i (k−1) óôM c3\# @ yz k Å9 ª -âò".
(12) VFt “1”. VF ± < g' \+, -õh
VF# q UM . y|\9 < gh '
".
UIS Nw 5 Y¯ (3), (5)-(6) (9)-(11)M °o+,
(12) ¶=È NIS Nw 5 4K@A B Y¯ ".
3-4. FIS FIS
j § Gk v j' , ®{ c3\# ±
v !"+ D". OP, v ðª j VF#
, c3\+ i "ë c3 ®{ M
9D+ [ "ë ®{ D X9 !"È °M "ë M 9 !h±, "ë D @ =+ !"È , / Dì [ºh Gk v D/ ê OP Gk vM
v=]-, ,h ¡ VF# ¨ 57± ". -õh G k vD ·# VF# Ü NIS NR I=' @"
+ D".
XAW "SK FIS NLM @\# VF vD !#
j iD @ yzö [ I9 !# 4Dh 3
=È "ëR b".
•"ë j+1 X9!+, vt X9!# VF
•"ë j+1 X9!+, v# W!# VF
•"ë j+1 @G+, v# X9!# VF
•"ë j+1 @G+, vt W!# VF
8 4Dh VFG óô_ a óô VF ®{ j @ yz
v ]h + °M "ë ®{ M 9 ! +, Ø óô VF# Gk v v=' \U, óô VF
# ¨ ®{ 57=+ !"D "ë ®{ - v G év X
# !LM 9D' ".
FIS Nw 5 @ yz ¨ [ "Q R "
SK D W$ "Q # YZ
I=7 [C Ó"Ó#(First Input First Output)
3M ;<\# a óô_ b ø5 I9-h #". "
$=È Gk vD W !"È J% "ë ®{ (j_)it
@ GdM ¨ j @ ÷È ®Aq v / D ì ê± +=È ". X "SK VF# j
[C a óô_ b !". OP, v ðª
®{ @ yz k 8 4Dh Ya K/ Dì 3K û üLM ¨± ".
év j § v j'P [ v Gk v
ê B=# Ê SXikj' 5 û ü "ëR b".
(13)
(13) v ðª j kóôM c3D ÷i i#
v j' vö t !+ & t !ë -âU, vD
$ =- ' v ·ë g=7t ".
v ðª j c3D ÷i v j'_ "
ë (j_)i / ê OP ¨ @ ÷( !#h 57 e.h ê B=# û ü "ëR b".
(14)
(15)
(16) LFT TFU
kjj
≥ EST TSUk
1j
≤
TSi j
( )−i=TFij ∀, j∈Ji
TFUkj TSUkj tijXikj
i
∑
∈Ij j∀, k∈Kj≥ +
TFij≥TSij+tij ∀, j∈Ji
TFij TFU(k 1– )j
( )−i U 1 Xik j
( )−i
( – )
– ∀j, j∈Ji, k∈Kj 1+
≥
Xik j
( )−i
Xikj≥SXikj′ i∈Ij, k∈Kj
TFij≥TFU(k 1– )j′–U 1 SX( – ikj′) i∈ j, kI∈Kj
TFij′ TFU(k′–1)( )j−i U 2 S
k
∑
∈Kj Xikj′– –Xij′( )j−i
i∈Ij′,k′∈K( )j−i
≥ –
U 1 S
k
∑
∈Kj′ Xikj′ –
TSij′–TFij U 1 S
k
∑
∈Kj′ Xikj′ –
≤
≤ i∈Ij′
–
39 1 2001 2
(17)
(14)# ®{ j c3D ÷i Gk v v=+
=È év v\9 ! v ÷- vD X9 !9 ª
g=U, (15)# Gk v v\9 ! "ë ®{
M 9D+ [ "ë ®{ ÓÝ Ö@ ÷- ª g
". (16) j c3D ÷i iD v v\# V
}7 8 û ü". (17) ®{ j c3 v
]h + °M "ë ®{M 9 VF "ë ®{
ÓÝ Ö@ ÷- D X9 !9ª D3)".
Gk v v\# VF # (14)-(16) û *LU, (17) û gh ' ". JÈ, v v\h +
°M "ë ®{M 9D# VF # (14)-(16) y|\9
< gh + (17)± û *' ".
VF # vD ·# "x nR I=' "ë
D/ ê± +=# VFD \U, ±I YZ v /
=h ' \È Bf NIS N VF_ I BR ' ".
_ b "Q # YZ (j_)i®{D b7 [C ¨ ®{ j @ ÷È ®Aq v / Dì ê± +=È \h±, "SK # ( " (j_)i
®{D M " 7 [C v_ "ë (j_)i D/ ê
+ "# $ WD !".
v ðª=h # -õh ®{n 5# NIS Nw /\# ûü ,5M /=È ".
4. $ %
,9 , BR ". MILP C -#Ú / solver#
GAMS/OSLU, IBM RS/6000(Y¯ 350) &./0 /=".
4-1. 1
¿M 9» 5 Y¯ K/=". 5 Fig. 3 R bLU @k Úí# Table 2 -â". ParkR Jung[8]
=#Ú ,1 JÈ, ¼ C Y¯ ¶ -D 4Q @
yzk 4| }# @A B !"# $ " ".
X× 8 Fig. 4 # ¼ C Y¯ / B UIS Nw 5 4K @ A_ 4Q@yzk ãä WäM -â
". ParkR Jung[8] ² @yzk “170”h±
D -s".
4-2. 2
Fig. 5 -âi 4¿, 4¿M 9» 5 Y¯
K/=". @ k Úí# Table 3 e /²LU, ( v
;<Nw K/= BR Table 4R 5 -â".
TFij TFU(k′–1)j
( )−i U 1 S
k
∑
∈Kj Xikj′–Xik′( )j−i +
i∈Ij′, k′ Kj
( )−i
∈
≥ –
Fig. 3. Schematic diagram for example 1.
Table 2. Data for example 1 Unit
Product
Unit 1 Unit 2 Unit 3
Processing times
P1 20 25 30
P2 15 10
P3 30 30
P4 20 15
P5 25 30
P6 35 30 20
Fig. 4. Result for UIS policy of example 1.
Table 5. Statistical result for example 2
0-1 variable Continuous variable Constraint Makespan CPU(sec)
UIS 52 58 196 59 0.43
ZW 52 58 196 71 0.43
NIS 52 58 317 63 0.85
FIS 68 73 361 60 1.24
Table 4. Optimal sequence in each unit for example 2
Unit 1 Unit 2 Unit 3 Unit 4
UIS B-A-C C-B-D C-D-A-B D-A-B
ZW B-C-A C-B-D C-D-B-A D-B-A
NIS A-B-C C-B-D C-A-D-B D-A-B
FIS B-A-C B-C-D C-D-B-A D-B-A
Table 3. Data for example 2 Unit
Product
Unit 1 Unit 2 Unit 3 Unit 4
Processing times
A 15 8 12
B 10 20 5 13
C 20 7 9
D 7 17 5
Fig. 5. Schematic diagram for example 2.
Fig. 6 FIS Nw 3 =- vD !# VF 5 4 K @ BR ãä WäM -âò e". ,æ 231 ê
"ë - vM 9Dh ¡=+ ¨ 57=# k
C# "ë ®{. 2D @ G+ vD X9!7 [C vM °M v JÈ, D# "ë 2_ vD Y a /G7 [C ¨ 57="D vM D' \+,
B# v# /Gh± "ë . 4D X9!7 [C Gk v ]h + °M "ë ®{M 9D @ Ö
=# e ç !". _ b ¼ C Y¯ "SK
FIS Nw -â !# YZ ¨
!ë ç !".
4-3. 3
¼ Ä # Ä 1, 2" 4YD 6¿, 6¿M
9» 5 Y¯ K/= ´". ( Table 6R b VM DhU, @k Úí# Table 7 e /²
". ( v ;< Nw 5 , BR Table 8R 9 -â
LU, FIS Nw VF# 5 vD =- !# VF +
=". Fig. 7 # ZW Nw 5 4K @ BR ãä WäM -â".
5.
IJK. XAW "SK Gk v ;<Nw Ox 4K @ A B C ¾K Y¯ w=+, Y
¯ / À9» 4Q@yzk 4| }# @
A T=". N LM . / X1
7 8 ( " "x c3 A Dr =# X AW "SK u1 += À9» v ;< Nw 5
7pLM (( ¨ Å » Ê_ 3K û ü ù a ¨ / Ê 0B}# N /²LU,
¾K Y¯ ÑÒÓÔ{¦ Ô5M ¨=". w Y¯
ØDh Ä K/ BR ù Y¯ /1 ". ¼ C # @k îkR @ pXk µ ªÃ
îkR pXk µ 7KLM + Y¯ ¿ - D ".
Fig. 6. Result for FIS policy of example 2.
Table 6. Production paths for example 3
Flow characters Production paths
P1 Forward U1→U4→U5→U6
P2 Backward U3→U2→U1
P3 Cycle U3→U5→U2
P4 Forward U3→U4→U5
P5 Cycle U4→U6→U3→U1
P6 Backward U6→U4→U2
Table 7. Data for example 3 Unit
Product
Unit 1 Unit 2 Unit 3 Unit 4 Unit 5 Unit 6 Processing times
P1 6 101 17 4
P2 8 15 5
P3 20 8 13
P4 9 5 16
P5 151 111 9 7
P6 13 5 101
Table 8. Optimal sequence in each unit for example 3
Unit 1 Unit 2 Unit 3 Unit 4 Unit 5 Unit 6
UIS P1-P5-P2 P2-P6-P3 P2-P3-P5-P4 P5-P6-P1-P4 P3-P1-P4 P6-P5-P1
ZW P1-P2-P5 P2-P3-P6 P2-P3-P5-P4 P5-P1-P6-P4 P3-P1-P4 P5-P6-P1
NIS P1-P2-P5 P2-P6-P3 P2-P3-P5-P4 P5-P6-P1-P4 P3-P1-P4 P6-P5-P1
FIS P1-P2-P5 P2-P6-P3 P2-P3-P5-P4 P5-P6-P1-P4 P3-P1-P4 P6-P5-P1
Table 9. Statistical result for example 3
0-1 Variable Continuous variable Constraint Makespan CPU(sec)
UIS 68 83 263 53 1.15
ZW 68 83 263 59 1.41
NIS 68 83 431 56 1.85
FIS 77 113 501 53 2.17
Fig. 7. Result for ZW policy of example 3.
39 1 2001 2
& '
¼ 0T# fR¾® u780Th@(1999-1-307-002-3) 0TX hLM 99LdM 0TX hÀ: fR¾
® ;%Â".
()*
1. Bok, J-.K. and Park, S.: Ind. Eng. Chem. Res., 37, 3652(1998).
2. Fuchino, T., Muraki, M. and Hayakawa, T.: J. Chem. Eng. Japan, 25(3), 250(1992).
3. Jung, J. H., Lee, H., Yang, D. R. and Lee, I.: Computers and Chem.
Eng., 18(6), 537(1994).
4. Kim, M. S., Jung, J. H. and Lee, I.: Ind. Eng. Chem. Res., 35, 4058 (1996).
5. Ku, H. M. and Karimi, I. A.: Ind. Eng. Chem. Res., 27, 1840(1988).
6. Ku, H. M., Rajagopalan, D. and Karimi, I. A.: Chem. Eng. Prog., Aug., 35(1987).
7. Moon, S. and Hrymak, A. N.: Ind. Eng. Chem. Res., 38, 2144(1999).
8. Park, S. and Jung, J. H.: HWAHAK KONGHAK, 37, 411(1999).
9. Pinto, J. M. and Grossmann, I. E.: Ind. Eng. Chem. Res., 34, 3037 (1995).
10. Rajagopalan, D. and Karimi, I. A.: Computers and Chem. Eng., 13(1/2), 175(1989).
11. Voudouris, V. T. and Grossmann, I. E.: Computers and Chem. Eng., 20(11), 1335(1996).