Scheduling under uncertainty: survey and ... - Semantic Scholar

45 downloads 6740 Views 675KB Size Report
different approaches to scheduling under uncertainty is proposed and discussed. Several ... and techniques of resolution used in the field of reactive scheduling. In [15], five ..... shop which is used in the “ORDO software”. The general idea.
International Conference on Advanced Logistics and Transport

Scheduling under uncertainty: survey and research directions Tarek Chaari1, Sondes Chaabane2, Nassima Aissani3 and Damien Trentesaux2 1

Faculty of economics and management ofSfax, B.P 1088 – 3018-Sfax, Tunisia

2 3

University of Lille Nord de France, Lille,UVHC, TEMPO EA 4542, F-59313 Valenciennes,France

LIO, Department of Computer sciences, University of Oran ES-Sénia BP 1524 El M’naour, Oran Algeria,

Abstract—In real-world scheduling problems, several kinds of hard-to-predict risk must be considered. Scheduling under uncertainty allows these kinds of risks to be taken into account. This paper provides an overview of the state of the art in scheduling under uncertainty, including a survey on modeling techniques of uncertainty and a survey of the existing positioning typologies and contributions. A new classification scheme for the different approaches to scheduling under uncertainty is proposed and discussed. Several areas for future research are suggested. Keywords—scheduling; uncertainty; reactive scheduling; proactive scheduling; predictive-reactive scheduling; proactivereactive scheduling. I.

INTRODUCTION

Traditional scheduling approaches consider usually a completely deterministic environment, in which risk has very little place. However, in reality, there are several kinds of risks that can disturb a production plan. It is often more realistic to take other features, such as curative maintenance, into account (e.g.,[31];[19]). Furthermore, traditional scheduling methods use numerical values (e.g., execution time, machine speed) to represent the state of the real system; however, these numerical data are another potential source of model incompatibility, as they may be imperfectly known or likely to change. The compatibility of the model with reality is determined by the definition and modeling of the input data. In this paper, we qualify this data as uncertain, incomplete or imprecise. Uncertainty is related to doubts concerning the validity of knowledge or to not knowing if the proposition is true or not (e.g., at time x, machine y is at a standstill if there is no disturbance and no programmed maintenance task). Imprecision is due to problems in the knowledge statement (e.g. the numerical knowledge may be imperfectly known, or the natural language used to qualify a system characteristic may be ambiguous). Incompleteness is related to a lack of knowledge or to partial knowledge about some system characteristics (e.g., patient files with missing or partial information). Taking these aspects into account in scheduling is very challenging. Industrial requirements evolved from the usual traditional performance criteria, described in terms of static optimality or near-optimality, towards new performance criteria, described in terms of reactivity, adaptability and robustness. For this reason, over the last several years, the literature about scheduling with uncertainty is expanding rapidly, with different approaches being proposed in the domains of Operations Research, Management Science, and Artificial Intelligence.

978-1-4799-4839-0/14/$31.00 ©2014 IEEE

This paper presents an updated survey and some research directions in the domain of scheduling under uncertainty. To carry out our survey, an updated classification scheme for approaches to scheduling under uncertainty and their resolution methods are proposed. Section 2 introduces our classification scheme for the various scheduling approaches under uncertainty. Sections 3, 4 and 5 are dedicated to presenting all the approaches included in our classification. Section 6 offers our conclusion and suggests prospects for future research. II.

CLASSIFYING APPROACHES SCHEDULING UNDER UNCERTAINTY

TO

Different kinds of scheduling under uncertainties approaches exist in the literature and there already exist several dedicated typologies [40], [11], [15], [32]. For example, in [11] and [32] the authors have addressed two types of approaches: reactive approach and proactive approach. [40] proposed three approaches of scheduling under uncertainties: Conventional approach, knowledge-based approach and distributed problem solving approach. But this classification is based on methods and techniques of resolution used in the field of reactive scheduling. In [15], five approaches of scheduling under uncertainties are distinguished: reactive approaches, stochastic approaches, fuzzy approaches, proactive approaches and approaches based on the sensitivity analysis. This classification is more guided by the nature of the tools used to model or manage uncertainty, and not by a basic methodological distinction. The works presented, are more particularly guided on project scheduling problems rather than machine scheduling. Most of these typologies are based upon the distinction between different scheduling approaches among four: proactive, reactive or hybrid which includes two sub-types: predictive-reactive approaches and proactive-reactive approaches. The classification schemes used in these studies are nowadays rather old and need updates. Moreover, some of these classifications are guided by the nature of the problem: modeling uncertainty (e.g., fuzzy modeling, stochastic modeling) which restrict systematically these studies to a specific problem, such as project scheduling or production scheduling. The classification scheme proposed in this paper is more general and encompasses new kind of scheduling algorithms under uncertainty. It is constructed independently of problems and domains, and it can be applied to different kinds of scheduling (e.g., project scheduling, production scheduling, services scheduling). Our classification scheme, presented in Figure 1, is more global and technically independent, as well as

229

covering up-to-date approaches for scheduling under uncertainty. Proactive, reactive and hybrid approaches, which compose the basic structure of our classification, are described iteratively in the remaining of the paper. III.

PROACTIVE APPROACHES

Proactive (also known as robust) scheduling approaches take uncertainty into account when designing off-line schedules. The scheduling takes future disruptions into consideration during the generation of the initial schedule. This kind of approach tries to anticipate uncertainty while developing flexibility, in order to produce a schedule, or a family of schedules, that is relatively insensitive to uncertainty [22]. In proactive approaches, five different techniques can be identified.

conservative indicators and tended to favor solutions that perform satisfactorily across all scenarios. Further techniques which are based on the use of genetic algorithm are described in [16], [34] and [7]. In [16], the author studied the quality of baseline schedules using a neighborhood based robustness measure. The robustness was evaluated using other solutions that can be found in the neighborhood of an initial solution and were also considered as efficient. The neighbors of this initial schedule are considered as alternative solutions if a disruption occurs. In [34], a genetic algorithm for a single machine scheduling problem was modified in order to find a robust solution. The authors showed how the genetic algorithm could be used to find solutions which were able to preserve the quality of the initial schedule and to avoid nervousness in the project. A Genetic Algorithm for proactive Robust Hybrid Flow Shop Scheduling was proposed in [7], which was part of a robust scheduling method that take uncertainty into account (e.g., varying the processing time). The authors considered a bi-objective problem that requires simultaneously minimizing the Makespan of the initial scenario and the deviation between the Makespan of all disrupted scenarios and the Makespan of the initial scenario. The objective was to obtain an effective solution that is not very sensitive to data uncertainty. Other researchers are interested to multi-objective approaches. In [52] the authors developed a robust scheduling method based on a multi-objective variable neighborhood immune algorithm in which a scheduling scheme was evaluated by the weighted sum of the expectation values and variances of the performance criterion Makespan. Their methods focused on finding a set of Pareto robust solutions that are not only locally robust for small uncertain disturbances, but are also stable for the whole uncertain scheduling environment.

Fig 1: A graphic representation of our classification for scheduling under uncertainty approaches A. Techniques based on robustness measures In this context, [20] is a key reference. The authors defined different types of measures, which required advance knowledge of all possible scenarios for evaluation. The absolute robustness of a decision was defined as the worst-case performance of a certain decision across all scenarios. The robust deviation of a decision was the deviation of the performance of this decision from the performance of the best possible decision for each scenario. The robust deviation was the largest deviation found. Finally, the relative robustness was the worst observed percentage deviation from optimality for the evaluated decision across all scenarios. The authors indicated that the use of the absolute robustness criterion tends to favor very conservative decisions that only aim to hedge against the worst possible scenario. The robust deviation and relative robust criterion on the other hand were less

A multi-objective evolutionary algorithm to solve robust scheduling for a flexible job-shop scheduling problem with random machine breakdowns was presented in [49]. Two objectives – Makespan and robustness – are simultaneously considered. The concept of quality robustness was employed to measure the schedules ability to cope with breakdowns and was indicated by the difference between deterministic and actual Makespans. B. Redundancy-based techniques Some methods, called fault-tolerant, use a technique based on temporal and/or resource redundancy. With temporal redundancy, reserves of time (i.e., idle periods inserted between tasks or the task duration increased artificially) or insertion of protection tasks are maintained to mask the breakdowns. This technique was used by [23] for a scheduling problem with single machine, with the objective of minimizing the maximum delay of the tasks in terms of a predetermined deterministic schedule. In [25] the authors use the average delay of the tasks. With resource redundancy [14], resources able to process a given task were multiplied, which provided a kind of flexibility and made it possible to put identical resources on standby. Temporal protection [12] was proposed to increase the flexibility of the initial scheduling. The problem considered

230

was the job shop problem, and the uncertainties were related to the machine breakdowns. The processing times of the tasks using these machine resources were voluntarily increased based on the duration and the frequency of the breakdowns. A schedule was then built that takes the new durations and frequencies into account. C. Probabilistic methods The objective of probabilistic methods is to build a schedule that has the greatest probability of attaining a certain performance. In [10] was introduced the concept of “βrobustness” into a single machine scheduling problem with uncertainty. The considered criterion was the total task residence time. The obtained schedule maximizes the probability of attaining a certain level of performance. In [46], the processing time of each activity was characterized by a normally distributed random variable, with flow time as the main solution criterion. The objective was to find the β-robust schedule that minimizes the risk of the flow time exceeding a threshold. The authors modeled the problem as a constraint satisfaction problem. The constraints served to propagate the uncertainty and allow the problem to be solved using standard constraint toolkits and algorithms. D. Contingent scheduling The principal idea of contingent scheduling is to generate multiple schedules for various possible results. To our knowledge, the only example found in the literature is the JustIn-Case (JIC) scheduling developed by [13]. These authors applied their JIC method to a telescope observation scheduling problem with uncertain observation durations. The solution involved constructing a contingent schedule that takes into account the likely failures of the telescope, with the objective of increasing the percentage of the schedule that can be executed without a telescope breakdown. This objective was achieved by assuming that there is a scheduling algorithm for solving the deterministic problem and the probability distributions of the observation durations (i.e., the mean values and the standard deviations) are known. E. Optimization-based techniques A robust optimization formulation was first considered by [37] for a linear optimization problem in which the data were uncertain within a convex set. This formulation was later extended by [22]. These authors sought to identify a robust feasible/optimal solution to an uncertain problem. Their formulation produced robust solutions for uncertainty in the coefficients of the objective function, as well as the coefficients and right-hand-side parameters of the inequality constraints in Mixed Integer Linear Programming (MILP) problems. IV.

REACTIVE APPROACHES

Reactive scheduling approaches are often used in highly perturbed environments, where the uncertainties are both frequent and large. In this kind of environment, off-line scheduling becomes rapidly unfeasible and all decisions are made in real time. In this context, decision-making must be very fast and intuitively easy for users to understand (For more details, the interested reader can consult [41]).

The different methods described below that are used to solve reactive scheduling problems involve distributed approaches (i.e., multi-agent systems) or centralized approaches. These approaches may exploit priority rules according to certain local criteria when a decision must be made in real-time. A. Distributed approaches Distributed approaches are widely used for reactive scheduling under uncertainty, using mainly multi-agent systems (MAS): MAS approaches are more suitable to develop agile and robust distributed control, but its performance depends more on the coordination mechanism [30]. A generic model of reactive systems is presented in [30], where each system entity is represented by an autonomous agent that is able to make decisions locally. Several implementations of this method were proposed with more, or less, modifications [26]. In [1] the authors considered the interaction of maintenance tasks with production schedules in an Algerian petroleum refinery in a reactive context. Authors developed a reactive scheduling model for maintenance tasks, integrating preventive corrective maintenance tasks and production tasks dynamically into the production-maintenance schedule, while also minimizing the cost criteria, expressed in terms of oil flow variation. To implement this approach, multi-agent reinforcement learning technique was used, primarily intended for flexible manufacturing system (FMS) scheduling. B. Centralized approaches In centralized approaches, different techniques are used, mainly expert scheduling system: for example, by using metarule (in order to select the rules that will be applied) built from expert knowledge [39]. In [50] a semi-markovian decision model is used. The idea was to identify and update dynamically the states and transition probabilities that are used by an expert system to solve real-time scheduling issue. The Markovian approach enabled there to integrate optimization mechanisms. C. Priority rules In both centralized and distributed methods, one of the important issues is the static or dynamic selection of priority rules. A state of the art on the various priority rules was presented by [28]. In general, priority rules vary according to the objective function examined (e.g., minimization of the Makespan or the delay). They can be divided into two groups: static rules and dynamic rules. Static rules are independent of time and are a function of the data associated with the tasks or the resources (e.g., the Weighted Shortest Processing Time first rule). Dynamic rules are dependent on time and on the real state of the system (e.g., the Minimum Slack first (MS) rule). D. Dynamic choice of priority rules Two techniques can be identified for selecting priority rules, one using simulation and the other using artificial intelligence. Selecting a priority rule consists in, using a set of priority rules, to select the one that provides the best performance. For more details, see [33], [21], [17], [27] and [24].

231

V.

HYBRID APPROACHES

As shown in Figure 1, the hybrid approaches can be subdivided into predictive-reactive approaches and proactivereactive approaches. A. Predictive - reactive approaches Predictive-reactive approaches are often referred in the literature to support risks. These approaches have two phases. In the first phase, a deterministic schedule is set up off-line (i.e., the events are considered to be predictable. For example, the jobs which are to be scheduled are all available initially, process times are known and deterministic, and machines and other resources are available throughout the scheduling horizon). During the second phase, this schedule is used and adapted on-line. The on-line phase requires making scheduling decisions one at a time while the schedule is executing. These decisions are then adapted in real time to take disturbances into account [9]. Relevant solution methods can be structured through the answer to two questions: “When to reschedule?” and “How to reschedule?”. •

When to reschedule?

The main responses in the literature are: Reschedule each time that an unexpected event appears. In [48], the authors proposed a heuristics for rescheduling a single machine problem in order to maximize stability. Schedule stability referred to the distance between the baseline schedule and the realized schedule for a given execution scenario. Reschedule each time that a new job arrives. This is the case for [6], who presented a genetic algorithm that re-uses the current solution to solve a job shop problem each time that a new job arrives [4]. They also proposed a polynomial insertion algorithm for inserting new tasks in a predictive schedule in a multi-mode multi-resource project scheduling with cumulative resources. Reschedule at regular time intervals. In [8] the authors developed a hybrid event-driven rescheduling policy for single and parallel machine models with dynamic job arrivals. They classify the events that change the system state into two categories: the events that require immediate response (exceptions) and the events that can be ignored until the next rescheduling point. The schedule was revised and generated periodically, but scheduling was also triggered when an exception occurs. Reschedule as soon as the number of arriving jobs reaches a given threshold. [44] studied the problem of a single machine whose activities arrive dynamically. •

How to reschedule?

Four kinds of responses to this question were identified in the literature: Right shift rescheduling that consists in moving all the tasks that are impacted by a breakdown forward in time, thus maintaining workshop stability [35].

Total rescheduling that consists in breaking down the problem into sub-problems, which are then solved sequentially. This technique was proposed by [36], who considered a job shop problem in the light of the disturbances related to the arrival of a new job, with the objective of minimizing the average job delay. Rescheduling is carried out as each new job arrived using a genetic approach. In [38] proposed a generic repair mechanism to repair a variety of dissimilar disruptions: machine breakdown, absenteeism, process time variation, arrival of unexpected jobs and job rejection. Match-up rescheduling that consists in modifying over as small a time period as possible the decisions that change the reference schedule (predictive), so that the reference schedule can be used again after this period [5],[2]. Multi-objective rescheduling is based on a bi-objective function that simultaneously takes efficiency and stability criteria into consideration, see [29], [45] , [8]. B. Proactive - reactive approaches The difference between predictive-reactive approaches and proactive-reactive approaches is mainly due to the fact that, in proactive-reactive approaches, no rescheduling is done on-line; instead, one among several pre-estimated schedule solutions is chosen. These proactive-reactive resolution methods make it possible to build a set of static schedules such that it is easy to pass from one to the other in the event of risk. ORABAID (ORdonnancement d'Atelier Basé sur une AIde à la Décision) is a scheduling method and real-time control of shop which is used in the “ORDO software”. The general idea is to construct, during the off-line phase, a partial schedule while determining a task set sequence for each resource, where the tasks in the same set being completely permutable. The method uses a heuristic that builds an initial set sequence and then uses a Tabu Search to improve the performance. The sequencing of the tasks of the same set is defined by a decision-maker who has at his/her disposal indicators that specify the quality of each choice with respect to the performance. The schedule is then exploited in real time. A genetic algorithm that constructs a set of several equivalent schedules that guarantee a good trade-off between flexibility and performance is developed by [3]. With this method, each time a decision must be made following a perturbation (e.g., raw material delivery delays). Several alternatives can be proposed to the decision-maker, who makes the final choice. A new mixed technique presented by [46] combines a proactive approach with a reactive approach to deal with scheduling problem under uncertainty. In the proactive phase, the authors built a robust baseline schedule that minimizes the schedules distance defined as the sum of the absolute deviations between the baseline and expected schedules. The robust baseline schedule contains some built-in flexibility in order to minimize the need of complex search procedures for the reactive scheduling approach.

232

VI.

CONCLUSION AND RESEARCH PROSPECTS

This paper provides an updated and global overview of the state of the art in the different typologies in scheduling approaches under uncertainty and relevant contributions. An updated and enriched classification scheme for the various approaches for scheduling in an uncertain environment is presented. These approaches are divided into four main approaches: proactive approaches, reactive dynamic approaches and hybrid approaches, which include two subtypes: predictive-reactive approaches and proactive-reactive approaches. For each of these approaches, several illustrative scheduling methods were presented. Scheduling under uncertainty is a challenging issue for researchers, and thus there are many prospective researches inspired both from academic field and industrial field. Below, we mention four among the many. A first set of prospective research concerns the notion of predicting uncertain events and measuring their impact on scheduling. The different approaches can be evaluated and compared to choose the most suitable one. It is challenging to design efficient scheduling system that tolerates uncertainty. To do this, several paths can be identified. First, robustness could be addressed in a rescheduling procedure based on information about the uncertain parameters. This new perspective on rescheduling will provide a more realistic and efficient result but will require benchmarking methods considering perturbations to enable fair comparisons [43]. Another possible path would be to integrate safety-oriented models that take reliability and availability levels into account by associating them to resource perturbation probabilities in order to predict possible future behavior. Another interesting path involves integrating grid computing into on-line simulation to predict future behaviors and test possible scheduling alternatives before applying the one selected. This would allow uncertainty to be tolerated by introducing and testing a great number of possible unpredicted events based on larger space studies and wider simulated time horizons within hard real-time constraints. A second set of prospective research concerns combining multi-agent approaches with optimization techniques. For dynamic scheduling and dynamic control, distributed approaches are widely used, especially multi-agent approaches. However, these approaches are criticized for not being sufficiently optimal. This lack of optimality is due to decisions that lead to the myopic behavior of decision-making entities [42]. A possible solution would be to increase the intelligence of these entities by introducing optimization techniques in the decisional process; both exact methods and heuristics could be used [18]. A third set of prospective research concerns the integration of new emerging technologies—such as Radio-Frequency Identification (RFID), mechatronics and embedded infotronics—into existing products. This integration will enable the products to participate in the decision-making in a dynamic scheduling context. Uncertainty will, for example, be better tolerated if products are able to decide their own routing,

taking into consideration the real-time traffic and state of conveyor systems, leaving the scheduling systems to focus on tasks allocation without trying to plan all the product routes [51]. This is actually impossible to accomplish in most of production systems, especially in Flexible Manufacturing Systems (FMS). Such integration would allow dynamic routing to be managed distributively by products themselves. A fourth set of prospective research concerns the new possibilities for designing and dimensioning systems based upon scheduling performances. One traditional approach designs the production system from scratch with only global, highly aggregated information about the exploitation phase of the production system; however, this approach is not really suitable for industrial situations. System agility, evolution and improvement are becoming important issues and need to be taken into account in the production system's (re)design & (re)engineering process. Often nowadays, more and more precise, highly-constraining information about the future exploitation is available (e.g., target cycle times, target quality level, target inventory level and reaction times). As a consequence, during the (re)designing or (re)sizing process, it is possible to suggest several potential schedules based on parameter fine-tuning or production specifications given by the production system's user or even the industrial customers in the supply chain. The schedule's robustness faced with uncertain events will also provide a guarantee for the supplier, who will provide parts with a certain level of trust based on statistical analysis, for example. The quality of sizing will then depend on the quality of the suggested schedules and their robustness. REFERENCES [1]

Aissani N., Beldjilali B. and Trentesaux D., 2009. Dynamic Scheduling of Maintenance Tasks in the Petroleum Industry: a Reinforcement Approach. Engineering Applications of Artificial Intelligence, 22 (7), 1089–1103. [2] Akturk, M.S. and Gorgulu, M.S., 1999. Match-up scheduling under a machine breakdown. European Journal of Operational Research, 112, 81-97. [3] Aloulou, M. and Portmann, M.C., 2002. A genetic algorithm to achieve scheduling flexibility for a single machine problem. RAIRO- operation research 19 p. [4] Artigues, C. and Roubellat, F., 2000. A polynomial activity insertion algorithm in a multi-resource schedule with cumulative constraints and multiple modes. European Journal of Operational Research, 127, 297– 316. [5] Bean, J. C., Birge, J. R., Mittenthal, J. and Noon, C. E., 1991. Match-up scheduling with multiple resources, release dates and disruptions. Operations Research, 39(3), 470-483. [6] Bierwirth, C. and Mattfeld, D.C., 1999. Production scheduling and rescheduling with genetic algorithms. Evolutionary computation, 7(1), 1-17. [7] Chaari T., Chaabane S., Loukil T., Trentesaux D., 2011. A genetic algorithm for robust hybrid flow shop scheduling. International Journal of Computer Integrated Manufacturing, 24 (9), 821-833. [8] Church, L.K. and Uzsoy, R., 1992. Analysis of periodic and event drive rescheduling policies in dynamic shops. International Journal of Computer Integrated Manufacturing, 5, 153-163. [9] Cowling, P., Ouelhadj, D. and Petrovic, S., 2004. Dynamic scheduling of steel casting and milling using multi-agents. Production Planning & Control, 15(2), 178-188. [10] Daniels, R.L. and Carrillo, J.E., 1997. β-Robust scheduling for single machine systems with uncertain processing times. IIE Transactions, 29, 977-985.

233

[11] Davenport, A.J. and Beck, J.C., 2000. A survey of techniques for scheduling with uncertainty [online]. Available from: www.eil.utoronto.ca/profiles/chris/gz/uncertainty-survey.ps [12] Davenport, A.J., Gefflot, C. and Beck, J.C., 2001. Slack-based Techniques for Robust Schedules. Sixth European Conference on Planning (ECP-2001). Toledo, Spain. [13] Drummond, M., Bresina, J. and Swanson, K., 1994. Just-In-Case Scheduling. Twelfth National Conference on Artificial Intelligence. Seattle, USA. [14] Ghosh, S., 1996. Guaranteeing fault tolerance through scheduling in real time systems. thesis (Ph.D). University of Pittsburgh. [15] Herroelen, W. S. and Leus, R., 2005. Project scheduling under uncertainty: Survey and research potentials. European Journal of Operational Research, 165(2), 289-306. [16] Jensen. M. T., 2001. Improving Robustness and Flexibility of Tardiness and Total Flow-time Job Shops using Robustness Measures. Applied Soft Computing, 1(1), 35–52. [17] Jeong, K.C. and Kim, Y.D., 1998. A real-time scheduling mechanism for a flexible manufacturing system: using simulation and dispatching rules. International Journal of Production Research, 36(9), 2609-2626. [18] Jimenez J.-F., Bekrar A., Trentesaux D., Montoya-Torres J., Leitao P. (2013). State of the Art and Future Trends of Optimality and Adaptability Articulated Mechanisms for Manufacturing Control Systems. IEEE SMC, Manchester, UK, pp. 1265-1270, [19] Kenne, J.P. and Gharbib, A., 2004. Stochastic optimal production control problem with corrective maintenance. Computers and Industrial Engineering, 46, 865–875 [20] Kouvelis, P. and Yu, G., 1997. Robust discrete optimisation and its applications. Kluwer Academic Publisher, London. [21] Kutanoglu, E. and Sabuncuoglu, I., 1999. An analysis of heuristics in a dynamic job shop with weighted tardiness objectives. International Journal of Production Research, 37(1), 165-187. [22] Lin X., Janak S. L., Floudas C. A., 2004. A new robust optimization approach for scheduling under uncertainty: I. Bounded uncertainty. Computers & Chemical Engineering, FOCAPO 2003 Special issue, 28 (6-7), 1069-1085. [23] Mehta, S.V. and Uzsoy, R.H., 1999. Predictive scheduling of a single machine subject to breakdowns. International Journal of Computer Integrated Manufacturing, 12(1), 15-38. [24] Mouelhi, W. and Pierreval, H., 2010. Training a neural network to select dispatching rules in real time. Computers & Industrial Engineering, 58 (2), Scheduling in Healthcare and Industrial Systems, 249-256. [25] O'Donovan, R., Uzsoy, R. and McKay, K. N., 1999. Predictable scheduling of a single machine with breakdowns and sensitive jobs. International Journal of Production Research, 37(18), 4217-4233. [26] Ouelhadj, D., Petrovic, S., Cowling, P. and Meisels, A., 2005. Interagent cooperation and communication for agent-based robust dynamic scheduling in steel production. Advanced Engineering Informatics, 18(3), 161–172. [27] Pierreval H. and Mebarki N., 1997. Dynamic selection of dispatching rules for manufacturing system scheduling. International Journal of Production Research, 35 (6), 1575-1591. [28] Rajendran, C. and Holthaus, O, 1999. A comparative study of dispatching rules in dynamic flow shops and job shops. European Journal of Operational Research, 116(1), 156-170. [29] Rangsaritratsamee, R., Ferrell, Jr.W.G. and Kurz, M.B. 2004. Dynamic rescheduling that simultaneously considers efficiency and stability. Computers and Industrial Engineering, 46, 1–15. [30] Renna P., 2010. Job shop scheduling by pheromone approach in a dynamic environment. International Journal of Computer Integrated Manufacturing , 23(5), 412–424 [31] Ruiz, R., García-Díaz, J.C. and Maroto, C., 2005. Considering scheduling and preventive maintenance in the flowshop sequencing problem. Computers and Operations Research, 34(11), 3314 -3330. [32] Sabuncuoglu, I. and Goren, S., 2009. Hedging production schedules against uncertainty in manufacturing environment with a review of robustness and stability research. International Journal of Computer Integrated Manufacturing, 22(2), 138-157.

[33] Sabuncuoglu, I., 1998. A study of scheduling rules of flexible manufacturing systems: a simulation approach. International Journal of Operational Research, 36(2), 527-546. [34] Sevaux M. and K. Sörensen, 2004. A genetic algorithm for robust schedules in a just-in-time environment with ready times and due dates. 4OR - Quarterly journal of the Belgian, French and Italian Operations Research Societies, 2(2), 129-147. [35] Smith, S.F., 1994. Reactive scheduling systems. In Brown, D. and Scherer, W. T. (Eds.), Intelligent Scheduling Systems (155-192). Kluwer Academic Publisher. [36] Snoek, M., 2001. Anticipation Optimization in Dynamic Job Shops. Genetic and Evolutionary, Computation Conference (GECCO- 2001), San Francisco, USA, 43-46. [37] Soyster, A. 1973. Convex programming with set-inclusive constraints and applications to inexact linear programming. Operations Research, 21, 1154–1157. [38] Subramaniam, V., Raheja, A. S. And Rama Bhupal Reddy, K., 2005. Reactive repair tool for job shop schedules. International Journal of Production Research, 43(1), 1-23. [39] Sun, T.C., Lai, K.K., Lam, K. and So, K.P., 1994. A study of heuristics for bidirectional multi-hoist production scheduling systems. International Journal of Production Economics, 33, 207-214. [40] Suresh, V. and Chaudhuri, D., 1993. Dynamic scheduling -a survey of research. International Journal of Production Economics, 32(1), 53–63. [41] Szelke, E. and Kerr, R., 1994. Knowledge-based reactive scheduling. Production Planning & Control, 5(2), 124. [42] Trentesaux D. 2009, Distributed control of production systems,Engineering Applications of Artificial Intelligence 22(7) pp 971-978. [43] Trentesaux D., Pach C., Bekrar A., Sallez Y., Berger T., Bonte T., Leitao P., Barbosa J. (2013). Benchmarking Flexible Job-Shop Scheduling and Control Systems. Control Engineering Practice, 21(9), pp. 1204–1225. [44] Vieira, G.E, Herrmann, J.W. and Lin, E., 2000a. Analytical models to predict the performance of single-machine system under periodic and event-driven rescheduling strategies. International journal of production research, 38(8), 1899-1915. [45] Vieira, G.E., Herrmann, J.W. and Lin, E., 2000b. Predicting the performance of rescheduling strategies for parallel machines systems. Journal of Manufacturing Systems, 19, 256–266. [46] Wu, C.W., Brown, K.N. and Beck, J.C., 2009. Scheduling with uncertain durations: Modeling Beta-robust scheduling with constraints. Computers and Operations Research, 36, 2348-2356. [47] Wu, L.H., Chen, Xin., Chen, X.D. and Chen, Q.X., 2009 b. The Research on Proactive-Reactive Scheduling Framework Based on RealTime Manufacturing Information. Materials Science Forum (626 - 627). [48] Wu, S.D., Storer, R.H. and Chang, P.C., 1993. One-machine rescheduling heuristics with efficiency and stability as criteria. Computers and operations research, 20, 1-14. [49] Xiong.J, Xing.L , Chen.Y(2013): Robust scheduling for multi-objective flexible job-shop problems with random machine breakdowns, Int. J. Production Economics, vol(141), pp 112-126. [50] Yih, Y. and Thesen, A., 1991. Semi-markov decision models for real time scheduling. International Journal of Production Research, 29(2), 26-33. [51] Zbib N., Pach C., Sallez Y., Trentesaux D. (2012). Heterarchical Production Control in Manufacturing Systems Using the Potential Fields Concept. Journal of Intelligent Manufacturing, 23(5), pp. 1649–1670. [52] Zuo, X., Mo, H. and Wu, J., 2009. A robust scheduling method based on a multi-objective immune algorithm. Information Sciences, 179, 3359– 3369.

234