Manufacturing Scheduling Methods, Approaches and

1 downloads 0 Views 75KB Size Report
Keywords — Manufacturing scheduling, approaches methods and systems ..... Proactive scheduling [2, 3, 5] is an extension of reactive scheduling that aims at ...
Manufacturing Scheduling Methods, Approaches and Systems Survey José Paulo Mamede, Maria Leonilde Rocha Varela School of Engineering Universidade do Minho, Braga, Portugal [email protected], [email protected]

Abstract — Manufacturing scheduling is an important function strongly contributing to improve competitiveness of industry and services. Solving a manufacturing scheduling problem involves several activities, starting with a clear problem definition, including the identification of all relevant problems’ parameters under consideration. Moreover, for solving the problem we have to find out at least one suitable implemented method for its resolution, and be able to locally or remotely running it, by using a traditional or a web-based system. Therefore, the main objective of this work consists on presenting a survey about traditional and more recent manufacturing scheduling methods, approaches and systems in order to contribute for a better manufacturing scheduling decision-making when solving problems arising either in academic or in industrial practice. Keywords — Manufacturing scheduling, approaches methods and systems

1 Introduction Competitive organizations are operating today in global and worldwide markets. Therefore, the competitiveness of enterprises and the quality of work life are, in today’s knowledge-based economy, directly tied to the ability of effective creation and share of knowledge both, within and across organizations. Manufacturing scheduling (MS) knowledge is of major importance due to the relevance of good decision making in this domain to achieve production targets planned in Industry. MS problems are often complicated by a large number of constraints, interrelating tasks, resources and external events on a manufacturing system. Moreover, slight differences in the manufacturing environment originate distinct problems, which even though being closely related, require different methods to be applied. Therefore, the resolution of MS problems, in practice, can be improved by accessing to available knowledge and to a variety of methods and systems developed throughout decades of research and practice about scheduling. The effective and efficient resolution of those problems begins with the selection of suitable scheduling methods for each particular case being considered. When there are alter-

José Paulo Mamede, Leonilde Varela native methods available for solving a problem, alternative solutions can be obtained, which should be evaluated against specified criteria or objectives to be reached. Thus, users are able to properly solve a problem, through the execution of one or more scheduling methods, local or remotely made available and accessible through manufacturing scheduling systems, for solving specific problem instances, namely running through the Internet, and, subsequently, select de most suited solution obtained. In order to enable a better understanding of the context of this paper we may summarize its content, highlining that section 2 aims at briefly referring to the main questions arising under the scope of the manufacturing scheduling. Section 3 surveys the manufacturing scheduling methods and approaches. This section refers to traditional Operations Research (OR) approaches and techniques for manufacturing scheduling and focused also on several more recent approaches on scheduling, which have been proposed, like reactive and dynamic scheduling, among other approaches, namely based on Artificial Intelligence (AI). Section 4 puts forward a review about efforts made around manufacturing scheduling systems being developed, for supporting MS problem solving, based on several systems’ architectures and configuration types used in available traditional and web-based systems. The main aim of this section consists on enlightening some MS systems in order to make a contribution to reduce the notorious gap between MS theory and practice. Finally, in section 5, some conclusions are reached in order to make clear that valuable work is being done by a lot of researchers, over the last decades, but still some work has to be carried out to come to workable solutions in the nowadays every-day changing industrial environments and global exigencies.

2 Manufacturing Scheduling Manufacturing scheduling (MS) is a management function that may be defined as an activity of allocating tasks to production resources, during a certain period of time. It is usually a complex task including a wide range of knowledge. Solving manufacturing scheduling problems involves several activities, starting with a clear description of it, and the identification of a set of problems’ parameters. Next, we have to find at least one suitable and appropriate method for solving the problem, followed by its execution, with the required set of input data, and getting results in some adequate or desirable format, in order to enable a better support to MS decision-making. This perception is perhaps one of the important reasons for the development of a variety of methods to solve MS problems arising in industry under various production environments, by using different technologies and implementations of several different search techniques for is resolution, based on distinct kind of system architectures and configurations. Nevertheless, the industrial approach to the problem-solving strategy is probably too simplistic, resulting, therefore, acceptable solutions, but mostly with poor quality. This can be explained by the apparently lack of knowledge of manufacturing scheduling decision-makers about the most effective and efficient manner of solving those problems, and/ or due to the difficulty, knowing the most suited MS methods, being able to use them for solving real industrial problems.

José Paulo Mamede, Leonilde Varela Thus, this research aims at providing knowledge about MS approaches and systems to better support decision-making regarding industrial problems solving. This need is visible through specific manufacturing programming needs of each company, which can be fulfilled by easily updating and/ or enriching a scheduling methods repository and/ or through local or remote access to a variety of methods put forward through different systems. Appropriate methods for each case are of major importance, in order to increasingly fulfil an emerging need about to remain competitive, in particular due to the increasing necessity to satisfy the production of diversified products, in successively shorter periods and thus, requiring continuously quicker response and higher quality solutions, in a verity of manufacturing scenarios, characterised by highly diversified environments, including distinct manufacturing systems, requiring dynamic and easily reconfigurable production features, in order to be able to quickly respond to an increasingly exigent global market, with growing worldwide competition and exigencies. Therefore, in order to make a contribution for facing these problems the main goal of this paper consists on presenting a survey about relevant manufacturing scheduling knowledge and systems. Thereby, an important objective is to enable a better support when using MS methods and systems. In this context, the traditional approaches presented refer to research results that are now considered as valuable contributions to the subject, not only in the past, but also still revealing its importance nowadays, although for which several problems and limitations remained unsolved. They form the baseline from which recent and on-going research has started growing. Other, more recent approaches are also presented, which refer to current and on-going research in the same and adjacent fields of manufacturing scheduling activity. Therefore, in the next sections we put forward a brief description about MS problem solving methods and systems, including classical and more recent approaches, being developed in the last decades, based on several distinct techniques and approaches, namely genetic algorithms (GA), tabu search (TS), branch and bound (BB) and artificial intelligence (AI), among other approaches.

3 Manufacturing Scheduling Methods and Approaches A widely used MS approach consists on off-line scheduling, which performs the calculation of a schedule with all input parameters known at the beginning of the calculation. Traditionally, all scheduling research focuses on this kind of scheduling problems [1, 2]. It implies the single call of a procedure, resulting in a single schedule. Scheduling problems in reality are dynamic in nature, in that new orders arrive continuously, operations and complete orders are getting finished, durations may not be known precisely, machines may become unavailable, etc. The most straightforward way to tackle this problem is the repetitive solution of off-line scheduling problems, each time adapting the input parameters for the scheduling problem to the new situation and the new order set. In the simplest case, the schedule can always be calculated before production is started. Off-line scheduling methods are already surveyed in several works [1, 2, 3] and can be classified in several categories. For some problems, efficient algorithms exist to find the optimal solution. For most problems, optimal algorithms exist, but may require excessive calculation time. If the optimal solution cannot be found in reasonable time, heuristics are used. The sim-

José Paulo Mamede, Leonilde Varela plest heuristics use dispatching rules. Several other heuristics build on techniques developed in artificial intelligence. Neighbourhood search techniques, in particular metaheuristics, have also provided some powerful algorithms for near-optimal schedules. Another technique is based on Lagrangian relaxation. Some approaches also use discrete event system theories to develop schedules [4]. 3.1 Optimal solutions and mathematical methods For some simple scheduling problems, efficient algorithms exist to calculate the optimal solutions [1,2,3,4]. For instance, for the single processor scheduling problem, the earliest due date (EDD) dispatching rule provides an optimal solution for the minimisation of maximum tardiness. Usually, real-life problems are more complex than these academic problems, but sometimes, by using a simplified model and applying the results to the real situation, the scheduling problem can be successfully solved (e.g., scheduling a factory with a single bottleneck as a single processor scheduling problem). However, sometimes, the physical design of manufacturing system is modified such that the corresponding scheduling and control problem turns out easier to be solved. Do note that it is generally accepted that basic knowledge on these academic problems is necessary for the understanding of the fundamental properties of scheduling, needed to solve real-world problems. Most scheduling problems can also be solved optimally, provided that enough calculation time is available. Often, they can be formulated as a (mixed) integer programming problem [1, 6]. Due to the NP-complete nature of these problems, complete enumeration of all possibilities quickly becomes prohibitively time consuming. However, in some situations, efficient branch and bound methods, dynamic programming techniques, and zero-one integer programming may provide optimal solutions for reasonable (and usable) problem sizes in reasonable time (from minutes to hours) [1, 6, 7]. 3.2 Dispatching If the calculation time required for obtaining optimal solutions is beyond reasonable bounds, it is necessary to use heuristic solutions, like dispatching, which do not yield optimal solutions. Dispatching with priority rules is the best known heuristic for scheduling [1, 5, 8]. Using dispatching rules, schedules can be produced almost instantaneously. Because of their simplicity, they are also used quite often in industry and in flexible manufacturing and assembly systems. Dipatching rules, however, tend to yield a low and unpredictable performance [4, 5, 8]. For instance, the already mentioned EDD rule is often used for job shop Artificial Intelligence (AI) approaches for scheduling [9]. 3.3 AI approaches AI approaches to scheduling, sometimes also called knowledge-based scheduling, use specific knowledge about the scheduling problem in their decision process. For instance, rule-based approaches store scheduling rules, which may be entered by humans, into a knowledge base. Constraint-directed search reduces the search space by focusing on specific constraints (e.g. directing the scheduling process to start with the bottleneck machines) [9].

José Paulo Mamede, Leonilde Varela Interesting surveys, especially for AI scheduling were put forward, namely through the Esprit-project FLEXPLAN [9]. Other well-known results are ISIS and OPIS, opportunistic approaches, using constraint propagation. ISIS, presented by Fox, in 1984 [4, 5] schedules the manufacturing system on an order-by-order basis, gradually constructing the schedule, starting with the most urgent orders first. In its first version, the OPIS scheduler, identifies the bottleneck machines, and starts by sequencing the operations on the bottleneck machines [2, 5]. Later versions include a blackboard system to consider the scheduling problem from multiple perspectives. Micro-opportunistic scheduling [4, 5] guides the optimisation process by using a probabilistic framework to identify the most critical operation, both, with respect to bottleneck utilisation and to order slack, to schedule first. Compared to dispatching, AI based approaches for scheduling can improve the performance significantly, producing so-called near-optimal schedules. They also require significantly more calculation time, but not beyond reasonable bounds. For this reason, they are quite promising [4, 9]. 3.4 Neighbourhood search techniques and meta-heuristics Neighbourhood search techniques [3, 4, 6] are optimisation heuristics that look for the optimal solution of a problem by iteratively investigating a new solution in the neighbourhood of an existing solution. For scheduling, an initial solution can be generated with for instance dispatching rules, and the neighbourhood of a schedule can for instance be defined as the set of schedules that can be generated by swapping the sequence of two operations on the same machine. The most straightforward algorithm (the socalled steepest descent algorithm) looks for the best solution in its current neighbourhood and selects this solution as its new “current solution”. The algorithm only allows improved solutions and stops if there are no solutions left in the neighbourhood that are better than the current solution. A variant of this algorithm is the “first descent algorithm”, that moves to the first solution in its neighbourhood that is better than the current solution. While these algorithms tend to be quite fast, they easily get stuck in local optima. A more recent class of scheduling algorithms is based on “meta-heuristics”. To avoid the risk of getting stuck in local optima, a meta-heuristic sometimes allows the next solution to be worse and therefore hopes to find near-optimal solutions. Simulated annealing (SA) and genetic algorithms (GA), also called “evolutionary computation”, perform stochastic search. Simulated annealing [3, 6, 7] is based on an analogy with the thermal annealing process in metallurgy. Genetic algorithms [3, 6, 10] are based on the optimisation process in nature. Tabu search [2, 3, 6] explicitly avoids going back to solutions (or regions) that have already been explored. They can all escape from local optima and provide high-quality solutions. Several researchers have applied these algorithms to scheduling [2, 3, 6, 7, 10]. These near-optimal approaches do obtain better results than dispatching rules, but also use a considerable amount of calculation time. Often they allow a trade-off between calculation time and schedule performance. The performance of stochastic search methods (SA and GA) in function of the calculation time is also stochastic, but is fairly easy to predict on a statistical basis.

José Paulo Mamede, Leonilde Varela 3.5 Lagrangian relaxation A new approach to job shop scheduling, which is gaining importance, is based on Lagrangian relaxation [2, 5, 6, 8]. Based on a firm mathematical basis, the capacity constraints of a scheduling problem, which cause the scheduling problem to be coupled over all orders, can be relaxed and replaced by a penalty cost for using that resource. An iterative procedure yields a near-optimal selection of machine prices, such that a nearly feasible schedule is produced with a high performance. The relaxation of the capacity constraints is quite similar to the mechanism that runs a free-market economy. Like meta-heuristics, this approach yields a high performance, but using considerable calculation time. What makes this approach interesting is that it provides a lower bound on the optimal cost, and thus guarantees that the solution found is within a known margin from the optimal solution [5, 6, 8, 10]. 3.6 Dynamic scheduling During the last decade, the research community has understood that existing scheduling algorithms are not really applied in industry, because the real-life complexity of industrial plants is not sufficiently considered. Traditionally, the scheduling problem was considered to be static and deterministic, but increasingly new approaches are continuously arising in order to address the “industrial” dynamic scheduling problem, by many researchers [4, 7, 8, 10] in order to find a solution through the application of dispatching rules or other very fast algorithms, in order not to keep the resources waiting while scheduling or rescheduling is considered. Some researchers investigate the basic aspects of the problem by looking at simple scheduling problems, like the one-machine scheduling problem or the parallel machine scheduling problem [7, 8]. Moreover the solution for this simple problem may also be used as a module in a job scheduling context with machine setup times. Some researchers considered the dynamic scheduling problem for a flow shop, with a limited number of products [4, 7, 8]. Because this number is limited, it is feasible to maintain all products in stock and formulate the scheduling problem as a flow shop problem, which can be solved using continuous decision variables. This way, the scheduling problem is reduced to a coupled set of differential equations, which is not NP-complete. For larger scale and more complex problems, dynamic schedulers are often based on simulation [5, 8, 10]. Simulation-based approaches were applied to assembly line balancing problems and also some commercial schedulers, like TEMPO, were based on simulation [5, 10]. 3.7 Stochastic considerations in scheduling Approaches addressing the static and stochastic scheduling problem typically use queuing models, simulations, or other probabilistic models. Koo (1995), referred in [5] combines queuing models with static capacity planning algorithms for static planning problems. Nkasu (1995) and Gupta (1995) also use simulation to consider stochasticity [5]. Other reserarchers also explicitly include the stochastic aspects in the objective function and uses simulation and genetic algorithms for MS problems optimisation [5, 8].

José Paulo Mamede, Leonilde Varela 3.8 Reactive and proactive scheduling Research is being focused on the reactive scheduling problem [2, 3, 9]. Parunak, in 1991, referred in [3, 5] discussed some structural solutions to the reactive scheduling problem, like the introduction of buffers and more reliable machines. One of the most used approaches to obtain reactive scheduling is rescheduling: restarting the scheduling process from scratch, given the new information regarding the status of the manufacturing system. For many researchers, again, like for dynamic scheduling, this problem is then reformulated as an efficiency problem. Some research has been put forward explicitly aiming at an algorithm with polynomial complexity and therefore proposed a rolling scheduling horizon [4, 7]. A complete schedule is computed (for instance, using beam search) for a small number of parts (the “rolling group”), but only its first steps are executed. New parts can enter the rolling group based on their priority. Then, the schedule is calculated again. Proactive scheduling [2, 3, 5] is an extension of reactive scheduling that aims at preventing foreseeable disturbances, by considering them in the schedule as soon as they are known, and before they can invalidate the schedule. To reach that goal, the performance trends are monitored in real time and statistically processed to better predict the processing times of operations and to anticipate machine failures. 3.9 Distributed scheduling Distributed scheduling refers to scheduling techniques for which the algorithm is distributed over a number of agents that combine their calculation power and their local knowledge to optimise the global performance. While distributed scheduling is promising for several other reasons (e.g., parallel computation and simplified software structure), the main motive for its application is its potential to automatically react to disturbances. Many researchers move towards distributed implementations of their algorithms for parallel computation. Sycara, in 1991 already proposed a distributed opportunistic scheduling approach (from the ISIS and OPIS family), that were based on bottleneck detection and precedence constraint propagation and Gou and Hasegawa, in 1994, also proposed a distributed Lagrangian relaxation approach [4, 5]. Often, the scheduling process is distributed to better react to disturbances. OPIS, proposed by Smith, in 1994, required a distributed (blackboard) architecture to allow multi-perspective scheduling, in other words, to allow the individual scheduling experts to contribute at the right time and only then. Other distributed schedulers, namely by Tharumarajah, put forward in 1996, also did propose a behaviour-based approach to scheduling, where the entities interact with their environment only, as an alternative to purely reactive control through negotiation among agents. Although, while the robustness against disturbances really emerges automatically from the behaviour of each agent, performance does not grow beyond that of simple dispatching rules [4].

4 Manufacturing Scheduling Systems Up to now, the approaches discussed are all algorithmic solutions to the scheduling problem. However, also structural solutions may provide significant improvements on the overall performance of a manufacturing system. For instance, in the past, the scheduling problem was hierarchically decomposed in several sub-problems (medium-term and short-term planning, load/ unload scheduling, the machine allocation problem, the se-

José Paulo Mamede, Leonilde Varela quencing problem, transportation scheduling, etc.). Such a decomposition is a structural solution for the computational complexity of the scheduling problem [7]. (To sketch the idea: using complete enumeration, a size 100 sequencing problem requires approximately 25. 10149 more calculation time than 10 size 10 problems). Consequently, almost everybody assumes some form of hierarchical decomposition of the scheduling problem. It is interesting to survey how new scheduling architectures provide a structure for an improved organisation of the scheduling software. Singh and Hindi, in 1991 [3, 4], already provided a systematic analysis of the hierarchical decomposition of the scheduling problem. This decomposition is based on the dimensionality of the control problem, the physical distribution of the controlled entities, the time scale involved, the amount of interactions between subsystems, and the required degree of aggregation. Addressing the different time scales in scheduling and on-line control, Duggan and Browne, in 1991, already proposed the concept of Production Activity Control (PAC) with an off-line scheduler and an on-line dispatcher to execute the schedule [5]. A similar approach was proposed by Chryssolouris (1991, 1992, 1994), who elaborated it in a commercial software package (MADEMA) [4, 5]. Schmidt, in 1996, also considered the needs for an architecture for reactive scheduling [5]. He distinguished predictive production scheduling and reactive production scheduling (also called on-line control). In this architecture, he applied case based reasoning techniques, but he did not allow continuous operation of both predictive and reactive scheduling, such that the usable algorithms were limited to the very fast ones. Other researchers proposed a distributed approach to both, manufacturing scheduling and on-line control [3, 8, 10]. Nowadays, the MS systems scenario is quite different. There is a list of scheduling systems accessible via the Internet, such as the Lekin, a flexible job shop scheduling system [3] and Lisa, Library of scheduling scheduling algorithms (http://lisa.math.unimagdeburg.de/). Other interisting systems include the NEOS Server, developed by the Optimization Technology Center of Northwestern University and the Argonne National Laboratory (http://www-neos.mcs.anl.gov/). The developed ForthMP by the Mitra's Group at Brunel University (http://www.brunel.ac.uk/depts/ma/research/com) and the IMS-NoE (http://www.imsnoe.org/BENCHMARK/TBA.asp) sy proposedtems, based on the use of distributed services globally acessible, focus on the needs of individual operators, adapting a variable approach, in accordance with each specific use request.

5 Conclusion Summarising the research results on manufacturing scheduling methods, approaches and systems put available during the last decades, and identifying the remaining problems, for which solutions are currently still lacking, we can affirm that a large number of scheduling techniques and approaches exist, referred in academic literature as well as in Industry. The proposed approaches and systems reach varying levels of optimisation performance, but there is a fundamental trade-off between the calculation time required for a scheduling algorithm and its performance. How to make this trade-off has not been sufficiently and systematically investigated yet, for all available approaches.

José Paulo Mamede, Leonilde Varela Moreover, it makes sense to optimise schedule performance and near-optimal approaches do obtain a higher performance than dispatching rules, but they also use a considerable amount of calculation time. Therefore, the selection of a scheduling algorithms depends on a trade-off between calculation time and schedule performance. To express this trade-off, we may define a performance graph for a certain scheduling problem and a number of scheduling, namelly for tardiness minimisation, and sometimes, but certainly not always, with reasonable performance. Moreover, it remains difficult to compare algorithms using performance graphs. Since a performance graph is constructed for a single scheduling problem, it requires all authors to solve the same problem. It is commonly agreed that benchmarking is a time consuming job that requires a lot of coordination among researchers. Besides that, given a performance graph, it is still necessary to make the trade-off and select a scheduling algorithm. Currently, such decisions are made, based on common sense. We still did not find precise guidelines in literature to make this trade-off. Moreover, the problem of disturbances has become a major issue in scheduling research. Consequently, reactive scheduling, which addresses the dynamic and stochastic aspects of scheduling is still one of the main research threads in scheduling. The reactive scheduling research has been quite successful: it resulted in several commercial products, likeMADEMA, among others. Nevertheless, still, the problem of disturbances on the manufacturing system is not considered solved yet. The implementation of a reactive scheduling system is costly and time-consuming and the trade-off between schedule optimisation and reaction time is still an issue. An alternative to better scheduling algorithms may be found in structural solutions for MS problems solving. For instance, the hierarchical decomposition of the scheduling problem is a structural solution that alleviates the computation complexity of the scheduling problem. Also proactive scheduling implies a structural change in MS problems considerations, in that the scheduler has to anticipate disturbances instead of reacting to them. Current on-line manufacturing scheduling algorithms and systems are concerned mainly with real-time decision making. Performance is not a real issue. If schedule optimisation is foreseen in the manufacturing system, a simple approach consists on following the schedule exactly as planned. Often, scheduling is not foreseen, or included in the scheduling system. In that case, real-time aspects are critical and the scheduling algorithms are limited, for instance, to fast rule-based approaches, yielding a performance comparable to dispatching rules. Hierarchical MS systems provide a very different, highly distributed structure to the manufacturing system. It usually turns out to be very robust and reactive against disturbances, especially because of its emergent behaviour. However, by banning all forms of hierarchy, it cannot perform global optimisation. Moreover, distributed scheduling algorithms exist for some problems, but the computational complexity remains a problem. More essential might even be that the behaviour of a system under an hierarchical approach can be hardly predicted. It appears that there is still room for structural improvements in MS problems solving. Although scheduling is time-consuming, there are no approaches known to use that are continuously optimising the schedule. Therefore, on-going works implies still looking for

José Paulo Mamede, Leonilde Varela new structural solutions that integrate continuous scheduling in the every-day manufacturing environments.

References [1] Conway, R. W., Maxwell, W. L., Miller, L. W., Theory of Scheduling. England: AddisonWesley Publishing Company, Inc., 1967. [2] Jordan, C., Batching and Scheduling , Springer-Verlag, 1997. [3] Pinedo, M., Scheduling theory, algorithms and systems. USA: Prentice-Hall Inc., 2002. [4] Morton, T., D. W. Pentico, Heuristic scheduling systems (USA: John Wiley & Sons Inc., 1997). [5] Morton, T. E., Pentico, D. W., Heuristic Scheduling Systems. With Applications to Production Systems and Project Management, 1995. [6] Brucker, P, Scheduling Algorithms. Springer Series, fifth edition, 2006. [7] Blazewicz, J., Ecker, K., H., Pesch, E., Schmidt, G., Weglarz, J., Scheduling Computer and Manufacturing Processes, Springer-Verlag, 1996. [8] Vollmann, T. E., Berry, W. L., Whybark, D. C., Manufacturing Planning and Control Systems, IRWIN, 2000. [9] Sule, D. R., Production Planning and Industrial Scheduling Examples, Case Studies and Applications, second edition, 1999. [10] Pinedo, M. L., Planning and Scheduling in Manufacturing and Services. Springer Series in Operation Research, 2002.