3.1. Fundamental Components of the Rescheduling System
Our rescheduling approach is based on a new combined usage of extended multi-objective searching strategies, modifying operators, locking techniques, and a relative qualification model. The rescheduling extension is achieved by formulating new constraints and introducing new objective functions.
In the rescheduling task, the current production schedule serves as input data. It represents the planned execution of manufacturing processes. We also consider the planned performance indicator values associated with the current schedule as input. Together, they form the initial state description. This information set becomes the starting point and serves as the basis for comparing modifications. Additionally, as further input baseline information, we assume the availability of the current state precisely described schedule. This represents the events that have occurred and the resulting changes in state. All this information, along with real-time data, is available.
As a fundamental constraint, we introduced that the new schedule candidates resulting from rescheduling must necessarily preserve the parts of the original schedule completed up to the time of rescheduling. This modification prohibition also applies to the already started but not yet completed elementary parts of the original schedule. Every operation that cannot be interrupted is considered an elementary part.
Furthermore, we defined an additional time interval, which extends from the moment of rescheduling to a given later point in time, and this interval is also subject to the prohibition of changes. We named this interval the reaction period, expressing in the model that the system will still operate according to the original schedule between the start of rescheduling and the release of the new schedule. Operations, jobs, and IMOs that start before the end of the reaction period will directly affect the new schedule as well. For example, if a specific product type has already started on a production route originally chosen for it, then after the reaction period, any yet-to-start production operations can only be redirected to a subset of the initial resource alternatives due to dependencies. In such cases, intervention opportunities decrease as time progresses. This implies that the longer the reaction period, the higher the likelihood of increased dependencies.
During the rescheduling intervention, we incorporated new objective functions into the evaluation criteria of the modified schedule. These new KPI elements express the extent of modifications compared to the original schedule. We defined these new KPI metrics to be minimized. With the introduction of these metrics, we fulfill the previously formulated requirement that the rescheduling method achieves maximum improvement with minimal changes. Thus, stable, transparent, and traceable planning can be achieved, ensuring production without significant fluctuations or jerks.
With these extensions added to the original scheduling tasks, we obtained the general model of rescheduling problems. For the software implementation of the solution, we relied on our previously developed multi-objective search methods [
17,
18,
19]. These search algorithms supporting simulation and multi-objective optimization were flexible enough to meet the specific requirements of rescheduling with appropriate enhancements, as demonstrated by the presented approach.
The core component of our scheduling software is an advanced multi-objective, multi-operator search algorithm (AMOMOSA). The pseudocode of this algorithm is presented in Algorithm 1. AMOMOSA operates iteratively within the virtual space of feasible solutions, progressing from a current base schedule to a candidate neighboring schedule , located in the neighborhood of , until a stopping criterion is met. In order to explore previously unvisited regions of the search space, AMOMOSA dynamically adjusts the neighborhood structure of each base schedule as the search advances. To avoid being trapped in local optima, AMOMOSA maintains a tabu list that records schedules visited in the recent past. The maximum number of entries in this list is determined by a predefined parameter. Schedules contained in the tabu list are excluded from the current neighborhood of the base schedule. New neighboring candidates are generated randomly through neighborhood operators, which modify resource allocations and job sequences in accordance with the characteristics of the problem space. These variables represent the primary decision factors in the scheduling problem. During the search, the best solution in the current neighborhood is denoted by , while the best solution found throughout the entire search is represented by .
The proposed neighboring operators are as follows:
Operator removes a randomly selected production order from the schedule and then inserts all its jobs as a matching series. These jobs follow the same route and visit the same machines. On each selected machine, the jobs are executed in a predefined sequence.
Operator removes a randomly selected late production order from the schedule and inserts all its jobs in the same way as operator .
Operator modifies the job sequence on a randomly selected machine using a permutation cycle of random length.
Operator removes a randomly selected late job from the schedule, redefines its manufacturing tasks by assigning resources, and finally inserts the job into a random position on each relevant machine.
Operator works similarly to operator N4, but the target job is selected from the entire set of jobs.
These neighboring operators generate new candidate schedules by modifying the values of the primary decision variables of the base schedule. Our proposed algorithm combines the advantages of variable neighborhood structures and tabu search.
Algorithm 1: AMOMOSA
|
{ |
s0 ← Create an initial schedule. |
s* ← s0; |
Tabu_List ← NULL; |
while ( Stop criterion is not satisfied ) |
{ while ( Neighbouring criterion is satisfied ) |
{ |
Nc ← Choose the actual neighboring operator(priority_list); |
sc ← Create a neighbour schedule by modifying the base schedule( s0 , Nc); |
if ( Tabu_List does not strore the schedule ( sc ) ) |
{ |
Insert the new tabu schedule into the first position of Tabu_List ( sc ); |
if ( The number of the stored tabu schedules > Maximum number ) |
Delete the tabu schedule from the last position of Tabu_List; |
if ( Is this the first neighbour schedule ( sc ) ) sn ← sc; |
else if ( sc < sn ) sn ← sc; |
} |
} |
s0 ← sn; |
if ( sn < s* ) s* ← sn; |
} |
return s*; |
} |
The new enhancements are summarized as follows:
Modeling the current state and implementing data loading.
Storing and loading the current scheduling issued for a given time period.
Advancing the simulation model.
Expanding the set of objective functions to minimize the extent of changes.
Introducing locking techniques to handle prohibitions arising from dependencies and ensure limited modifications.
Developing new search operators to consider locks and improve the extended KPI metrics.
The multi-objective search method iteratively performs a rapid simulation-based problem space transformation. During the search for the best solution, a simplified schedule is generated based on the values of decision variables. This simplified solution representation captures the technological route of jobs, the selected and allocated resources, and the execution sequence of operations (elementary activity units) assigned to each resource. Starting from these decision variables, the software simulation of the entire schedule calculates the start and finish times for each element. This simulation-based problem transformation method operates during rescheduling by using locking technique data to consider the already recorded time data for past production events through a simulation algorithm based on a rule base. Then, it only computes the time data for future planned events with unknown timings.
We utilized our multi-objective search method applied to predictive scheduling, as presented in [
18], and incorporated the new elements of rescheduling into it. Based on the weighted sum of the relative changes in objective functions, we could clearly determine which of two candidate solutions is more favorable overall. Using this qualification principle, among many candidate solutions, the best solution can be selected through pairwise comparison.
To minimize the extent of rescheduling changes, we defined new objective functions. The following list explains the newly introduced stability-oriented objective functions used in the rescheduling framework. These objectives quantify the extent to which the revised schedule deviates from the original one. Each function captures a different aspect of stability, such as route changes, machine reassignments, lateness variations, and setup modifications. The following explanations provide a detailed account of the specific aspects quantified by each objective function.
Number of jobs completed on the modified route according to the schedule (): This objective function counts the number of jobs that are executed on a different route compared to the original schedule. A change in the main assigned machine group indicates that the job has been rerouted, potentially requiring additional attention in the production process.
Number of jobs scheduled on a different machine from the original schedule (): This objective function counts the number of jobs that have at least one operation assigned to a different machine than originally specified in the baseline schedule. Such deviations may entail additional control and logistical efforts during execution.
Number of jobs with a completion status different from the originally planned status (): This objective function quantifies the number of jobs whose completion status—classified as either on time or delayed—has changed due to rescheduling. It reflects whether the revised schedule has led to previously timely jobs becoming delayed or delayed jobs being completed on time.
Number of jobs becoming delayed due to rescheduling (): This objective function focuses specifically on jobs that were originally on time but have become delayed as a result of rescheduling. It identifies new delays introduced by the changes.
Number of orders (IMOs) with jobs satisfying the condition described in the first point (): This objective function counts the number of individual orders (IMOs) that include at least one job whose main route has changed compared to the original schedule. Each order is counted only once, regardless of how many jobs it contains.
Number of orders (IMOs) with jobs satisfying the condition described in the second point (): This objective function quantifies the number of orders that include at least one job whose machine assignment differs from that specified in the original schedule. It captures the propagation of job-level machine changes to the order level.
Number of orders (IMOs) with a changed completion status compared to the original plan (): This objective function counts the number of orders for which the completion status of at least one job has changed. It aggregates job-level status changes (as captured in g3) to the order level.
Number of orders (IMOs) becoming delayed due to rescheduling (): This objective function captures the number of orders that have become delayed due to at least one newly delayed job. It focuses on the propagation of job delays to the order level.
Number of machines affected by changed setups due to rescheduling (): This objective function counts the number of machines for which the number of required setup operations differs between the original and rescheduled plans. It reflects changes in machine workload and preparation requirements.
Number of machines burdened with new setups due to rescheduling (): This objective function counts the number of machines that require at least one new setup operation in the rescheduled plan that was not present in the original schedule. A setup is considered necessary when the next job on a machine requires a different configuration than the previous one, based on the execution sequence.
The newly defined objective functions play a crucial role in ensuring schedule stability. In manufacturing environments, rescheduling is often unavoidable; however, it is essential that the modifications affect the original plan only to the extent absolutely necessary. Without explicitly addressing stability, a revised schedule may deviate substantially from the original, leading to increased complexity in production control, higher logistical overhead, and reduced operational transparency. The purpose of these objectives is to minimize the extent of changes in job sequences, machine assignments, completion statuses, and setup requirements. These stability-oriented goals help ensure that rescheduling does not result in a completely new plan but rather a controlled adaptation that preserves as much of the original structure as possible while responding effectively to the new situation.
The objective functions expressing the changes (
–
) and the production efficiency quantifying objective functions (
–
) collectively form the objective function system, which evaluates the modified production schedule. To express the importance of different objective functions, we use priority values that can be adjusted by the user. The search engine applies to a comparative and result-evaluating method based on relative changes according to these priorities [
17].
The formal description of the relative quality model is as follows:
Given
K objective functions to be minimized, as shown in (1),
the following two functions are used for multi-objective relative comparison:
where
—the set of feasible solutions;
—the kth objective function to be minimized;
—the number of objective functions;
, —two given solutions;
—the priority of the kth objective function;
—the relative quality of the solution compared to the solution .
Using the signed return value of the function
, we extend the interpretation of relational operators to the solutions
and
in the set
. The definition of this operator overloading is as follows:
where
indicates any of the relational operators
.
The relationship between and zero expresses the relative ranking between solution and solution . For example, is considered better than is less than zero. This relative evaluation model effectively supports the comparison of candidate solutions within the search algorithm. Therefore, the proposed AMOMOSA method is capable of performing multi-objective optimization while taking into account the actual requirements of production management.
Rescheduling starts from the production schedule describing the current situation and creates the new schedule through a series of elementary modifications. Thus, the multi-objective search techniques used for proactive scheduling (such as tabu search, simulated annealing, genetic algorithm, etc.) can also be used for rescheduling. However, during rescheduling, it must be considered that the past part of the initial schedule and the part falling into the time interval required to create and start the new schedule cannot be modified. To increase the speed of rescheduling, prohibited modifications are analyzed before the search. The permissible alternatives are incorporated into the model’s network in an organized form. Thus, during decision-making situations in the search process, only options that fully satisfy the new conditions are available. We implemented the extension of rescheduling constraints in this direction using locking techniques. Locking rules can apply to jobs, orders, and machines:
For any job, it can be specified from which operation onwards changes are allowed.
For any machine, it can be specified from which operation onwards changes can be made in its execution sequence.
For any order, the degree and form of locking can be clearly deduced from the attributes of the locked jobs associated with it. These include the applicable routes, the affected machine groups, and the set of specific machines within the machine group for the given order (IMO).
The neighborhood or modifying operators used for proactive scheduling have been enhanced to accommodate locking considerations. As a result, the multi-objective heuristic search algorithm has become suitable for solving rescheduling tasks.
3.2. Minimizing the Impact of Unexpected Events Appearing in the Illustrative Example Through Rescheduling
We applied the proposed AMOMOSA rescheduling method to the situation described above. In this example, we limited the size of the tabu list to 150 solutions. The maximum number of search steps was set to 2000. We allowed the examination of 100 neighboring solutions in each step. The end of the locked interval was set to 100 time units. We did not change the priorities of the objective functions expressing manufacturing efficiency compared to the original schedule. The priority of each objective function minimizing rescheduling changes was set to 5.
The result of the rescheduling is presented in
Table 2. With rescheduling, we were able to eliminate the threatening deadline violations. The values of the objective functions quantifying delays and tardiness
were reduced to zero. By rescheduling the jobs, the number of machine setups did not increase. The values of objective function
remained 230, and the completion time of the last operation in the busy period (
) remained at 2012 time units.
Table 3 contains the numerical values of deviations from the original schedule. During rescheduling, none of the jobs had to be redirected to a modified route; all of them followed the original sequence of machine groups. Only five orders (IMOs), totaling 21 jobs, were transferred to a different machine of the same group than originally planned to eliminate the delay of 28 jobs and eight orders (IMOs). The rescheduling method did not cause any new delays for the remaining jobs and orders. None of the machines were affected by changes in setups. Machines did not require the insertion of new setup activities.
The presented rescheduling method, using the enhanced searching operators, locking techniques, and new objective functions, effectively solved rescheduling problems.
Selected results of the rescheduling are illustrated in
Figure 3,
Figure 4, and
Figure 5. Considering
Figure 3, the impacts of unexpected events affecting machines M3 and M4 on the original schedule (bottom rows) can be compared with the results of the rescheduling (upper rows).
Figure 3 also shows that the rescheduling algorithm only retained the jobs on the affected machines that could still meet the deadlines under the changed conditions. The remaining jobs were transferred to alternative machines of the given group. Machine M4 still anticipates increased operational time due to the persistent fault, while machine M3 is not burdened by the missing shift but schedules full-intensity work for the other shifts.
Figure 4 depicts that orders O480 and O481 can be completed on time because of the rescheduling. The modified schedule ensures that, despite the supply delay of raw materials for order O480, the order can still be fulfilled. Despite a drastic reduction in the deadline for order O481, the rescheduling process ensures its on-time completion.
Figure 5 illustrates the details of fulfilling the two selected orders. Compared to the diagram shown in
Figure 4, this more sophisticated second diagram not only displays the order fulfillment time window but also shows all the jobs associated with the given orders. The light blue rectangle represents the duration between the start and finish. The colored small rectangles represent the execution of jobs associated with the IMO. These jobs represent smaller batches of the ordered final product. For example, a larger order can be fulfilled with several smaller batches that are scheduled independently of each other.
To emphasize the importance of the proposed new objective functions (–) that minimize changes, we also present the results of a rescheduling process (R2) where only the production performance oriented objective functions (–) were used by setting the priority of each change-minimizing objective function to zero.
The comparison of the R1 and R2 rescheduling results can be found in
Table 4. The numerical results show that both rescheduling variants successfully eliminated all delays, but there were significant differences in terms of minimizing changes.
During the R1 rescheduling, both the and sets of objective functions were used. The results indicate that the R1 rescheduling eliminated all delays. Additionally, the number of machine setups remained unchanged, meaning that no setup modifications were necessary compared to the original schedule. The routes of orders and jobs also remained unchanged, with only 21 cases of jobs being assigned to different machines. This means that the objective functions in the R1 rescheduling had a favorable impact by minimizing changes and maintaining stability in the schedule.
In contrast, the R2 rescheduling used only the objective functions. While the results show that all delays were eliminated, significant modifications were required compared to the original schedule. The number of machine setups decreased from 230 to 226, which is a positive outcome, and the finish time also decreased from 2012 to 1977. However, the R2 rescheduling involved assigning new routes to 28 orders and 60 jobs and assigning different machines to 269 orders and 985 jobs. These would require a very drastic reorganization of material handling as well as the supply of tools and equipment within the manufacturing system. Additionally, the original setups were modified on 14 machines, with 5 of these machines requiring new setups. These changes would give a significant amount of extra work and burden to logistics and shop floor control.
In summary, the R1 rescheduling, which used both the and objective functions, resulted in more balanced and stable outcomes with fewer changes and modifications to the schedule. The R2 rescheduling, which used only the objective functions, while effectively eliminating delays and reducing the finish time, required substantial changes compared to the original schedule. This underscores the importance of the objective functions in minimizing changes and maintaining stability in the schedule.
To evaluate the runtime performance of the proposed rescheduling approach, the same rescheduling problem (R1) instance was solved five times using identical algorithmic settings. The total search process included 2000 iterations, and in each iteration, 100 neighboring solutions were evaluated. The measured runtime durations were as follows:
1 min 28 s, 1 min 28 s, 1 min 27 s, 1 min 29 s, and 1 min 34 s, respectively.
Notably, the values of all tardiness-related objective functions were reduced to zero within the first 120–160 iterations, corresponding to only 5–6 s of execution time. The remaining computation time was primarily used for searching for further improvements in solution quality, and this phase can be easily customized by applying improvement-oriented termination criteria. The investigation focused on execution time, so the search process was allowed to continue until the step limit was reached. However, it is also possible to configure the algorithm to stop automatically if none of the objective functions improve within a given number of iterations.
The problem instance contained 502 orders, 5231 jobs, and 124 machines, which needed to be simulated for every candidate solution. Given this complexity, the observed runtimes can be considered highly efficient and practically acceptable.
All experiments were executed on a standard consumer-grade laptop with the following specifications:
Operating System: Microsoft Windows 11 Home (Build 26100)
Processor: Intel(R) Core(TM) Ultra 5 135U, 1.6 GHz, 12 cores, 14 logical threads
RAM: 16 GB
System Model: Lenovo ThinkPad L13 2-in-1 Gen 5
No specialized hardware acceleration (e.g., GPU computation) or cloud infrastructure was used during the experiments. These results demonstrate the method’s suitability for deployment in real-world environments with typical hardware configurations.
In addition to the presented example, we also tested the proposed rescheduling method with various problem instances and different settings. The results of the experiments confirmed the flexibility of the method. By adjusting the priorities of the objective functions, the rescheduling can be effectively regulated. This allows for users to balance manufacturing efficiency and the extent of modifications even in situations where meeting deadlines requires significant rescheduling. Due to the flexibility of our software implementation, the proposed rescheduling method can serve as an effective tool in production management. It provides quick and easy-to-use support for both planners and operational managers.
In this paper, our aim was not to compare various search algorithms but rather to demonstrate the advantages of applying new objective functions that support the minimization of schedule changes during rescheduling tasks. The focus of this study is on the proposed g-type objective functions, which are specifically designed to ensure that modifications to the ongoing schedule are limited to the minimum necessary to resolve disruptions or eliminate delays.
Experimental results clearly show that the use of g objective functions offers significant benefits: rescheduling interventions introduce only minimal changes to the existing schedule—just enough to address the underlying problems. In contrast, traditional approaches relying solely on, for example, f-type objective functions, while capable of eliminating delays and improving performance indicators, often lead to extensive reorganizations in production. These excessive changes place a considerable burden on logistics, material handling, and shop-floor operations, thereby complicating production support.
In light of these findings, the application of the proposed g-type objective functions is both justified and advantageous. They not only enable the resolution of scheduling issues but also preserve the stability and continuity of the original schedule with minimal intervention. This is particularly important in dynamic, real-time manufacturing environments where rapid yet predictable rescheduling is essential.