Next Article in Journal
Differential Mechanism of 3D Motions of Falling Debris in Tunnels Under Extreme Wind Environments Induced by a Single Train and by Trains Crossing
Previous Article in Journal
Personalization of AI-Based Digital Twins to Optimize Adaptation in Industrial Design and Manufacturing—Review
Previous Article in Special Issue
The Classification of Work and Offenses of Professional Drivers from Slovakia and the Czech Republic
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Proactive Scheduling and Routing of MRP-Based Production with Constrained Resources

Department of Applied Computer Science, Kielce University of Technology, 25-314 Kielce, Poland
*
Author to whom correspondence should be addressed.
Appl. Sci. 2025, 15(15), 8522; https://doi.org/10.3390/app15158522
Submission received: 3 July 2025 / Revised: 24 July 2025 / Accepted: 28 July 2025 / Published: 31 July 2025

Abstract

This research addresses the challenges of proactive scheduling and routing in manufacturing systems governed by the Material Requirement Planning (MRP) method. Such systems often face capacity constraints, difficulties in resource balancing, and limited traceability of component requirements. The lack of seamless integration between customer orders and production tasks, combined with the manual and time-consuming nature of schedule adjustments, highlights the need for an automated and optimized scheduling method. We propose a novel optimization-based approach that leverages mixed-integer linear programming (MILP) combined with a proprietary procedure for reducing the size of the modeled problem to generate feasible and/or optimal production schedules. The model incorporates dynamic routing, partial resource utilization, limited additional resources (e.g., tools, workers), technological breaks, and time quantization. Key results include determining order feasibility, identifying unfulfilled order components, minimizing costs, shortening deadlines, and assessing feasibility in the absence of available resources. By automating the generation of data from MRP/ERP systems, constructing an optimization model, and exporting the results back to the MRP/ERP structure, this method improves decision-making and competes with expensive Advanced Planning and Scheduling (APS) systems. The proposed innovation solution—the integration of MILP-based optimization with the proprietary PT (data transformation) and PR (model-size reduction) procedures—not only increases operational efficiency but also enables demand source tracking and offers a scalable and economical alternative for modern production environments. Experimental results demonstrate significant reductions in production costs (up to 25%) and lead times (more than 50%).

Graphical Abstract

1. Introduction

In modern manufacturing environments, effective planning and scheduling remain critical challenges, especially in systems based on traditional Material Requirements Planning (MRP) or its successors such as Manufacturing Resource Planning (MRP II) and Enterprise Resource Planning (ERP). Although widely used, these systems often fall short when confronted with dynamic production demands, limited resources, and the need for rapid adaptation to order changes. Key limitations include the lack of real-time integration with actual production execution, the inability to account for machine and labor availability, and limited support for cost or time optimization. Moreover, the rigidity and high implementation costs of conventional ERP/MRP II solutions often make them unsuitable for agile production contexts.
To address these shortcomings, we introduce a novel approach based on mathematical modeling—specifically, mixed-integer linear programming (MILP)—designed to enhance production planning by integrating proactive routing and scheduling capabilities. Unlike traditional MRP systems, our method incorporates additional constraints and decision variables that reflect the partial and time-dependent use of diverse resources, including tools, software, and human labor. It also dynamically traces the origin of demand for each component, minimizes idle time between operations, and supports adaptive routing under real-time conditions.
Our contribution further includes an innovative model-size reduction technique that enables the computationally efficient generation of feasible and near-optimal production schedules. This framework facilitates both cost and time minimization and supports comprehensive feasibility assessments under various operational scenarios, such as resource downtimes or machine failures. By automating data exchange between MRP/ERP systems and the optimization engine, the proposed method offers a scalable and cost-effective alternative to expensive Advanced Planning and Scheduling (APS) systems, ensuring traceability and strategic flexibility in production.
This paper proceeds as follows: Section 2 reviews the relevant literature to contextualize our contribution. Section 3 presents the optimization model and methodological details. Section 4 discusses implementation and computational results. Section 5 concludes with implications and future research directions.

2. Related Works

Traditional Material Requirements Planning (MRP), along with its successors such as MRP II (Manufacturing Resource Planning) and Enterprise Resource Planning (ERP), has long served as the foundation of production planning in manufacturing environments. However, these systems have often been criticized for their lack of responsiveness to real-time operational constraints and limited optimization capabilities. As Vollmann [1] notes, classic MRP struggles to handle capacity constraints and frequently generates infeasible production schedules when resource availability fluctuates. To address these limitations, researchers have proposed various enhancements to MRP-based systems. For instance, Ptak and Smith [2] introduced the concept of Demand-Driven MRP (DDMRP), which improves adaptability in conventional planning models through buffer-based scheduling. Nevertheless, DDMRP still lacks integrated optimization and routing features when resources are constrained. In recent years, attention has shifted towards the integration of mathematical optimization into production planning. Pinedo [3] provides a comprehensive overview of scheduling models and emphasizes the growing use of mixed-integer linear programming (MILP) to model complex production systems under resource and precedence constraints. Graves [4] and Herrmann [5] propose hybrid approaches that link MRP data with MILP models for batch-level scheduling. While these hybrid MRP-MILP approaches [4,5] integrate optimization with MRP data, they typically lack three key capabilities: (a) full traceability of demand sources at the component level down to customer orders; (b) dynamic routing under real-time resource constraints; and (c) comprehensive resource coverage (tools, labor, software). Moreover, Shukla et al. [6] explored dynamic scheduling using real-time shop-floor data, highlighting the importance of responsiveness but without offering an integrated solution for MRP-driven contexts. Similarly, Holsapple and Sena [7] examined the role of decision support systems in manufacturing but did not extend their work to the mathematical optimization of scheduling.
Recent advancements in production planning leverage Industry 4.0 technologies, such as digital twins [8] and reinforcement learning [9,10], to enhance real-time decision-making [11]. However, these approaches often address isolated subproblems (e.g., single-machine scheduling) or lack integration with MRP’s demand-driven logic. Our work bridges this gap by combining MILP optimization with MRP traceability while accounting for dynamic resource constraints and addressing them holistically (tools, labor, software, etc.), a challenge acknowledged but not fully addressed in contemporary research [12,13].

3. Proactive Scheduling and Routing in MRP-Based Production Planning

In MRP-based planning, the system calculates the required dates and quantities of components and raw materials needed to fulfill customer orders using data on inventory levels, product structure, lead times, and other relevant information. It aggregates these requirements by component and date, and then transforms them into production and purchase orders. At this point, the source/customer order/that generated the requirement typically becomes untraceable. The system then transfers component orders for execution. Using technological data, including routes, it allocates the necessary resources/machines/employees/to these orders at defined times, thereby generating a schedule for their execution. In MRP II/ERP systems, these allocations are not always permissible. To address this, the Capacity Resource Planning (CRP) module verifies and adjusts them before passing the schedule to the Shop-Floor Control (SFC) module (see Figure 1). None of these stages, i.e., MRP, CRP, or SFC, incorporates optimization. Building on this, we propose our own approach (Section 4).
Our approach departs from the above-mentioned methods by integrating a comprehensive MILP model with features tailored to the operational constraints of MRP-driven production. In contrast to earlier solutions, our model considers not only machine use but also a wide array of additional resources (e.g., labor, tools, software), allowing for partial and time-specific utilization. It also introduces dynamic routing and scheduling, precise traceability of component-level demand origins, and the ability to evaluate order feasibility under various failure or shortage scenarios. Furthermore, it supports proactive and optimized decision-making. In addition, a proprietary procedure reduces the size of the modeled problem, enabling efficient computation without sacrificing model fidelity. This makes our approach both practical and cost-effective when compared to expensive APS systems. Table 1 provides a general comparison of the proposed approach with existing alternatives.

4. Mathematical Model for Proactive Scheduling and Routing

To address the limitations of MRP-based production planning systems (Section 1 and Section 2), we propose a mathematical model that supports and optimizes decision-making in scheduling and routing. Figure 1 illustrates the functional scope of our approach in relation to MRP II/ERP modules. The model enables automated and optimized decisions that are typically made manually or semi-automatically using the MRP/CRP/SFC modules. These modules often fail to provide optimal—or even feasible—decisions. The model relies on the following assumptions:
  • Production planning is carried out using the MRP method;
  • In addition to basic resources (machines, workstations, etc.), the production processes also involve additional resources (personnel, software, tools, etc.);
  • The system tracks demand sources in the production process (i.e., identifies which customer orders generate which component demands);
  • Resource and additional resource availability do not need to be blocked for the entire duration of each task/operation;
  • Dynamic routing is permitted, i.e., routes are not fixed before production begins but can be selected and created dynamically during production, based on pre-defined equipment configurations for machines/workstations;
  • The model supports proactive decision-making (answers to “what-if” scenarios);
  • Some decisions are optimized with respect to cost and time.
The model assumes a deterministic environment (fixed demand/resource availability) and focuses on single-site planning. Future work will address stochastic demand, multi-facility coordination, and real-time disruptions (e.g., machine breakdowns).
Based on these assumptions, we developed a mathematical model for optimizing scheduling and routing decisions. The optimization model (1)–(18) provides answers to the following questions:
  • Q1: Can the system fulfill customer orders with the available resources (what is the resulting schedule and execution method)?
  • Q2: How can the system fulfill customer orders at the lowest cost using the available resources (what is the optimal schedule and execution method)?
  • Q3: How can the system fulfill customer orders in the shortest possible time using the available resources (what is the optimal schedule and execution method)?
  • Q4: Can the system fulfill customer orders under specific resource unavailability scenarios (e.g., machine failure, reduced availability of some resource or additional resources, etc.—what is the schedule and execution method)?
If the answers to Q1 and Q4 are negative, the proposed model identifies the specific tasks that cannot be completed, allowing users to determine which customer orders remain unfulfilled.
We formulated the model as a MILP problem. It incorporates two key innovations that distinguish it from existing mathematical programming approaches in production planning and control. First, we selected the set of decision variables to ensure that the model always yields a solution. This is achieved by introducing an additional decision variable Bu,e, used in constraints (4), (5), and (9). As a result, the model avoids NSF/No Solution Found outcomes, which provide no feedback on which tasks are infeasible or why. Second, the model’s structure, including its set of constraints and multi-objective function, allows us to answer individual questions Q1–Q4 by appropriately selecting constraints and elements of the objective function, thereby enabling dynamic model construction for each specific question. Table 2 presents the model’s parameters and decision variables. Table 3 outlines the individual components of the objective function, while Table 4 provides a brief description of constraints (1)–(18). The objective function primarily relates to cost (two components) and also includes one time-related component.
t T ( pd _ a u , w pt _ w f , e , w X u , f , e , w , t ) = p w _ t f , e , w Y u , f , e , w u U , f F , e E , w W
X u , f , e , w , t = ( t 1 T t 1 < t , t 1 t p w _ t f , e , w ) Z u , f , e , w , t 1 + 1 u U , f F , e E , w W , t T
f F e E X u , f , e , w , t < = 1 u U , w W , t T
f F w W t T Z u , f , e , w , t = 1 B u , e u U , e E
B u , e 1 = B u , e 2 o o , e 1 , e 2 E p w _ z o , e 1 = 1 p w _ z o , e 2 = 1
S u , e = f F w W t T ( Z u , f , e , w , t t ) u U , e E
S u , e 1 S u , e 2 + f F w W ( p w _ t f , e 2 , w Y u , f , e 2 , w ) + p w _ m e 1 , e 2 u U , e 1 , e 2 E p w _ k e 1 , e 2 = 1
S u , e 1 f F w W ( p w _ t f , e 2 , w Y u , f , e 2 , w ) S u , e 1 p w _ c e 1 , e 2 u U , e 1 , e 2 E p w _ k e 1 , e 2 = 1
S u , e ( 1 B u , o ) ( p w _ r o ) f F w W p w _ t f , e , w Y u , f , e , w u U , p P , o O p w _ g o , e = 1 p w _ r 0 0
f F e E w W ( p t _ g f , e , w , r X u , f , e , w , t ) p t _ m r p d _ b u , r u U , r R , t T
Y u , f , e 1 , w = Y u , f , e 1 , w u U , f F , w W , e 1 , e 2 E p w _ d e 1 , e 2 = 1
X u , f , e , w , t { 0 , 1 } u U , f F , e E , w W , t T Z u , f , e , w , t { 0 , 1 } u U , f F , e E , w W , t T Y u , f , e , w { 0 , 1 } u U , f F , e E , w W B u , e { 0 , 1 } u U , e E
Cos t _ 1 u = f F e E w W t T ( c p _ w w X u , f , e , w , t )
Cos t _ 2 u = f F e E w W r R t T ( c p _ r r p t _ g f , e , w , r X u , f , e , w , t )
C u , t f F e E w W X u , f , e , w , t u U , t T
C u , t X u , f , e , w , t u U , f F , e e , w w , t T
C o u _ 1 u = t T C u , t u U
C u , t { 0 , 1 } u U , t T

5. Implementation

We implemented the proposed mathematical model (1)–(18) using the AMPL language [14] and the Gurobi mathematical programming environment [15]. AMPL enables solving the model using various solvers such as Gurobi, LINGO, CPLEX, and SCIP. The implementation process, illustrated in Figure 2, involves several stages. In the first stage, we generate mathematical models using constraints (1)–(12) and elements of the objective function (13)–(18). Solving these models provides answers to questions Q1–Q4. Next, we use the proprietary PT procedure (Section 5.1) to extract and transform parameters and coefficients from the MRPII/ERP system database. Based on these, we construct the implementation model in AMPL. Due to the high computational complexity of MILP models, we apply the proprietary PR procedure (Section 5.2) to reduce model size. This procedure decreases the number of decision variables and simplifies certain constraints, i.e., reduces the size of the model. We then solve the reduced model using the Gurobi solver. Each solution not only answers one of the questions Q1–Q4, but also provides the corresponding schedule and resource allocation for the given set of orders being executed.

5.1. Data Transformation and Preparation Procedure (PT)

The PT procedure enables the collection and transformation of data required to compute model parameters (1)–(18). Some parameters—such as a set of machines (W), a set of additional resources (R), and a set of customer orders (O)—are retrieved directly from the database (Figure 3) without the need for their transformation. Others—such as a set of execution periods (T), a set of machine equipment variants (F), and a set of tasks to be performed (E)—require conversions and/or data transformations. These transformations and conversions yield direct values for model parameters in the pw_*, pd_*, and pt_* groups (Table 2). Then, using the product structure (MRP conversion), we define production tasks for each component and generate a graph representing their execution (Figure 4) using the PT procedure (Appendix B, Figure A2).
Example of a generation graph: an active order for product A triggers demand for components B, C, D, and E (product structure). Regardless of the production route, producing A requires three tasks (Table A5), resulting in tasks E1, E2, and E3—performed in sequence: preparation, production, and completion. Producing component B requires one operation, represented by task E4, which must be completed before task E3 can begin, and so on.
At this stage, we define machine configuration variants based on the feasible technological execution of individual tasks on machines and the additional resources required. These configurations serve as the foundation for generating dynamic routing during model solving. Figure 5 presents examples of machines/workstation equipment configurations.

5.2. Procedure for Reducing the Size of the Modeled Problem (PR)

The PR procedure, illustrated by the pseudocode of which is shown in Figure 6, applies two approaches to data representation: one used in relational databases (Figure 3), and the other in mathematical programming (matrix model). In the matrix model, each element, whether a variable or a parameter, is written in its appropriate position based on matrix indices (dimensions). Even if an element equals 0, the model still records it in the corresponding cell. This not only significantly increases the matrix size but also leads to the generation of sparse matrices. In contrast, relational models store only the rows corresponding to admissible combinations of key attribute values (model indices). If a particular combination is inadmissible, the row simply does not exist. Based on this fundamental difference in data representation formats, we developed the PR procedure using both matrix and relational models, allowing for a significant reduction in size by leveraging the data of the modeled problem. For the model described in Section 4, the PR procedure proceeds as follows. Using the data from the MRP II/ERP system tables (Figure 3), it retrieves all tasks (e) and machine (w) indices, which are the key values of the tasks and machines tables. Then, for each combination of these indices, it checks whether a corresponding row exists in the allocation_tasks table. If no row is found for a given (e,w) pair, the procedure removes the associated decision variables X, Y, and Z, and deletes constraints (1), (2), (11), and (16) as they are indexed by e,w. For example, if no matching row is found for e = 2, w = 3, and e = 5 and w = 3 in the allocation_tasks table, the model removes the variables Xu,f,2,3,t, Xu,f,5,3,t, Yu,f,2,3, Yu,f,5,3, Zu,f,2,3,t, Zu,f,5,3,t, along with all corresponding constraints (1), (2), (11), (16) concerning these index pairs. The absence of such indicates that the corresponding tasks cannot be allocated to the selected machines. The same logic applies to the index pairs (e,u) and (r,u).

6. Computational Experiments

We evaluated the proposed proactive scheduling and routing approach and conducted experiments using real-world data from a kitchen furniture manufacturing facility. Experiments were conducted in several stages (Section 6.1, Section 6.2 and Section 6.3) on a computer with the following specifications: Intel(R) Core(TM) i5-2430M CPU @ 2.40GHz, 8.0 GB, 64-bit operating system, x64 processor (Windows 10).

6.1. Initial Case Study—Order Fulfillment and Baseline Comparison

In the first phase, we analyzed two customer orders: one for 100 units of product A and another for 150 units of product F. The primary objective was to verify feasibility (Q1): Can the system fulfill customer orders with the available resources?
We compared the following two methods:
  • Baseline Approach—using standard MRP II/ERP with manual scheduling.
  • Proposed MILP Approach—using the model (1)–(18) with integrated PT/PR procedures.
As shown in Table 5, the MILP-based method yielded the following results:
  • A cost reduction of approximately 15% (from 6100 to 5600 units).
  • A shorter execution time by eight periods (23% reduction).
Table 5. Results of the first and second stage experiments.
Table 5. Results of the first and second stage experiments.
QConstraintsObjective FunctionCost_1Cost_2Cou_1
Q1MRPII/ERP---3800390080
Q11–12----2840276072
Q21–14Min (Cost_1 + Cost_2)2310243564
Q2A1.12,15–18Min(Cost_1 + Cost_2), Cou_1 ≤ 542480243550
Q31.12,15–18Min Cou_12480243548
Q3A1.12,15–18MinCou_1, Cost_1 + Cost_2 ≤ 48002310243555
Q4A1.12,15–18
W2 unavailable
Min (Cost_1 + Cost_2)2840267573
Q4B1.12,15–18
W2 unavailable
Min Cou_13010276055
Q4C1.12,15–18
R2 unavailable
Min Cou_12310243555
Q4D1.12,15–18
R1 unavailable
Min (Cost_1 + Cost_2)---------
Q4E1.12,15–18
R2 unavailable
Min (Cost_1 + Cost_2)2840267573
This demonstrates that the model not only ensures feasibility but also improves schedule efficiency compared to traditional approaches.

6.2. Optimization Under Different Objectives (Q2–Q4)

In the second phase, we applied the model to extended scheduling scenarios aligned with questions Q2–Q4:
  • Q2: Minimize total production cost (Cost_1 + Cost_2).
  • Q3: Minimize the number of execution periods (Cou_1).
  • Q4: Assess feasibility and optimize performance under resource unavailability.
Several scenario variants were introduced:
  • Q2A: Minimize cost under a time constraint (Cou_1 ≤ 54).
  • Q3A: Minimize time under a cost constraint (Cost_1 + Cost_2 ≤ 4800).
  • Q4A: Minimize cost under the unavailability of resource W1.
  • Q4B: Minimize time under the unavailability of resource W1.
  • Q4C: Minimize time under the unavailability of additional resource R2.
  • Q4D: Minimize cost under the unavailability of additional resource R1.
  • Q4E: Minimize cost under the unavailability of additional resource R2.
Key insights (Table 5) include the following:
  • Cost optimization (Q2) yielded the lowest cost (4745 units), while time optimization (Q3) shortened execution to 48 periods—nearly half the baseline duration.
  • Q3A satisfied both constraints with only a modest cost increase, demonstrating the model’s flexibility.
  • Q4D was the only infeasible case, revealing the unavailability of resource R1. This resource turned out to be critical for fulfilling product A, which requires R1 for the critical “polishing” step (Table A3). Since no alternative resources or routing options exist (Table A6), the model correctly flagged infeasibility, highlighting its ability to identify critical resource dependencies.
These results confirm that the model can enhance the feasibility and cost-efficiency of MRP-driven systems, as well as improve responsiveness. Furthermore, they confirm the model’s ability to explore trade-offs between cost and time and its capacity to proactively support a “what-if” analysis for risk-aware planning.

6.3. Scalability and Performance Evaluation

In the final phase, we tested the computational performance of the model on larger datasets by varying the number of orders and the planning horizon. We recorded:
  • Time to first feasible solution (T-FIRST);
  • Time to optimal solution (T-OPTIM).
This was for both the full MILP model and the MILP model enhanced with the PR model-size reduction procedure (see Table 6).
Observations:
  • PR consistently accelerated solution times—by more than 20× in some cases.
  • For instance, when solving Q3 with 50 orders over 150 time periods:
    Without PR: T-OPTIM exceeded 7500 s.
    With PR: Reduced to ~2187 s.
  • For moderate-sized instances (10–20 orders), PR reduced solution time from hours to minutes without sacrificing solution quality.
These findings show that the PR algorithm significantly improves scalability, making the model computationally feasible for real-world-sized problems.

7. Conclusions

This study presents an innovative, mathematically grounded approach that addresses critical limitations of traditional MRP/ERP systems in handling proactive production scheduling and routing under resource constraints. By formulating and implementing a mixed-integer linear programming (MILP) model enriched with dynamic routing capabilities, partial resource utilization, and traceability of demand sources, the proposed method significantly enhances the responsiveness and efficiency of MRP-based production environments. The model assumes discrete, deterministic production conditions and is less suited for continuous processes (e.g., chemical plants) without modifications to account for flow dynamics.
The integrated PT and PR procedures automate data transformation from MRP/ERP systems and optimize model size, enabling real-time and computationally efficient decision-making. Computational experiments based on real-world production data confirm substantial performance gains: cost reductions of up to 25% and execution time reductions exceeding 50%, depending on the optimization objective. The model also demonstrates high adaptability to operational disruptions such as resource unavailability or equipment failure.
In contrast to costly and rigid APS systems, the proposed solution provides a flexible, scalable, and economically viable alternative for manufacturers seeking to modernize production planning while maintaining compatibility with existing MRP infrastructures. Future research will extend the framework to stochastic environments [16], multi-facility coordination, and AI-based decision support—areas where the current deterministic, single-facility model requires adaptation [17,18].
In addition, we intend to apply the proposed framework in our other research domains, such as the VRP/CVRP [19] and timetabling problems [20]. We plan in the implementation area that the results will be visualized using Gantt charts (machine/task timelines) and network diagrams (dynamic routing paths). For what-if scenarios (Q1–Q4), dashboards highlight with colors which decisions are acceptable, unacceptable, or optimal.

Author Contributions

Conceptualization, J.W. and P.S.; methodology, J.W. and P.S.; software, J.W.; validation, P.S.; formal analysis, P.S.; investigation, J.W.; resources, J.W.; data curation, J.W.; writing—original draft preparation, P.S.; writing—review and editing, P.S.; visualization, J.W.; supervision, P.S.; project administration, P.S.; funding acquisition, P.S. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Polish Ministry of Science and Higher Education.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The original contributions presented in this study are included in the article/Appendix A. Further inquiries can be directed to the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
MRP (Material Requirements Planning)—A system/software module for calculating the materials and components needed to manufacture a product, based on production schedules. MRP II (Manufacturing Resource Planning)—An extension of MRP that includes additional data, such as labor and machine capacity, to plan the entire manufacturing process. ERP (Enterprise Resource Planning)—A complex software system that integrates core business processes, including finance, HR, supply chain, and manufacturing. SFC (Shop-Floor Control)—A system for managing, monitoring, and reporting the status of work in progress and resources on the production floor. CRP (Capacity Requirements Planning)—A system/software module used to determine if a manufacturing facility has sufficient capacity to meet production goals, based on the MRP. APS (Advanced Planning and Scheduling)—A Software system that optimizes production planning and scheduling by considering constraints such as material availability, labor, and machine capacity in real-time. VRP (Vehicle-Routing Problem)—A combinatorial optimization problem that seeks the most efficient routes for a fleet of vehicles to deliver goods to a set of customers, starting and ending at a depot, while minimizing total distance, time, or cost. CVRP (Capacitated Vehicle-Routing Problem)—A variant of VRP where each vehicle has a limited carrying capacity, and the goal is to design optimal routes that serve all customer demands without exceeding vehicle capacity constraints.

Appendix A. Data from a Kitchen Furniture Factory [21]

Figure A1. The product structure for two final products: A and F.
Figure A1. The product structure for two final products: A and F.
Applsci 15 08522 g0a1
Table A1. Items (Table products-Figure 3).
Table A1. Items (Table products-Figure 3).
itpi
A1
B1
C1
D1
E1
F1
G1
H1
Table A2. Product structure/bill of material/table-products structure-Figure 3.
Table A2. Product structure/bill of material/table-products structure-Figure 3.
Parent (i)Child (j)Quantity Need (wspi,j)
AB1
AC2
CD1
CE1
FB1
FG1
GH1
GE1
Table A3. Workstations/machines parameters (Table machinesFigure 3).
Table A3. Workstations/machines parameters (Table machinesFigure 3).
Workstation (w)Production Capacity (Capa)Cost of Work (Cost)
W120040
W220030
W320050
W42005
Table A4. Workers’ parameters (Table workersFigure 3).
Table A4. Workers’ parameters (Table workersFigure 3).
Worker (r)Working Time (Capa)Cost of Work (Cost)
R120040
R220030
R320035
R420025
R520010
Table A5. Production routes (Table allocationFigure 3).
Table A5. Production routes (Table allocationFigure 3).
Item
(i)
Route
(f)
Operation
(o)
Workstation
(w)
Worker
(r)
tpititzi
A11W1R110 (const)110 (const)
A21W2R110 (const)110 (const)
F11W1R110 (const)110 (const)
F21W3R110 (const)110 (const)
C11W1R310 (const)110 (const)
C21W2R410 (const)110 (const)
G11W1R110 (const)110 (const)
G21W2R310 (const)110 (const)
G31W1R310 (const)110 (const)
B11W4R510 (const)
D11W4R510 (const)
E11W4R510 (const)
H11W4R510 (const)
Note—const means that the time does not depend on the batch size.
Table A6. Customer orders (Table ordersFigure 3).
Table A6. Customer orders (Table ordersFigure 3).
Item (i)Planning Period (tm)Customer Order Size (qu)
A4100
F4150
Table A7. Description of additional symbols used in the ERD scheme (Figure 3).
Table A7. Description of additional symbols used in the ERD scheme (Figure 3).
SymbolDescription
Indices
ISet of products (i,j–product index i,j ∈ I)
OSet of operations (o–operation index o ∈ O)
TmSet of planning periods (tm–planning period index tm ∈ Tm)
Parameters
tpiTime required to produce product i or deliver it from an external supplier
wspi,jQuantity of product j needed to produce product i, wspi,j = 0 means product j is not directly included in product i
costwCost of using machines w per period tm
capawProduction capacity of machines/workstations w per period tm
costrCost of using additional resource r per period tm
caparProduction capacity of additional resource r in period tm
tpi,f,o,w,rTime to prepare the workstation (tpi)
ti,f,o,w,rTime to produce one unit
tzi,f,o,w,rTime to finish work at the workstation (tzi)
qui,tmOrder quantity for product i in period tm

Appendix B. Data Transformation for Graph Generation (Figure 4)—Part of the PT Procedure

Figure A2. The pseudocode for generate a graph representing execution tasks.
Figure A2. The pseudocode for generate a graph representing execution tasks.
Applsci 15 08522 g0a2

References

  1. Vollmann, T.E.; Berry, W.L.; Whybark, D.C.; Jacobs, F.R. Manufacturing Planning and Control for Supply Chain Management, 5th ed.; McGraw-Hill/Irwin: New York City, NY, USA, 2005. [Google Scholar]
  2. Ptak, C.A.; Smith, C. Demand Driven MRP: A Practical and Proven Method for Managing the Planning and Execution of Manufacturing and Distribution; Industrial Press: South Norwalk, CT, USA, 2011. [Google Scholar]
  3. Pinedo, M. Scheduling: Theory, Algorithms, and Systems, 5th ed.; Springer: Berlin/Heidelberg, Germany, 2016. [Google Scholar] [CrossRef]
  4. Graves, S.C. Uncertainty and Production Planning. In Planning Production and Inventories in the Extended Enterprise; Kempf, K., Keskinocak, P., Uzsoy, R., Eds.; International Series in Operations Research & Management Science; Springer: New York, NY, USA, 2011; Volume 151. [Google Scholar] [CrossRef]
  5. Herrmann, J.W. A history of production scheduling. In Handbook of Production Scheduling; Herrmann, J.W., Ed.; Springer: Berlin/Heidelberg, Germany, 2006; pp. 1–22. [Google Scholar] [CrossRef]
  6. Shukla, O.J.; Soni, G.; Kumar, R.; Ahluwalia, R.S. A Review of Multi Agent-based Production Scheduling in Manufacturing System. Recent Pat. Eng. 2021, 15, 15–32. [Google Scholar] [CrossRef]
  7. Holsapple, C.W.; Sena, M.P. ERP plans and decision-support benefits. Decis. Support Syst. 2005, 38, 575–590. [Google Scholar] [CrossRef]
  8. Wang, L.; Zhang, L. Digital twin-driven smart manufacturing: Connotation, reference model, applications and research issues. Robot. Comput.-Integr. Manuf. 2022, 61, 101837. [Google Scholar] [CrossRef]
  9. Liu, Y.; Zhang, C.; Li, X. Reinforcement learning for dynamic scheduling in Industry 4.0: A survey. Journal of Manufacturing Systems. J. Manuf. Syst. 2023, 66, 260–286. [Google Scholar] [CrossRef]
  10. Jang, J.; Klabjan, D.; Liu, H.; Patel, N.S.; Li, X.; Ananthanarayanan, B.; Juang, T.H. Scalable Multi-agent Reinforcement Learning for Factory-wide Dynamic Scheduling. arXiv 2024, arXiv:2409.13571. [Google Scholar]
  11. Lixiang, Z.; Yan, Y.; Yaoguang, H.; Weibo, R. Reinforcement learning and digital twin-based real-time scheduling method in intelligent manufacturing systems. IFAC-PapersOnLine 2022, 55, 359–364. [Google Scholar] [CrossRef]
  12. Gupta, D.; Maravelias, C.T. On the design of online production scheduling algorithms. Comput. Chem. Eng. 2020, 143, 107–120. [Google Scholar] [CrossRef]
  13. Zhou, B.; Li, W. A multi-agent reinforcement learning approach for decentralized production scheduling in smart factories. IEEE Trans. Ind. Inform. 2023, 19, 123–134. [Google Scholar]
  14. AMPL. Available online: https://ampl.com/ (accessed on 28 June 2025).
  15. Gurobi. Available online: https://www.gurobi.com (accessed on 28 June 2025).
  16. Shapiro, A.; Dentcheva, D.; Ruszczynski, A. Lectures on Stochastic Programming: Modeling and Theory. In MOS-SIAM Series on Optimization; Society for Industrial and Applied Mathematics: Philadelphia, PA, USA, 2021. [Google Scholar] [CrossRef]
  17. Oztemel, E.; Gursev, S. Literature review of Industry 4.0 and related technologies. J. Intell. Manuf. 2020, 31, 127–182. [Google Scholar] [CrossRef]
  18. Bengio, Y.; Lodi, A.; Prouvost, A. Machine learning for combinatorial optimization: A methodological tour d’horizon. European J. Oper. Res. 2021, 290, 405–421. [Google Scholar] [CrossRef]
  19. Sitek, P.; Wikarek, J. Capacitated vehicle routing problem with pick-up and alternative delivery (CVRPPAD): Model and implementation using hybrid approach. Ann. Oper. Res. 2019, 273, 257–277. [Google Scholar] [CrossRef]
  20. Wikarek, J.; Sitek, P. Proactive Approach to Personnel Assignment in University Course Timetabling Problem. In Intelligent Information and Database Systems; ACIIDS 2025; Nguyen, N.T., Matsuo, T., Gaol, F.L., Manolopoulos, Y., Fujita, H., Hong, T.-P., Wojtkiewicz, K., Eds.; Springer: Singapore, 2025; Volume 15683. [Google Scholar] [CrossRef]
  21. Wikarek, J.; Juzoń, Z.; Sitek, P. Optimization of Production Process through TOGAF-Based Audits and Mathematical Programming Models. In Proceedings of the 15th IFAC Workshop on Intelligent Manufacturing Systems, Koszalin, Poland, 11–12 September 2025. [Google Scholar]
Figure 1. The functional scope of the proposed approach in relation to MRP II/ERP modules.
Figure 1. The functional scope of the proposed approach in relation to MRP II/ERP modules.
Applsci 15 08522 g001
Figure 2. Mathematical model implementation diagram.
Figure 2. Mathematical model implementation diagram.
Applsci 15 08522 g002
Figure 3. Part of the relational database schema (ERD) in Martin’s methodology(gray: tables available in MRPII/ERP class systems, white: tables with model parameters (Section 4), #—key attribute).
Figure 3. Part of the relational database schema (ERD) in Martin’s methodology(gray: tables available in MRPII/ERP class systems, white: tables with model parameters (Section 4), #—key attribute).
Applsci 15 08522 g003
Figure 4. Task execution sequence graph for a kitchen furniture factory case generated by MRP (Section 6). Nodes = Tasks (E1–E23 task numbers, A–H product/component), Edges = Dependencies.
Figure 4. Task execution sequence graph for a kitchen furniture factory case generated by MRP (Section 6). Nodes = Tasks (E1–E23 task numbers, A–H product/component), Edges = Dependencies.
Applsci 15 08522 g004
Figure 5. Equipment variants for workstations in the case study (W01 produces products/components A/F/C/G, W02 produces products/components A/C/G, W03 produces product/component F, W04 provides the components B/D/E/H) (Section 6).
Figure 5. Equipment variants for workstations in the case study (W01 produces products/components A/F/C/G, W02 produces products/components A/C/G, W03 produces product/component F, W04 provides the components B/D/E/H) (Section 6).
Applsci 15 08522 g005
Figure 6. Pseudocode for PR procedure.
Figure 6. Pseudocode for PR procedure.
Applsci 15 08522 g006
Table 1. Comparison of the proposed approach with alternatives.
Table 1. Comparison of the proposed approach with alternatives.
ApproachOptimization GuaranteeMRP IntegrationTraceabilityComputational Cost
Proposed MILPOptimal/near-optimalNativeFullModerate (with PR)
Reinforcement Learning HeuristicPartialLimitedHigh (training)
Genetic AlgorithmsHeuristicChallengingLimitedVariable
Hybrid MILP/MetaheuristicsHeuristicPartialLimitedHigh
Table 2. Decision variables, indices, and parameters of the mathematical model.
Table 2. Decision variables, indices, and parameters of the mathematical model.
SymbolDescription
Indices
TSet of execution periods (t–execution period index t ∈ T)
WSet of machines/workstations (w–machine/workstation index w ∈ W)
RSet of additional resources (r–resource index r ∈ R)
FSet of variants of equipping machines/workstations with additional resources (f–variant index f ∈ F)
OSet of customer orders (o–order index o ∈ O)
ESet of tasks to be performed (e–task index e ∈ E)
USet of predicted resource unavailability states (u–state index u ∈ U)
Parameters
pw_roAgreed end date of the customer order o. If pw_r0 = 0, the date is arbitrary.
pw_zo,eIf task e is part of the customer order o, then pw_zo,e = 1; otherwise, pw_zo,e = 0.
pw_go,eIf task e is the last task in the customer order o, then pw_go,e = 1; otherwise, pw_go,e = 0.
pt_wf,e,wIf in a variant of equipping f task e can be executed on machine w, then pt_wf,e,w = 1; otherwise, pt_wf,e,w = 0.
pw_tf,e,wNumber of quanta/time segments required to execute task e on machine w in equipment configuration f.
pt_gf,e,w,rQuantity of additional resource r required to execute task e on machine w in equipment configuration f. If pt_gf,e,w,r = 0, then the resource is not needed.
pw_ke1,e2If pw_ke1,e2 = 1, then task e2 must be performed before task e1. If pw_ke1,e2 = 0, then there is no direct sequence relation between tasks e1 and e2.
pw_me1,e2Minimum technological break between the start of task e1 and the end of e2. Valid only if pw_ke1,e2 = 1.
pw_ce1,e2Maximum technological break between the start of task e1 and the end of e2. Valid only if pw_ke1,e2 = 1.
pw_de1,e2If task e1 and e2 must be executed on the same machine, then pw_re1,e2 = 1; otherwise, pw_re1,e2 = 0.
pt_mrAvailable quantity of additional resource r.
pd_au,wIf in the state of resource unavailability, u machine w is available, then pd_au,w = 1; otherwise, pd_au,w = 0.
pd_bu,rAmount by which the availability of additional resource r is reduced in the state of unavailability u?
Decision variables
Xu,f,e,w,tIf in the unavailability state u in period t task e is executed on machine w in equipment configuration f, then Xu,f,e,w,t = 1; otherwise, Xu,f,e,w,t = 0.
Bu,eIf in the unavailability state u we are unable to perform task e, then Bu,e = 1; otherwise, Bu,e = 0.
Yu,f,e,wIf in the unavailability state u machine w is in equipment configuration f and executes task e, then Yu,f,e,w = 1; otherwise, Yu,f,ew = 0.
Su,ePlanning period number in the unavailability state u in which the execution of task e begins.
Zu,f,e,w,tIf in the unavailability state u the execution of task e on machine w in the equipment configuration f begins in period t, then Zu,f,e,w,t = 1; otherwise, Zu,f,e,w,t = 0
Table 3. Parameters and components of the objective function.
Table 3. Parameters and components of the objective function.
SymbolDescription
Parameters
cp_wwCost of operating machine w per execution period
cp_rrCost of using additional resource r per execution period
Determined/calculated quantities
Cost_1uCost of machine use under unavailability state u
Cost_2uCost of additional resource use under unavailability state u
Cou_1uNumber of periods of work under unavailability state u
Decision variables
Cu,tIf work is carried out under unavailability state u in period t, then Cu,t = 1; otherwise, Cu,t = 0
Table 4. Description of constraints.
Table 4. Description of constraints.
No.ConstraintDescription and Explanation
(1)Task duration constraintEnsures full execution of each task over the required number of time units on the assigned machine under a given resource availability scenario. Prevents partial or incomplete execution.
(2)Task start time definitionDefines the exact start period of a task based on when execution begins. Links the binary variables Z and X.
(3)Unique assignment constraintEnsures each task is assigned to only one machine and one configuration variant. Prevents resource conflicts and maintains task integrity.
(4)Feasibility or failure flagSchedules each (via Z variables) or marks it unfulfilled (B = 1). Allows the model to proceed even if full feasibility is not possible—crucial for what-if and failure analyses.
(5)All-or-none task execution per orderMarks an entire customer order as unfulfilled if any of its tasks remain unfulfilled. Reflects real-world dependencies (e.g., missing component = undeliverable product).
(6)Start time computationCalculates the planned start time of each task by linking the binary Z variables with the numeric start period S.
(7)Precedence and minimum delayEnforces technological precedence between tasks with a minimum delay (e.g., curing, cooling). Prevents premature scheduling.
(8)Maximum delay constraintLimits the delay between sequential tasks to avoid issues like spoilage or degradation. Ensures tightly connected operations are not overly delayed.
(9)Deadline enforcementEnsures customer orders (final tasks within them) are completed by specified due dates unless explicitly marked as infeasible (B = 1).
(10)Resource capacity constraintPrevents overuse of additional resources (e.g., labor, tools) based on their availability. Respects realistic capacity ceilings even under failure/unavailability states.
(11)Same machine assignment for task groupsForces selected tasks (e.g., sequential or setup-sensitive ones) to be scheduled on the same machine. Supports process consistency and reduces changeovers.
(12)Binary constraintsForces variables like X, Y, Z, and B to be binary (0 or 1), reflecting yes/no decisions (task scheduled or not, resource used or not, etc.).
(13)Machine cost calculationComputes part of the objective function: total cost of using machines over time. Each active machine unit contributes to the cost.
(14)Resource cost calculationCalculates the cost of using additional resources over time, accounting for their duration and intensity of use.
(15)Activation of time periods (lower bound)Flags a period as active if any task is scheduled in it. Supports total period usage tracking.
(16)Activation of time periods (upper bound)Opposite of (15); ensures that only periods with scheduled tasks are marked as active. Works with (15) to enforce consistent tracking of working time.
(17)Total work period countTallies all active periods (C variables). Used in time-based objective functions (e.g., makespan minimization).
(18)Binary flag for work periodsForces the C variable to be binary, indicating whether a given period includes any activity. Part of time minimization logic.
Table 6. Results of the last stage of experiments (performance experiments).
Table 6. Results of the last stage of experiments (performance experiments).
QONo.T-FIRST (MILP)T-OPTIM (MILP)T-FIRST (MILP + PR)T-OPTIM (MILP + PR)
Q22851.24.060.301.77
Q328515.8746.672.3028.93
Q258534.6767.564.5615.24
Q3585234.67765.568.5643.24
Q2108574.26349.455.6362.63
Q310851587.343287.1167.34456.34
Q220150142.341245.7612.45234.47
Q320150403,426>5000.0076.451884.45
Q250150434.217834.5615.34345.67
Q3501506372.45>7500.00143.452186.56
O—number of orders, No.—number of execution periods, T-FIRST—time to obtain the first feasible solution, T-OPTIM—time to obtain the optimal solution. MILP—a mathematical programming solver was used to solve the problem, MILP + PR—a mathematical programming solver with a size reduction PR procedure was used for the solution.
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.

Share and Cite

MDPI and ACS Style

Wikarek, J.; Sitek, P. Proactive Scheduling and Routing of MRP-Based Production with Constrained Resources. Appl. Sci. 2025, 15, 8522. https://doi.org/10.3390/app15158522

AMA Style

Wikarek J, Sitek P. Proactive Scheduling and Routing of MRP-Based Production with Constrained Resources. Applied Sciences. 2025; 15(15):8522. https://doi.org/10.3390/app15158522

Chicago/Turabian Style

Wikarek, Jarosław, and Paweł Sitek. 2025. "Proactive Scheduling and Routing of MRP-Based Production with Constrained Resources" Applied Sciences 15, no. 15: 8522. https://doi.org/10.3390/app15158522

APA Style

Wikarek, J., & Sitek, P. (2025). Proactive Scheduling and Routing of MRP-Based Production with Constrained Resources. Applied Sciences, 15(15), 8522. https://doi.org/10.3390/app15158522

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop