• No results found

Flexible Flow Shop with Sequence Dependent Setups

2. COMPUTATIONAL COMPARISON OF DIRECT POSITIONAL

2.3. Mathematical Models

2.3.4. Flexible Flow Shop with Sequence Dependent Setups

2.3.4.1. Direct Positional Model 2.3.4.1.1. Sets

J = 1..n Jobs

I = 1..m Machines

𝐼𝑛𝑑 ∈ 𝐼 Machines that do not require tubing beforehand

πΌπ‘‘βˆˆ 𝐼 Machines that require tubing beforehand

K = 1..n Positions on the machines

U = 1..o Geometries

H = 1..e Tubing Stations

2.3.4.1.2. Parameters

n = number of jobs

m = number of machines

o = number of geometries

e = number of tubing stations

𝑑𝑗 = Due date of job 𝑗

π‘Žπ‘’,𝑖 = 1 if geometry 𝑒 can be done on machine 𝑖, 0 otherwise

28

𝑝𝑒,𝑖 = Unit processing time of geometry 𝑒 on machine 𝑖 𝑐𝑗 = Penalty for tardiness of job 𝑗

𝑠𝑗 = Earliest start time of job 𝑗

𝑓𝑒,𝑣,𝑖 = Setup time from geometry 𝑒 to 𝑣 on machine 𝑖

𝑔𝑒,𝑖 = Initial setup time of geometry 𝑒 on machine 𝑖 π‘žπ‘—,𝑒 = 1 if job 𝑗 is geometry 𝑒, 0 otherwise

π‘Ÿπ‘’,β„Ž = Unit tubing time of geometry 𝑒 on tubing station β„Ž

𝑀𝑒,β„Ž = 1 if geometry 𝑒 can be processed on station β„Ž, 0 otherwise

𝛼𝑗 = Size of job 𝑗

𝑀 = π‘€π‘Žπ‘₯𝑗(𝑠𝑗) + βˆ‘π‘–βˆˆ 𝐼,π‘—βˆˆ 𝐽,π‘’βˆˆ π‘ˆ π›Όπ‘—βˆ— π‘žπ‘—,π‘’βˆ— 𝑝𝑒,𝑖 + βˆ‘β„Žβˆˆ 𝐻,π‘—βˆˆ 𝐽,π‘’βˆˆ π‘ˆπ›Όπ‘—βˆ— π‘žπ‘—,π‘’βˆ— π‘Ÿπ‘’,β„Ž +

βˆ‘π‘’βˆˆ π‘ˆ,π‘£βˆˆ π‘ˆ,π‘–βˆˆ 𝐼𝑓𝑒,𝑣,𝑖 + βˆ‘π‘’βˆˆ π‘ˆ,π‘–βˆˆ 𝐼𝑔𝑒,𝑖 A very large number

2.3.4.1.3. Variables

𝐢max = Makespan - completion time of all jobs

𝑑𝐾,𝑖 = Completion time of jobs at position k, k= 0…n, on machine 𝑖 𝐿𝑗 = Tardiness of job 𝑗

π‘₯𝑗,π‘˜,𝑖 = 1 if job 𝑗 is assigned to position π‘˜ on machine 𝑖, 0 otherwise

𝑦𝑒,𝑣,𝑖,π‘˜ = 1 if there is a setup from geometry 𝑒 to 𝑣 on machine 𝑖 at position π‘˜ πœπ‘˜,β„Ž = Completion time of job at position k, k= 0…n, on tubing station β„Ž

29 Constraint 1 makes sure that the makespan is after all jobs on all machines are complete.

Constraint 2 calculates completion time of the job 𝑗 at position π‘˜ on machine 𝑖 as after completion time of previous position π‘˜ βˆ’ 1 plus the processing time of job 𝑗 on machine 𝑖 plus the setup time from geometry 𝑒 to geometry 𝑣 on machine 𝑖, if there is a setup at that position. Constraint 3 ensures the completion time of job 𝑗 at position π‘˜ on machine 𝑖 as after possible start time of job 𝑗 after tubing station, plus processing time of job 𝑗, if job 𝑗 is assigned to position π‘˜ on machine 𝑖. For the set of jobs that there is no tubing, the

30

earliest start time and possible start time after tubing are equal, using constraint 4.

Constraint 5 ensures if job 𝑗 is assigned to position π‘˜ on machine 𝑖 (notice the big M parameter becomes zero), then it must be completed at its due date or a tardiness is incurred. Constraint 6 ensures all jobs are assigned to a machine that can process that job and to a position on that machine. Constraint 7 initiates the position 0's completion time as the initial setup time of job 𝑗 at position 1, job 𝑗 being geometry 𝑒. Constraint 8

ensures job 𝑗 is assigned to at most one position and one machine. Constraint 9 ensures at most one job is assigned to position π‘˜ on machine 𝑖. Constraint 10 ensures smaller

positions are filled first. Constraint 11 ensure that if job 𝑗, which is geometry 𝑒, and job 𝑙, which is geometry 𝑣, is assigned to positions π‘˜ βˆ’ 1 and π‘˜, then there is a setup from geometry 𝑒 to 𝑣. Constraint 12 calculates completion time of the job 𝑗 at position π‘˜ on tubing station β„Ž as after completion time of previous position π‘˜ βˆ’ 1 plus the tubing time of job 𝑗 on tubing station β„Ž. Constraint 13 ensures the completion time of job 𝑗 at position π‘˜ on tubing station β„Ž as after earliest start time of job 𝑗 plus tubing time of job 𝑗, if job 𝑗 is assigned to position π‘˜ on tubing station β„Ž. Constraint 14 ensures all jobs are assigned to a tubing station that can process that job and to a position on that station, if the job is not assigned to WAT. Start time for tubing at position 0 is zero using constrain 15.

Constraint 16 ensures job j is assigned to at most one position and one tubing station, if it is not assigned to a machine that requires tubing. Constraint 17 ensures at most one job is assigned to position π‘˜ on tubing station β„Ž. Constraint 18 ensures smaller positions are filled first on tubing stations also. Constraint 19 links tubing completion time of a job to possible start time on machines that require tubing.

2.3.4.2. Relative Positional Model

31 2.3.4.2.1. Parameters

Same as above 2.3.4.2.2. Sets

𝑄𝑖 = Jobs that can be processed on machine 𝑖 (𝑗 | βˆ‘ π‘žπ‘’ 𝑗𝑒 βˆ— π‘Žπ‘’π‘– > 0)

𝑄0𝑖 = {0} βˆͺ 𝑄𝑖 Jobs that can be processed on machine 𝑖, with artificial job 0 𝑄𝐿𝑖 = 𝑄0𝑖βˆͺ {𝑛 + 1} Jobs that can be processed on machine 𝑖, with artificial final job 𝑛 + 1

𝑄0𝐿𝑖 = {0} βˆͺ 𝑄𝑖 βˆͺ {𝑛 + 1} Jobs that can be processed on machine 𝑖, with both artificial jobs

𝑅𝑗 = Machines that job j requires (𝑖 | βˆ‘ π‘žπ‘’ π‘—π‘’βˆ— π‘Žπ‘’π‘– > 0)

π‘Šβ„Ž = Jobs that can be processed on tubing station β„Ž (𝑗 | βˆ‘ π‘žπ‘’ π‘—π‘’βˆ— π‘€π‘’β„Ž > 0)

π‘Š0β„Ž = {0} βˆͺ π‘Šβ„Ž Jobs that can be processed on station β„Ž, with artificial job 0

π‘ŠπΏβ„Ž = π‘Šβ„Žβˆͺ {𝑛 + 1} Jobs that can be processed on station β„Ž, with artificial final job 𝑛 + 1

π‘Š0πΏβ„Ž = {0} βˆͺ π‘Šβ„Žβˆͺ {𝑛 + 1} Jobs that can be processed on station β„Ž, with both artificial jobs

𝑉𝑗 = Stations that job j requires (β„Ž | βˆ‘ π‘žπ‘’ π‘—π‘’βˆ— π‘€π‘’β„Ž > 0)

2.3.4.2.3. Variables

𝐢max = Makespan - completion time of all jobs

32

33

βˆ‘π‘˜βˆˆ π‘Š0β„Ž:π‘˜β‰ π‘—π‘§β„Ž,𝑗,π‘˜ = πœπ‘—,β„Ž βˆ€ (β„Ž ∈ 𝐻, 𝑗 ∈ π‘ŠπΏβ„Ž) (16)

𝜁0,β„Ž = 1 βˆ€ (β„Ž ∈ 𝐻) (17)

πœπ‘›+1,β„Ž = 1 βˆ€ (β„Ž ∈ 𝐻) (18)

βˆ‘β„Žβˆˆ π‘‰π‘—πœπ‘—,β„Ž = 1 βˆ’ 𝑦𝑖𝑛𝑑,𝑗 βˆ€ (𝑗 ∈ 𝐽, 𝑖𝑛𝑑 ∈ 𝐼𝑛𝑑) (19) πœŒπ‘—,𝑖𝑑 + 𝑀 βˆ— (1 βˆ’ πœπ‘—,β„Ž) β‰₯ πœπ‘—,β„Ž βˆ€ (𝑗 ∈ 𝐽, β„Ž ∈ 𝑉𝑗, 𝑖𝑑 ∈ 𝐼𝑑) (20) Constraint 1 makes sure that the makespan is after all jobs on all machines are complete.

Constraint 2 allows that if job 𝑗 follows job π‘˜, completion time of job 𝑗 is after

completion time of job π‘˜ plus processing time of job 𝑗 on machine 𝑖 and setup time from geometry 𝑒 to geometry 𝑣 on machine 𝑖 (given job 𝑗 is geometry 𝑒 and job π‘˜ is geometry 𝑣).Constraint 3 ensures the completion time of job 𝑗 on machine 𝑖 is after possible start time of job 𝑗 after tubing plus processing time of job 𝑗, if job 𝑗 is assigned to machine 𝑖.

Constraint 4 ensures that for the machine that don’t require tubing, the earliest start time and possible start time after tubing are equal because there is no tubing. Constraint 5 ensures if job 𝑗 is assigned to machine 𝑖 (notice the big M parameter becomes zero), then it must be completed at its due date or a tardiness is incurred. Constraint 6 assigns a successor for each job that is assigned to machine 𝑖, first job succeeds artificial job 0.

Constraint 7 assigns a predecessor for each job that is assigned to machine 𝑖, last job precedes artificial final job. Constraint 8 initiates the job 0's completion time as the initial setup time of job 𝑗 following job 0, job 𝑗 being geometry 𝑒. Constraint 9 allows artificial job 0 to occur on all machines. Constraint 10 allows artificial final job to occur on all machines. Constraint 11 assigns jobs to machines that can process them. Constraint 12 allows if job 𝑗 follows job 0, completion time of job 𝑗 is after initial setup time

(completion time of job 0) plus processing time of job 𝑗 on machine 𝑖. Constraint 13 ensures that the completion time of job 𝑗 on tubing station β„Ž is after earliest start time of job 𝑗 plus tubing time of job 𝑗, if job 𝑗 is assigned to tubing station β„Ž. Constraint 14

34

calculates completion time of the job 𝑗 on tubing station β„Ž as after completion time of previous job π‘˜ plus the tubing time of job 𝑗 on tubing station β„Ž. Constraint 15 assigns a successor for each job that is assigned to tubing station β„Ž, first job succeeds artificial job 0. Constraint 16 assigns a predecessor for each job that is assigned to tubing station β„Ž, last job precedes artificial final job. Constraint 17 allows artificial job 0 to occur on all tubing stations. Constraint 18 allows artificial final job to occur on all tubing stations.

Constraint 19 assigns jobs to tubing stations that can process them, if the job is not assigned to machines that don’t require tubing. Constraint 20 links tubing completion time of a job to possible start time on machines that require tubing.

2.4. Computational Study

Related documents