Model Predictive Control for Flexible Job Shop Scheduling in Industry 4.0 †
Abstract
:1. Introduction
2. Problem Description
- a set of tasks that can be executed in the manufacturing system,
- a set of manufacturing units (robots, machines, automated guided vehicles, etc.) which are called machines for brevity in the rest of this paper; every machine M can only execute a subset of tasks, which is specified as ,
- a set of jobs that need to be fulfilled by the manufacturing system; every job J consists of a set of tasks.
2.1. Restrictions and Flexibility in the Scheduling Problem
- (R1)
- A task might not be independent, but require all tasks in the set of its required tasks to be finished before it can be started.
- (R2)
- A task in a job J can only depend on tasks in the same job J, i.e., for every task . If a task depends on another task , i.e., , then the operations and exist and it is said that O depends . Operations and in different jobs J and are independent from one another.
- (R3)
- Two tasks and must not be mutually dependent.
- (R4)
- Preemption of tasks is not allowed, i.e., once a task has been started it must be completed without interruption.
- (R5)
- Every machine M can only execute a subset of tasks, which is specified as .
- (R6)
- A machine can only execute one task at a time.
- (R7)
- Only one task per job can be executed at a time.
- (F1)
- the possibility to execute the same task on different machines,
- (F2)
- the ability of one machine to execute different tasks,
- (F3)
- the possibility to change the sequence in which the tasks in one job are executed, only restricted by (R1),
- (F4)
- the possibility to change the sequence in which different operations are executed on a machine,
- (F5)
- the possibility to execute different types of jobs in the same manufacturing system.
2.2. Scheduling Objective
2.3. Classification of the Scheduling Problem
3. Model Generation
3.1. Introduction to Petri Nets
- is a finite set of places, , graphically represented as circles,
- is a finite set of transitions, , graphically represented as bars,
- is a set of arcs from places to transitions and from transitions to places, graphically represented as arrows,
- is an arc weight function, graphically represented as numbers labeling the arcs (if an arc has the weight 1 it is not labeled) and
- is the initial marking of the Petri Net, from now on called initial state; the initial state of a place is graphically indicated by dots (“tokens”) in the circle corresponding to .
3.2. Modified Petri Net Dynamics
- (I1)
- it only has one input place ,
- (I2)
- its only input place has no second output transition,
- (I3)
- the weight of the arc connecting the place to its output transition T must be .
3.3. Generation of the Discrete Time Petri Net Model
Algorithm 1: Create Places [17]. |
Algorithm 2: Create Transitions and Arcs [17]. |
3.4. Analysis and Discussion of the Discrete Time Petri Net Model
- (P1)
- A steady state is a pair of state and inputwith. As there is no steady statewith, we denotethe steady state and omit the input u.The fact that there is no steady state with means that the Petri Net has no T-invariant ([39] Definition 11.4).
- (P2)
- The following statements are equivalent:In the state no production is taking place, i.e., no production place is marked ⇔ is a steady state.
- (P3)
- The initial state generated in Algorithm 1 is a steady state and .
- (P4)
- All parts of a steady state are themselves steady states, i.e.,.
- (P5)
- The precondition of every firing, which needs to be satisfied according to the non-negativity condition (3) in order to start a production process, forms a steady state for all inputs u, i.e., .
- (P6)
- A task which has been completed stays completed, i.e., once the completion places are marked they stay marked.
- (P7)
- (P8)
- Every state x eventually enters a steady state ⇔ there is a for which .
- (P9)
- If an operation , i.e., a specific task of a job J, can be started at a steady state , it can also be started in all steady states reachable from through a legal firing sequence respecting (3), or it was already completed in .
4. Model Predictive Control
4.1. Formulation of the MPC Problem
4.2. Feasibility of the MPC Problem
4.3. Completion of an Operation
- The operation O is not executed at all and thus the first predicted input is . As no other operation can be executed, the resulting cost over the prediction horizon N is
- The operation O is planned to start immediately, i.e., at , on some machine with leading to the steady state . In this case, the first predicted input is . As no other operation needs to be executed after finishing the execution of the operation O, the resulting cost over the prediction horizon N is
- The operation O is planned to start at a later point in time, let us say at , on some machine with , but it is still completely executed and the steady is reached in the prediction. In this case, the input , but the first predicted input is . The resulting cost over the prediction horizon N is
- The operation O is planned to start at an even later point in time on some machine with , such that it is not completely executed any more but only the first production steps, and no steady is reached at the end of the prediction. As no steady state is reached, the execution of O on might or might not lead to after the prediction horizon. In this case, the input , but the first predicted input is . The resulting cost over the prediction horizon N is
- O and are executed at the same time,
- O and are not executed at the same time, either because there is no input vector u starting O and and satisfying the non-negativity constraint (3), or because only executing one of them leads to a better solution of the MPC problem (6), i.e., an input trajectory that leads to lower cost over the prediction horizon N.
4.4. MPC Formulation with Terminal Cost
4.5. Completion of the Production Problem
- (a)
- a shortest sufficient prediction horizon for the operation , then there exists a shortest sufficient prediction horizon with the property that for every the job J will eventually be completed when applying the MPC (6) in closed loop (7) from any initial state .
- (b)
- a shortest sufficient extended prediction horizon for the operation , then there exists a shortest sufficient extended prediction horizon with the property that for every and every the job J will eventually be completed when applying the MPC (16) with the terminal cost (17) in closed loop (7) from any initial state .
- (a)
- a shortest sufficient prediction horizon , then there exists a shortest sufficient prediction horizon with the property that for every the given production problem will eventually be completed when applying the MPC (6) in closed loop (7) from any initial state .
- (b)
- a shortest sufficient extended prediction horizon , then there exists a shortest sufficient extended prediction horizon with the property that for every and every the given production problem will eventually be completed when applying the MPC (16) with the terminal cost (17) in closed loop (7) from any initial state .
5. Numerical Examples
6. Discussion
6.1. Future Research Directions
7. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
Appendix A
- (P1)
- We have to proof that there is no steady state with . As no entry in can be negative, the effect of a positive entry in through can only be compensated by the effect of a positive entry in through , and vice versa. In the same sense the effect that an input arc has when the transition T fires in the firing count vector can only be reversed by an output arc of a transition in . Note that would be possible. To prove that there is no steady state with can be verified by noticing that only starting transitions are handled in the controlled part of the PN . Every starting transition has an input arc from a necessity place and its effect cannot be reverted, since there is no arc back to the necessity places from any other transition.
- (P2)
- For this property, the independent part of the PN has to be considered, as it influences the matrix A which is relevant to characterize steady states. A state is a steady state, if and only if no place P is marked that is an input place of a transition ; otherwise, the automatic firing of the transition T would move the tokens from P according to the arcs connected to T. (A transition which only has a trivial loop from a single place P back to the same place is considered not to exist as it does not have any effect.) In the state space form this happens through the multiplication . As all production transitions and finishing transitions are handled in the independent part, none of their input places is allowed to be marked in a steady state . As every production place is either input place of a production- or finishing transition, none of them is allowed be marked in a steady state. Through the Property (I1), the reverse direction is true as well.
- (P3)
- The initial state is a vector of natural numbers, i.e., , as in Algorithm 1 the places are only marked with one token or they are not marked at all. That is a steady state follows directly from Property (P2) and by noticing that in Algorithm 1 not production place is marked.
- (P4)
- Follows from the fact that and simple algebraic arguments.
- (P5)
- If no production place is marked in the precondition , it follows from Property (P2) that is a steady state. The preconditions of the controlled transitions constitute their input places. As only starting transitions are in the set , only the input places of the starting transitions need to be considered. Due to Property (P2) and as no production place is an input place to a starting transitions, the Property (P5) is true.
- (P6)
- A task is completed if its completion place is marked. A completion place is only input place to starting transitions. If a completion place is input place to some starting transitions through an arc created in line 18 of Algorithm 2, it is also one of its output places through an arc created in the same line and the weight of both arcs is the same.
- (P7)
- This follows directly from A being a matrix of natural numbers, i.e., .
- (P8)
- First note that all finishing transitions mark an idle place , a buffer place and a completion place . All of those places only have starting transitions as output transitions, which are all controlled. Thus, every finishing transition ends an independent firing sequence leading to it. As every production sequence ultimately ends with a finishing transition after steps, every production sequence terminates and a steady state is reached. In the matrix A, this is represented as a shifting sequence which ends in a state , in which and entry with is marked. Multiplying with A, the entry is multiplied with the i-th column of A, which corresponds to the finishing transition being the output transition of , as described in Section 3.2. After this multiplications a state is reached in which only entries corresponding to places without independent output transitions are marked, i.e., idle places , buffer places and completion places . Therefore, the diagonal entries corresponding to them are left unchanged and no entries are added to the respective columns in the process of generating the matrix A form the Petri Net. Multiplying the resulting vector with A once again does not change those entries in any more. This holds for all production sequences and the system ultimately enters a steady state with .
- (P9)
- To proof this property we have to analyze the input places that correspond to the starting transitions of the investigated operation . Those all have the necessity place and the completion places of all as common input places. will remain marked until one of the starting transition was fired and task was executed. The places will remain marked due to property (P6). For each of the investigated starting transitions, their remaining input places are one idle place and one buffer place of another task of the same job J. In every steady state, the idle places of all machines are marked and thus this holds for the steady states and . This is the case as only starting transitions remove tokens from the idle places and they inject them into a production sequence that ultimately leads back to the same idle place from which the token was removed. This happens through a completely independent sequence, i.e., a sequence which is completely represented in the matrix A (cf. Figure 3).Now it needs to be shown that, in , at least one buffer place is marked that has a starting transition of the investigated task as output transition, except the task already had been executed. It is known that one such buffer place was marked in the steady state , since otherwise could not have been started. This means that for the pair of tasks the condition in line 13 of Algorithm 2 was true.We now need to show that, if the task was not already executed, starting from the buffer place only other buffer place can be marked in any steady state , for which the condition in line 13 holds as well for the pair of tasks and thus the transition is created to start .Such a buffer place can only be marked through a sequence that started with a starting transition , that was created in line 15 of Algorithm 2. Thus, for the pair the condition in line 13 was true. If it is also true for the pair , we found the buffer place as the required one to start the task form through a transition .Let us investigate the condition in line 13 for this pair step by step. The first statement in this condition () is true since otherwise the task was just finished. The second statement in this condition () is true since otherwise the previous task could not have been started, since the task was not yet completed. The last statement in this condition () is true as otherwise such a task would not have allowed task to be started in , which we know was the case as stated in the precondition of Property (P9). This concludes the proof.
References
- Kagermann, H.; Helbig, J.; Hellinger, A.; Wahlster, W. Recommendations for Implementing the Strategic Initiative Industrie 4.0: Securing the Future of German Manufacturing Industry; Final Report of the Industrie 4.0 Working Group; Forschungsunion: Munich, Germany; Berlin, Germany, 2013. [Google Scholar]
- Rossit, D.A.; Tohmé, F.; Frutos, M. Industry 4.0: Smart Scheduling. Int. J. Prod. Res. 2019, 57, 3802–3813. [Google Scholar] [CrossRef]
- Negri, E.; Fumagalli, L.; Macchi, M. A review of the roles of digital twin in CPS-based production systems. Procedia Manuf. 2017, 11, 939–948. [Google Scholar] [CrossRef]
- Cohen, Y.; Naseraldin, H.; Chaudhuri, A.; Pilati, F. Assembly systems in Industry 4.0 era: A road map to understand Assembly 4.0. Int. J. Adv. Manuf. Technol. 2019, 105, 4037–4054. [Google Scholar] [CrossRef]
- Grieves, M. Digital Twin: Manufacturing Excellence Through Virtual Factory Replication; Technical Report; Florida Institute of Technology: Melbourne, FL, USA, 2014. [Google Scholar]
- Thomas, U.; Hirzinger, G.; Rumpe, B.; Schulze, C.; Wortmann, A. A New Skill Based Robot Programming Language Using UML/P Statecharts. In Proceedings of the IEEE International Conference on Robotics and Automation, Karlsruhe, Germany, 6–10 May 2013; pp. 461–466. [Google Scholar]
- Heim, R.; Nazari, P.M.S.; Ringert, J.O.; Rumpe, B.; Wortmann, A. Modeling Robot and World Interfaces for Reusable Tasks. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Hamburg, Germany, 28 September–2 October 2015; pp. 1793–1798. [Google Scholar] [CrossRef] [Green Version]
- Andersen, R.H.; Solund, T.; Hallam, J. Definition and Initial Case-Based Evaluation of Hardware-Independent Robot Skills for Industrial Robotic Co-Workers. In Proceedings of the ISR/Robotik 2014, 41st International Symposium on Robotics, Munich, Germany, 2–3 June 2014; pp. 1–7. [Google Scholar]
- Schlegel, C.; Lotz, A.; Lutz, M.; Stampfer, D.; Inglés-Romero, J.F.; Vicente-Chicote, C. Model-driven software systems engineering in robotics: Covering the complete life-cycle of a robot. It-Inf. Technol. 2015, 57, 85–98. [Google Scholar] [CrossRef]
- Wächter, M.; Ottenhaus, S.; Kröhnert, M.; Vahrenkamp, N.; Asfour, T. The armarx statechart concept: Graphical programing of robot behavior. Front. Robot. AI 2016, 3, 33. [Google Scholar] [CrossRef] [Green Version]
- Lindorfer, R.; Froschauer, R. Towards user-oriented programming of skill-based automation systems using a domain-specific meta-modeling approach. In Proceedings of the 2019 IEEE 17th International Conference on Industrial Informatics (INDIN), Helsinki, Finland, 22–25 July 2019; Volume 1, pp. 655–660. [Google Scholar] [CrossRef]
- Herrero, H.; Moughlbay, A.A.; Outón, J.L.; Sallé, D.; de Ipiña, K.L. Skill based robot programming: Assembly, vision and Workspace Monitoring skill interaction. Neurocomputing 2017, 255, 61–70. [Google Scholar] [CrossRef]
- Heuss, L.; Blank, A.; Dengler, S.; Zikeli, G.L.; Reinhart, G.; Franke, J. Modular Robot Software Framework for the Intelligent and Flexible Composition of Its Skills. In Advances in Production Management Systems. Production Management for the Factory of the Future; Springer: Cham, Switzerland, 2019; pp. 248–256. [Google Scholar] [CrossRef]
- Rawlings, J.B.; Mayne, D.Q.; Diehl, M.M. Model Predictive Control: Theory, Computation, and Design; Nob Hill Publishing: Madison, WI, USA, 2017. [Google Scholar]
- Brucker, P. Classification of Scheduling Problems. In Scheduling Algorithms; Springer: Berlin/Heidelberg, Germany, 2007; pp. 1–10. [Google Scholar] [CrossRef]
- Birgin, E.G.; Ferreira, J.E.; Ronconi, D.P. List scheduling and beam search methods for the flexible job shop scheduling problem with sequencing flexibility. Eur. J. Oper. Res. 2015, 247, 421–440. [Google Scholar] [CrossRef]
- Wenzelburger, P.; Allgöwer, F. A Petri Net Modeling Framework for the Control of Flexible Manufacturing Systems. IFAC-PapersOnLine 2019, 52, 492–498. [Google Scholar] [CrossRef]
- Wenzelburger, P.; Allgöwer, F. A Novel Optimal Online Scheduling Scheme for Flexible Manufacturing Systems. IFAC-PapersOnLine 2019, 52, 1–6. [Google Scholar] [CrossRef]
- Demir, Y.; İşleyen, S.K. Evaluation of mathematical models for flexible job-shop scheduling problems. Appl. Math. Model. 2013, 37, 977–988. [Google Scholar] [CrossRef]
- Genova, K.; Kirilov, L.; Guliashki, V. A survey of solving approaches for multiple objective flexible job shop scheduling problems. Cybern. Inf. Technol. 2015, 15, 3–22. [Google Scholar] [CrossRef] [Green Version]
- Chaudhry, I.A.; Khan, A.A. A research survey: Review of flexible job shop scheduling techniques. Int. Trans. Oper. Res. 2016, 23, 551–591. [Google Scholar] [CrossRef]
- Zhang, J.; Ding, G.; Zou, Y.; Qin, S.; Fu, J. Review of job shop scheduling research and its new perspectives under Industry 4.0. J. Intell. Manuf. 2019, 30, 1809–1830. [Google Scholar] [CrossRef]
- Türkyılmaz, A.; Şenvar, Ö.; Ünal, İ.; Bulkan, S. A research survey: Heuristic approaches for solving multi objective flexible job shop problems. J. Intell. Manuf. 2020, 31, 1949–1983. [Google Scholar] [CrossRef]
- Nasiri, M.M.; Kianfar, F. A hybrid scatter search for the partial job shop scheduling problem. Int. J. Adv. Manuf. Technol. 2011, 52, 1031–1038. [Google Scholar] [CrossRef]
- Birgin, E.G.; Feofiloff, P.; Fernandes, C.G.; De Melo, E.L.; Oshiro, M.T.I.; Ronconi, D.P. A MILP model for an extended version of the flexible job shop problem. Optim. Lett. 2014, 8, 1417–1431. [Google Scholar] [CrossRef] [Green Version]
- Beach, R.; Muhlemann, A.P.; Price, D.H.R.; Paterson, A.; Sharp, J.A. A review of manufacturing flexibility. Eur. J. Oper. Res. 2000, 122, 41–57. [Google Scholar] [CrossRef]
- Sethi, A.K.; Sethi, S.P. Flexibility in manufacturing: A survey. Int. J. Flex. Manuf. Syst. 1990, 2, 289–328. [Google Scholar] [CrossRef]
- Jain, A.; Jain, P.K.; Chan, F.T.S.; Singh, S. A review on manufacturing flexibility. Int. J. Prod. Res. 2013, 51, 5946–5970. [Google Scholar] [CrossRef]
- Kim, Y.K.; Park, K.; Ko, J. A symbiotic evolutionary algorithm for the integration of process planning and job shop scheduling. Comput. Oper. Res. 2003, 30, 1151–1171. [Google Scholar] [CrossRef]
- Pinedo, M.L. Deterministic Models: Preliminaries. In Scheduling: Theory, Algorithms, and Systems; Springer International Publishing: Cham, Switzerland, 2016; pp. 13–32. [Google Scholar] [CrossRef]
- Graham, R.L.; Lawler, E.L.; Lenstra, J.K.; Rinnooy Kan, A.H.G. Optimization and Approximation in Deterministic Sequencing and Scheduling: A Survey. In Discrete Optimization II; Annals of Discrete Mathematics; Hammer, P., Johnson, E., Korte, B., Eds.; Elsevier: Amsterdam, The Netherlands, 1979; Volume 5, pp. 287–326. [Google Scholar] [CrossRef] [Green Version]
- Hoos, H.H.; Stützle, T. Scheduling Problems. In Stochastic Local Search; Hoos, H.H., Stützle, T., Eds.; Morgan Kaufmann: San Francisco, CA, USA, 2005; Volume Chapter 9, pp. 417–465. [Google Scholar] [CrossRef]
- Brandimarte, P. Routing and scheduling in a flexible job shop by tabu search. Ann. Oper. Res. 1993, 41, 157–183. [Google Scholar] [CrossRef]
- Zubaran, T.K.; Ritt, M. An effective heuristic algorithm for the partial shop scheduling problem. Comput. Oper. Res. 2018, 93, 51–65. [Google Scholar] [CrossRef]
- Özgüven, C.; Özbakır, L.; Yavuz, Y. Mathematical models for job-shop scheduling problems with routing and process plan flexibility. Appl. Math. Model. 2010, 34, 1539–1548. [Google Scholar] [CrossRef]
- Vilcot, G.; Billaut, J.C. A tabu search and a genetic algorithm for solving a bicriteria general job shop scheduling problem. Eur. J. Oper. Res. 2008, 190, 398–411. [Google Scholar] [CrossRef]
- Lunardi, W.T.; Birgin, E.G.; Laborie, P.; Ronconi, D.P.; Voos, H. Mixed Integer linear programming and constraint programming models for the online printing shop scheduling problem. Comput. Oper. Res. 2020, 123, 105020. [Google Scholar] [CrossRef]
- Petri, C.A. Kommunikation mit Automaten. Ph.D. Thesis, Technischen Hochschule Darmstadt, Darmstadt, Germany, 1962. [Google Scholar]
- Seatzu, C.; Silva, M.; Van Schuppen, J.H. Control of Discrete-Event Systems; Springer: Berlin/Heidelberg, Germany, 2013; Volume 433. [Google Scholar] [CrossRef] [Green Version]
- Cassandras, C.G.; Lafortune, S. Introduction to Discrete Event Systems; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2009. [Google Scholar] [CrossRef]
- Balduzzi, F.; Giua, A.; Menga, G. First-order hybrid Petri nets: A model for optimization and control. IEEE Trans. Robot. Autom. 2000, 16, 382–399. [Google Scholar] [CrossRef]
- Giua, A.; Seatzu, C. A systems theory view of Petri nets. In Advances in Control Theory and Applications; Bonivento, C., Marconi, L., Rossi, C., Isidori, A., Eds.; Springer: Berlin/Heidelberg, Germany, 2007; pp. 99–127. [Google Scholar] [CrossRef]
- Mahulea, C.; Giua, A.; Recalde, L.; Seatzu, C.; Silva, M. Optimal model predictive control of timed continuous Petri nets. IEEE Trans. Autom. Control 2008, 53, 1731–1735. [Google Scholar] [CrossRef] [Green Version]
- Júlvez, J.; Di Cairano, S.; Bemporad, A.; Mahulea, C. Event-driven model predictive control of timed hybrid Petri nets. Int. J. Robust Nonlinear Control 2014, 24, 1724–1742. [Google Scholar] [CrossRef]
- Taleb, M.; Leclercq, E.; Lefebvre, D. Model predictive control for discrete and continuous timed Petri nets. Int. J. Autom. Comput. 2018, 15, 25–38. [Google Scholar] [CrossRef]
- Recalde, L.; Teruel, E.; Silva, M. Autonomous continuous P/T systems. In International Conference on Application and Theory of Petri Nets; Springer: Berlin/Heidelberg, Germany, 1999; pp. 107–126. [Google Scholar] [CrossRef]
- Silva, M.; Recalde, L. On fluidification of Petri Nets: From discrete to hybrid and continuous models. Annu. Rev. Control 2004, 28, 253–266. [Google Scholar] [CrossRef]
- Lefebvre, D. Deadlock-free scheduling for timed Petri net models combined with MPC and backtracking. In Proceedings of the 2016 13th International Workshop on Discrete Event Systems (WODES), Xi’an, China, 30 May–1 June 2016; pp. 466–471. [Google Scholar] [CrossRef]
- Lefebvre, D. Dynamical scheduling and robust control in uncertain environments with Petri nets for DESs. Processes 2017, 5, 54. [Google Scholar] [CrossRef]
- Zhang, Q.; Liu, P.; Pannek, J. Modeling and predictive capacity adjustment for job shop systems with RMTs. In Proceedings of the 2017 25th Mediterranean Conference on Control and Automation (MED), Valletta, Malta, 3–6 July 2017; pp. 310–315. [Google Scholar] [CrossRef]
- Vargas-Villamil, F.D.; Rivera, D.E. A model predictive control approach for real-time optimization of reentrant manufacturing lines. Comput. Ind. 2001, 45, 45–57. [Google Scholar] [CrossRef]
- Cataldo, A.; Perizzato, A.; Scattolini, R. Production scheduling of parallel machines with model predictive control. Control Eng. Pract. 2015, 42, 28–40. [Google Scholar] [CrossRef]
- Köhler, P.N.; Müller, M.A.; Pannek, J.; Allgöwer, F. On Exploitation of Supply Chain Properties by Sequential Distributed MPC. IFAC-PapersOnLine 2017, 50, 7947–7952. [Google Scholar] [CrossRef]
- Subramanian, K.; Maravelias, C.T.; Rawlings, J.B. A state-space model for chemical production scheduling. Comput. Chem. Eng. 2012, 47, 97–110. [Google Scholar] [CrossRef]
- Subramanian, K.; Rawlings, J.B.; Maravelias, C.T.; Flores-Cerrillo, J.; Megan, L. Integration of control theory and scheduling methods for supply chain management. Comput. Chem. Eng. 2013, 51, 4–20. [Google Scholar] [CrossRef]
- Faulwasser, T.; Grüne, L.; Müller, M.A. Economic nonlinear model predictive control. Found. Trends® Syst. Control 2018, 5, 1–98. [Google Scholar] [CrossRef]
- Forbes, M.G.; Patwardhan, R.S.; Hamadah, H.; Gopaluni, R.B. Model predictive control in industry: Challenges and opportunities. IFAC-PapersOnLine 2015, 48, 531–538. [Google Scholar] [CrossRef]
- Müller, M.A.; Worthmann, K. Quadratic costs do not always work in MPC. Automatica 2017, 82, 269–277. [Google Scholar] [CrossRef]
- Alamir, M.; Bornard, G. Stability of a truncated infinite constrained receding horizon scheme: The general discrete nonlinear case. Automatica 1995, 31, 1353–1356. [Google Scholar] [CrossRef]
- Feller, C.; Ebenbauer, C. Sparsity-Exploiting Anytime Algorithms for Model Predictive Control: A Relaxed Barrier Approach. IEEE Trans. Control Syst. Technol. 2018, 28, 425–435. [Google Scholar] [CrossRef]
- Grüne, L.; Pannek, J. Nonlinear Model Predictive Control: Theory and Algorithms; Springer International Publishing: Cham, Switzerland, 2017. [Google Scholar]
- Xiang, W.; Lee, H.P. Ant colony intelligence in multi-agent dynamic manufacturing scheduling. Eng. Appl. Artif. Intell. 2008, 21, 73–85. [Google Scholar] [CrossRef]
- Maestre, J.M.; Negenborn, R.R. (Eds.) Distributed Model Predictive Control Made Easy; Springer: Berlin/Heidelberg, Germany, 2014; Volume 69. [Google Scholar] [CrossRef]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 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
Wenzelburger, P.; Allgöwer, F. Model Predictive Control for Flexible Job Shop Scheduling in Industry 4.0. Appl. Sci. 2021, 11, 8145. https://doi.org/10.3390/app11178145
Wenzelburger P, Allgöwer F. Model Predictive Control for Flexible Job Shop Scheduling in Industry 4.0. Applied Sciences. 2021; 11(17):8145. https://doi.org/10.3390/app11178145
Chicago/Turabian StyleWenzelburger, Philipp, and Frank Allgöwer. 2021. "Model Predictive Control for Flexible Job Shop Scheduling in Industry 4.0" Applied Sciences 11, no. 17: 8145. https://doi.org/10.3390/app11178145
APA StyleWenzelburger, P., & Allgöwer, F. (2021). Model Predictive Control for Flexible Job Shop Scheduling in Industry 4.0. Applied Sciences, 11(17), 8145. https://doi.org/10.3390/app11178145