• Nem Talált Eredményt

J ′ is the set of units to whih the algorithm an still assign tasks A set of task-unit assignments in the form of (i, j) pairs

In eah iteration a subproblem is arbitrary seleted and removed from

S

by the

fun-tion selet_remove. The exat behavior of this funtion may be dierent for dierent

implementations,resulting invarious searhstrategies.

At the beginning of the iteration, it is evaluated, whether the subproblem has the

po-tentialtoprovideanoptimalsolution otnot. This isdone by the bound funtion,towards

whihthe following requirementshold:

it should provide a lower bound for the solutions that an be derived from the

sub-problem

it should provide the exat makespan of leaf problems, i.e., for ompletely sheduled

graphs

it shouldreturn innity if the graphontains a yle, indiatingthat it isunfeasible

The mostly usedboundfuntionisthe longest pathinthe graph,but LPbased modelsan

also be used, see Holzinger [52℄ for details. If the bound of the subproblem is not smaller

than the best solutionfound so far,the iterationends, and another subproblem isseleted

(if exists).

Iftheboundissmallerthanthevalue of

makespan cb

,the algorithmrstheks,whether

allof thetasksare already sheduled, i.e.,whether the subproblemisompletelysheduled.

If this is the ase, the values of

G cb

,

A

, and

makespan cb

are updated tothe S-graphof the

best solution,the orresponding assignments,and the value of its makespan,respetively.

In the ase of a partially sheduled subproblem, the algorithmselets an available unit

(i.e., one from

J

) using the selet funtion. Similarly toselet_remove, the implemen-tation of this funtion may alsobe dierentto ahieve various searh strategies.

Forthe seleted unit

j

,the algorithmassigns allthe possibletasks(

i ∈ I j ∩ I

totheend

of its proessing queue.

5

For eah assigned task a opy is made of the urrent S-graph, or

morepreiselyaboutthe set ofshedulears andthe weights,asthe set ofnodes andreipe

ars do not hange during the optimization. This opy is rst extended with the shedule

ars indued by the new assignment, i.e., ars from all the subsequent tasks of previously

assigned tasks to

j

are direted to

i

.6 Then, the weight of all of the reipe ars from

i

are

5

Note, that if no suh task exist, the algorithm simply skips this loop. Avoiding this situation is not

neessarybeauseoftheredutionofthe

J

.

6

i

itselfisexludedtoavoidloopsinaseofassigningtwosubsequenttaskstothesameunit. Moreover,

in theoriginal algorithm, the arswere direted only from the last assignmentif it existed. Here all the

assignmentsarestoredin

A

,whihmakesthedesriptionofthealgorithmsimpler. Althoughtheadditional

updatedto

t pr i,j

. Finally,anewsubproblemisaddedto

S

withthe modiedgraph,aredued

I

set, and extended

A

set.

Ifalloftheunsheduledtasksanbeperformedbyotheravailableunits,anew

subprob-lemis reated where

j

beomesunavailable for further assignments. This part is needed to allow otherunits to perform the same tasksthat

j

an, and to taklethe situation,when

j

has nomore ompatible tasksamong the unsheduled ones.

After the set

S

beomes empty, the graph

G db

and the assignments in

A cb

desribe the

optimalsolution, and are returned by the funtionif at leastone feasible solutionhas been

found. Otherwise the algorithmdoesnot return with any solution.

2.3.3 Extensions and developments of the S-graph framework

During the years, many extensions and developments of the S-graph framework has been

doneandpublished[46℄. Thealgorithmpresentedintheprevioussubsetionisoftenreferred

to asthe Equipment based algorithm, asit selets aunit, and branhes based onwhih

task should be the next in itsprodution queue. A Branh and Bound algorithmbased on

adierentaspet waspresented byAdonyi[3℄, where ataskisseleted ateahsubproblem,

and the branhing is based on nding an appropriateunit, and an appropriate plae in its

queue. This method is oftenreferred to as the Task based algorithm. The performane

ofthe two algorithmswere omparedviaanextensive empirialanalysis. Asaresult,itwas

stated that there are probleminstanes for both of them where they outperform the other

one. However, it is not evident based on the problem desription, whih is the favorable

one, although, problems with a "bottlenek" usually prefer the equipmentbased approah.

Inmanyases,theprobleminstanesinludetherepetitiveprodutionofseveral bathes

ofthesameprodut. This isusuallyaddressedbyopyingthereipeoftheprodutmultiple

times. With this approah, however, the same solution an be found multiple times with

dierentorder ofthe identialproduts. Toavoidthis, and reduethe omputationalneed,

Holzinger et al.[51℄ introdued auxiliary ars in the S-graph ensuring that eah solutions

is found at most only one. With this modiation, the authors ahieved a tremendous

redution in the CPU time. Hegyhati and Friedler[49℄ has shown that the same eet an

be ahieved for preedene based formulations by adding onstraints equivalent to these

auxiliaryars.

Next to these algorithmi developments, the framework has been extended to various

elds of appliation, where somemodiationsof the original framework was alsoneeded:

Paint prodution Adonyi et al.[1℄ has applied the framework for the sheduling of

a large sale paint prodution plant, where leaning times had to be addressed

as well.

ars (ompared the the original algorithm) are redundant, they express valid relations. Moreover, the

urrentimplementationalsoinludesthesears(althoughinanearlierstage)inordertosharpenthebound

funtion.

Heat integration One of the most developed eld of ontinuous plantdesign is the

design of the heat exhanger network, to minimize utility ost. Although, the

Pinh tehnology[65, 77, 78℄ an provide a deent targets for ontinuous

sys-tems, in ase of bath proesses the timing of streams must be onsidered as

well. Adonyi et al.[2℄ presented an extension of the S-graph framework, where

heat integration spei onstraints were addressed with an LP model that is

maintained thorough the optimization proess in syn with the shedule graph.

Holzingeret al.[54℄further extended this approah toaddressthe sheduling of

heat exhangers as well.

Train sheduling Adonyietal.[4℄hasextendedtheframeworktoaddressthe

shedul-ing problem of the supply trains of tunnel boring mahines, and developed a

graphialinterfae toonvert these problems for the S-graphsolver.

An often exploited advantage of the speialized solution algorithmis the possibility to

generate several dierent solutionandidates, whihan bereallyusefulinpratie, if some

parameters of the original problem an not be inluded in the mathematial model. In

ase of a single objetive, the

n

best solution an be easily generated, and with multiple

objetives, the Pareto border an also simply be maintained (assuming a disrete searh

spae). This framework also gives hane for an aelerated bi-objetive B&B solver, that

has been developed for other disreteproblems[121, 26℄.

Implementational tehniques

The outstanding omputational performane of the S-graph framework an only partially

be redited to the struture of the branh and bound algorithms, and the algorithmi

a-elerations. The otherhalf belongstothe implementationaltehniques andaelerations of

the solver written in C++, that are - with few exeptions - not presented in the sienti

literature.

As the mathematial model of the S-graph framework is not a general model, like the

linear programmingmodels, the solutionalgorithmsare developed by the researhers. This

arries some benets and shortomingsas well:

speed The implementation is adjusted to the model, and optimized, thus the CPU

requirements are redued, and thus the S-graph approahes are ompetitors of

not only the free MILP solvers, but the ommerial ones aswell.

exibility Ateahextension,the researhershas thehanetoimplementtheir ideas

in alowlevelof the algorithm,not in the modellevel.

learning urve These hanges, however, require an extensive knowledge not only

about the S-graphframework,but the software implementation aswell.

The only paper about the S-graph solver implementation of was published by Smidla

and Hekl[119℄, wherethe parallel Branhand Bound implementationisbriey introdued.

The authorsprovided asalable implementation, whih in some ases ould ahieve

super-linearity.

At many points of the algorithm the longest path between two verties is needed ( by

the boundfuntion, and laterextensions). Although thereexists alinear timealgorithmto

the evaluationof thelongestpath between twoverties[23℄, thememoryrequirementofthe

S-graphsolvers isnegligible(omparedtoommerialMILP solvers), thusitisbeneialto

store a matrix of longestpaths for eah subproblem,and keep it updated.

Ifataskanbeperformedonlybyasingleunit,orby severalunits,butonlyoneofthem

is in the available unit set at a ertain subproblem, a shedule ar an already be inserted

from the subsequent tasks of the already assigned tasks of that unit to this task. It is not

sure that this task willbethe next task inthe produtionqueue of the orresponding unit,

but it will denitely be assigned to it later. This small tehnique an drastially sharpen

the boundsfor problems withtasks that an beperformed onlyby a dediated unit.

Similarly to the problem investigated by Holzinger et al.[51℄, the same sitution an

our, when idential units are available, i.e., the same shedule an be generated multiple

times. To avoid this, a simple ondition is to be inserted to the algorithm whih ensures

that if two units are idential, the one with a smaller id has a rst task on its queue with

the smaller id.

In many ases, the dierene between a subproblem, and its hildren problems is small

ompared to the size of the subproblem. To save time onopying these objets, ontainers

using impliit sharingare applied.

Memory handling has also a ruial impat on the CPU requirements. In his diploma

work, Kovas [71℄ details and analyses the eet of dierent mallo implementations. This

work details some other enhanementsof the solveras well.

Relation to Preedene bases MILP models

Without goingintoformaldetails,the aimof this subsetionisto revealthe strong

onne-tion between the S-graph framework and the Preedene based MILP formulations. This

type of investigation is not unpreedented in the literature, Uma et al.[125℄ investigated

the relation between the relaxation of linear formulations and graph models of sheduling

problems, while Maraveilas[86℄ investigated the ombinatorialstruture of xed time point

MILP formulations. As it has already been mentioned, in ase of the lassiation from

Hegyháti and Friedler [49℄, the preedene based formulations and the S-graph framework

belong to the same ategory. Both approahes onsider the sequene of tasks assigned to

the same unit as the key question during the optimization. As a result, the apabilities,

performane, and searh spae are quitesimilar for them.

Inordertoillustratethestrongonnetionbetweenthetwoapproahes,apartialshedule

oftheexampleinFigure2.1isgiveninFigure2.5. Thegurerepresentsthepartialshedule

Figure2.5: Illustrationoftheonnetionbetweenpreedene basedmodels andtheS-graph

framework onapartial shedule of the example given in2.1

after two steps in the S-graph based algorithm. First, the task

A1

is assigned to the unit

E1

, then the task

B3

is assigned as the seond task for the same unit. The sequening

between them is expressed by the ar between

A2

and

B3

.

As illustratedinthegure,the samepartialsheduleinapreedene basedmodelwould

mean, that some of the binary variablesare xed toertain values:

• Y A1,E1

takes the value of one, beause of the rst assignment, and as a onsequene, the value of

Y A1,E2

is set to zero.

Similarly,at the seondstep,

Y B3,E2

takes the value of one.

Theseondstep,however,alsodeidesthesequeningbetween

A1

and

B3

,thus

X A1,B3

is set to one, and

X B3,A1

is set tozero.

If the values of these variables are substituted into some of the onstraints, they result in

the following form:

• ST A2 ≥ ST A1 + 6

is a result of the reipe sequening onstraint with

Y A1,E1 = 1

and

Y A1,E2 = 0

. This onstraint is expressed diretly by the updated reipe ar between

the nodes of

A1

and

A2

.

• ST B3 ≥ ST A2 = CT A1

is the result of a sequening onstraint with

X A1,B3 = 1

and

X B3,A1 = 0

.

In general, the following objets of the S-graph framework and the preedene based

models relate toeah other:

Preedene based MILP model S-graphframework

Continuous timingvariables - Nodes

Binary alloationvariables - Assignment atnodes

Binary sequening variablesand onstraints - Shedulears

Reipeonstraints - Reipe ars

Model infeasibility - Cyle inthe S-graph

The onnetions above explain why these methodologies have similar features. Though

the searh spae is the same, the way how the S-graph explores it is rather dierent. In

eah branhing step the S-graph based algorithmdeides allof the assignment variables at

a node, and several preedene variablesaswell. Thus, the branhing tree ismuhsmaller.

On the other hand, at eah subproblem, the S-graph algorithmuses the Longest path as a

bound, whih isweakerthan the optimalsolutions of the orresponding relaxed LPmodel.

These observations give rise tomany opportunities for the integration of these two type of

approahes, e.g., a preedene based modelan be maintainedin the S-graphalgorithmfor

providingsharperbounds,oraddressingontinuousdeisions,thatarediulttoimplement

with graphs.

Critial modeling issues

Asithasalreadybeenmentioned,mostoftheapproahes,espeiallytheMILPformulations

do notgo undermathematialvalidation. The ommonpratie isthat the modelis

devel-oped based on a new idea, and the validationis only empirial,i.e., the implementation of

the modelisompared onseveral exampleswith previousmodels fromthe literature. Ifthe

result isthe same onallofthe tested examples,that approahisonsidered tobeaurate.

For the earlier, in a way simpler models, the equations were mostly straight-forward,

and even though, notheoretial proof was attahed. Readers ould aeptwith ondene

that the result willbe orret. As the formulationsdeveloped, however, they beame more

and moreompliated. Inordertoredue theomputationaltime, theshedulingproblems

were takledfrom dierent and unusual "angles", whih brought great suess onone side,

the side of performane. On the other hand, the implementation of the same onstraints

beome more ompliated and "triky". The onstraints are no longer straight forward,

whih isnot a problemitself, however, the validity of the model beame "less onvining".

The situationiseven worse, whenthe problemdenition foranapproahisinomplete,i.e.,

it isnot unambiguouslydened, whatkind of problems are addressable with the approah,

what kindofassumptions are madetowards the parameters orthe behaviorofthe system 1

.

This fearis not unsubstantiated, asseveral modelingissues were already unveiled inthe

literature, and there is nothing, whih would suggest, that there are noundisovered ones.

Before introduingsome of these issues in detail, the nature of modelingmistakes must be

investigatedrst. AlloftheapproahesdisussedinChapter2arebasedontheexamination

ofasearhspae,andndingthebest andidateamongthem. Fromthemathematialpoint

of view, these approahes an have two deienies, assuming that the ranking of solution

andidatesisorret 2

: under-andover-onstraining. Togivetheauratedenitionofthese,

some additionalterms should be introdued rst, whihwill beused throughoutthe whole

doument:

1

Part of thisroots bak to the problemof the lakof standardized denitions for problem lasses, see

Setion 1.2.

2

Inmostoftheases,thisholds. Thereare,however,examples,whentheobjetivevalueofaandidate

isnotevaluated orretly[6℄

solution is aterm used fora shedule,and in the same time forits representation in

a mathematialmodelif it exist.

pratially feasible solution isa solutionthat an beexeuted inreal life.

pratially infeasible solution isasolutionthat violatessomeoftheonstraintsof

real life, thus itannot be exeuted.

pratially optimal solution is the best solution among the pratially feasible

ones.

model-feasible solution is a term used with respet to a model or approah for

desribing a solutionthat is plausible for that approah, i.e., it is in its feasible

region.

model-infeasible solution is also dened for a model for those solutions that are

not in itsfeasible region.

model-optimal solution is the best model-feasiblesolution

Ifnot statedotherwise,the termsfeasibleand infeasiblewillrefertopratiallyfeasible and

pratially infeasiblesolutions,respetively.

One wouldassume,thatinaseofapropermodel,theset ofthemodel-feasiblesolutions

is exatly the same as the set of the (pratially) feasible ones. Moreover, if an approah

ormodelhas model-feasible/model-infeasiblesolutions whih are (pratially)infeasible /

feasible,thenitisfundamentallywrong. Theseapproahes, however, are notusedfor

gener-atingallofthe feasiblesolutions,onlytoprovideatleastoneoptimal,thustherequirements

from the previous sentene are unneessarily limiting.

Having infeasible solutions in the feasible region of a model is a ommon pratie in

optimization to enhane performane, and it does not result in improperresults as long as

it is guaranteed that the objetive value of the pratially infeasible solutions willnot get

better than the optimal value. As an example, the integer variables of MILP problems,

whose matries satisfy the requirements of total unimodularity (assignment problem for

example) an be relaxed to ontinuous variables, and the optimalsolution isensured to be

integer[127℄. This relaxation signiantlyredues the omputationalneed obviously.

Similarly,reduing thesearhspae,and exludingmanypratiallyfeasiblesolutionsis

aeptable if it is ensured that at least one optimalsolution remains in the feasible region

of the model. Holzinger etal.[51℄ has improved the eieny of equipment-based

branh-and-boundalgorithmoftheS-graphframeworkbymagnitudesforproblemswithhighbath

numbers using exatlythis idea.

Thus, in order for a model to malfuntion, it has to fail in at least one of the following

ways for some probleminstanes (not neessarily forall of them):

Under-onstraining: At least one pratially infeasible solution is model-feasible

andithasbetterobjetivevaluethantheoptimal,i.e.,themodel-optimalsolution

is pratiallyinfeasible.

Over-onstraining: All of the pratially feasible and optimal solutions are

model-infeasible, i.e., the model-optimal solutionis pratiallysuboptimal.

Unfortunately, both type of mistakes has appeared in the literature of bath proess

sheduling, and inmany ases the modelbaredboth type ofissues.

3

The followingsetions

willintrodueand investigate this kind of issues.

3.1 Minimal suient number of time points

3.1 Minimal suient number of time points