A Constrained Programming Model for the Optimization of Industrial-Scale Scheduling Problems in the Shipbuilding Industry
Abstract
:1. Introduction
- Output buffers: Machines have an output buffer downstream with limited capacity where the job can be stored once the operation on the machine is finished.
- Input buffers: Machines have an input buffer upstream with limited capacity where the job can be stored once the operation on the previous machine is finished.
- Pairwise buffers: Each pair of consecutive machines has a specific buffer to store the job, if necessary, when it goes from the machine upstream to the machine downstream.
- Job-dependent buffers: There is a dedicated buffer for each job, so the assignment of the operations of a job to buffers depends on the job itself.
- Blocking scheduling problem: A special case where buffers have no capacity, so operations may block machines if subsequent machines are busy.
2. The Shipbuilding Manufacturing Process
- WA1, WA2: Workshops for assembly operations. Cells in WA1 and WA2 can also execute outfitting operations if needed.
- WO1, WO2: Workshops designed for outfitting operations. Cells belonging to WO1 and WO2 can also perform assembly operations if needed.
- BTC: Outside block turning cells for subblock turning.
- PC: Painting cabin.
- SW: Slipway for block erection.
- Subblock assembly 1 (SB-A1): Sheets and profiles that have been cut, formed, and welded are delivered to subblock assembly 1 area (SB-A1) to form subblock subassemblies. It can be executed in WA1 and WA2 cells.
- Subblock assembly 2 (SB-A2): Subblock subassemblies are welded together to form subblocks. This operation can be continued in WA1 and WA2 workshops or executed in WO1 and WO2 if necessary.
- Turning (SB-T): Some subblocks must be turned upside-down to proceed to block assembly. Turning can only be performed in BTC.
- Block assembly (B-A): Subblocks are welded together to form blocks, which are the component parts of the frigate hull. This can be executed in WA1, WA2, WO1, WO2, or in the previous cell of BTC.
- Outfitting 1 (B-O1): Piping, brackets, and other equipment fabricated in auxiliary workshops are installed on the block. This can be performed in WO1 and WO2 or in WA1 and WA2 if necessary.
- Blasting and Painting (B-P): Block blasting and painting are performed in painting cabins. Blasting and painting can only be performed in PCs.
- Outfitting 2 (B-O2): Electrical equipment, ducts, and other equipment fabricated in auxiliary workshops that could have been affected by the painting process are installed on the painted block. This can only be performed in WO2.
- Block Erection: Once blocks are completed, they are erected and welded in a slipway to form the frigate hull according to a predefined strategy. Each block enables adjacent blocks to be erected and welded, so the production of blocks should be adjusted to hull construction to avoid unnecessary blockages and storage. This is executed in the SP.
3. Materials and Methods
3.1. Problem Statement
- The set of jobs are to be processed in a set of stages .
- Each job is composed of a variable number of operations to be executed in the set of stages . For each job, there is a predefined sequence to execute the operations which depends on the type of job, not necessarily using all the stages.
- Only one operation of a given job can be processed at a time in a given stage.
- Each stage is made up of a subset of workstations . A workstation can perform operations in various stages, thus belonging simultaneously to the given stages.
- One given workstation can only perform one operation at a time. No other equipment constraint is considered.
- For assembly operations, the set of jobs is split into two subsets and to consider subassemblies and final assemblies .
- represents the set of the last operation of jobs
- Jobs are available to be scheduled at time 0.
- Jobs can only start processing when all their subassemblies (complementary jobs ) are completed.
- Operations of jobs follow always the same sequence of stages.
- Operations of jobs follow always the same sequence of stages which is different from jobs operations’ sequence.
- Both jobs and may have operations assigned to the same stage .
- For a given operation of a job , the processing time is always known in advance.
- Transportation times of jobs between stages are negligible and thus ignored. The same happens with setup and changeover times.
- Machine breakdowns and preventive operations are not considered.
- All model parameters such as processing times are deterministic.
- The minimization of the makespan (MK), which is the total time to complete all the operations belonging to all jobs.
- The minimization of the total tardiness (DD), which is the sum of the tardiness of all jobs according to predefined due dates.
- There is a set of storage areas to store jobs when the next operation cannot be processed for workstation availability.
- Each storage area is composed of a subset of buffers of one unit of capacity.
- The size of the storage area is given by the length of the subset of buffers .
- The size of the storage area is a positive integer that ranges from 0 to . A size of for all storage areas simplifies the problem to the FJSP with assembly operations.
- For a given job , the list of operations is modified so that between every two operations , a new operation is inserted and assigned to storage area .
- The set of single-unit buffers are modeled as workstations with a processing time of 0 or higher.
- Blocking FJSP with assembly operations: The size of all storage areas is null or 0.
- FJSP with assembly operations with output stage-dependent buffers: Each stage has been assigned an output storage area with limited capacity () to move jobs when their operation in the current stage has been finished.
- Jobs represent the blocks and jobs represent the subblocks.
- A workstation represents a workshop slot or cell for performing operations in a given block or subblock.
- Stages are groups of workstations according to the shipbuilding operations shown in Figure 1. Therefore, each stage represents a shipbuilding process and not a workshop.
- Operations are the shipbuilding processes represented in Figure 1 from subblock “Assembly 1” to “Outfitting 2”.
- Block erection operation is indirectly considered by means of due dates. Thus, block erection start dates are parameters of the model that considers due dates.
- Subblocks follow the sequence of operations represented in Figure 1 from “Assembly 1” to “Block Assembly”. Blocks follow the sequence of operations from “Outfitting 1” to “Outfitting 2”.
3.2. Mathematical Formulations
3.2.1. MILP Model
- Minimize Makespan (MK):
- Minimize Total Tardiness (TT):
- Allocation Constraints:
- Time Constraints:
- Sequencing Constraints:
- Assembly Constraints:
- Limited Buffer Capacity Constraint:
3.2.2. CPO Model
- Minimize Makespan (MK):
- Minimize Total Tardiness (TT):
- Allocation Constraints:
- Timing Constraints:
- Sequencing Constraints:
- Assembly Constraints:
- Limited Buffer Capacity Constraint:
3.3. Shipbuilding Case Data and Experiments
3.4. Experimental Setup
4. Results and Discussion
4.1. Case Studies
4.2. Shipbuilding Case
5. Conclusions
Author Contributions
Funding
Acknowledgments
Conflicts of Interest
Appendix A
Subblock ID | Stage | Duration (h) * | Stage | Duration (h) * | Stage | Duration (h) * |
---|---|---|---|---|---|---|
1 | s1 | 922 | s2 | 397 | s3 | 24 |
2 | s1 | 410 | s2 | 300 | s3 | 37 |
3 | s1 | 375 | s2 | 416 | ||
4 | s1 | 874 | s2 | 112 | s3 | 28 |
5 | s1 | 529 | s2 | 430 | s3 | 39 |
6 | s1 | 415 | s2 | 225 | ||
7 | s1 | 985 | s2 | 302 | s3 | 41 |
8 | s1 | 863 | s2 | 322 | ||
9 | s1 | 1272 | s2 | 147 | s3 | 30 |
10 | s1 | 424 | s2 | 363 | ||
11 | s1 | 1128 | s2 | 213 | s3 | 25 |
12 | s1 | 1359 | s2 | 476 | ||
13 | s1 | 682 | s2 | 429 | s3 | 42 |
14 | s1 | 1491 | s2 | 239 | s3 | 36 |
15 | s1 | 334 | s2 | 181 | ||
16 | s1 | 371 | s2 | 118 | ||
17 | s1 | 1337 | s2 | 131 | s3 | 37 |
18 | s1 | 1466 | s2 | 119 | ||
19 | s1 | 1054 | s2 | 453 | s3 | 32 |
20 | s1 | 760 | s2 | 183 | s3 | 33 |
21 | s1 | 765 | s2 | 357 | s3 | 24 |
22 | s1 | 1229 | s2 | 372 | s3 | 35 |
23 | s1 | 874 | s2 | 403 | ||
24 | s1 | 620 | s2 | 300 | s3 | 25 |
25 | s1 | 347 | s2 | 392 | s3 | 26 |
26 | s1 | 1406 | s2 | 174 | ||
27 | s1 | 1260 | s2 | 153 | s3 | 43 |
28 | s1 | 1048 | s2 | 460 | s3 | 26 |
29 | s1 | 566 | s2 | 461 | s3 | 30 |
30 | s1 | 733 | s2 | 233 | ||
31 | s1 | 459 | s2 | 356 | s3 | 26 |
32 | s1 | 580 | s2 | 163 | s3 | 35 |
33 | s1 | 473 | s2 | 320 | ||
34 | s1 | 1546 | s2 | 298 | s3 | 38 |
35 | s1 | 938 | s2 | 362 | ||
36 | s1 | 1051 | s2 | 264 | s3 | 31 |
37 | s1 | 647 | s2 | 168 | s3 | 26 |
38 | s1 | 1099 | s2 | 367 | s3 | 25 |
39 | s1 | 542 | s2 | 475 | ||
40 | s1 | 670 | s2 | 370 | s3 | 26 |
41 | s1 | 966 | s2 | 172 | ||
42 | s1 | 1332 | s2 | 186 | s3 | 44 |
43 | s1 | 366 | s2 | 452 | s3 | 44 |
44 | s1 | 324 | s2 | 427 | s3 | 39 |
45 | s1 | 1410 | s2 | 164 | ||
46 | s1 | 619 | s2 | 168 | ||
47 | s1 | 1085 | s2 | 123 | s3 | 37 |
48 | s1 | 1117 | s2 | 220 | s3 | 33 |
49 | s1 | 1536 | s2 | 400 | s3 | 32 |
50 | s1 | 433 | s2 | 177 |
Block ID | Stage | Duration (h) * | Stage | Duration (h) * | Stage | Duration (h) * | Stage | Duration (h) * | Due Date (h) * |
---|---|---|---|---|---|---|---|---|---|
51 | s4 | 125 | s5 | 506 | s6 | 265 | s7 | 176 | 2400 |
52 | s4 | 256 | s5 | 355 | s6 | 383 | s7 | 475 | 2600 |
53 | s4 | 346 | s5 | 187 | s6 | 347 | s7 | 370 | 2700 |
54 | s4 | 481 | s5 | 459 | s6 | 379 | s7 | 348 | 3000 |
55 | s4 | 389 | s5 | 624 | s6 | 322 | s7 | 269 | 3000 |
56 | s4 | 184 | s5 | 212 | s6 | 271 | s7 | 358 | 3000 |
57 | s4 | 272 | s5 | 464 | s6 | 347 | s7 | 473 | 3100 |
58 | s4 | 438 | s5 | 472 | s6 | 303 | s7 | 160 | 3100 |
59 | s4 | 326 | s5 | 345 | s6 | 331 | s7 | 433 | 3100 |
60 | s4 | 289 | s5 | 355 | s6 | 325 | s7 | 448 | 3300 |
61 | s4 | 306 | s5 | 343 | s6 | 323 | s7 | 423 | 3300 |
62 | s4 | 236 | s5 | 485 | s6 | 252 | s7 | 350 | 3500 |
63 | s4 | 298 | s5 | 510 | s6 | 336 | s7 | 222 | 3700 |
64 | s4 | 304 | s5 | 320 | s6 | 254 | s7 | 276 | 3700 |
65 | s4 | 462 | s5 | 334 | s6 | 263 | s7 | 364 | 3900 |
66 | s4 | 419 | s5 | 514 | s6 | 261 | s7 | 233 | 3900 |
67 | s4 | 437 | s5 | 483 | s6 | 243 | s7 | 397 | 4100 |
68 | s4 | 265 | s5 | 607 | s6 | 267 | s7 | 448 | 4100 |
69 | s4 | 228 | s5 | 308 | s6 | 347 | s7 | 478 | 4300 |
70 | s4 | 412 | s5 | 455 | s6 | 289 | s7 | 184 | 4300 |
71 | s4 | 460 | s5 | 519 | s6 | 363 | s7 | 369 | 4500 |
72 | s4 | 276 | s5 | 314 | s6 | 248 | s7 | 329 | 4500 |
73 | s4 | 295 | s5 | 398 | s6 | 322 | s7 | 457 | 4700 |
74 | s4 | 383 | s5 | 259 | s6 | 344 | s7 | 239 | 4700 |
75 | s4 | 433 | s5 | 469 | s6 | 282 | s7 | 387 | 4900 |
Block ID | Subassemblies (Subblocks ID) | ||
---|---|---|---|
51 | 1 | 2 | 3 |
52 | 4 | ||
53 | 5 | 6 | |
54 | 7 | 8 | |
55 | 9 | 10 | |
56 | 11 | 12 | |
57 | 13 | ||
58 | 14 | 15 | 16 |
59 | 17 | 18 | |
60 | 19 | 20 | |
61 | 21 | 22 | 23 |
62 | 24 | ||
63 | 25 | 26 | |
64 | 27 | 28 | |
65 | 29 | 30 | 31 |
66 | 32 | 33 | |
67 | 34 | 35 | |
68 | 36 | ||
69 | 37 | 38 | 39 |
70 | 40 | 41 | |
71 | 42 | 43 | |
72 | 44 | 45 | |
73 | 46 | 47 | 48 |
74 | 49 | ||
75 | 50 |
References
- Okubo, Y.; Mitsuyuki, T. Ship Production Planning Using Shipbuilding System Modeling and Discrete Time Process Simulation. J. Mar. Sci. Eng. 2022, 10, 176. [Google Scholar] [CrossRef]
- Song, Y.J. Research on the development of simulation-based ship block logistics system based on data, flow and space modelling. Int. J. Manag. Decis. Mak. 2017, 16, 407–427. [Google Scholar] [CrossRef]
- Oliveira, A.; Gordo, J.M. Lean tools applied to a shipbuilding panel line assembling process. Brodogradnja 2018, 69, 53–64. [Google Scholar] [CrossRef]
- Shahsavar, A.; Sadeghi, J.K.; Shockley, J.; Ojha, D. On the relationship between lean thinking and economic performance in shipbuilding: A proposed model and comparative evaluation. Int. J. Prod. Econ. 2021, 239, 108202. [Google Scholar] [CrossRef]
- Basán, N.P.; Achkar, V.G.; Méndez, C.A.; García-Del-Valle, A. A hybrid simulation-based optimization approach for scheduling dinamic block assembly in shipbuilding. In Proceedings of the 29th European Modeling and Simulation Symposium, EMSS 2017, Held at the International Multidisciplinary Modeling and Simulation Multiconference, I3M 2017, Barcelona, Spain, 18–20 September 2017; pp. 83–90. [Google Scholar]
- Kolich, D.; Storch, R.L.; Fafandjel, N. Lean manufacturing in shipbuilding with Monte Carlo simulation. In Proceedings of the RINA, Royal Institution of Naval Architects—International Conference on Computer Applications in Shipbuilding 2011, Trieste, Italy, 20–22 September 2011; pp. 159–167. [Google Scholar] [CrossRef]
- Basán, N.P.; Cóccola, M.E.; del Valle, A.G.; Méndez, C.A. An efficient MILP-based decomposition strategy for solving large-scale scheduling problems in the shipbuilding industry. Optim. Eng. 2019, 20, 1085–1115. [Google Scholar] [CrossRef]
- Cebral-Fernandez, M.; Rouco-Couzo, M.; Pazos, M.Q.; Crespo-Pereira, D.; Del Valle, A.G.; Abeal, R.M. Application of a multi-level simulation model for aggregate and detailed planning in shipbuilding. In Proceedings of the Winter Simulation Conference, Las Vegas, NV, USA, 3–6 December 2017; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2017; pp. 3864–3875. [Google Scholar] [CrossRef]
- Basan, N.P.; Achkar, V.G.; Mendez, C.A.; Garcia-Del-Valle, A. A heuristic simulation-based framework to improve the scheduling of blocks assembly and the production process in shipbuilding. In Proceedings of the Winter Simulation Conference, Las Vegas, NV, USA, 3–6 December 2017; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2017; pp. 3218–3229. [Google Scholar] [CrossRef]
- Basán, N.P.; Cóccola, M.E.; del Valle, A.G.; Méndez, C.A. Scheduling of flexible manufacturing plants with redesign options: A MILP-based decomposition algorithm and case studies. Comput. Chem. Eng. 2020, 136, 106777. [Google Scholar] [CrossRef]
- Yue, W.; Rui, M.; Yan, L. The research of shipbuilding schedule planning and simulation optimization technique based on constant work-in-process system. J. Ship Prod. Des. 2018, 34, 20–31. [Google Scholar] [CrossRef]
- Wang, C.; Mao, Y.S.; Xiang, Z.Q.; Zhou, Y.Q. Ship block logistics simulation based on discrete event simulation. Int. J. Online Eng. 2015, 11, 16–21. [Google Scholar] [CrossRef] [Green Version]
- Woo, J.H.; Oh, D. Development of simulation framework for shipbuilding. Int. J. Comput. Integr. Manuf. 2018, 31, 210–227. [Google Scholar] [CrossRef]
- Ham, A.M.; Cakici, E. Flexible job shop scheduling problem with parallel batch processing machines: MIP and CP approaches. Comput. Ind. Eng. 2016, 102, 160–165. [Google Scholar] [CrossRef]
- Xiong, F.; Xing, K.; Wang, F. Scheduling a hybrid assembly-differentiation flowshop to minimize total flow time. Eur. J. Oper. Res. 2015, 240, 338–354. [Google Scholar] [CrossRef]
- Maravelias, C.T. A decomposition framework for the scheduling of single- and multi-stage processes. Comput. Chem. Eng. 2006, 30, 407–420. [Google Scholar] [CrossRef]
- Harjunkoski, I.; Bauer, R. Industrial scheduling solution based on flexible heuristics. Comput. Chem. Eng. 2017, 106, 883–891. [Google Scholar] [CrossRef]
- Verbiest, F.; Cornelissens, T.; Springael, J. A matheuristic approach for the design of multiproduct batch plants with parallel production lines. Eur. J. Oper. Res. 2019, 273, 933–947. [Google Scholar] [CrossRef]
- Laborie, P. An update on the comparison of MIP, CP and hybrid approaches for mixed resource allocation and scheduling. In Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Berlin/Heidelberg, Germany, 2018; pp. 403–411. [Google Scholar] [CrossRef]
- Da Col, G.; Teppan, E.C. Industrial-size job shop scheduling with constraint programming. Oper. Res. Perspect. 2022, 9, 100249. [Google Scholar] [CrossRef]
- de Oliveira, R.M.E.S.; de Castro Ribeiro, M.S.F.O. Comparing Mixed & Integer Programming vs. Constraint Programming by solving Job-Shop Scheduling Problems. Indep. J. Manag. Prod. 2015, 6, 211–238. [Google Scholar] [CrossRef] [Green Version]
- Heinz, S.; Beck, J.C. Reconsidering mixed integer programming and MIP-based hybrids for scheduling. In Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Berlin/Heidelberg, Germany, 2012; pp. 211–227. [Google Scholar] [CrossRef]
- Hooker, J.N. A hybrid method for the planning and scheduling. Constraints 2005, 10, 385–401. [Google Scholar] [CrossRef]
- Heinz, S.; Ku, W.Y.; Beck, J.C. Recent improvements using constraint integer programming for resource allocation and scheduling. In Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Berlin/Heidelberg, Germany, 2013; pp. 12–27. [Google Scholar] [CrossRef]
- Laborie, P. IBM ILOG CP Optimizer for detailed scheduling illustrated on three problems. In Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Berlin/Heidelberg, Germany, 2009; pp. 148–162. [Google Scholar] [CrossRef]
- Laborie, P.; Rogerie, J.; Shaw, P.; Vilím, P. IBM ILOG CP optimizer for scheduling: 20+ years of scheduling with constraints at IBM/ILOG. Constraints 2018, 23, 210–250. [Google Scholar] [CrossRef]
- Laborie, P.; Rogerie, J. Reasoning with conditional time-intervals. In Proceedings of the 21th International Florida Artificial Intelligence Research Society Conference, FLAIRS-21, Coconut Grove, FL, USA, 15–17 May 2008; pp. 555–560. Available online: www.aaai.org (accessed on 12 July 2023).
- Laborie, P.; Godard, D. Self-Adapting Large Neighborhood Search: Application to Single-Mode Scheduling Problems. In Proceedings of the MISTA-07, Paris, France, 28–31 August 2007; p. 8. Available online: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.107.4415&rep=rep1&type=pdf (accessed on 12 July 2023).
- Vilím, P.; Laborie, P.; Shaw, P. Failure-directed search for constraint-based scheduling. In Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Berlin/Heidelberg, Germany, 2015; pp. 437–453. [Google Scholar] [CrossRef]
- Zhang, P.; Song, S.; Niu, S.; Zhang, R. A Hybrid Artificial Immune-Simulated Annealing Algorithm for Multiroute Job Shop Scheduling Problem With Continuous Limited Output Buffers. IEEE Trans. Cybern. 2022, 52, 12112–12125. [Google Scholar] [CrossRef] [PubMed]
- Brucker, P.; Heitmann, S.; Hurink, J.; Nieberg, T. Job-shop scheduling with limited capacity buffers. OR Spectr. 2006, 28, 151–176. [Google Scholar] [CrossRef]
- Liu, S.Q.; Kozan, E.; Masoud, M.; Zhang, Y.; Chan, F.T.S. Job shop scheduling with a combination of four buffering constraints. Int. J. Prod. Res. 2018, 56, 3274–3293. [Google Scholar] [CrossRef]
- Papadimitriou, C.H.; Kanellakis, P.C. Flowshop Scheduling with Limited Temporary Storage. J. ACM (JACM) 1980, 27, 533–549. [Google Scholar] [CrossRef] [Green Version]
- Ruiz, R.; Vázquez-Rodríguez, J.A. The hybrid flow shop scheduling problem. Eur. J. Oper. Res. 2010, 205, 1–18. [Google Scholar] [CrossRef] [Green Version]
- Lebbar, G.; El Abbassi, I.; Jabri, A.; El Barkany, A.; Darcherif, M. Multi-criteria blocking flow shop scheduling problems: Formulation and performance analysis. Adv. Prod. Eng. Manag. 2018, 13, 136–146. [Google Scholar] [CrossRef] [Green Version]
- Fatemi-Anaraki, S.; Tavakkoli-Moghaddam, R.; Foumani, M.; Vahedi-Nouri, B. Scheduling of Multi-Robot Job Shop Systems in Dynamic Environments: Mixed-Integer Linear Programming and Constraint Programming Approaches. Omega (UK) 2023, 115, 102770. [Google Scholar] [CrossRef]
- Soltani, S.A.; Karimi, B. Cyclic hybrid flow shop scheduling problem with limited buffers and machine eligibility constraints. Int. J. Adv. Manuf. Technol. 2015, 76, 1739–1755. [Google Scholar] [CrossRef]
- Wang, X.; Tang, L. A tabu search heuristic for the hybrid flowshop scheduling with finite intermediate buffers. Comput. Oper. Res. 2009, 36, 907–918. [Google Scholar] [CrossRef]
- Yaurima, V.; Burtseva, L.; Tchernykh, A. Hybrid flowshop with unrelated machines, sequence-dependent setup time, availability constraints and limited buffers. Comput. Ind. Eng. 2009, 56, 1452–1463. [Google Scholar] [CrossRef]
- Andrés, C.; Maheut, J. Secuenciación con A lmacenes L imitados. Una R evisión de la Literatura. Dir. y Organ. 2 El Probl. de Secuenciación con al-Macenes Ltd. 2018, 66, 17–33. [Google Scholar]
- Python API Details—Gurobi Optimization. Available online: https://www.gurobi.com/documentation/9.5/refman/py_python_api_details.html (accessed on 12 June 2023).
- Docplex.cp Reference Manual—DOcplex.CP: Constraint Programming Modeling for Python V2.25 Documentation. Available online: https://ibmdecisionoptimization.github.io/docplex-doc/cp/refman.html (accessed on 12 June 2023).
- Laborie, P. Planning/Scheduling with CP Optimizer; IBM: Armonk, NY, USA, 2019. [Google Scholar]
Nomenclature | |
---|---|
Indices | |
Sets | |
Parameters | |
Continuous variables | |
Total tardiness | |
Binary variables | |
Nomenclature | |
---|---|
Parameters | |
L | |
Interval Variables | |
. | |
. | |
Functions | |
Workshop | Workstations (Cells) |
---|---|
WA1 | w1, w2, w3, w4, w5, w6, w7, w8, w9, |
WA2 | w10, w11, w12, w13, w14, w15, w16, w17, w18 |
WO1 | w19, w20, w21, w22 |
WO2 | w23, w24, w25, w26 |
BTC | w27, w28, w29, w30 |
PC | w31, w32, w33, w34 |
Stage | Stage Name | Workstations |
---|---|---|
s1 | Subblock Assembly 1 | w1, w2, w3, w4, w5, w6, w7, w8, w9, w10, w11, w12, w13, w14, w15, w16, w17, w18 |
s2 | Subblock Assembly 2 | w1, w2, w3, w4, w5, w6, w7, w8, w9, w10, w11, w12, w13, w14, w15, w16, w17, w18, w19, w20, w21, w22, w23, w24, w25, w26 |
s3 | Turning | w27, w28, w29, w30 |
s4 | Block Assembly | w1, w2, w3, w4, w5, w6, w7, w8, w9, w10, w11, w12, w13, w14, w15, w16, w17, w18, w19, w20, w21, w22, w23, w24, w25, w26, w27, w28, w29, w30 |
s5 | Outfitting 1 | w1, w2, w3, w4, w5, w6, w7, w8, w9, w10, w11, w12, w13, w14, w15, w16, w17, w18, w19, w20, w21, w22, w23, w24, w25, w26 |
s6 | Painting/Blasting | w31, w32, w33, w34 |
s7 | Outfitting 2 | w23, w24, w25, w26 |
Problem | Blocks × Subblocks (N × M) | Infinite Buffer Capacity | 0 Buffer Capacity | 1-Unit Buffer Capacity | MK | DD |
---|---|---|---|---|---|---|
SB-01-NBC-MK | 5 × 10 | x | x | |||
SB-01-0BC-MK | 5 × 10 | x | x | |||
SB-01-1BC-MK | 5 × 10 | x | x | |||
SB-01-NBC-DD | 5 × 10 | x | x | |||
SB-01-0BC-DD | 5 × 10 | x | x | |||
SB-01-1BC-DD | 5 × 10 | x | x | |||
SB-02-NBC-MK | 10 × 20 | x | x | |||
SB-02-0BC-MK | 10 × 20 | x | x | |||
SB-02-1BC-MK | 10 × 20 | x | x | |||
SB-02-NBC-DD | 10 × 20 | x | x | |||
SB-02-0BC-DD | 10 × 20 | x | x | |||
SB-02-1BC-DD | 10 × 20 | x | x | |||
SB-03-NBC-MK | 25 × 50 | x | x | |||
SB-03-0BC-MK | 25 × 50 | x | x | |||
SB-03-1BC-MK | 25 × 50 | x | x | |||
SB-03-NBC-DD | 25 × 50 | x | x | |||
SB-03-0BC-DD | 25 × 50 | x | x | |||
SB-03-1BC-DD | 25 × 50 | x | x |
Problem | MILP | MILP [10] | CP | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Name | J.* | S.* | A.* | Obj. | GAP | CPU Time (s) | Obj. | CPU Time (s) | Obj.* | GAP | CPU Time (s) |
CS0 | 9 | 3 | x | 31 | 0.00% | 0.25 | 31 | 0.98 | 31 | 0.00% | 0.02 |
CS1 | 79 | 24 | 24,774.2 | 48.86% | 3600 | 23,015 | 1762 | 22,930.1 | 0.00% | 1.26 | |
CS2.1 (4m) | 24 | 9 | x | 979 | 0.00% | 15.26 | 979 | 28.8 | 979 | 0.00% | 0.63 |
CS2.2 (6m) | 36 | 9 | x | 1355 | 8.34% | 3600 | 1355 | 455.7 | 1355 | 0.00% | 0.1 |
CS2.3 (8m) | 48 | 9 | x | 1764 | 28.04% | 3600 | 1764 | 1145 | 1764 | 0.00% | 0.25 |
CS3 | 75 | 7 | x | 200.5 | 31.62% | 3600 | 229.6 | 1100 | 179.9 | 16.9% | 3600 |
Problem | MILP Model | CP Model | ||
---|---|---|---|---|
Name | Cont. Variables | Bin. Variables | Variables | Constraints |
SB-01-NBC-MK | 47 | 1384 | 864 | 215 |
SB-01-0BC-MK | 32 | 1369 | 864 | 246 |
SB-01-1BC-MK | 63 | 1474 | 931 | 534 |
SB-01-NBC-DD | 47 | 1384 | 864 | 215 |
SB-01-0BC-DD | 34 | 1369 | 864 | 246 |
SB-01-1BC-DD | 65 | 1474 | 931 | 534 |
SB-02-NBC-MK | 93 | 4014 | 1694 | 396 |
SB-02-0BC-MK | 63 | 3984 | 1694 | 458 |
SB-02-1BC-MK | 125 | 4405 | 1823 | 1029 |
SB-02-NBC-DD | 100 | 4014 | 1694 | 396 |
SB-02-0BC-DD | 70 | 3984 | 1694 | 458 |
SB-02-1BC-DD | 132 | 4405 | 1823 | 1029 |
SB-03-NBC-MK | 233 | 19,499 | 4194 | 951 |
SB-03-0BC-MK | 158 | 19,424 | 4194 | 1108 |
SB-03-1BC-MK | 315 | 22,120 | 4513 | 2554 |
SB-03-NBC-DD | 255 | 19,499 | 4194 | 951 |
SB-03-0BC-DD | 180 | 19,424 | 4194 | 1108 |
SB-03-1BC-DD | 337 | 22,120 | 4513 | 2554 |
Problem | MILP Model | CP | ||||
---|---|---|---|---|---|---|
Name | MK (days) | GAP (%) | CPU Time (s) | MK (days) | GAP (%) | CPU Time (s) |
SB-01-NBC-MK | 191 | 0.00% | 0.18 | 191 | 0.00% | 0.05 |
SB-01-0BC-MK | 191 | 0.00% | 0.24 | 191 | 0.00% | 0.06 |
SB-01-1BC-MK | 191 | 0.00% | 0.2 | 191 | 0.00% | 0.06 |
SB-02-NBC-MK | 197 | 0.00% | 9.45 | 197 | 0.00% | 0.32 |
SB-02-0BC-MK | 197 | 0.00% | 5.12 | 197 | 0.00% | 1.24 |
SB-02-1BC-MK | 197 | 0.00% | 9.51 | 197 | 0.00% | 0.32 |
SB-03-NBC-MK | NA * | - | 300 | 267 | 19.30% | 300 |
SB-03-0BC-MK | NA * | - | 300 | 269 | 19.99% | 300 |
SB-03-1BC-MK | NA * | - | 300 | 279 | 22.81% | 300 |
Problem | MILP Model | CP | ||||||
---|---|---|---|---|---|---|---|---|
Name | MK (days) | TT (days) | GAP | CPU Time (s) | MK (days) | TT (days) | GAP | CPU Time (s) |
SB-01-NBC-DD | 191 | 1 | 0.00% | 0.18 | 191 | 1 | 0.00% | 0.05 |
SB-01-0BC-DD | 200 | 1 | 0.00% | 0.23 | 191 | 1 | 0.00% | 0.05 |
SB-01-1BC-DD | 191 | 1 | 0.00% | 0.21 | 191 | 1 | 0.00% | 0.05 |
SB-02-NBC-DD | 251 | 13 | 0.00% | 28.94 | 200 | 13 | 0.00% | 1.35 |
SB-02-0BC-DD | 249 | 32 | 0.00% | 43.73 | 199 | 13 | 0.00% | 77.09 |
SB-02-1BC-DD | 276 | 13 | 46.23% | 300 | 198 | 13 | 0.00% | 1.51 |
SB-03-NBC-DD | - | NA * | - | 300 | 296 | 18 | 60.95% | 300 |
SB-03-0BC-DD | - | NA * | - | 300 | 301 | 43 | 84.26% | 300 |
SB-03-1BC-DD | - | NA * | - | 300 | 294 | 18 | 60.95% | 300 |
CP Model | Objective | Max Content | U Buffer | U Workstations | |||||
---|---|---|---|---|---|---|---|---|---|
Case | MK (Days) | B1 | B2 | B3 | B4 | B5 | B6 | ||
SB-03-NBC-MK | 267 | 4 | 2 | 0 | 3 | 1 | 2 | 22.73% | 71.62% |
SB-03-0BC-MK | 269 | 0 | 0 | 0 | 0 | 0 | 0 | 48.15% | |
SB-03-1BC-MK | 279 | 1 | 1 | 1 | 1 | 1 | 1 | 8.48% | 61.73% |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Pernas-Álvarez, J.; Crespo-Pereira, D. A Constrained Programming Model for the Optimization of Industrial-Scale Scheduling Problems in the Shipbuilding Industry. J. Mar. Sci. Eng. 2023, 11, 1517. https://doi.org/10.3390/jmse11081517
Pernas-Álvarez J, Crespo-Pereira D. A Constrained Programming Model for the Optimization of Industrial-Scale Scheduling Problems in the Shipbuilding Industry. Journal of Marine Science and Engineering. 2023; 11(8):1517. https://doi.org/10.3390/jmse11081517
Chicago/Turabian StylePernas-Álvarez, Javier, and Diego Crespo-Pereira. 2023. "A Constrained Programming Model for the Optimization of Industrial-Scale Scheduling Problems in the Shipbuilding Industry" Journal of Marine Science and Engineering 11, no. 8: 1517. https://doi.org/10.3390/jmse11081517
APA StylePernas-Álvarez, J., & Crespo-Pereira, D. (2023). A Constrained Programming Model for the Optimization of Industrial-Scale Scheduling Problems in the Shipbuilding Industry. Journal of Marine Science and Engineering, 11(8), 1517. https://doi.org/10.3390/jmse11081517