scispace - formally typeset
Search or ask a question
Journal ArticleDOI

A framework for dynamic rescheduling problems

02 Jan 2019-International Journal of Production Research (CRC Press/Balkema)-Vol. 57, Iss: 1, pp 16-33
TL;DR: In practice, this situation is not often met in practice, since data may be subject to uncertainty and it may change as mentioned in this paper, which may change the deterministic and known in advance data.
Abstract: Academic scheduling problems usually assume deterministic and known in advance data. However, this situation is not often met in practice, since data may be subject to uncertainty and it may change...

Summary (5 min read)

1 Introduction

  • Scheduling problems are among the hardest and the most studied problems in operations research.
  • In some contexts these assumptions may be reasonable since they lead to simplified and more tractable models.
  • In this case the problem is usually maintained deterministic and the presence of the uncertainty is addressed in a external wrapper.
  • However there are also shortfalls for these approaches.
  • Whenever a trigger condition is met, a new rescheduling problem is formulated according to the information available at the moment and solved by the solver.

2 Definitions and notation

  • On the other hand, dynamic scheduling refers to problems where data may change during the execution of the scheduling and some information is not available to the scheduler at the planning stage.
  • Different kinds of information could be available to the scheduler such as the probability distribution or expected values.
  • The rescheduling policy decides when a new rescheduling process can be started.
  • The frozen period is the length of the part of the schedule that cannot be changed, and that should be maintained.
  • Some applications may require fast algorithms whereas in others settings the length of the allowed computation time for the rescheduling can be comparable to the CPU time for calculating the offline schedule.

2.1 Mathematical notation

  • Wij is known in advance and can assume positive, null or negative values.
  • That is, one of the two alternative disjunctive arcs has to be selected, i.e., added to the current graph.
  • These internal changes are algorithmic decisions carried out before time t that cannot be undone because they are already active and operation oi is already in execution, i.e., scheduling decisions such as adding one alternative arc (i, j) to the current selection S. An instance for the dynamic scheduling problem I is the pair I = (G,∆∞).

3 Literature and applications

  • Dynamic scheduling problems are an interesting practical extension of classical scheduling problems but they are not deeply investigated [14].
  • Among the possible approaches, the simulation based are often applied to address the rescheduling problem [17] since they combine classical scheduling problems with widely applied techniques such as the discrete-events simulation.
  • The recent surveys by Vieira et al. [24] and Aytug et al. [1] review these approaches and applications.
  • Different online strategies are evaluated; the no rescheduling, rescheduling with penalties and full rescheduling.
  • In their tests, the evaluated objective functions takes both stability and efficiency into consideration.

4 Architecture

  • This section describes the implementation of the dynamic rescheduling framework proposed in this paper.
  • The framework is implemented in Java and uses the statistical package R version 2.13.1 for generating plots.
  • Figure 2 presents the framework for dynamic rescheduling, which is composed of a Controller, a Simulator, a Solver, an Instance Writer and Solution Reader module.
  • Moreover the framework should interact with both the Reality (either the real world application or a its simulation) and possibly with a human supervisor.

4.1 Reality module

  • Thus it contains the “real” information about uncertainty and probability distributions and provides it to the Simulator in form of exogenous events ∆t.
  • Observe that all the other modules are not aware of how such exogenous events are generated.
  • Typical changes to a distribution associated with an uncertain event makes the event become less uncertain as more information becomes available.
  • This process terminates when all stochasticity is removed and the actual duration of each operation is finally known.
  • Depending on the application the actual duration can be known in advance with respect to the starting time of the operation or while the operation is being processed.

4.2 Simulator module

  • The Simulator maintains the system state information and updates it as time passes.
  • This event is communicated to the Simulator by the Solution Reader module when a new scheduling solution is available.
  • To analyse the stochasticity of the problem, the Simulator generates a predetermined amount m of Monte Carlo samplings by instantiating the probability distributions associated to the uncertain events.

4.2.1 Human Interaction

  • In some applications the Simulator could work with no human intervention or supervision, while in other applications a decision maker could decide whether or not a new rescheduling should be started and supervise the solutions found by the Solver.
  • More often, the presence of a Human Supervisor should be considered.
  • They are drawn as regular Gantt charts, but the boxes signifying an event occurring with certainty at a given time, have been replaced by a shape representing the approximate likelihood of an event happening at a given time.
  • The red line can be divided into three parts:.
  • The area above represents the chance that J1, 1 has not started at time 350, as this area is occupied by the shape representing J0, 0, the authors must conclude that the machine is occupied by the previous operation (J0, 0) in these cases.

4.3 Controller module

  • The Controller implements the rescheduling policy, i.e., it decides when the Solver should be invoked.
  • A trigger is a function T (Σt, t, tlast,∆t \∆tlast) that maps the current state of the system Σt, the time t, the last time a solver was run tlast, and the events ∆t \∆tlast into a boolean value.
  • Changed makespan is triggering when the longest path from source to the sink node changes.
  • Infeasibility of the solution originally provided by the solver.
  • With 95% confidence, there is at least 10% chance of worsening the objective function.

4.4 Solution Reader and Instance Writer modules

  • The Solution Reader and Instance Writer modules must be implemented separately for each Solver that is to be used with the framework.
  • The Solution Reader module must generate an temporal network from the instance file and the solution produced by the deterministic solver.
  • The Instance Writer module is responsible for creating a deterministic instance based on the simulation of the current system state Σt.
  • The Instance Writer should enforce that the starting time of locked events should never be modified by the Solver.
  • The choice is determined by the ability of the solver to handle the constraints needed.

4.5 Solver module

  • The Solver is the optimization core of the rescheduling system.
  • The proposed dynamic rescheduling framework is Solver independent.
  • Both exact and heuristic solvers can be interfaced with the framework.
  • In Section 5 the authors show how a dispatching rule yielding the optimal solution or a truncated commercial solver can both be used as Solvers within the framework.

4.6 Parameters and Input

  • The framework requires the following application specific parameters: Knowledge parameter k ∈ (−∞; 1] is used when the framework is not connected to a real life application.
  • A value in the interval [0; 1] denotes the percentage completion an operation must be at before the process time becomes known to the framework.
  • Finally the framework must be given information detailing how and when to reschedule.
  • For bounded distributions this will be treated as reverse lookup in the cumulative distribution function.
  • Rolling Horizons can be handled if implemented in the instance reader and writer, and the solver must be able to solve the partial instance.

5 Computational Experiments

  • The computational experiments reported in this paper are based on two different scheduling applications.
  • Namely the authors consider the Single Machine Weighted Completion Time problem and the academic Job-Shop Scheduling problem.
  • In the results the authors show the deviation from the optimal value of the ex-post optimization z∗((G,∆,∞), (G,∆,∞)).

5.1 Single Machine Weighted Completion Time (SMWCTP)

  • The single machine problem the authors consider is the classical 1|| ∑ wiCi single machine problem with the objective of minimizing the sum of the weighted completion time of each job.
  • The problem is known to be polynomially solvable [22] by applying the Weighted Shortest Processing Time (WSPT) rule, that is to sequence jobs according to their non-decreasing ratios pi/wi.
  • For each of the 100 stochastic instances, the authors create 4 sample instances (sample = 4) by sampling each of the distributions associated with the processing times.
  • Trigger when the sum of absolute values of changes in the process times exceeds 10 time units.

5.1.1 Results

  • Figure 6 (a) shows that guessing a low process time pi seems favorable for low values of f , i.e., when rescheduling frequently, while less frequent optimizations favor g values closer to 0.5 and thus guesses closer to the expected value of pi.
  • If an exogenous cost is associated with each rescheduling, rescheduling only if the change in duration exceeds 10 time units (Tchange10), becomes interesting as it saves 11.3 reschedules on average and obtaining solutions with 2.26% deviation from the ex-post optimum on average.
  • The exogenous cost must be significant to justify using Tchange100, as the average deviation increases to 38.89%.

5.1.2 Test cases analysis

  • Observe that the stochasticity extend, the knowledge k and the frequency f parameters are usually determined by the application.
  • The choices left to the managers are which trigger and sampling strategy to adopt.
  • By running the proposed dynamic rescheduling framework it turns out that the best configuration is Tobjective and g = 0.25 since it provides the smaller deviation from the ex post optimum (as shown by Table 4).
  • If there is an exogenous cost associated with rescheduling, the problem becomes multiobjective, as Tobjective always causes more than 40 reschedules while Tchange10 causes significantly less.

5.2 Job shop scheduling

  • The classical job shop scheduling problem (J ||Cmax) is one of the most studied NP-hard problems [16].
  • As solver the authors use a standard constraint programming model for the classical job shop scheduling problem and it has been implemented using IBM ILOG CP Optimizer version 12.2.
  • In order to generate their tests the authors consider the well known 10-job 10-machine benchmark instance FT10 [13] and they create stochastic instances by changing all of the process times into a uniform distribution ranging from its original duration pi,j to pi,j + pi,j · extend (extend ∈ {0.1, 0.2, . . .0.9, 1.0}).
  • Tobjective Trigger when the objective function changes, also known as The 4 Triggers are.
  • Trigger when the sum of absolute values of changes in the process times exceeds 10 time units.

5.2.1 Results

  • For higher values of the extend parameter there is a gap that can actually be exploited by allowing dynamic rescheduling.
  • For higher values of the extend parameter the two optimal solutions differs, thus making rescheduling beneficial.
  • If the job shop problem has exogenous costs associated with rescheduling fewer reschedules can be obtained through the use of triggers.
  • In the plot the estimated solution quality is the makespan as computed by the deterministic solver (red marks).

5.2.2 Test cases analysis

  • The general quality of the solution appears to have no clear correlation with the trigger used, which further substantiates the hypothesis that the rescheduling is done often enough to take advantage of the available information.
  • Given that the triggers appear to give solutions of comparative quality, a decision maker would likely choose Tobjective or Tchange100 to minimize the number of reschedules performed (Table 7).
  • To calculate if lowering the value of k is worth it, the benefit of 0.29% and 0.39% for Tobjective and Tchange100 respectively must be compared to any exogenous costs.

5.3 Comments

  • From their tests it turns out that having information earlier is more important than frequent reschedules.
  • For the JSP the most important factor turns out to be the magnitude of the uncertainties.
  • When the problem allows only small changes (less than 20%) in the processing times there is no need of dynamic rescheduling since the ex ante solutions are already good enough.
  • When coming to the influence of the parameter setting of the framework, the authors observe a different behavior for the two problems.
  • In the SMWCTP the choice of the trigger is influential, and while giving different results the sampling strategies do not radically change the quality of the solutions if f 6=.

6 Conclusions and future research

  • In this paper the authors introduced a simulation-based framework for addressing dynamic rescheduling problems.
  • The functionality of this framework has been shown by considering two different dynamic scheduling problems: A single machine and a job shop scheduling problem.
  • The framework has in this paper been used to investigate some issues: (i) comparing the relative performance of different solver configurations and the absolute performance with ex-ante/ex-post optimization; (ii) evaluating the robustness of the ex ante solution to uncertain distributions; (iii) the influence of triggers on the number of times rescheduling is performed, and the effect on the solution quality.

Did you find this useful? Give us your feedback

Figures (19)

Content maybe subject to copyright    Report

General rights
Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright
owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights.
Users may download and print one copy of any publication from the public portal for the purpose of private study or research.
You may not further distribute the material or use it for any profit-making activity or commercial gain
You may freely distribute the URL identifying the publication in the public portal
If you believe that this document breaches copyright please contact us providing details, and we will remove access to the work immediately
and investigate your claim.
Downloaded from orbit.dtu.dk on: Aug 09, 2022
A framework for dynamic rescheduling problems
Larsen, Rune; Pranzo, Marco
Published in:
International Journal of Production Research
Link to article, DOI:
10.1080/00207543.2018.1456700
Publication date:
2019
Document Version
Peer reviewed version
Link back to DTU Orbit
Citation (APA):
Larsen, R., & Pranzo, M. (2019). A framework for dynamic rescheduling problems. International Journal of
Production Research, 57(1), 16-33. https://doi.org/10.1080/00207543.2018.1456700

UNIVERSIT
`
A DI SIENA
DIPARTIMENTO DI INGEGNERIA DELLINFORMAZIONE
A Framework for
Dynamic Rescheduling Problems
Rune Larsen, Marco Pranzo
DII Technical Report n.2012-01
Research Group: Decision and Management Methods April 30, 2012

A Framework for
Dynamic Rescheduling Problems
Rune Larsen, Marco Pranzo
April 30, 2012
Abstract
Academic scheduling problems usually assume d eterministic and known
in advance data. However this situation is not often met in practice, since
data may be subject to uncertainty and it may change over time. In this
paper we introduce a general resched uling framework to address such dy-
namic scheduling problems. The framework consists in a solver and a con-
troller. The solver can also assume deterministic and static data, whereas
the controller is in charge of triggering the solver when needed and when
possible. Extensive tests are carried out for two well-known scheduling
problems, namely the single machine weighted completion time problem
and the job shop problem. The tests show how the proposed framework
allows to deal with d ifferent scheduling problems and to select the best
framework configuration.
Keywords: Scheduling, Simulation, Dyn amic rescheduling.
1 Introduction
Scheduling problems are among the hardest and the most studied problems in
operations research. However, as observed by many authors [10, 12], there is
still a gap between theory and practice, in fact most formulations of scheduling
problems usually assume that data is deterministic and static over time. It is
well known that both uncertainties and dynamic environments are often present
in real- world applications. Never theless these presences are often neglected since
they are hard to model and to take into account alg orithmically. Usually, sim-
plifying assumptions are done to assume all information deterministic, static
over time and known in advance. In some contexts these assumptions may be
reasonable since they lead to simplified and more tractable models. However,
a careful validation analysis on the problem is often required to assess whether
simplified models are reasonable or if they induce an oversimplification.
When the environment is assumed to be non- de terministic and dynamic
the pr oblem is to formulate a plan in which the pr esence of the uncertainties
has been taken into account during the solution process. At lea st two kind of
approaches have been proposed in the literature:
1. Approaches that try to produce the best possible plan incorporating a ll
the available information on the uncertainties. Among these approaches
we can mention stochastic programming [21] and robust optimization [4].
1

In stochastic programming the idea is trying to inc lude the uncertainty
sources directly in the formulation of the problem by generating and solv-
ing several sc enarios, if ne cessary allowing chang e s in the solution over
time. However, allowing recurse decisions makes the problem fundamen-
tally intractable. In robust optimization the idea is to try to produce
a “robust” solution satisfying additional constraints taking into account
possible rea liz ations of the uncertainty.
2. Approaches that try to r epresent the dynamic nature of the problem as
an additional layer between the solver and the application. In this case
the problem is usually maintained deterministic and the presence of the
uncertainty is addres sed in a external wrapper. As time passes, whenever
some conditions ar e met, the deterministic scheduling solver is invoked
and a new problem corresponding to a current snapshot” of the system
is solved. The results are then considered as a new plan to be followed
during the execution.
The advantages of dynamic rescheduling based approach over stochastic or
robust optimization are threefold:
Tractability A rescheduling approach a llows solving larger instances within
reasonable computation times allowing, if application permits, hundreds
of reschedules over time.
Easiness of implementation This approach does not require the develop-
ment of a new solver for the problem at hand, if the deterministic solver
can be adapted to meet some simple requirements. Hence, it can be put
in production faster.
Knowledge of the problem This approach is robust with respe c t to errors
in the uncertainty modelling, i.e., the effects of different probability distri-
butions and parameters, since there is no need to embed the uncertainty
in the solver.
However there are also shortfalls for these approaches. In fact, better perfor-
mances can be achieved if the solver takes the information on the uncertainties
into account within the optimization process. Moreover, no theoretical results
are known for this kind of approach.
In this paper we take a dynamic rescheduling approach, in which a deter-
ministic scheduling solver is dynamically executed to update the plan in order
to adapt uncertainties as they happen. The fo c us of this work is to introduce a
general framework to model a dynamic rescheduling problem in an unified way.
The main components of the system are:
Solver The solver is in charge of actually solving at each iteration the schedul-
ing problem and thus producing a plan that is going to b e executed.
Controller The Controller checks for rescheduling conditions during the execu-
tion of the schedule. Whenever a trigger condition is met, a new reschedul-
ing pro ble m is formulated according to the information available at the
moment and solved by the solver.
2

Simulator The simulator component loads all the information on the r eal-
world realiz ations of the probability functions when started, and it is re-
sponsible for simulating the unpredicted deviations and disturbances that
may happen in real-time. Note that the information is not sent to the
solver.
Our aim is to study when the uncertainty starts to be relevant in terms of
feasibility and optimality and how different re scheduling policies behaves. The
emphasis is given to the gene ral applicability of the method rather than to the
specific application or solver used. In fact, the answers to these questions may
be problem specific, however, it is important to have a single tool able to address
them.
The paper is organized as follows: In the next section we introduce definition
and notation. Section 3 briefly r e views the related literature and in Section 4
we introduce and describe the prop osed framework and all its str uc tural compo-
nents in detail. Section 5 shows the application of the framework to two different
scheduling problems. Finally conclusions and future research dir ections follow.
2 Definitions and notation
A scheduling problem can be clas sified as static if all the data is available at the
planning stage a nd no new info rmation is added to or modified in the problem
during the execution of the planned schedule. On the other hand, dynamic
scheduling refers to problems where data may change during the execution of
the scheduling and some information is not available to the scheduler at the
planning stage.
A problem is deterministic if all information is certain. In stochastic schedul-
ing problems, some da ta may be uncertain at planning stage. Different kinds
of information could be available to the scheduler such as the probability distri-
bution or expe c ted values. A stochastic ins tance has probability distributions
associated to each process time, and the deterministic instance resulting from
sampling these distributions will be called a sample instance.
When solving a scheduling problem, two phases can be dis tinguished namely,
a planning phase, in which the scheduler has to plan a schedule to solve the
instance at hand, and an execution phase, in which the plan is executed and,
depe nding on the application, it may be modified or not. Usually in scheduling
resear ch the main focus is on the planning phase [14].
A disruption/disturbance of the plan is an unforeseen event that affects the
plan typically during its exec ution. It may consist in the realization of an
uncertain event which was known in the form of probability distributio n, or it
may be a more disruptive event such as the breakdown o f a machine, failure
of oper ations, the arrival of some new and urgent job/order to be processed or
canceled jobs e tc. When a disruption occurs, and if the application setting makes
it possible, the scheduler has to decide whether to do nothing or reschedule. In
the former case the scheduler continues to follow the plan. While in the latter
case the scheduler should build/update the previous plan to reflect changes due
to the disruption.
Rescheduling is the act of modifying the offline plan in response to dis-
ruptions. Rescheduling is usually an expensive activity in terms of costs, time
3

Citations
More filters
Proceedings ArticleDOI
14 Dec 2020
TL;DR: In this article, a deep Q-network (DQN) model is applied to train an agent to learn how to schedule the jobs dynamically by minimizing the delay time of jobs.
Abstract: In the last few decades, dynamic job scheduling problems (DJSPs) has received more attention from researchers and practitioners. However, the potential of reinforcement learning (RL) methods has not been exploited adequately for solving DJSPs. In this work deep Q-network (DQN) model is applied to train an agent to learn how to schedule the jobs dynamically by minimizing the delay time of jobs. The DQN model is trained based on a discrete event simulation experiment. The model is tested by comparing the trained DQN model against two popular dispatching rules, shortest processing time and earliest due date. The obtained results indicate that the DQN model has a better performance than these dispatching rules.

5 citations

Journal ArticleDOI
TL;DR: Results indicate that the continuous approach would be the most appropriate when theportion of dynamic jobs is low, while when the proportion is high, it would seem more advisable to use the periodic approach, appropriately selecting the frequency of re-optimization processes.
Abstract: In this work we address the minimization of the makespan in a scheduling problem where the machine setup times are sequence-dependent. The jobs, which arrive throughout the production process, has a release time that is unknown in advance. Considering both, dynamic environments and sequence-dependent setup times, make the problem more realistic, but also more challenging from an algorithmic and modeling point of view. To deal with the addressed problem, we implement the continuous and periodic rescheduling approaches, providing them with the same re-optimization methods. To implement the re-optimization methods, we design two insertion procedures for adding the new released jobs in the processing sequence, as well as improvement procedures, based on Iterated Greedy strategies, to reduce the sequence makespan. In the improvement phase of the Iterated Greedy strategies we implement three improvement methods that combine four local searches. The developed algorithms are assessed based on the quality of the solutions they find and the CPU time they consume to reach these solutions. We use instances from the literature and larger instances generated in this work. The three algorithm versions showed quality solutions when compared with optimal solutions for the static problem and with solutions of the Perfect Information Model for the dynamic problem. Additionally, they showed a good performance for both the continuous and periodic approach. When these two approaches are compared, results indicate that the continuous approach would be the most appropriate when the proportion of dynamic jobs is low, while when the proportion is high, it would seem more advisable to use the periodic approach, appropriately selecting the frequency of re-optimization processes.

4 citations

Journal ArticleDOI
TL;DR: This paper studies the uncertain scheduling problem of the oxidation/deposition/diffusion work area in semiconductor manufacturing, where fluctuations in arrival times and processing times are significant.
Abstract: This paper studies the uncertain scheduling problem of the oxidation/deposition/diffusion work area in semiconductor manufacturing, where fluctuations in arrival times and processing times are cons...

4 citations

Journal ArticleDOI
TL;DR: The proposed rescheduling algorithms are very fast and provide high quality solutions in a dynamic single-machine scheduling problem with sequence-dependent setup times and are easy to code in a computer language due to the simplicity of the designed components.

4 citations

References
More filters
Book
15 Jul 1994
TL;DR: Scheduling will serve as an essential reference for professionals working on scheduling problems in manufacturing and computing environments and Graduate students in operations management, operations research, industrial engineering and computer science will find the book to be an accessible and invaluable resource.
Abstract: This book on scheduling covers theoretical models as well as scheduling problems in the real world. Author Michael Pinedo also includes a CD that contains slide-shows from industry and movies dealing with implementations of scheduling systems. The book consists of three parts. The first part focuses on deterministic scheduling with the associated combinatorial problems. The second part covers probabilistic scheduling models. In this part it is assumed that processing times and other problem data are not known in advance. The third part deals with scheduling in practice. It covers heuristics that are popular with practitioners and discusses system design and development issues. Each chapter contains a series of computational and theoretical exercises. This book is of interest to theoreticians and practitioners alike. Graduate students in operations management, operations research, industrial engineering and computer science will find the book to be an accessible and invaluable resource. Scheduling will serve as an essential reference for professionals working on scheduling problems in manufacturing and computing environments. Michael Pinedo is the Julius Schlesinger Professor of Operations Management at New York University.

6,209 citations

Journal ArticleDOI
TL;DR: The study reveals that the feasibility properties of the usual solutions of real world LPs can be severely affected by small perturbations of the data and that the RO methodology can be successfully used to overcome this phenomenon.
Abstract: Robust Optimization (RO) is a modeling methodology, combined with computational tools, to process optimization problems in which the data are uncertain and is only known to belong to some uncertainty set. The paper surveys the main results of RO as applied to uncertain linear, conic quadratic and semidefinite programming. For these cases, computationally tractable robust counterparts of uncertain problems are explicitly obtained, or good approximations of these counterparts are proposed, making RO a useful tool for real-world applications. We discuss some of these applications, specifically: antenna design, truss topology design and stability analysis/synthesis in uncertain dynamic systems. We also describe a case study of 90 LPs from the NETLIB collection. The study reveals that the feasibility properties of the usual solutions of real world LPs can be severely affected by small perturbations of the data and that the RO methodology can be successfully used to overcome this phenomenon.

1,300 citations

Journal ArticleDOI
TL;DR: A framework for understanding rescheduling strategies, policies, and methods based on a wide variety of experimental and practical approaches that have been described in the rescheduled literature is described.
Abstract: Many manufacturing facilities generate and update production schedules, which are plans that state when certain controllable activities (e.g., processing of jobs by resources) should take place. Production schedules help managers and supervisors coordinate activities to increase productivity and reduce operating costs. Because a manufacturing system is dynamic and unexpected events occur, rescheduling is necessary to update a production schedule when the state of the manufacturing system makes it infeasible. Rescheduling updates an existing production schedule in response to disruptions or other changes. Though many studies discuss rescheduling, there are no standard definitions or classification of the strategies, policies, and methods presented in the rescheduling literature. This paper presents definitions appropriate for most applications of rescheduling manufacturing systems and describes a framework for understanding rescheduling strategies, policies, and methods. This framework is based on a wide variety of experimental and practical approaches that have been described in the rescheduling literature. The paper also discusses studies that show how rescheduling affects the performance of a manufacturing system, and it concludes with a discussion of how understanding rescheduling can bring closer some aspects of scheduling theory and practice.

818 citations

Journal ArticleDOI
TL;DR: The paper defines the problem of dynamic scheduling and provides a review of the state-of-the-art of currently developing research on dynamic scheduling, and the principles of several dynamic scheduling techniques, namely, heuristics, meta-heuristic, multi-agent systems, and other artificial intelligence techniques are described in detail.
Abstract: In most real-world environments, scheduling is an ongoing reactive process where the presence of a variety of unexpected disruptions is usually inevitable, and continually forces reconsideration and revision of pre-established schedules. Many of the approaches developed to solve the problem of static scheduling are often impractical in real-world environments, and the near-optimal schedules with respect to the estimated data may become obsolete when they are released to the shop floor. This paper outlines the limitations of the static approaches to scheduling in the presence of real-time information and presents a number of issues that have come up in recent years on dynamic scheduling. The paper defines the problem of dynamic scheduling and provides a review of the state-of-the-art of currently developing research on dynamic scheduling. The principles of several dynamic scheduling techniques, namely, heuristics, meta-heuristics, multi-agent systems, and other artificial intelligence techniques are described in detail, followed by a discussion and comparison of their potential.

786 citations

Journal ArticleDOI
TL;DR: The literature on executing production schedules in the presence of unforeseen disruptions on the shop floor is reviewed, and a taxonomy of the different types of uncertainty faced by scheduling algorithms is provided.

678 citations