Page - 62 - in Algorithms for Scheduling Problems
Image of the Page - 62 -
Text of the Page - 62 -
Algorithms 2018,11, 43
Step4. Compute thenewnumberof just-in-time jobs (nJITā).
IfnJITā<nJIT (thenewsolution isworse thanthepreviousone), returnboththe lastoperationof
JE andtheoperationsof the following jobs to theirpreviouspositions, set Jinitial = J[initial] +1andgoto
Step2.
Else (thenewsolution isbetter thanorequal to thepreviousone), keep thenewschedule, set
Jinitial = J[E] +1andgotoStep2.
Algorithm1.Pseudo-codeof timingadjustmentprocedure.
Theļ¬rst fourheuristicsproposedareadaptationsof theNEHalgorithmās insertionmethodand
aregiven inAlgorithms2ā5.H1andH2employtheEDDruleas the initialorderwhileH3andH4
consider theMSTrule. Another feature is thatH2andH4improveonH1andH3, respectively,by
usingneighborhoodsearch in thepartial sequence.
Twotypesofneighborhoodsearchareemployed, insertionandpermutation, in thesameway
as [20].Givenasequence (orapartial sequence)ofn jobs, its insertionneighborhoodconsistsofall
(nā1)2 sequencesobtainedby removinga job fromitsplaceandrelocating it to anotherposition.
Thepermutationneighborhoodiscomposedbyalln(nā1)/2sequencesobtainedbypermutingthe
positionsof two jobs (seeExample1).
Table 2 summarizes the main procedures used in each one of the constructive heuristics.
Example1. Consider the initial sequencewith four jobs: {J3, J2, J1, J4}. The insertionneighborhood
results in (nā1)2=9sequences:
- Initially, inserting theļ¬rst job J3: {J2, J3, J1, J4}, {J2, J1, J3, J4}, {J2, J1, J4, J3};
- Then, inserting thesecond job J2 only in thepositionsnotconsideredyet: {J3, J1, J2, J4}, {J3, J1, J4,
J2}; forexample, it isnotnecessary to insert J2 in theļ¬rstpositionbecause thesequenceresulting
wasalreadylisted;and
- Next, the third job J1 is insertedand, lastly, the fourthone J4: {J1, J3, J2, J4}, {J3, J2, J4, J1}, {J4, J3, J2,
J1}, {J3, J4, J2, J1}.
Starting again from the initial sequence {J3, J2, J1, J4} of the same example, the permutation
neighborhoodresults inn(nā1)/2=6sequences:
- First, theļ¬rst two jobsarepermuted: {J2, J3, J1, J4}; thentheļ¬rstandthird jobs: {J1, J2, J3, J4}; and
theļ¬rstandfourth jobs: {J4, J2, J1, J3};
- Next, from the initial sequence, the secondand third arepermutated: {J3, J1, J2, J4}; and the
secondandfourth: {J3, J4, J1, J2}; and
- Lastly, fromthe initial sequence, the thirdandfourth jobsarepermutated: {J3, J2, J4, J1}.
HeuristicH1
Step1. Order jobsaccordingto theEDDrule (in thecaseofa tie,use the lowerāpjk).
Step2. For theļ¬rst two jobs,apply the timingadjustmentprocedure toļ¬ndthebestpartial sequence
(betweenthese twopossibilities)with the lowernJIT.
Step3. Forh=3ton,do:
Keepingtherelativepositionsof the jobsof thepartial sequence, insert thehth jobof theorder
deļ¬nedinStep1 inallpossiblepositionsandapply the timingadjustmentprocedure ineach
insertion; consider thenewpartial sequencewith thebestnJIT (in the caseof a tie, use the
upperposition).
Algorithm2.Pseudo-codeofheuristicH1.
HeuristicH2
Step1. Order jobsbytheEDDrule (in thecaseofa tie,use the lowerāpjk).
62
back to the
book Algorithms for Scheduling Problems"
Algorithms for Scheduling Problems
- Title
- Algorithms for Scheduling Problems
- Authors
- Frank Werner
- Larysa Burtseva
- Yuri Sotskov
- Editor
- MDPI
- Location
- Basel
- Date
- 2018
- Language
- English
- License
- CC BY 4.0
- ISBN
- 978-3-03897-120-7
- Size
- 17.0 x 24.4 cm
- Pages
- 212
- Keywords
- Scheduling Problems in Logistics, Transport, Timetabling, Sports, Healthcare, Engineering, Energy Management
- Categories
- Informatik
- Technik