## 2 New Production Scheduling Methodology
### Feasibility Constraint  
Scheduling is the task of assigning a fixed time to each technological operations, such that all precedence conditions are met. Resources required by each operation should be acquired for the correct period and then released so that they can be used elsewhere. If a scheduling process is to be based on a numerical optimization algorithm, the above definition must be written in the form of an optimization constraint. The production schedule is correct only when the value of the feasibility constraint is equal to zero, which means that all conditions specified in the definition are met. The feasibility constraint can be divided into three components. The first, named \(C_{BS}\), describes the fluidity of the product flow at the start of the operation. This fluidity is understood to mean the timely delivery of a product from an operation previously placed in a sequence (defined by a technological recipe) for a later operation in the sequence. As can be seen in Figure 1, the task of the \(C_{BS}\) component is to verify whether the supplying operation (the green block) in the created production schedule will ensure the first delivery of a blank (a product of a previous operation in the sequence of operations for a job) to the receiving operation (the blue block) before the time of the first collection of the blank (1):  
\[C_{BS_{i,j,k}}=\left\lfloor t_{d_{ij}}(a_{blank_{i,k}}(t_{fr_{i,k}},R_{k}),R_{j })-t_{fr_{i,k}}\right\rfloor \tag{1}\]  
where \(t_{d_{ij}}\)--delivery time of the \(i\)-th blank by the \(j\)-th operation; \(t_{fr_{i,k}}\)--time of the first collection of the \(i\)-th blank by \(k\)-th technological operation; \(R_{k}\), \(R_{j}\)--resource set (employees, tools) assigned to the \(k\)-th and \(j\)-th operation; \(a_{blank_{i,k}}\)--the amount of the \(i\)-th blank needed in the \(k\)-th operation. The limit operator \(\left\lfloor x\right\rfloor\) is defined as follows:  
\[\left\lfloor x\right\rfloor=\left\{ \begin{array}{ll}x&x>0\\ 0&x\leq 0\end{array} \right. \tag{2}\]  
The arguments \(R\) in Equation (1) are a set of resource identifiers (together for employees and tools) that describe the combination of production resources assigned to an operation. The novelty of the proposed methodology is already expressed at the level of this constraint. It should be noted that in Equation (1), which defines the constraint component, two quantities depend on the production resources \(R\) assigned to an operation. The amount of a blank required \(a_{blank}()\) may depend on both the working style of the employee and the effectiveness of the tool. Similarly, the delivery time of the blank \(t_{d}()\) depends on the efficiency of the employee or tool. The second component \(C_{BE}\) describes the fluidity of the product flow at the end of operation (see Figure 1), and it verifies whether the last blank delivery will be made no later than at the moment of the last blank collection (3):  
\[C_{BE_{i,j,k}}=\left\lfloor t_{d_{ij}}(a_{blank_{i,k}}(t_{tr_{i,k}}(R_{k})),R_{ j})-t_{tr_{i,k}}(R_{k})\right\rfloor \tag{3}\]  
where \(t_{tr_{i,k}}\) is the time of the last collection of the \(i\)-th blank by \(k\)-th technological operation. Figure 1: Control points of the components \(C_{BS}\) and \(C_{BE}\) for two technological operations in the relationship between the supplier and the recipient. In the new methodology, also in the case of this component, there is a functional relationship between the time of the last collection of a blank \(t_{lr}\) and the production resources \(R\) assigned to the operation. The third component \(C_{PR}\) of the feasibility constraint, which refers to the absence of conflict of access to the production resources (employees and tools), verifies whether no production resource has been assigned to two different production operations at the same time. An example of such a conflict is shown in Figure 2. Both operations shown are assumed to use the same production resource.