fromthe previousreations doesnot reahaertainlevel. Iftwo dierentases
c
andc ′
hasthe same maximal revenue, but
c
uses only a (not neessarilyreal) subset of units for eah3
Intheoriginal example,10%of theoutputof separationis
IntAB
that isreyled. This isnegleted,asthepresentedalgorithmisnotapableofaddressingproblemswithloopsintheirreipe.
Case Reation 1 Reation 2 Reation 3 Max revenue
1
R1 R1 R1
86.002
R1 R1 R2
71.673
R1 R1 R1&R2
86.004
R1 R2 R1
53.755
R1 R2 R2
53.756
R1 R2 R1&R2
53.757
R1 R1&R2 R1
114.678
R1 R1&R2 R2
71.679
R1 R1&R2 R1&R2
139.7510
R2 R1 R1
86.0011
R2 R1 R2
71.6712
R2 R1 R1&R2
86.0013
R2 R2 R1
53.7514
R2 R2 R2
53.7515
R2 R2 R1&R2
53.7516
R2 R1&R2 R1
89.5817
R2 R1&R2 R2
71.6718
R2 R1&R2 R1&R2
89.5819
R1&R2 R1 R1
86.0020
R1&R2 R1 R2
71.6721
R1&R2 R1 R1&R2
86.0022
R1&R2 R2 R1
53.7523
R1&R2 R2 R2
53.7524
R1&R2 R2 R1&R2
53.7525
R1&R2 R1&R2 R1
114.6726
R1&R2 R1&R2 R2
71.6727
R1&R2 R1&R2 R1&R2
139.75Table 4.1: 27dierent"xed reipes" for the exampleby Kondiliet al.[66℄
reation of those used by
c ′
, thanc
dominatesc ′
. As an example, ase 9 dominates ase27, and ase 24 is dominated by all of the ases 4,5,6,13,14,15,22,23. Obviously, if a ase
is dominated by an other, it an be exluded from the investigation without using loosing
the guarantee for the global optimality. For the example above, the ases, whih are not
dominated by an other are shown in Table 4.2ordered by the maximal revenue.
Case Reation 1 Reation 2 Reation 3 Max revenue
4
R1 R2 R1
53.75Table 4.2: Non-dominatedases for the example by Kondiliet al.[66℄
After this redution, still, 11 dierent ases should be given as input to the S-graph
algorithm. Inordertofurther reduethis number, several asesanbemergedtogether. As
an example ases 4 and 5 are idential exept for the seletionfor the third Reation,thus
these two asesan be mergedtogertherby the assignments
R1
,R2
,R1 ∨ R2
forReations1,2, and 3,respetively. Applying the same idea, the 6 ases shown in Table 4.3remain.
Case Reation1 Reation2 Reation 3 Max revenue
4,5,13,14
R1 ∨ R2 R2 R1 ∨ R2
53.75Table 4.3: Merged non-dominated ases for the example by Kondili et al.[66℄
Toallof these mergedases, the reipe graphan begenerated, asshown inFigure4.5.
4.4 Empirial tests
In this setion,the results of the implemented algorithmare presented via three examples.
For eah example, the problem has been saled and solved with dierent time horizons.
At eah ase altogether 18 variants of the throughput maximization algorithm have been
Figure 4.5: The orresponding reipe graphs forthe 6ases in Table 4.3
tested and ompared. These variants add up by the possible ombinations of 3 dierent
subproblem seletionrules, 3 dierent update and 2 dierent feasibility subroutines.
Eah of the subproblem seletionstrategies rst explores how many bathes of a single
produt an be produed within the given time horizon, then they explore the bounded
region
LEX in alexiographial order,
BFS viabreath-rst searh,
DFS via depth-rst searh.
The update subroutines:
E empty, noonguration isremoved via the bound of a feasible solution
F only the best axial onguration is used for removing some of the ongurations
after the initializationphase
U the updatefuntion removesallthe ongurations thathas lowerrevenue thanthe
urrently best feasible solution
Last, themakespanminimization(MM)andthedesribed feasibilitytester(FT)isused
for the evaluation of the ongurations. At eah run, the time limitof 1 hour was used for
the solveralgorithm.
The subsetionspresentonlysomehighlightsoftheresultsduetospaelimitations. The
tableofalloftheresultsanbefoundinSetionC.1. Whenthealgorithmshavenotreahed
the 1 hour time limit,they delivered the same globallyoptimal solution.
A generalexperiene is that the type of the feasibility tester have amajoreet onthe
CPUtimes,asexpeted. Usually,mostoftheCPUtimeistaken forthetestingofinfeasible
ongurations, wherethe FTdoesnotgainanyadvantageofstoppingaftertherst feasible
solution. The initialbound of the FT subroutine however, ause a signiantredution on
the searh spae.
4
Thus, in the following subsetions the variants having MM subroutine
are not investigated.
Forallof the examples,NIS storage poliy were onsidered for allintermediates.
4.4.1 Pharmaeutial ase study
This example istaken froma multinationalpharmaeutial ompany. There are 5 hair and
skinareprodutsprodued, allofthemviatwoonseutivesteps: mixingandpaking. For
the paking,there are 3 idential pakinglines available,and the pakingtime is uniformly
12 hours for all of the produts. There are 4 mixingvessels available, however, they dier
in appliability and proessing times due to the dierent stirrer designs. The detailed
proessing times are given intable 4.4
4
Someadditionaltestswererunusingthemakespanminimizationsubroutinewiththeinitialbound,and
theresultswerelosetothatoftheFTapproah.
Produt Revenue (u)
Proessingtime (h)
Mixingvessels
Paking lines
V1 V2 V3 V4
Cream1 2 10 5 5 12
Cream2 3 12 10 7 12
Conditioner 1 12 12
Shampoo 3.5 8 13 12
Lotion 1.5 10 6 9 12
Table 4.4: Proessingtimes and revenue data for the pharmaeutial ase study
A summary of thetest results are shown onalogarithmi sale inFigure4.6, wherethe
olors orrespond to onguration seletion rules, and the shapes for the dierent update
funtions.
Figure4.6: Summary of results forthe pharmaeutialase study
Based onthese results the following onlusionsan bedrawn for this example:
•
For most of the ases, the alternative solutionapproahes ould not outperform eah other more than amagnitude.•
For small problems (with time horizon less than 29) the CPU times do not inreasedrastially.
•
After 29hours of time horizon, the CPUtimes have adrastial inrease.•
Forlarger problems the alternativeswith the E update funtiondominate the others, and there is only a negligibledierene between them for the dierent ongurationseletionstrategies.
4.4.2 Agrohemial example
In this exampleherbiide isprodued through three reations, aseparation, and an
evapo-ration. The owsheet of the problemis given in Figure4.7.
Figure4.7: Flowsheet of the agrohemialproess for herbiide prodution
The proessing times, apaities of the units, output ratios, and other details of the
probleman befound in the paperby Majozi and Friedler[82℄. Although thereis onlyone
produt, the bath sizes are not xed, and two units may work parallel onthe same bath.
Thus the algorithm of Setion 4.3 need to be applied to reate xed reipes. After this
preproessing steps, there are two dierent xed reipes as shown in Figure 4.8, where the
revenues of
F 1
andF 2
are 3.7 and 4.5ost units, respetively.Figure4.8: S-graphof the two xed reipesfor the agrohemialproess
The resultsof the testsare shown inTable 4.5, andthe best CPUtimes areindiated in
eah row.
Time CPUtime (s)
horizon LEX BFS DFS
(h) U F E U F E U F E
13 3.06 3.07 3.05 3.08 3.04 3.05 3.03 3.08 3.07
14 339 340 205 405 405 414 405 402 269
15 453 451 453 583 582 591 589 583 581
16 3600 3600 3600 3600 3600 3600 3600 3600 3600
Table 4.5: Test results forthe agrohemialexample
It is easy to see, that in ase of this problem, the inrease in the time horizon has a
drastieet onthe putimes. Eahadditionalhourinthetime horizonresulted inatleast
one magnitudegrowth inthe CPUtime. Basedonthis fewresults,itan beobserved, that
the Eupdatefuntiondominatesheretheothertwoaswell. Moreover, ingeneral,theLEX
onguration seletionstrategy proved tobe the most eient.
4.4.3 Literature example
For the last omparisons, the example from Setion 4.3 is taken. As desribed in that
setion,there are 6xed reipesfor this problemwith two produts. The resultsofthe test
are shown inTable 4.6, and again,the best CPU times are indiated in eah row.
Time CPUtime (s)
horizon LEX BFS DFS
(h) U F E U F E U F E
14 16.88 15.84 15.21 14.95 18.52 21.07 22.63 22.53 21.01
15 179 134 113 208 144 133 437 279 225
16 1260 1159 984 964 1496 1512 1594 1629 1403
17 3600 3600 3600 3600 3600 3600 3600 3600 3600
Table 4.6: Test resultsfor the exampleof Setion 4.3
As in the ase of the previous examples, the LEX-E alternative provides good results.
However, interestingly, the BFS-U strategy oftenhave good results.
Summary and onluding remarks
In this hapter, the S-graph framework has been extended to throughput orrevenue
maxi-mizationproblems. Thealgorithmis basedontheenumerationand maximumsearhofthe
feasible set of ongurations, i.e., bath numbers, whih are produable in the given time
horizon. The possibilities for dierent variations of the general algorithm were presented
and thouroughly ompared after implementation. The results showed that the approah is
apabletosolvethe onsidered set of problems,and provide theoptimalsolution eiently
when the orret variationis applied.
Related publiation
•
Holzinger, T., T. Majozi, M. Hegyhati, F. Friedler, An automated algorithm forthroughput maximizationunder xed time horizon in multipurpose bath plants:
S-Graphapproah,17thEuropean Symposium onComputerAidedProess Engineering
Elsevier, 24,649 -654 (2007).
Related onferene presentations
•
Majozi, T., F. Friedler, T. Holzinger, M. Hegyhati, S-graph based ontinuous-time approah for throughput maximization in multipurpose bath plants, presented at:IFORS 2008,Johannesburg, SouthAfria, July 13-18, 2008
•
Hegyhati M.,T. Holzinger,T. Majozi,F. Friedler,TransformingSTNbased shedul-ingproblemstoS-graphrepresentation,presentedat: XIXPolishConfereneofChem-ialand Proess Engineering,Rzeszów, Poland, September3-7, 2007.
•
Holzinger,T.,T.Majozi,M.Hegyhati,F.Friedler,ThroughputMaximizationin Mul-tipurpose Bath Plants: S-graphvs Time Point BasedMethods, presented at: PRES2007, Ishia Island, Italy,June 24-27, 2007.
•
Holzinger, T.,T. Majozi, M. Hegyhati, F. Friedler, An Automated Algorithm forThroughputMaximizationUnder Fixed Time HorizoninMultipurpose BathPlants:
S-GraphApproah,presentedat: ESCAPE17,Buharest,Romania,May27-30,2007.
•
Holzinger, T.,T. Majozi, M. Hegyhati, F. Friedler, Using S-graph for ThroughputMaximization in Multipurpose Bath Plants, presented at: VOCAL 2006, Veszprem,
Hungary, Deember12-15, 2006.
Limited- and Zero-wait storage poliies
in the S-graph framework
TheS-graphframeworkwasoriginallydeveloped forNIS-UWand UIS-UWstoragepoliies,
and the only published storage poliy extension of the S-graph framework[109℄ foused on
CIS-UW poliy. However, in many industrial appliation LW or ZW poliies are required,
as ertainintermediates lose some physialor hemialpropertiesover time, that would be
importantfor theupomingtask. Inthis hapter,several new approahesare introduedto
taklethesestoragepoliies. AsithasalreadybeenmentionedinSetion1.2, inase ofZW
poliy,the restritiononthe infrastrutureis irrelevant. However, LW itselfdoesnot dene
the storagepoliy. In this hapter LW will referto NIS-LW poliy,and the approahes are
desribed forthat,althoughthey ouldeasilybemodiedtoaddressUIS-LWpoliyaswell.
Moreover, if an approah is presented for LW poliy, it an be automatially applied for
ZW ases, as itis a speial ase of LW. Finally,it is not assumed anywhere, that allof the
intermediates share the same restrition for waiting time, i.e., some of them are ZW, LW,
or even UW.
Note that UW is a relaxation of ZW/LW, thus, all of the shedules with ZW or LW
poliies onsome intermediates remainfeasible if allof the LWintermediatesare set toUW
poliy. Later on, the terminology UW-relaxation will be used if the LW restritions of a
problemare disregardedthis way.
Most of the onstraints in sheduling has a "greater or equal" nature,e.g., a task must
startlater thanthenishingoftheprevioustaskinthereipe,ortheprevioustaskassigned
to the same unit. LW onstraints, however, dene a "not later then" thus "smaller or
equal" typeof onstraint,whihannotdiretly beexpressed by the ordinary S-graphars.
There are, however, several ways toaddress this poliy, whih are detailedin the following
subsetions.
In setion 5.1a hybridapproah isintrodued,where the S-graphbased branhing
pro-edure is extended with an LP based boundingfuntion that also inludes the "smaller or
equal" type of LW onstraints.
The approah introdued in setion 5.2 relies on the fat that a typial "less or equal"
type of LW onstrains, suh as
T 1 start ≤ T 2 start + t proc
an easily be onverted to a "greater or equal form":T 2 start ≥ T 1 start + (−t proc )
, whih an be modeled by regular S-graph ars.Theweightoftheedge,however, beomesnegative(non-positivetobepreise), whihneeds
some additionalare.
In setion5.3twoapproahes are introduedfor problems withonlyUW and ZW
inter-mediateswithoutintroduingnegativeweighted ars inthe S-graph. Addressing LW stages
is possible through a modelingonversion.
Last, setion 5.4 ompares the performane of these approahes through several
exam-ples.
5.1 Auxilary LP model
Thesmaller-or-equaltypeofonstraintsofLWpoliyanbeaddressedbyanLPmodelthat
an be formulated for eah subproblem. The mathematial model an simply built based
on the S-graph
(N, A 1 , A 2 )
:•
A non-negative ontinuous variable is assigned to eah node, whih represents its startingtime:S i
, for alli ∈ N
.•
Shedulearsrepresentsimpleorderingintime,thusaonstraintintheformofS i ′ ≥ S i
is addedfor all
(i, i ′ ) ∈ A 2
.•
For all reipe ar, a similar onstraint is added:S i ′ ≥ S i + w i,i ′
for all reipe ar(i, i ′ ) ∈ A 1
, wherew i,i ′
isthe weight of it.•
Last, for eah taski
with LW poliy, the onstraintS i ′ ≤ S i + w i,i ′ + maxwait i
isadded, where
i ′
is an upomingtask ofi
, i.e.,(i, i ′ ) ∈ A 1
,andmaxwait i
the maximalallowed waitingtime.
Thesolutionofthismathematialmodelwillnotprovidesharperboundsthanthelongest
path algorithm. However, it willdetet if a ertain subproblem is not feasible due to wait
restritions. Insuhaase,the orrespondingbranhofthe searhtree ispruned obviously.
Note that in ase of a partialshedule that is not even feasible for the UW-relaxation,the
S-graphapproahwilldetettheinfeasibilityintheusualmannerbyndingadiretedyle,
thus the solutionof the LPmodelisnot neessary.
Advaned LP approah
The most seriousdrawbak of the previouslymentioned approahis thatthe mathematial
modelneeds to be formulated ateah subproblem,taking alot of CPU time, whilethe LP
itselfdoesnot providea sharperboundthan the longestpath approah. There is,however,
amoresophistiatedway ofusinganLPforLWand ZWpoliies,assuggestedinsubsetion
2.3.3.
Instead of formulating a separate LP model for eah subproblem, the LP relaxation of
the wholepreedene basedmodelan bebuiltforthe rootsubproblemimmediately. Then,
ateahdeision,thismodelisopied,andsomeofthe binaryvariablesarexed byhanging
their upperor lower bounds.
Though, these models are muhbigger than the formerly introduedones, their bitwise
opying and modifying some variable bounds takes less time than building up the same
model from srath. Moreover, as they have the same numberof variablesand onstraints,
the solution of the parent LP model an be used as a starting basis for the dual simplex
algorithm. Finally, the solution of these models provide a tighter bound than the longest
path algorithmitself.
Note thatsimilarlytotheoriginalapproah,there isnoneed toopy the LPrelaxation,
modify and solveitif the shedulegraph ontains ayle or thelongestpath ishigher than
the urrentupper bound.
Moreover, as the models at the subproblems are the same exept for the bounds on
variables, it may be more beneial not toopy the model, but use it as a global variable,
and adjust the bounds ateah subproblem.
5.2 Combinatorial approah with negative weighted ars
As ithas alreadybeen mentioned,the less-or-equaltypeonstraints inthe form of
T 1 start ≤ T 2 start + t proc
aneasilybeonvertedtoagreater-or-equalform:T 2 start ≥ T 1 start + (−t pt )
. Thistransformation,however, introduesnon-positiveweightsonthears. This ideahas already
been used inforthe Alternativegraphmodeltomodelsimilarsituations[88,98,24,25,22,
21℄
The limited waiting times an easily be modeled by negative weighted ars. If there is
a task
i
with proessing timet pt i
, and maximal waiting timet maxwait i
, then two reipe arsshould be inserted into the S-graphas illustrated inFigure 5.1:
•
An ar with weightt pt i
fromi
toits subsequent task(s).•
An ar with weight−t pt i − t maxwait i
fromthe subsequent task(s) ofi
toi
.It isobvious tosee that these ars express exatlythe desiredonstraints. In the gure
the intervalinwhihtask
i ′
anstart (fromT i start + t pt i
toT i start + t pt i + t maxwait i
)is indiatedby blue olor onthe time axis.
There are, however, some aspets of the algorithm that must be taken are of with the
introdution of these ars.
•
The longest path algorithmmust be adjusted aordingly. As the urrentimplemen-tation maintainsa longest pathmatrix throughout the algorithm,there is noneed to
hange anything with this.
Figure5.1: Modeling LW poliywith negativeweighted ars
•
Eventhereipegraphwillimmediatelyontainseveralyles. Theirweightisnegative, or in the ase of ZW ars, 0. Naturally, negative weighted yles are not of greatinterest. They an simplybe disregarded. However, the 0weighted yles need extra
are, assomeof themonlyrepresenta ZWonnetion,while theothers modela ross
transfer (See setion 3.2). The algorithm must be modied in order to report only
those zero-weighted yles that donot have reipe ars in them.
5.3 Combinatorial approah without negative weights
In this setion two approahes are desribed to takle ZW poliy. LW stages are not
on-sidered, but they an be addressed via a modeling transformation desribed in the last
subsetion.
Asbrieydisussed before, asheduleanbelongtoone ofthethreegroupslistedbelow:
UW infeasible These shedules would be infeasible for the UW relaxation of the
problem aswell.
ZW infeasible, UW feasible These shedules are feasible for the UW relaxation
but they violate ZW onstraints
ZW feasible These shedules are feasible for the problem.
The original S-graph algorithm fails to dierentiate the shedules in the seond group
from the ones in the third. It does, however, eliminateall the shedules in the rst group.
In order to identify shedules in the seond group, the approah desribed in the previous
setion introdued additional, negative weighted ars to the problem. The shedules inthe
seond group would result in a non-negative weighted yle by using that approah, whih
onsists of two type ofalternating parts:
•
"Forward", positive ars belongingto eitherUW or ZWintermediates•
"Bakward", negative weighted ars of ZW stagesAnexampleisgiveninFigure5.2withboththeshedulegraphandtheorrespondingGantt
hart. The same shedule is infeasibleif the outputsof tasks
i1, i2
, andi3
have ZWpoliy,as shown inFigure 5.3. The path indiated by thik ars has a weight of 6,whihis longer
than the ZW path from
i2
toi4
, thus itresults ina positiveyle.5.3.1 Reursive searh
Even if the negative weighted ars are not inserted to the S-graph, the positive weighted
yles an beidentiedbya searh[50℄. Suppose that apartialsheduleis ZWfeasible, and
a new shedule ar is just inserted to the graph. Obviously, if the partial shedule is now
ZW infeasible,the newly addedar must bepart of the non-negative yle.
Figure 5.2: FeasibleUW shedule
Figure5.3: Infeasible ZW shedule
Even without the negative ars, this yle ould be found by a simple approah: from
the endpoint of the new ar, it has to be heked reursively whether the starting point
of the shedule ar is reahable via "forward" and "bakward" steps with a non-negative
weight ornot.
1
The algorithmforthat searh isgiven in blok 5.1.
This approah basially heks the existene of a non-negative yle instead of
main-tainingthe extendedlongest-pathmatrix ofthe previousapproah. Thealgorithmlooksfor
suh nodes inthe S-graphina reursive way, whosestarting timean bebounded withthe
suh nodes inthe S-graphina reursive way, whosestarting timean bebounded withthe