A survey of dispatching rules for the dynamic unrelated machines environment
Introduction
Scheduling is a decision-making process which deals with the allocation of resources to tasks over a given period of time (Leung, 2004, Pinedo, 2012). The goal of the scheduling process is to create a schedule which optimises one or more user defined criteria. Scheduling plays an important role in most manufacturing systems (Dimopoulos, Zalzala, 2000, Kofler, Wagner, Beham, Kronberger, Affenzeller, 2009), but is also used in many other real world scenarios, like scheduling planes on runways (Cheng, Crawford, Menon, 1999, Hansen, 2004), scheduling for radiotherapy pre-treatment (Petrovic & Castro, 2011), scheduling tasks on CPUs (Pinedo, 2012), scheduling in railway traffic (Corman & Quaglietta, 2015), and many others. Because of its wide applicability, as well as its complexity, various scheduling problems have been studied in the last several decades.
Most instances of scheduling problems belong to the category of NP-hard problems, which makes it impossible to obtain an optimal solution in a reasonable amount of time. Because of this reason, scheduling problems are in most cases solved by using different heuristic methods, which obtain a satisfactory solution in a relatively small amount of time. Although many heuristic methods have been specifically designed for solving the unrelated machines environment (de C. M. Nogueira, Arroyo, Villadiego, Goncalves, 2014, Cota, Haddad, Souza, Coelho, 2014, Fanjul-Peyro, Ruiz, 2010, Fanjul-Peyro, Ruiz, 2011), in most cases scheduling problems are solved by using different metaheuristic methods (like genetic algorithms, particle swarm optimisation, tabu search, and many other) (Hart, Ross, & Corne, 2005). All the aforementioned methods can be applied only on scheduling problems under static conditions, where the information about all jobs is known before the execution of the system, and thus the schedule can be created beforehand. However, many scheduling problems occur in dynamic scheduling environments, in which it is not known in advance when jobs will arrive into the system, and what their properties will be. Therefore, it is not possible to create a schedule up front, but rather the schedule needs to be constructed simultaneously with the execution of the system. In order to solve scheduling problems under dynamic conditions, many simple scheduling methods, called dispatching rules, have been defined in the literature.
Dispatching rules (DRs) are simple constructive scheduling heuristics, which iteratively build up a schedule. This is done in a way that each time a certain machine is free, the DR determines which of the available, but yet unscheduled jobs, should be scheduled on the given machine. In order to determine which job should be scheduled next, DRs most commonly use a priority function to rank the jobs, and schedule the job with the best priority value. The priorities of jobs are usually calculated based on some characteristics of the jobs and the current state of the system. Therefore, DRs can be used under dynamic scheduling conditions, since they will only use the currently available information to decide which jobs should be scheduled next. Because DRs construct the schedule iteratively, they achieve much better execution times than metaheuristic methods (Đurasević & Jakobović, 2016), and can thus react quickly to changes which happen in the scheduling environment. However, designing good DRs is usually a lengthy trial and error process, which needs to be performed by domain experts. To tackle this problem, different machine learning and evolutionary computation methods have been used to automatically design new DRs (Branke, Nguyen, Pickardt, Zhang, 2016, Nguyen, Mei, Zhang, 2017). Although automatically designed DRs usually achieve better performance than manually designed DRs, they are also more complex and not as interpretable. Additionally, manually designed DRs are often used as a baseline for evaluating the performance of automatically designed DRs. Because of all these reasons, it is still important to design new and improved DRs, and also to be aware of how the various manually designed DRs perform on different scheduling criteria.
Although a wide range of DRs have been defined for the unrelated machines environment, very little research was performed to compare the performance of all the proposed DRs, and test how they perform for different scheduling criteria. Maheswaran, Ali, Siegel, Hensgen, and Freund (1999) compared eight DRs for minimising the makespan criterion. In the paper the selected DRs were applied in a dynamic environment where jobs were released during the execution of the system. Braun et al. (2001) analysed the performance of six DRs in the static scheduling environment for minimising the makespan criterion. They additionally compared the considered DRs with five other methods which can be applied for solving static scheduling problems, like genetic algorithms and similar search based heuristic methods. Du Kim and Kim (2004) propose a new DR for minimising the makespan and compare it with three existing DRs for scheduling in the unrelated machines environment under dynamic conditions. Izakian, Abraham, and Snasel (2009) compared six DRs for scheduling tasks in heterogeneous distributed environments. The authors compared the results achieved by the different DRs when optimising the mean makespan and mean flowtime criteria. Pfund, Fowler, Gadkari, and Chen (2008) compared several DRs for the unrelated parallel machines with setup and ready times, for optimising the total weighted tardiness criterion. However, only the static scheduling environment was considered in the previous study. Yang-Kuei and Chi-Wei (2013) have considered scheduling in the unrelated machines environment with release times, however, once again only for static scheduling conditions. They compared several DRs for optimising three criteria independently, the makespan, total completion time, and total weighted tardiness. Tseng, Chin, and Wang (2009) compare six DRs for optimising the makespan and total weighted tardiness criteria when scheduling jobs in the heterogeneous computing environment. The DRs were applied in a dynamic scheduling environment where jobs were released into the system during the execution of the system.
The aim of this paper is to provide an overview of DRs which can be applied for solving the unrelated machines scheduling problem with release times. The considered scheduling problem will be solved under dynamic conditions, meaning that the schedule needs to be constructed simultaneously with the execution of the system. To collect most of the proposed DRs which would be applicable for solving such scheduling problems, an extensive survey of the existing literature on DRs for the unrelated machine environment was conducted. In addition, a new DR called just in time and a new version of the work queue DR are proposed in this paper, both of which were designed manually. All the DRs will be tested on nine scheduling criteria to give a notion on how the collected DRs perform on various scheduling objectives. Furthermore, the DRs will be tested on four different problem sets, each of which will be generated with a different machine and job heterogeneity, to analyse how the selected DRs perform on different problem configurations. Based on all the conducted experiments, the paper will draw conclusions on which of the tested DRs were the most appropriate for optimising the considered criteria, as well as how different methods compare to each other. This should allow for an easier selection of appropriate DRs for a given criterion and heterogeneity conditions.
The rest of the paper is organised as follows. Section 2 gives an overview of the unrelated machines environment and the objectives which will be used to measure the performance of the created schedules. The DRs which were selected from the literature are enumerated and described in Section 3. The design of the experiments is described in Section 4. Section 5 outlines the results achieved by all the selected DRs on the nine scheduling criteria. Section 6 gives a discussion about the main conclusion which can be drawn from the obtained results. Finally, Section 7 gives the conclusion of this survey and outlines some possible future research directions.
Section snippets
The unrelated machines environment
The unrelated machines environment consists of n jobs which need to be scheduled on one of the m available machines. It is presumed that both the number of machines and jobs are finite. Each job can be scheduled on only a single machine, and once it starts with its execution it can not be interrupted until it is completed. Additionally, each machine can execute one job at a time. The index j is usually used to denote a concrete job, while the index i is used to denote a concrete machine. For
Dispatching rules for the unrelated machines environment
This section will describe various dispatching rules for solving the unrelated machines scheduling problem with release times and under dynamic conditions, which were collected from the literature. The dispatching rules are applied to determine which job should be scheduled next on which machine each time a job enters the system and there is at least one machine free, or a machine becomes free and there is at least one job waiting to be scheduled. The priority values calculated by DRs for
Experimental design and setup
Since for the evaluation of the selected problem instances it is necessary to have a wide range of different problems, this section will describe the way in which the problem instances, which were used for evaluation purposes, were generated.
For the generation of processing times, two parameters need to be defined, ϕj which is a measure that determines the job heterogeneity, and ϕm which defines the measure of machine heterogeneity. The ϕj parameter controls whether the different jobs will have
Results
This section will outline the results which were obtained by the selected DRs for the nine scheduling objectives. Each result of the DRs denoted in the tables represents the sum of the results for the 60 problem instances used to evaluate the DRs. In each table the best result for each criterion will be denoted in bold, while the best five results for each criterion will be denoted with a grey cell. The table includes three additional columns which denote the average rank of each DR on several
Discussion and analysis
In this section a short analysis based on the results obtained in the previous section will be performed. The analysis will be divided into two parts. The first part will focus on DRs and tries to analyse for what situations they are most well suited. In the second part for each criterion it will be analysed which are the best rules for that criterion.
Conclusion
In this paper a review of existing DRs which can be applied for scheduling in the unrelated machines environment with release times and under dynamic conditions was given. Additionally, all the collected DRs were evaluated on several problem sets and by using nine scheduling criteria. The results demonstrate that there is no single DR which would perform well for all of the nine tested criteria, but rather that DRs usually achieve the best performance for only one or two criteria, or perform
References (38)
- et al.
A review of scheduling research involving setup considerations
Omega
(1999) - et al.
A survey of scheduling problems with setup times or costs
European Journal of Operational Research
(2008) - et al.
A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems
Journal of Parallel and Distributed Computing
(2001) - et al.
Hybrid GRASP heuristics to solve an unrelated parallel machine scheduling problem with earliness and tardiness penalties
Electronic Notes in Theoretical Computer Science
(2014) - et al.
Closing the loop in real-time railway control: framework design and impacts on operations
Transportation Research Part C: Emerging Technologies
(2015) - et al.
Iterated greedy local search methods for unrelated parallel machine scheduling
European Journal of Operational Research
(2010) - et al.
Size-reduction heuristics for the unrelated parallel machines scheduling problem
Computers & Operations Research
(2011) - et al.
Scheduling unrelated parallel machines with optional machines and jobs selection
Computers & Operations Research
(2012) Genetic search methods in air traffic control
Computers & Operations Research
(2004)- et al.
Heuristic scheduling systems
(1993)
The on-time real-time railway traffic management framework: A proof-of-concept using a scalable standardised data communication architecture
Transportation Research Part C: Emerging Technologies
Ordered minimum completion time heuristic for unrelated parallel-machines problems
Proceedings of the 9th iberian conference on information systems and technologies (CISTI)
Scheduling unrelated parallel machines in semiconductor manufacturing by problem reduction and local search heuristics
Flexible Services and Manufacturing Journal
Automated design of production scheduling heuristics: A Review
IEEE Transactions on Evolutionary Computation
Air traffic control using genetic search techniques
Proceedings of the IEEE international conference on control applications (cat. no.99ch36328)
AIRP: A heuristic algorithm for solving the unrelated parallel machine scheduling problem
Proceedings of the IEEE congress on evolutionary computation (CEC)
Recent developments in evolutionary computation for manufacturing optimization: Problems, solutions, and comparisons
IEEE Transactions on Evolutionary Computation
Comparison of solution representations for scheduling in the unrelated machines environment
Proceedings of the 39th international convention on information and communication technology, electronics and microelectronics (MIPRO)
Cited by (84)
A novel predictive–reactive scheduling method for parallel batch processor lot-sizing and scheduling with sequence-dependent setup time
2024, Computers and Industrial EngineeringA new dispatching mechanism for parallel-machine scheduling with different efficiencies and sequence-dependent setup times
2024, Decision Analytics JournalDeep reinforcement learning for dynamic flexible job shop scheduling problem considering variable processing times
2023, Journal of Manufacturing SystemsA deep multi-agent reinforcement learning approach to solve dynamic job shop scheduling problem
2023, Computers and Operations ResearchCombining single objective dispatching rules into multi-objective ensembles for the dynamic unrelated machines environment
2023, Swarm and Evolutionary ComputationCollaboration methods for ensembles of dispatching rules for the dynamic unrelated machines environment
2023, Engineering Applications of Artificial Intelligence