2.1 Introduction

Individualization of products is a critical business capability and requires flexible and customized production systems. Because of the increased complexity of flexible, small batch manufacturing, the costs of individualized production are typically higher than in mass production systems. The Industry 4.0 technology has enabled new production strategies, particularly through the use of cyber-physical systems that require highly customized assemblies (Erol et al. 2016; Oesterreich and Teuteberg 2016; Kumar et al. 2016; Nayak et al. 2016; Battaïa et al. 2017a; Hwang et al. 2017). The ultimate objective of these systems is to facilitate a flexible customized manufacturing at the lower cost of mass production.

Such innovative production strategies engender new challenges and opportunities for short-term job scheduling and sequencing. In particular, Kusiak (2018) points out the issue of strong coupling in smart manufacturing when product and process are created at the same time. Simultaneous product and process creation results in a class of scheduling problems that have mixed structural-temporal-logical constraints with order scheduling based on a search for free resources for free operations (Dolgui et al. 2019b; Fragapane et al. 2020; Ivanov et al. 2020). Manufacturing processes for different customer orders may have individual structures of the stations such that the flexible stations are able to execute different functions subject to individual sets of operations within the jobs (Weyer et al. 2015; Ivanov et al. 2016a, b; Nayak et al. 2016; Battaïa et al. 2017b; Zhong et al. 2017). Therefore, an integrated problem of simultaneous, structural-functional synthesis of the Industry 4.0 customized assembly systems and job scheduling in these systems arises and becomes a visible research avenue (Chen et al. 2019; Dolgui et al. 2019a, b; Ivanov et al. 2018b; Leusin et al. 2018; Liu et al. 2019; Mourtzis and Vlachou 2018; Panetto et al. 2019; Rossit et al. 2019; Zhang et al. 2019).

In the given problem class, multi-stage, flexible, job-flow shop scheduling problems with flexible machines have been studied (Ivanov and Sokolov 2012a, 2013; Ivanov et al. 2016a, b; Bożek and Werner 2018). Kyparisis and Koulamas (2006) considered a multi-stage, flexible flow shop scheduling problem with uniform parallel machines at each stage and makespan minimization. This study proposed a heuristic algorithm for this strongly NP-hard problem. Tahar et al. (2006) considered a scheduling problem for a set of independent jobs with sequence-dependent setup times and job splitting on a set of identical parallel machines such that the maximum completion time (i.e., the makespan) is minimized. For this NP-hard problem, the study developed a heuristic algorithm using linear programming (LP). Furthering these insights, Bożek and Werner (2018) developed an optimization method for flexible job shop scheduling with lot streaming and sublot size optimization. It can be noted that a review of solution techniques for flexible (or hybrid) flow shop problems has been given, for example, in the paper by Ruiz and Vazquez-Rodriguez (2010), and a review on flexible job shop scheduling problems has been given by Chaudry and Khan (2016).

In light of the proven NP-hardness of such problems, solution methods for the simultaneous structural-functional synthesis of customized Industry 4.0 assembly systems and job scheduling in these systems need to be developed using different decomposition principles. This is because large-scale mixed integer linear programming (MILP) models would be negatively influenced by the computational complexity of these problems. The known solutions in discrete optimization based on decomposition, such as data-driven or clustering approaches (Chen et al. 2013a, b), are founded on the difficulties in deriving analytical properties.

The existing solutions in continuous optimization based on the maximum principle and the control of a dynamic system use a decomposition of a dynamic process and the natural logic of time (Ivanov and Sokolov 2012b). These solutions were primarily applied to technical systems (e.g., space shuttle movement control) and rely on a proven analytical axiomatic of optimal control. In the 1990s, optimal control models based on the maximum principle were applied to master production scheduling, but they did not consider the precedence relations within the jobs (Dolgui et al. 2019b) and focused mostly on small-dimensional problems (Kogan and Khmelnitsky 2000).

The major intention of this chapter is to provide further insights into scheduling in smart manufacturing with simultaneous product and process creation using decomposition methods by combining the advantages of continuous and discrete optimization. In particular, we focus on shop floor scheduling in very flexible manufacturing systems such as Industry 4.0. Technically, this study proposes a dynamical decomposition of a large-scale assignment matrix according to the precedence relations between the operations of the jobs and considers only the operations that satisfy the precedence relations at the given time point in small-dimensional LP models. Discrete optimization algorithms (B&B, Hungarian method) are used for scheduling in these matrices of small dimension at each time point. Continuous optimization algorithms (e.g., the method of successive approximations, or the method of Krylov-Chernousko; see Ivanov et al. 2016a and Dolgui et al. 2019b, and the references in these papers) are used to create a schedule from the LP results generated at each time point by extremizing the Hamiltonian function at this time point subject to some criteria (e.g., tardiness). In addition, the execution of the operations in time can be accurately modeled in continuous time as a continuous state variable, while considering machine availability and capacity disturbances at the machines.

The remainder of this chapter is as follows. Section 2.2 is devoted to a verbal problem statement. Section 2.3 develops generalized models of selecting the design of the manufacturing process and operation sequencing. It also considers a model for a simultaneous process design and sequencing. In Sect. 2.4, the generalized model from Sect. 2.4 is modified regarding a flexible dynamic scheduling in Industry 4.0 systems. Subsequently, a computational algorithm is presented. Section 2.5 concludes the chapter by summarizing the most important results of this study and outlining some issues for future research.

2.2 State of the Art

Practical environments for applying scheduling and sequencing models and algorithms to a simultaneous structural-functional synthesis of the customized assembly system are multi-faceted. With the help of smart sensors and plug-and-produce cyber-physical systems, the stations in the assembly system are capable of changing the operation processing and setup sequences according to the actual order of the incoming flows and capacity utilization (Otto et al. 2014; Theorin et al. 2017). In the FOUP—front opening unified pods—technology in the semiconductor industry, robots are used for a real-time operation sequencing. Robots read the information about the products from the sensors and tags and decide flexibly, where to forward a wafer batch next (Mönch et al. 2012).

The recent literature has included a variety of principles and approaches to the design and scheduling of flexible and reconfigurable assembly systems with a focus on balancing, scheduling, and sequencing (Boysen et al. 2007; Chaube et al. 2012; Delorme et al. 2012; Battaïa and Dolgui 2013; Battaïa et al. 2017a). In these studies, models and methods have been presented for solving problems related to the optimization of the performance intensity of an assembly system for sets of flexibly intersecting operations.

For systems that consider both the machine selection for each part of the manufacturing process and the loading sequences of the parts to the machines, Blazewicz et al. (2001) showed that these problems are NP-hard. In particular, scheduling with alternative parallel machines addresses the practical challenge that at each stage of the manufacturing process, alternative machines may execute the operations. This creates flexibility in the process plan and requires both a machine assignment and sequencing of tasks (Yu et al. 2011; Janiak et al. 2013; Blazewicz et al. 2015). In practice, the optimization objectives consider throughput maximization, lateness minimization, and equal machine utilization.

Józefowska et al. (2002) presented a heuristic approach to allocate a continuous resource in discrete-continuous scheduling problems to minimize the makespan. Kyparisis and Koulamas (2006) considered a multi-stage, flexible flow shop scheduling problem with uniform parallel machines at each stage and the minimization of makespan. Tahar et al. (2006) considered the problem of scheduling a set of independent jobs with sequence-dependent setup times and job splitting on a set of identical parallel machines such that the maximum completion time (makespan) is minimized.

During the last three decades, a variety of papers presented results and algorithms for flexible flow shop and job shop scheduling. The paper by Ribas et al. (2010) first classifies the papers for flexible (hybrid) flow shop scheduling according to the production characteristics and limitations and then according to the solution approaches proposed. The reader can find 164 references to papers dealing with hybrid flow shop problems. In parallel, another review on solution approaches with 225 references has been presented by Ruiz and Vazquez-Rodriguez (2010). For flexible job shop scheduling problems, a recent review has been given by Chaudry and Khan (2016). The authors found 404 papers dealing with flexible job shop problems from the period 1990 to 2014. The interested reader can also find 212 cited references in this paper. In a very recent paper, Shen et al. (2018) presented a mathematical model and a tabu search algorithm for the flexible job shop problem with sequence-dependent setup times and minimizing the makespan. The results show that their algorithm outperforms most existing approaches for the classical flexible job shop problem.

Lauff and Werner (2004); Jungwattanakit et al. (2009); Sotskov et al. (2013); and Harjunkoski et al. (2014) have pointed out that specific scheduling problems require further investigation and the application of a broad range of methodical approaches. Control approaches to scheduling are of vital importance for addressing the flow dynamics in the assembly line. The studies by Sarimveis et al. (2008); Ivanov et al. (2013b); and Harjunkoski et al. (2014) showed a wide range of advantages regarding the application of control-theoretic models in combination with other techniques for scheduling in manufacturing. These advantages include, but are not limited to, a non-stationary process view and the accuracy of continuous time.

Optimal control approaches provide a different perspective than mathematical programming methods. Optimal control approaches represent schedules as trajectories. The first studies in this area were devoted to inventory control. One of these studies was published in the first volume of the International Journal of Production Research (IJPR). Later, Hwang et al. (1967) were among the first to apply optimal control and the maximum principle to multi-level and multi-period master production scheduling, which determined an optimal control (i.e., production) for the corresponding state (i.e., the inventory trajectory). Developed a Bayesian approach to the optimal control of continuous industrial processes. Developed a dynamic model for the planning of a manufacturing system. The maximum principle was used to formulate the problem and to obtain a solution. Flexible manufacturing systems and their dynamics have been examined in numerous studies. The stream of production scheduling was continued by Khmelnitsky et al. (1997), who applied the maximum principle in discrete form to the planning of continuous-time flows in flexible manufacturing systems.

Applications of optimal control to scheduling problems are encountered in production systems with single machines, job sequencing in two-stage production systems, and multi-stage machine structures with alternatives in job assignments and intensity-dependent processing rates, such as those in flexible manufacturing systems (Ivanov and Sokolov 2013); supply chains as multi-stage networks (Ivanov et al. 2004, 2007, 2013a; Ivanov and Sokolov 2012a), and Industry 4.0 systems based on a data interchange between the product and stations, flexible stations dedicated to various technological operations, and real-time capacity utilization control (Ivanov et al. 2016a).

In previous studies, the selection of the process structure and the respective station functionality for the execution of the operations were considered in isolation. In many real-life problems, such an integration can have a significant impact on the process efficiency (Bukchin and Rubinovitz 2003). The problem of a simultaneous structural-functional synthesis of the customized assembly system is still at the beginning of its investigation (Levin et al. 2016).

Optimal control scheduling models with only terminal constraints typically address the level of master production scheduling (Hwang et al. 1967; Khmelnitsky et al. 1997; Kogan and Khmelnitsky 2000). Scheduling models with both terminal and logical constraints can also be applied to flow shop and job shop scheduling (Kalinin and Sokolov 1985; Ivanov and Sokolov 2013; Ivanov et al. 2016a, b) as well as to supply chain scheduling (Ivanov and Sokolov 2012b; Ivanov et al. 2013a, 2015).

Previously isolated insights gained in hybrid shop scheduling, scheduling and sequencing with alternative parallel machines, and optimal control scheduling models with both terminal and logical constraints can now be integrated into a unified framework of Industry 4.0 and must be extended toward models with hybrid structural-terminal-logical constraints (Dolgui et al. 2019a, b; Ivanov et al. 2018a, b). The three most important prerequisites for such an integration, that is, the data interchange between the product and stations, flexible stations dedicated to various technological operations, and a real-time capacity utilization control, are enabled by the Industry 4.0 technology (Ivanov et al. 2019).

This study extends previous publications of the authors (Ivanov et al. 2016a, b): the problem statement and the scheduling model consider the structural synthesis and sequencing decisions of the manufacturing process. In the studies (Ivanov et al. 2016a, b), only scheduling decisions were considered and the design of the process structure was assumed to be fixed, that is, the design of a flow shop process was considered.

This study develops an optimal control model for the simultaneous structural-functional design of a customized manufacturing process and the sequencing of the operations within the jobs. The developed theoretical framework presents a contribution to flexible scheduling in the emerging field of Industry 4.0-based innovative production systems.

2.3 Model

2.3.1 Problem Statement

In generalized terms, the problem considered captures the following features. The processing speed of each machine is described as a time function and is modeled by material flow functions (integrals of processing speed functions) and the resulting processing time of the operation is, in general, dependent on the characteristics of the processing channel. The processing and routing capacities are constrained. Setups are included into the analysis. The lot sizes are fixed and known in advance. The temporary unavailability of capacity as a consequence of possible disruptions is included. Material supply and consumption dynamics are considered. The optimization is performed subject to the following performance indicators (control functionals): throughput, lead time, makespan, total lateness, equal utilization of the stations in the assembly line, and waiting time.

In terms of scheduling theory, we study a multi-objective, multi-stage hybrid shop scheduling problem with alternative machines at each stage with different time-dependent processing speeds, time-dependent machine availability, and ordered jobs, where job splitting is allowed. Examples of such problems can be found in the studies by Kyparisis and Koulamas (2006) and Tahar et al. (2006). The peculiarity of the problem under consideration is the simultaneous consideration of both the selection of the process design structure and the operation assignment. On the one hand, an assignment problem is discrete by nature and requires the introduction of binary variables, that is, in this case discrete optimization techniques are appropriate. On the other hand, the execution of a non-stationary operation can be accurately described in terms of continuous optimization. An additional peculiarity of such a simultaneous consideration is that both the machine structures and the flow parameters may be uncertain and changes in dynamics are therefore non-stationary.

According to the problem statement, we integrate and synchronize the following processes:

  • Customer order fulfillment dynamics in regard to the process design and operation sequencing

  • Processing and transportation channel utilization dynamics

  • Material supply and consumption dynamics in the assembly system

  • Processing and movement dynamics in regard to processing and transportation channels in the assembly system

2.3.2 Model

Let us introduce the following basic sets and structures (indices [o], [k], [r], and [f] describe the relations of the sets to the operations [o], channels [k], resources [r], and material flows [f], respectively):

  • A = {A ν, ν ∈ 1,…n} is the set of customer orders (jobs).

  • M = {M i, i ∈ 1,…m} is the set of stations in the assembly line.

  • \( \tilde{B}=A\cup M \) is the union of the assembly line stations and the customer orders, that is, the customized assembly system.

  • \( C=\left\{{C}_{\lambda}^{(i)},\lambda \in 1,\dots {l}_i\right\} \) is the set of channels at the stations and in-between the stations i and j in the assembly line, where index j is used for stations that receive products from an i-station.

  • \( D=\left\{\kern0.5em \left\{{D}_{{\mathrm{\ae}}^{\prime}}^{(i)}\right\}\cup \left\{{D}_{\mathrm{\ae}}^{\left(i,j\right)}\right\},\mathrm{\ae},{\mathrm{\ae}}^{\prime}\in 1,\dots {s}_i\right\} \) is the set of operations that can be executed in the assembly system.

  • \( \Phi =\left\{\kern0.5em \left\{\Phi {S}_{\pi}^{(i)}\right\}\cup \left\{\Phi {N}_{\mu}^{(i)}\right\},\pi \in {K}_i^{\left(\mathrm{r},1\right)},\mu \in {K}_i^{\left(\mathrm{r},2\right)}\right\} \vphantom{\frac{\int^1}{\int_\int}}\) is the set of resources at the stations in the assembly line, where K is the set of numbers.

  • \( \Phi {S}^{(i)}=\left\{\kern0.5em \Phi {S}_{\pi}^{(i)},\pi \in {K}_i^{\left(\mathrm{r},1\right)}\right\} \) is the set of storable resources at M (i) and \( \Phi {N}^{(i)}=\left\{\kern0.5em \Phi {N}_{\mu}^{(i)},\mu \in {K}_i^{\left(\mathrm{r},2\right)}\right\} \) is the set of non-storable resources at M (i).

  • \( P=\left\{\kern0.5em \left\{{P}_{<{\mathrm{\ae}}^{\prime },\rho >}^{(i)}\right\}\cup \left\{{P}_{<\mathrm{\ae},\rho >}^{\left(i,j\right)}\right\},\rho \in {K}_i^{\left(\mathrm{f}\right)}\right\} \) is the set of material flows in the manufacturing process.

  • \( {P}^{(i)}=\kern0.5em \left\{{P}_{<{\mathrm{\ae}}^{\prime },\rho >}^{(i)}\right\} \) is the set of material flows for the ρ-types of materials subject to M (j).

  • \( {P}^{\left(i,j\right)}=\left\{\kern0.5em {P}_{<\mathrm{\ae},\rho >}^{\left(i,j\right)}\right\} \) is the set of material flows for the ρ-types of materials subject to M (i) and M (j).

The sets Гν1, Гν2 define “and” and “or” precedence relations for different jobs and the sets Гiæ1, Гiæ2 define “and” and “or” precedence relations for the operations \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \) and \( {D}_{{\mathrm{\ae}}^{\prime}}^{(i)} \), respectively.

Assume that the manufacturing and transportation capacities may be disrupted, and:

  • The availability of a station can be described by a given preset matrix time function εi j (t) of time-spatial constraints: we have εi j (t) = 1, if the station is available and εi j (t) = 0, otherwise.

  • The availability of a channel at a station can be described by the function Θλ(t) (or Θνφλ(t)), which is equal to 1 if there are available channels, and equals 0, otherwise.

  • The capacity degradation and recovery dynamics can be described by a continuous function of the perturbation impacts ξ ij (t); ξ ij (t) = 1 if the channel is 100% available and ξ ij (t) = 0 if the channel is fully disrupted. All other values for ξ ij (t) in the interval [0;1] are possible.

The formal statement of the scheduling problem is based on a dynamic interpretation of the execution processes of the operations. Let us introduce some new notations.

Parameters

  • \( {a}_{\alpha}^{\left(o,1\right)},{a}_{\beta}^{\left(o,1\right)},{a}_{i\tilde{\alpha}}^{\left(o,2,\nu \right)},{a}_{i\tilde{\beta}}^{\left(o,2,\nu \right)} \), \( {a}_{is_i}^{\left(o,2,\nu \right)} \), \( {a}_{i\mathrm{\ae}}^{\left(o,1,\nu \right)} \) are the planned manufacturing and transportation quantities for each operation. The values of these parameters are related to the end conditions that need to be reached in \( {x}_{\alpha}^{\left(o,1\right)}(t),{x}_{\beta}^{\left(o,1\right)}(t) \), \( {x}_{i\tilde{\alpha}}^{\left(o,2,\nu \right)}(t),{x}_{i\tilde{\beta}}^{\left(o,2,\nu \right)}(t) \), \( {x}_{is_i}^{\left(o,2,\nu \right)}(t) \), \( {x}_{i\mathrm{\ae}}^{\left(o,1,\nu \right)}(t) \) at t = T f.

  • \( {\mathbf{h}}_0^{\left(\mathrm{o}\right)},\kern0.5em {\mathbf{h}}_1^{\left(\mathrm{o}\right)} \) are known differential functions for the start and end conditions subject to the state variables х (о) at t = T 0 and t = T f.

  • \( {\mathbf{h}}_0^{\left(\mathrm{k}\right)},\kern0.5em {\mathbf{h}}_1^{\left(\mathrm{k}\right)} \) are known differential functions for the start and end conditions in regard to the state vector х (κ).

  • \( {b}_{i^{\prime }{\mathrm{\ae}}^{\prime }i\mathrm{\ae}}^{\left(j,\uplambda \right)} \) is the channel setup time.

  • \( {d}_{i\mathrm{\ae}j\uplambda}^{\left(\uppi \right)} \), \( {g}_{i\mathrm{\ae}j\uplambda}^{\left(\upmu \right)} \) are given consumption rates of the resources \( \Phi {S}_{\uppi}^{(j)} \) and \( \Phi {N}_{\upmu}^{(j)} \) for \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \) and \( {C}_{\uplambda}^{(j)} \).

  • \( {\tilde{H}}_j^{\left(\uppi \right)}(t) \), \( {\tilde{\tilde{H}}}_j^{\left(\upmu \right)}(t) \) are known rates for the replenishment of the resources \( \Phi {S}_{\uppi}^{(j)} \) and \( \Phi {N}_{\upmu}^{(j)} \), respectively.

  • \( {a}_{j\uplambda \uppi \left(\upeta -1\right)}^{\left(\mathrm{p},3\right)},{a}_{j\uplambda \upmu \left({\upeta}^{\prime }-1\right)}^{\left(\mathrm{p},4\right)} \) are known volumes (quantities) of the resource replenishment at the (η – 1)th recovery cycle; \( {\tilde{\uprho}}_{\uplambda},{\tilde{\tilde{\uprho}}}_{\uplambda} \) are the numbers of the replenishment cycles.

  • \( {a}_{i\mathrm{\ae}\rho}^{\left(\mathrm{f},1\right)} \) is the known lot size of a product type ρ for each operation \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \).

  • \( {\tilde{P}}_j^{(1)},{\tilde{P}}_{j\uprho}^{(2)},{\tilde{P}}_{ij}^{(3)} \) are known values for the maximum storage capacities at M j, handling (throughput) at M j for ρ, and the transportation between M i and M j.

  • \( {c}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)} \) is the maximum processing rate for the operation \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \) at the λ-channel; it determines the maximum possible value for the production rate \( {u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)} \).

  • Decision Variables

    \( {x}_{\upnu}^{\left(0,1\right)}(t) \) is a state variable characterizing the lead time for job A ν at each moment t.

  • \( {x}_{i\mathrm{\ae}}^{\left(0,2,\upnu \right)}(t) \) is a state variable characterizing the flow time of the operation \( {D}_{\mathrm{\ae}}^{(i)} \) or \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \).

  • \( {x}_{\upnu}^{\left(0,3\right)}(t) \) is a state variable characterizing the gap between the planned completion time for all jobs and the actual completion time of the job A ν.

  • \( {u}_{\upnu j}^{\left(0,1\right)}(t) \), \( {u}_{i\mathrm{\ae}j}^{\left(0,2,\nu \right)}(t) \), \( {u}_{\upnu j}^{\left(0,3\right)}(t) \) are control variables; if \( {u}_{\upnu j}^{\left(0,1\right)}(t) \) = 1, then we have a transportation of job A ν to B j, and \( {u}_{\upnu j}^{\left(0,1\right)}(t) \) = 0 otherwise; \( {u}_{i\mathrm{\ae}j\uplambda}^{\left(0,2,\upnu \right)}(t) \) = 1 if operation \( {D}_{\mathrm{\ae}}^{(i)} \) or \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \) is assigned to a λ-channel, and \( {u}_{i\mathrm{\ae}j\uplambda}^{\left(0,2,\upnu \right)}(t) \) = 0 otherwise; \( {u}_{\upnu j}^{\left(0,3\right)}(t) \) = 1 at the moment when A ν is completed at time point t until t = Tf , and \( {u}_{\upnu j}^{\left(0,3\right)}(t) \) = 0 otherwise.

  • \( {x}_{i\mathrm{\ae}j\uplambda}^{\left(\upkappa, 1\right)}(t) \) is the state variable for the channel \( {C}_{\uplambda}^{(i)} \) at M j during the setup to prepare the channel for processing \( {D}_{{\mathrm{\ae}}^{\prime}}^{\left(i,j\right)} \) after completing the operation \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \).

  • \( {u}_{i\mathrm{\ae}j\uplambda}^{\left(\upkappa, 1\right)}(t) \) is a control variable; \( {u}_{i\mathrm{\ae}j\uplambda}^{\left(\upkappa, 1\right)}(t) \) = 1 if \( {C}_{\uplambda}^{(i)} \) is in the setup process and \( {u}_{i\mathrm{\ae}j\uplambda}^{\left(\upkappa, 1\right)}(t) \) = 0 otherwise.

  • \( {x}_{j\uplambda}^{\left(\upkappa, 2\right)}(t) \) is a state variable characterizing the process (run) time of a channel.

  • \( {x}_{j\lambda \pi}^{\left(\mathrm{p},1\right)}(t) \), \( {x}_{j\uplambda \upmu}^{\left(\mathrm{p},2\right)}(t) \), \( {x}_{j\uplambda \uppi \upeta}^{\left(\mathrm{p},1\right)}(t) \), \( {x}_{j\uplambda \upmu {\upeta}^{\prime}}^{\left(\mathrm{p},2\right)}(t) \) are state variables that characterize the current quantity (volume) of non-storable resources \( \Phi {S}_{\uppi}^{(j)} \) , storable resources \( \Phi {N}_{\upmu}^{(j)} \), non-storable and recoverable (at stages η and η′) resources, and storable and recoverable (at stages η and η′) resources subject to channel \( {C}_{\uplambda}^{(j)} \), respectively. These state variables characterize a π-resource consumption and replenishment.

  • \( {x}_{j\uplambda \uppi \upeta}^{\left(\mathrm{p},3\right)}(t) \), \( {x}_{j\uplambda \upmu {\upeta}^{\prime}}^{\left(\mathrm{p},4\right)}(t) \) are auxiliary state variables that are needed to define the sequence of the resource replenishments and the ends of the replenishment intervals, respectively.

  • \( {u}_{j\uplambda \uppi \upeta}^{\left(\mathrm{p},1\right)},{u}_{j\uplambda \upmu \upeta}^{\left(\mathrm{p},2\right)} \) are control variables characterizing the replenishment process for the non-storable and storable resources respectively; \( {u}_{j\uplambda \uppi \upeta}^{\left(\mathrm{p},1\right)},{u}_{j\uplambda \upmu \upeta}^{\left(\mathrm{p},2\right)} \) = 1 if a π-resource is under replenishment at time point t, and equal 0 otherwise.

  • \( {x}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)}(t) \) is a state variable characterizing the quantity (volume) of the product «ρ» that is being delivered at M j from M i during the execution of \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \) (or the processed quantity at M j, if i = j).

  • \( {x}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},2\right)}(t) \) is an auxiliary state variable characterizing the total processing time (including the waiting time) of a product flow ρ resulting from the interaction of M i and M j for \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \) at \( {C}_{\uplambda}^{(i)} \), \( {C}_{\uplambda}^{(j)} \).

  • \( {u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)} \) is the shipment rate for the transportation from M i to M j (or the processing rate at M j if i = j); \( {u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},2\right)}(t) \) is an auxiliary control variable; \( {u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},2\right)}(t) \) = 1 if processing at M j is completed, and \( {u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},2\right)}(t) \) = 0 otherwise, or if, after the completion of \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \) (or \( {D}_{\mathrm{\ae}}^{(i)} \), if i = j), the next operation in the technological process \( {D}_{\tilde{\mathrm{\ae}}}^{\left(i,j\right)} \) (or \( {D}_{\tilde{\mathrm{\ae}}}^{(i)} \), if i = j) begins.

2.3.2.1 Process Model of the Operation Execution

$$ {x}_{\nu}^{\left(0,1\right)}=\sum \limits_{j=1}^m{u}_{\nu j}^{\left(0,1\right)};\kern0.5em {x}_{i\mathrm{\ae}}^{\left(0,2,\nu \right)}=\sum \limits_{j=1}^m\sum \limits_{\lambda =1}^{l_j}{\varepsilon}_{ij}(t){\Theta}_{i\mathrm{\ae} j\lambda}(t){u}_{i\mathrm{\ae} j\lambda}^{\left(0,2,\nu \right)};\kern0.5em {x}_{\nu j}^{\left(0,3\right)}={u}_{\nu j}^{\left(0,3\right)},$$
(2.1)
$$ {x}_{i\mathrm{\ae} j\lambda}^{\left(\kappa, 1\right)}=\sum \limits_{j^{\prime }=1}^m\sum \limits_{{\mathrm{\ae}}^{\prime }=1}^{s_i}{\Theta}_{i^{\prime }{\mathrm{\ae}}^{\prime }j\mathrm{\ae}}{u}_{i^{\prime }{\mathrm{\ae}}^{\prime } j\lambda}^{\left(\kappa, 1\right)}\frac{b_{i^{\prime }{\mathrm{\ae}}^{\prime }i\mathrm{\ae}}^{\left(j,\lambda \right)}-{x}_{i\mathrm{\ae} j\lambda}^{\left(\kappa, 1\right)}}{x_{i^{\prime }{\mathrm{\ae}}^{\prime } j\lambda}^{\left(\kappa, 1\right)}}, $$
(2.2)
$$ {x}_{j\lambda}^{\left(\kappa, 2\right)}=\sum \limits_{i=1}^m\sum \limits_{\mathrm{\ae}=1}^{s_i}\left({u}_{i\mathrm{\ae} j\lambda}^{\left(o,2\right)}+{u}_{i\mathrm{\ae} j\lambda}^{\left(\kappa, 1\right)}\right), $$
(2.3)
$$ {x}_{j\lambda \pi}^{\left(\mathrm{p},1\right)}=-\sum \limits_{i=1}^m\sum \limits_{\mathrm{\ae}=1}^{s_i}{d}_{i\mathrm{\ae} j\lambda}^{\left(\pi \right)}\left({u}_{i\mathrm{\ae} j\lambda}^{\left(\mathrm{o},2\right)}+{u}_{i\mathrm{\ae} j\lambda}^{\left(\kappa, 1\right)}\right), $$
(2.4)
$$ {x}_{j\lambda \mu}^{\left(\mathrm{p},2\right)}=-\sum \limits_{i=1}^m\sum \limits_{\mathrm{\ae}=1}^{s_i}{g}_{i\mathrm{\ae} j\lambda}^{\left(\mu \right)}\left({u}_{i\mathrm{\ae} j\lambda}^{\left(\mathrm{o},2\right)}+{u}_{i\mathrm{\ae} j\lambda}^{\left(\kappa, 1\right)}\right), $$
(2.5)
$$ {x}_{j\lambda \pi \eta}^{\left(\mathrm{p},1\right)}=-\sum \limits_{i=1}^m\sum \limits_{\mathrm{\ae}=1}^{s_i}{d}_{i\mathrm{\ae} j\lambda}^{\left(\pi \right)}\left({u}_{i\mathrm{\ae} j\lambda}^{\left(\mathrm{o},2\right)}+{u}_{i\mathrm{\ae} j\lambda}^{\left(\kappa, 1\right)}\right)+{u}_{j\lambda \pi \left(\eta -1\right)}^{\left(\mathrm{p},1\right)}, $$
(2.6)
$$ {x}_{j\lambda \mu {\eta}^{\prime}}^{\left(\mathrm{p},2\right)}=-\sum \limits_{i=1}^m\sum \limits_{\mathrm{\ae}=1}^{s_i}{g}_{i\mathrm{\ae} j\lambda}^{\left(\mu \right)}\left({u}_{i\mathrm{\ae} j\lambda}^{\left(\mathrm{o},2\right)}+{u}_{i\mathrm{\ae} j\lambda}^{\left(\kappa, 1\right)}\right)+{u}_{j\lambda \mu \left({\eta}^{\prime }-1\right)}^{\left(\mathrm{p},2\right)}, $$
(2.7)
$$ {x}_{j\lambda \pi \eta}^{\left(\mathrm{p},3\right)}={u}_{j\lambda \pi \eta}^{\left(\mathrm{p},1\right)};\kern1em {x}_{j\lambda \mu {\eta}^{\prime}}^{\left(\mathrm{p},4\right)}={u}_{j\lambda \mu {\eta}^{\prime}}^{\left(\mathrm{p},2\right)}, $$
(2.8)
$$ {x}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)}={u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)};\kern1.5em {x}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},2\right)}={u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},2\right)}. $$
(2.9)

Equation (2.1) describes the dynamics of the operation execution for the job A ν. If

\( {x}_{\nu}^{\left(0,1\right)}=\sum \limits_{j=1}^m{u}_{\nu j}^{\left(0,1\right)} \), then at each time point where, if \( {u}_{\upnu j}^{\left(0,1\right)}(t) \) = 1 (i.e., the volume of the state variable x v is increasing), the job processing is in progress at the j-station in the assembly system. If \( {x}_{i\mathrm{\ae}}^{\left(0,2,\nu \right)}=\sum \limits_{j=1}^m{\varepsilon}_{ij}(t){u}_{i\mathrm{\ae}j}^{\left(0,2,\nu \right)} \), then the operation processing can start subject to the time windows of feasible capacity. If \( {x}_{\nu j}^{\left(0,3\right)}={u}_{\nu j}^{\left(0,3\right)} \), then the job is completed earlier than the due date (i.e., the earliness of the job completion subject to the slack time).

Equations (2.2) and (2.3) describe the state dynamics of the channel \( {C}_{\lambda}^{(i)} \) at M i and characterize the availability of the channel for the processing of operation \( {D}_{\mathrm{\ae}}^{\left(i,j\right)} \). Equation (2.2) describes the setup dynamics, and Eq. (2.3) reflects the occupation time of each channel subject to the dynamics of the operation execution (i.e., variable \( {u}_{i\mathrm{\ae} j\lambda}^{\left(o,2\right)} \) = 1) in Eq. (2.1).

Equations (2.4)–(2.8) describe the resource consumption dynamics (Eqs. 2.4 and 2.5) and the resource replenishment dynamics (Eqs. 2.62.8) subject to the assignment and setup decisions in Eqs. (2.1)–(2.3). Finally, Eq. (2.9) describes the material flow dynamics in the assembly system subject to the operation assignments to the stations, setups, and resource management decisions.

2.3.2.2 Constraints

$$ \sum \limits_{j=1}^m{u}_{\upnu j}^{\left(0,1\right)}\left[\sum \limits_{\upalpha \in {\Gamma}_{\upnu 1}}\left({a}_{\upalpha}^{\left(0,1\right)}-{x}_{\upalpha}^{\left(0,1\right)}(t)\right)+\prod \limits_{\upbeta \in {\Gamma}_{\upnu 2}}\left({a}_{\upbeta}^{\left(0,1\right)}-{x}_{\upbeta}^{\left(0,1\right)}(t)\right)\right]=0, $$
(2.10)
$$ \sum \limits_{\uplambda =1}^{l_j}{u}_{i\mathrm{\ae}j\uplambda}^{\left(0,2,\upnu \right)}\left[\sum \limits_{\tilde{\upalpha}\in {\Gamma}_{i\mathrm{\ae}1}}\left({a}_{i\tilde{\upalpha}}^{\left(0,2,\upnu \right)}-{x}_{i\tilde{\upalpha}}^{\left(0,2,\upnu \right)}(t)\right)+\prod \limits_{\tilde{\upbeta}\in {\Gamma}_{i\mathrm{\ae}2}}\left({a}_{i\tilde{\upbeta}}^{\left(0,2,\upnu \right)}-{x}_{i\tilde{\upbeta}}^{\left(0,2,\upnu \right)}(t)\right)\right]=0, $$
(2.11)
$$ \sum \limits_{\upnu =1}^u{u}_{\upnu j}^{\left(0,1\right)}(t)\le 1,\kern0.5em \forall j;\kern1em \sum \limits_{j=1}^m{u}_{\upnu j}^{\left(0,1\right)}(t)\le 1,\kern0.5em \forall j;\kern0.5em {u}_{\upnu j}^{\left(0,1\right)}(t)\in \left\{0,1\right\} $$
(2.12)
$$ {u}_{i\mathrm{\ae}j\uplambda}^{\left(0,2,\upnu \right)}(t)\in \left\{0,{u}_{\upnu j}^{\left(0,1\right)}\right\};\kern0.5em {u}_{\upnu j}^{\left(0,3\right)}(t)\in \left\{0,1\right\};\kern0.5em {u}_{\upnu j}^{\left(0,3\right)}\left({a}_{js_i}^{\left(0,2,\upnu \right)}-{x}_{js_j}^{\left(0,2,\upnu \right)}(t)\right)=0 $$
(2.13)
$$ {u}_{i\mathrm{\ae}j\uplambda}^{\left(0,2\right)}{x}_{i\mathrm{\ae}j\uplambda}^{\left(\upkappa, 1\right)}=0;\kern1em {x}_{i\mathrm{\ae}j\uplambda}^{\left(\upkappa, 1\right)}(t)\in \left\{0,1\right\}, $$
(2.14)
$$ \sum \limits_{i=1}^n\sum \limits_{\mathrm{\ae}=1}^{s_i}{u}_{i\mathrm{\ae} j\lambda}^{\left(\upkappa, 1\right)}(t)\le 1,\kern1em \forall j,\kern0.5em \forall \lambda, $$
(2.15)
$$ \sum \limits_{i,\mathrm{\ae},\uplambda}{d}_{i\mathrm{\ae}j\uplambda}^{\left(\uppi \right)}\left({u}_{i\mathrm{\ae}j\uplambda}^{\left(\mathrm{o},2\right)}+{u}_{i\mathrm{\ae}j\uplambda}^{\left(\upkappa, 1\right)}\right)\le {\tilde{H}}_j^{\left(\uppi \right)}(t), $$
(2.16)
$$ \sum \limits_{i,\mathrm{\ae},\uplambda}\underset{T_0}{\overset{T_f}{\int }}{g}_{i\mathrm{\ae}j\uplambda}^{\left(\upmu \right)}\left({u}_{i\mathrm{\ae}j\uplambda}^{\left(\mathrm{o},2\right)}\left(\uptau \right)+{u}_{i\mathrm{\ae}j\uplambda}^{\left(\upkappa, 1\right)}\left(\uptau \right)\right)d\uptau \le \underset{T_0}{\overset{T_f}{\int }}{\tilde{\tilde{H}}}_j^{\left(\upmu \right)}\left(\uptau \right)d\uptau, $$
(2.17)
$$ {u}_{j\uplambda \uppi \upeta}^{\left(\mathrm{p},1\right)}\left({a}_{j\uplambda \uppi \left(\upeta -1\right)}^{\left(\mathrm{p},3\right)}-{x}_{j\uplambda \uppi \left(\upeta -1\right)}^{\left(\mathrm{p},3\right)}\right)=0,\kern2em {u}_{j\uplambda \uppi \upeta}^{\left(\mathrm{p},1\right)}{x}_{j\uplambda \uppi \upeta}^{\left(\mathrm{p},1\right)}=0, $$
(2.18)
$$ {u}_{j\uplambda \upmu \upeta}^{\left(\mathrm{p},2\right)}\left({a}_{j\uplambda \uppi \left({\upeta}^{\prime }-1\right)}^{\left(\mathrm{p},4\right)}-{x}_{j\uplambda \uppi \left({\upeta}^{\prime }-1\right)}^{\left(\mathrm{p},4\right)}\right)=0,\kern2em {u}_{j\uplambda \upmu {\upeta}^{\prime}}^{\left(\mathrm{p},2\right)}{x}_{j\uplambda \upmu {\upeta}^{\prime}}^{\left(\mathrm{p},2\right)}=0, $$
(2.19)
$$ {u}_{j\uplambda \uppi \upeta}^{\left(\mathrm{p},1\right)}(t),\kern0.5em {u}_{j\uplambda \upmu \upeta}^{\left(\mathrm{p},2\right)}(t)\in \left\{0,1\right\},\kern1em \upeta =1,\dots, {\tilde{\uprho}}_{\uplambda};\kern1em {\upeta}^{\prime }=1,\dots, {\tilde{\tilde{\uprho}}}_{\uplambda}, $$
(2.20)
$$ 0\le \kern0.5em {u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)}\le {c}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)}{u}_{i\mathrm{\ae} j\lambda}^{\left(\mathrm{o},2\right)}, $$
(2.21)
$$ {u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},2\right)}\left({a}_{i\mathrm{\ae}\rho}^{\left(\mathrm{f},1\right)}-{x}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)}\right)=0;\kern1em {u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},2\right)}{x}_{i\tilde{\mathrm{\ae}}}^{\left(\mathrm{o},2\right)}=0;\kern1em {u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},2\right)}(t)\in \left\{0,1\right\}, $$
(2.22)
$$ \sum \limits_{i=1}^m\sum \limits_{\lambda =1}^{l_i}\sum \limits_{\mathrm{\ae}=1}^{s_i}\sum \limits_{\rho =1}^{k_i}{x}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)}\left({u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{o},2\right)}{+}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},2\right)}\right)\le {\tilde{P}}_j^{(1)}, $$
(2.23)
$$ \sum \limits_{i=1}^m\sum \limits_{\lambda =1}^{l_i}\sum \limits_{\mathrm{\ae}=1}^{s_i}{u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)}\le {\tilde{P}}_{j\rho}^{(2)}, $$
(2.24)
$$ \sum \limits_{\lambda =1}^{l_i}\sum \limits_{\mathrm{\ae}=1}^{s_i}\sum \limits_{\rho =1}^{k_i}{u}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)}\le {\tilde{P}}_{ij}^{(3)}. $$
(2.25)

Constraints (2.10) and (2.11) describe the technological precedence relations in regard to the jobs and operations of the jobs. Constraint (2.12) defines the rules of operation splitting and overlapping. Equation (2.13) is a binary constraint on the control variables.

Constraints (2.14) and (2.15) determine the setup sequence at the channels and the conditions for setups at the channel \( {C}_{\uplambda}^{(i)} \). According to constraints (2.16) and (2.17), the intensities of the maximum resource consumption at each time point t are constrained subject to \( {\tilde{H}}_j^{\left(\uppi \right)} \), \( {\tilde{\tilde{H}}}_j^{\left(\upmu \right)} \). Constraints (2.18)–(2.20) determine the sequence of the replenishment actions. Equations (2.21)–(2.25) constrain the maximum processing rates subject to the operation assignments.

2.3.2.3 Boundary Conditions

$$ {\mathbf{h}}_0^{\left(\mathrm{o}\right)}\left({\mathbf{x}}^{\left(\mathrm{o}\right)}\left({\mathrm{T}}_0\right)\right)\le 0\kern0.5em ;\kern1.5em {\mathbf{h}}_1^{\left(\mathrm{o}\right)}\left({\mathbf{x}}^{\left(\mathrm{o}\right)}\left({\mathrm{T}}_{\mathrm{f}}\right)\right)\le 0,\vspace*{-10pt} $$
(2.26)
$$ {\mathbf{h}}_0^{\left(\mathrm{k}\right)}\left({\mathbf{x}}^{\left(\mathrm{k}\right)}\left({\mathrm{T}}_0\right)\right)\le 0\kern0.5em ;\kern1.5em {\mathbf{h}}_1^{\left(\mathrm{k}\right)}\left({\mathbf{x}}^{\left(\mathrm{k}\right)}\left({\mathrm{T}}_{\mathrm{f}}\right)\right)\le 0,\vspace*{-10pt} $$
(2.27)
$$ {\mathbf{h}}_0^{\left(\mathrm{r}\right)}\left({\mathbf{x}}^{\left(\mathrm{r}\right)}\left({\mathrm{T}}_0\right)\right)\le 0\kern0.5em ;\kern1.5em {\mathbf{h}}_1^{\left(\mathrm{r}\right)}\left({\mathbf{x}}^{\left(\mathrm{r}\right)}\left({\mathrm{T}}_{\mathrm{f}}\right)\right)\le 0,\vspace*{-10pt} $$
(2.28)
$$ {\mathbf{h}}_0^{\left(\mathrm{f}\right)}\left({\mathbf{x}}^{\left(\mathrm{f}\right)}\left({\mathrm{T}}_0\right)\right)\le 0\kern0.5em ;\kern1.5em {\mathbf{h}}_1^{\left(\mathrm{f}\right)}\left({\mathbf{x}}^{\left(\mathrm{f}\right)}\left({\mathrm{T}}_{\mathrm{f}}\right)\right)\le 0. $$
(2.29)

Equations (2.26)–(2.29) determine the initial and final values for the state variables in regard to the operations, channel, resource, and flow dynamics.

2.3.2.4 Control Functionals

$$ {J}_1^{\left(\mathrm{o}\right)}=\sum \limits_{\nu =1}^n\sum \limits_{j=1}^m{u}_{\nu j}^{\left(o,3\right)}\left({T}_f\right),\vspace*{-10pt} $$
(2.30)
$$ {J}_{<2,\alpha, \nu >}^{\left(\mathrm{o}\right)}=\sum \limits_{i=1}^m\sum \limits_{j=1}^m\left({x}_{\alpha i}^{\left(o,3\right)}\left({T}_f\right)-{x}_{\nu j}^{\left(o,3\right)}\left({T}_f\right)\right),\vspace*{-10pt} $$
(2.31)
$$ {J}_3^{\left(\mathrm{o}\right)}={T}_f-\sum \limits_{j=1}{x}_{nj}^{\left(o,1\right)}\left({T}_f\right),\vspace*{-10pt} $$
(2.32)
$$ {J}_{<4,i,\upnu >}^{\left(\mathrm{o}\right)}=\sum \limits_{\upnu, j,\uplambda, \mathrm{\ae}}\underset{{\mathrm{T}}_0}{\overset{T_f}{\int }}{\upvarepsilon}_{ij}\left(\uptau \right){\Theta}_{i\mathrm{\ae}j\uplambda}\left(\uptau \right){u}_{i\mathrm{\ae}j\uplambda}^{\left(0,2,\upnu \right)}\left(\uptau \right)d\uptau,\vspace*{-10pt} $$
(2.33)
$$ {J}_{<5,i>}^{\left(\mathrm{o}\right)}=\sum \limits_{\nu, j,\mathrm{\ae}}\underset{{\mathrm{T}}_0}{\overset{T_f}{\int }}\left[{\varepsilon}_{ij}\left(\tau \right)-{\varepsilon}_{ij}\left(\tau \right){u}_{i\mathrm{\ae} j\lambda}^{\left(0,2,\nu \right)}\left(\tau \right)\right] d\tau,\vspace*{-10pt} $$
(2.34)
$$ {J}_6^{\left(\mathrm{o}\right)}=\sum \limits_{i=1}^m\sum \limits_{\mathrm{\ae}=1}^{s_i}{\left({a}_{i\mathrm{\ae}}^{\left(o,2,\nu \right)}-{x}_{i\mathrm{\ae}}^{\left(o,2,\nu \right)}\left({T}_f\right)\right)}^2,\vspace*{-10pt} $$
(2.35)
$$ {J}_7^{\left(\mathrm{o}\right)}=\sum \limits_{\nu =1}^n\sum \limits_{i=1}^m\sum \limits_{\mathrm{\ae}=1}^{s_i}\sum \limits_{j=1}^m\sum \limits_{\lambda =1}^{l_j}\underset{T_0}{\overset{T_f}{\int }}{\tilde{\tilde{\beta}}}_{i\mathrm{\ae}}^{\left(\nu \right)}\left(\tau \right){u}_{i\mathrm{\ae} j\lambda}^{\left(0,2,\nu \right)}\left(\tau \right) d\tau, \vspace*{-10pt}$$
(2.36)
$$ {J}_1^{\left(\upkappa \right)}=\sum \limits_{\Delta_1=1}^{m-1}\sum \limits_{\Delta_2={\Delta}_1+1}^m\sum \limits_{\uplambda =1}^l\sum \limits_{\upzeta =1}^l\underset{T_0}{\overset{T_f}{\int }}\left({x}_{\Delta_1\uplambda}^{\left(\upkappa, 2\right)}\left(\uptau \right)-{x}_{\Delta_2\upzeta}^{\left(k,2\right)}\left(\uptau \right)\right)d\uptau, \vspace*{-10pt}$$
(2.37)
$$ {J}_2^{\left(\upkappa \right)}=\sum \limits_{\Delta_1=1}^{m-1}\sum \limits_{\Delta_2={\Delta}_1+1}^m\sum \limits_{\uplambda =1}^l\sum \limits_{\upzeta =1}^l\left({x}_{\Delta_1\uplambda}^{\left(\upkappa, 2\right)}\left({T}_f\right)-{x}_{\Delta_2\upzeta}^{\left(\upkappa, 2\right)}\left({T}_f\right)\right),\vspace*{-10pt}\enlargethispage*{14pt} $$
(2.38)
$$ {J}_{1j\uppi}^{\left(\mathrm{p}\right)}=\sum \limits_{\uplambda =1}^{l_j}\sum \limits_{\upeta =1}^{{\tilde{\uprho}}_{\uplambda}}{x}_{j\uplambda \uppi \upeta}^{\left(\mathrm{p},3\right)}, $$
(2.39)
$$ {J}_{2j\upmu}^{\left(\mathrm{p}\right)}=\sum \limits_{\uplambda =1}^{l_j}\sum \limits_{\upeta^{\prime }=1}^{{\tilde{\tilde{\uprho}}}_{\uplambda}}{x}_{j\uplambda \upmu \upeta}^{\left(\mathrm{p},4\right)},\vspace*{-12pt} $$
(2.40)
$$ {J}_1^{\left(\mathrm{f}\right)}={\left.\sum \limits_{i=1}^m\sum \limits_{\mathrm{\ae}=1}^{s_i}\sum \limits_{\begin{array}{l}j=1\\ {}i\ne j\end{array}}^m\sum \limits_{\lambda =1}^{l_i}\sum \limits_{\rho =1}^{k_i}{\left({a}_{i\mathrm{\ae}\rho}^{\left(\mathrm{f},1\right)}-{x}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)}\right)}^2\right|}_{t={T}_f},\vspace*{-12pt} $$
(2.41)
$$ {J}_2^{\left(\mathrm{f}\right)}=\sum \limits_{i=1}^m\sum \limits_{\mathrm{\ae}=1}^{s_i}\sum \limits_{\begin{array}{l}j=1\\ {}i\ne j\end{array}}^m\sum \limits_{\lambda =1}^{l_i}\sum \limits_{\rho =1}^{k_i}\underset{T_0}{\overset{T_f}{\int }}{x}_{i\mathrm{\ae} j\lambda}^{\left(\mathrm{f},2\right)}\left(\tau \right) d\tau . $$
(2.42)

We refer to the studies (Ivanov et al. 2010; Ivanov and Sokolov 2012a) for a multi-objective resolution of optimal control scheduling models.

The control functional \( {J}_1^{\left(\mathrm{o}\right)} \) (Eq. 2.30) characterizes the overall number of completed jobs in the assembly system at t = T f. This is the performance indicator for the assembly system throughput. \( {J}_{<2,\upalpha, \upnu >}^{\left(\mathrm{o}\right)} \) (Eq. 2.31) reflects the lead time for the job A ν. \( {J}_3^{\left(\mathrm{o}\right)} \) (Eq. 2.32) characterizes the makespan for all jobs A ν. \( {J}_{<4,i,\upnu >}^{\left(\mathrm{o}\right)} \) (Eq. 2.33) characterizes the processing time of job A ν. \( {J}_{<5,i>}^{\left(\mathrm{o}\right)} \) (Eq. 2.34) is the waiting time of job A ν. \( {J}_6^{\left(\mathrm{o}\right)} \) (Eq. 2.35) depicts the degree of the job completion at the end of the planning interval. \( {J}_7^{\left(\mathrm{o}\right)} \) (Eq. 2.36) expresses the total tardiness for all operations subject to the penalty functions \( {\tilde{\tilde{\beta}}}_{i\mathrm{\ae}}^{\left(\nu \right)} \), that is, an on-time-delivery.

The control functionals (2.37) and (2.38) estimate the equality of the channel utilization at the stations in the assembly system at each time point t ∈ (T 0, T f ] and at the end of the planning interval. The control functionals (2.39) and (2.40) estimate the degree of the resource replenishment and the timeliness of the resource replenishment, respectively. The control functional (2.41) characterizes the gap between the planned and actually processed operation volume and is interconnected with the control functional (2.35). The control functional (2.42) depicts the waiting time for the operations and is interconnected with the control functional (2.34).

2.3.2.5 Integration Principle

To obtain a constructive solution to the problem considered, we propose to use a functorial transition from the category of digraphs (CatΦ) that specifies the manufacturing technology to the category of dynamic models (CatD), which describes the operation execution. The covariant functor G: Ф → D sets the state relations in-between the nodes in the manufacturing technology plan and the operation execution schedule. The simplified mathematical model of manufacturing technology plan and the operation execution schedule integration can be presented as shown in Eq. (2.43):

$$ {\displaystyle \begin{array}{l}\Delta =\left\{\mathbf{u}|\frac{dx_i}{dt}=\sum \limits_{\nu =1}^n{u}_{vj};\sum \limits_{j=1}^m{u}_{vj}\le 1;\sum \limits_{\nu =1}^n{u}_{vj}\le 1;{u}_{vj}(t)\in \Big\{0,1\Big\};\right.\\ {}\sum \limits_{\nu =1}^n{u}_{vj}\left[\sum \limits_{\alpha \in {\Gamma}_1^{-}}\left({a}_{\alpha }-{x}_{\alpha }(t)\right)+\prod \limits_{\beta \in {\Gamma}_2^{-}}\left({a}_{\beta }-{x}_{\beta }(t)\right)\right]=0;\\ {}\left.t\in \left({T}_0,{T}_f\right]=T;\kern1em {x}_v\left({T}_0\right)=0;\kern0.5em {x}_v\left({T}_f\right)={a}_v\right\}\end{array}} $$
(2.43)

where x v is a variable characterizing the state of the job Av, u vj = 1 is a control action (u vj = 1, if the station M(i) is used for job A (ν)), a v, a α, a β are given quantities (end conditions), the values of which should have the corresponding variables x v(t), x α(t), x β(t) at the end of the planning interval at the time point t = T f, t is the running time point, T 0 is the start time point of the planning horizon, T f is the end time point of the planning horizon, T is the planning horizon, \( \sum \limits_{\nu =1}^n{u}_{vj}\sum \limits_{a\in {\Gamma}_1^{-}}\left({a}_{\alpha }-{x}_{\alpha }(t)\right)=0 \) are constraints “and” that relate the condition of the total processing of all predecessor operations, \( \sum \limits_{\nu =1}^n{u}_{\nu j}\prod \limits_{\beta \in {\Gamma}_2^{-}}\left({a}_{\beta }-{x}_{\beta }(t)\right)=0 \) are constraints “or” that relate the condition of the processing of at least one of the predecessor operations, and \( {\Gamma}_1^{-} \), \( {\Gamma}_2^{-} \) are the sets of processes that immediately precede the job A (ν).

In the proposed approach, the assignment and flow control are considered simultaneously. Since the task times may differ subject to a varying processing speed \( {c}_{i\mathrm{\ae} j\lambda \rho}^{\left(\mathrm{f},1\right)} \) and the channel availability ε ij(t) and Θiæjλ(t), the assignments made on the basis of the planned processing volumes a vj are forwarded to the resource and flow dynamics control models and further optimized in regard to resource consumption, replenishment, and usage over time. In the flow control model, the assignment of an operation to a channel and the execution start of the operation at the channel cause dynamic flows of the processed products.

2.3.2.6 Formulation of the Scheduling Problem

The task is to find a feasible control u(t), [T 0, T f), which ensures that the dynamic control model meets the constraint functions and guides the dynamic system (i.e., the schedule) \( \dot{\mathbf{x}}=\mathbf{f}\left(t,\mathbf{x},\mathbf{u}\right) \) from the initial state to the specified final state subject to given end conditions and the uncertainty area under the disturbances ξ(t). If there are several feasible controls (schedules), then the best one (optimal) should be selected in order to maximize (minimize) the control functionals (2.30)–(2.42).

2.4 The Role of Industry 4.0 and Digital Technology in the Implementation of the Dynamic Schedule Computation

The control model proposed can be enriched by the integration of Industry 4.0 elements such as sensors and data analytics that may have two impacts on the system. The first is the tuning: changing uncertain coefficients in the structure of the differential equations of the system, taking into account that a larger number of these coefficients implies a more accurate system response to a changing environment. The second is the learning: imposing new restrictions on the system behavior. The number of arbitrary coefficients in the structure of the differential equations changes in the process of learning, imposing dynamic restriction adjustments on the behavior of the system.

The possibility to use real-time data of the machine availability and the operation processing status on the basis of digital technologies allows the realization of different dynamic decomposition principles in the optimal control algorithm. The selection of the time points at which the Hamiltonian is extremized and small-dimensional assignment problems are solved can be implemented not only as a fixed t-step procedure but also in the event-oriented form subject to such events as “a machine becomes available” or “a new job enters the system” (Fig. 2.1).

Fig. 2.1
figure 1

Cyber-physical scheduling control framework in Industry 4.0

Consider the example illustrated in Fig. 2.1 with two machines M1 and M2 and three products. The manufacturing of the products is organized in three jobs each of which is characterized by the sequence of operations D1-D2-D3 that can be processed on both M1 and M2. Both machines and products are equipped with sensors and a communication protocol is established between the sensors. The sensors observe the machine utilization and operation processing subject to three states, that is, “in process,” “waiting,” and “finished.” The scheduling algorithm is activated in the case of the following events in the communication protocol: (1) a machine signals the completion of an operation processing and there is at least one operation either in the state “waiting” or “finished,” (2) a product signals the completion of the processing of an operation on a machine and there is at least one machine either in the state “waiting” or “finished,” and (3) there are at least one machine and one operation in the state “waiting.”

At the proactive stage, our method can be used for a descriptive and diagnostic analysis and a predictive modeling to analyze the possible performances of the production system. At the reactive stage, we contribute to the control of the real-time schedule and adaptive learning. The Industry 4.0 and cloud manufacturing typically have data-driven, sensor-based environments. Sensors and data analytics may have two impacts on the system. The first is the tuning: changing uncertain coefficients in the structure of the differential equations of the system, taking into account that a larger number of these coefficients implies a more accurate system response to a changing environment. The second is the learning: imposing new restrictions on the system behavior. The number of arbitrary coefficients in the structure of the differential equations changes in the process of learning, imposing dynamic restriction adjustments on the behavior of the system. The use of real-time data allows the realization of different dynamic decomposition principles in the optimal control algorithm for task and service compositions. The selection of the time points at which the Hamiltonian is extremized and small-dimensional assignment problems are solved can be implemented not only as a fixed t-step procedure but also in the event-oriented form subject to events for a service composition such as “a machine becomes available” or events for task composition such as “a new job enters the system.”

Moreover, the first analyses of COVID-19 pandemic impacts on the supply chains and production systems show the importance of Industry 4.0 and digital manufacturing from the perspectives of supply chain resilience and ripple effect control (Ivanov and Dolgui 2019; Hosseini et al. 2020). Firms that have visibility and digital control in manufacturing networks seem to be better positioned at the crisis time and for the future recovery coordination (Choi et al. 2020; Ivanov et al. 2019; Panetto et al. 2019; Ivanov 2020; Ivanov and Dolgui 2020a, b; Ivanov and Das 2020; Ni et al. 2020).

2.5 Conclusions

The Industry 4.0 technology enables new production strategies that require highly customized assembly systems. The ultimate objective of these systems is to facilitate a flexible customized manufacturing at the lower costs of mass production. Such innovative production strategies create a number of new challenges and opportunities for short-term job scheduling. In particular, the manufacturing processes for different customer orders may have individual machine structures such that the flexible stations are able to execute different functions subject to individual sets of operations within the jobs. Therefore, the problem of a simultaneous structural-functional synthesis of the customized assembly system arises. A flexible distributed scheduling as required by the Industry 4.0 paradigm has been addressed in this study using optimal program control theory.

The major contribution of this chapter is the development of an optimal control model for the simultaneous structural-functional design of a customized manufacturing process and sequencing of the operations of the jobs in an Industry 4.0 system. For the first time, a multi-objective, multi-stage job shop scheduling problem with alternative and flexible machines at each stage and different time-dependent processing speeds and time-dependent machine availability, without job splitting, was solved by means of optimal control and the maximum principle using the maximization of the Hamiltonian.

The method and the algorithm developed present a contribution to flexible, distributed scheduling in the emerging field of Industry 4.0-based innovative production systems. In contrast to previous studies that assumed a fixed process design, our approach is capable of designing simultaneously the manufacturing process in regard to the available alternative stations, their current capacity utilization and the processing time, and the sequencing of the jobs at the stations.

The basic computational idea of the computational approach developed is that the operation execution and machine availability are dynamically distributed in time over the planning horizon. As such, not all operations and machines are relevant to decision-making at the same time. Therefore, the solution at each time point for a small-dimensional system is calculated by mathematical programming. The multi-dimensionality and the combinatorial explosion of the problem faces a decreasing connectivity under the network diagram of the operations. The analysis of the manufacturing process paths for the execution of different jobs can help to reveal a real utilization of the channels at different stations as well as the stations all together. This may be helpful for estimating the requirements on the multi-functionality of the stations. Such an analysis may reveal, for example, that some channels are utilized fully while other channels are used occasionally. This analysis may be used for the capacity design and investment decisions.

The formulation of the scheduling model in the dynamic control form makes it possible to apply it both to proactive and reactive real-time scheduling. As such, integration of the planning and real-time control stages can be realized using the unified methodical and technical principles. Moreover, the formulation of the scheduling model as an optimal program control allows the consideration of a non-stationary process view and the use of the accuracy of continuous time. In addition, a wide range of analysis tools from control theory regarding stability, controllability, adaptability, etc. may be used if a schedule is described in terms of control.

In the future, a robustness analysis of the overall system, that is, both of the process design and the schedule, can extend the results of this study. In addition, computational examples may help to reveal new insights. A more detailed analysis of the Industry 4.0 technology may illuminate a taxonomy of structural-functional problems in this emerging research field. Finally, Industry 4.0 and digital technologies open new possibilities to the implementation of dynamic scheduling techniques using real-time data about the machine utilization, entering of new jobs, and the operation processing status. This makes it possible to extend the algorithmic dynamic decomposition principles of the control scheduling models, for example, by incorporating an event-oriented decomposition based on such events as “a machine becomes available,” “an operation is completed,” or “a new job enters the system.” These extensions can be considered in light of future research topics.