Automated generation of dispatching rules for the green unrelated machines scheduling problem
The concept of green scheduling, which deals with the environmental impact of the scheduling process, is becoming increasingly important due to growing environmental concerns. Most green scheduling problem variants focus on modelling the energy consumption during the execution of the schedule. However, the dynamic unrelated machines environment is rarely considered, mainly because it is difficult to manually design simple heuristics, called dispatching rules (DRs), which are suitable for solving dynamic, non-standard scheduling problems. Using hyperheuristics, especially genetic programming (GP), alleviates the problem since it enables the automatic design of new DRs. In this study, we apply GP to automatically design DRs for solving the green scheduling problem in the unrelated machines environment under dynamic conditions. The total energy consumed during the system execution is optimised along with two standard scheduling criteria. The three most commonly investigated green scheduling problem variants from the literature are selected, and GP is adapted to generate appropriate DRs for each. The experiments show that GP-generated DRs efficiently solve the problem under dynamic conditions, providing a trade-off between optimising standard and energy-related criteria.
- Research Article
9
- 10.3233/ica-230704
- May 10, 2023
- Integrated Computer-Aided Engineering
Scheduling is a frequently studied combinatorial optimisation problem that often needs to be solved under dynamic conditions and to optimise multiple criteria. The most commonly used method for solving dynamic problems are dispatching rules (DRs), simple constructive heuristics that build the schedule incrementally. Since it is difficult to design DRs manually, they are often created automatically using genetic programming. Although such rules work well, their performance is still limited and various methods, especially ensemble learning, are used to improve them. So far, ensembles have only been used in the context of single-objective scheduling problems. This study aims to investigate the possibility of constructing ensembles of DRs for solving multi-objective (MO) scheduling problems. To this end, an existing ensemble construction method called SEC is adapted by extending it with non-dominated sorting to construct Pareto fronts of ensembles for a given MO problem. In addition, the algorithms NSGA-II and NSGA-III were adapted to construct ensembles and compared with the SEC method to demonstrate their effectiveness. All methods were evaluated on four MO problems with different number of criteria to be optimised. The results show that ensembles of DRs achieve better Pareto fronts compared to individual DRs. Moreover, the results show that SEC achieves equally good or even slightly better results than NSGA-II and NSGA-III when constructing ensembles, while it is simpler and slightly less computationally expensive. This shows the potential of using ensembles to increase the performance of individual DRs for MO problems.
- Research Article
36
- 10.1016/j.asoc.2020.106637
- Aug 14, 2020
- Applied Soft Computing
Comparison of schedule generation schemes for designing dispatching rules with genetic programming in the unrelated machines environment
- Research Article
22
- 10.1007/s00521-020-05292-w
- Aug 28, 2020
- Neural Computing and Applications
Dispatching rules (DRs) represent heuristic methods designed for solving various scheduling problems. Since it is hard to manually design new DRs, genetic programming is used to design them automatically. Most DRs are designed in a way that they can be applied under dynamic conditions. On the other hand, static problems are usually solved using various metaheuristic methods. However, situations exist in which metaheuristics might not be the best choice for static problems. Such situations can occur when the schedule needs to be constructed quickly so that the system starts executing as soon as possible, or when it is possible that certain changes happen during the execution of the system. For these cases, DRs are more suitable since they execute faster and can adapt to dynamic changes in the system. However, as most research is focused on developing DRs for dynamic conditions, they would perform poorly under static conditions, since they would not use all the information that is available. Therefore, there is a need to enable automatic development of DRs suitable for static and offline conditions. The objective of this paper is to analyse several methods by which automatically generated DRs can be adapted for static and offline scheduling conditions. In addition to look-ahead and iterative DRs which were studied previously, this paper proposes new terminal nodes, as well as the application of the rollout algorithm to adapt DRs for static conditions. The performance and execution time of all methods are compared with the results achieved by automatically generated DRs for dynamic conditions and genetic algorithms. The tested methods obtain a wide range of results and prove to be competitive both in their performance and execution speed with other approaches. As such, they are a viable alternative to metaheuristics since they can be used in situations where metaheuristics could not, but can offer either a better execution time or even competitive results.
- Research Article
66
- 10.1007/s10710-017-9310-3
- Sep 11, 2017
- Genetic Programming and Evolvable Machines
Dispatching rules are often a method of choice for solving various scheduling problems. Most often, they are designed by human experts in order to optimise a certain criterion. However, it is seldom the case that a schedule should optimise a single criterion all alone. More common is the case where several criteria need to be optimised at the same time. This paper deals with the problem of automatic design of dispatching rules (DRs) by the use of genetic programming, for many-objective scheduling problems. Four multi-objective and many-objective algorithms, including nondominated sorting genetic algorithm II, nondominated sorting genetic algorithm III, harmonic distance based multi-objective evolutionary algorithm and multi-objective evolutionary algorithm based on decomposition, have been used in order to obtain sets of Pareto optimal solutions for various many-objective scheduling problems. Through experiments it was shown that automatically generated multi-objective DRs not only achieve good performance when compared to standard DRs, but can also outperform automatically generated single objective DRs for most criteria combinations.
- Research Article
49
- 10.1016/j.eswa.2020.114548
- Jan 7, 2021
- Expert Systems with Applications
Designing dispatching rules with genetic programming for the unrelated machines environment with constraints
- Research Article
76
- 10.1016/j.cie.2019.106030
- Sep 21, 2019
- Computers & Industrial Engineering
Improving genetic algorithm performance by population initialisation with dispatching rules
- Dissertation
1
- 10.26686/wgtn.17018759
- Jan 1, 2016
<p>Scheduling problems arise whenever there is a choice of order in which a number of tasks should be performed; they arise commonly, daily and everywhere. A job shop is a common manufacturing environment in which a schedule for processing a set of jobs through a set of machines needs to be constructed. Job shop scheduling (JSS) has been called a fascinating challenge as it is computationally hard and prevalent in the real-world. Developing more effective ways of scheduling jobs could increase profitability through increasing throughput and decreasing costs. Dispatching rules (DRs) are one of the most popular scheduling heuristics. DRs are easy to implement, have low computational cost, and cope well with the dynamic nature of real-world manufacturing environments. However, the manual development of DRs is time consuming and requires expert knowledge of the scheduling environment. Genetic programming (GP) is an evolutionary computation method which is ideal for automatically discovering DRs. This is a hyper-heuristic approach, as GP is searching the search space of heuristic (DR) solutions rather than constructing a schedule directly. The overall goal of this thesis is to develop GP based hyper-heuristics for the efficient evolution (automatic generation) of robust, reusable and effective scheduling heuristics for JSS environments, with greater interpretability. Firstly, this thesis investigates using GP to evolve optimal DRs for the static two-machine JSS problem with makespan objective function. The results show that some evolved DRs were equivalent to an optimal scheduling algorithm. This validates both the GP based hyper-heuristic approach for generating DRs for JSS and the representation used. Secondly, this thesis investigates developing ``less-myopic'' DRs through the use of wider-looking terminals and local search to provide additional fitness information. The results show that incorporating features of the state of the wider shop improves the mean performance of the best evolved DRs, and that the inclusion of local search in evaluation evolves DRs which make better decisions over the local time horizon, and attain lower total weighted tardiness. Thirdly, this thesis proposes using strongly typed GP (STGP) to address the challenging issue of interpretability of DRs evolved by GP. Several grammars are investigated and the results show that the DRs evolved in the semantically constrained search space of STGP do not have (on average) performance that is as good as unconstrained. However, the interpretability of evolved rules is substantially improved. Fourthly, this thesis investigates using multiobjective GP to encourage evolution of DRs which are more readily interpretable by human operators. This approach evolves DRs with similar performance but smaller size. Fragment analysis identifies popular combinations of terminals which are then used as high level terminals; the inclusion of these terminals improved the mean performance of the best evolved DRs. Through this thesis the following major contributions have been made: (1) the first use of GP to evolve optimal DRs for the static two-machine job shop with makespan objective function; (2) an approach to developing less-myopic DRs through the inclusion of wider looking terminals and the use of local search to provide additional fitness information over an extended decision horizon; (3) the first use of STGP for the automatic discovery of DRs with better interpretability and semantic validity for increased trust; and (4) the first multiobjective GP approach that considers multiple objectives investigating the trade-off between scheduling behaviour and interpretability. This is also the first work that uses analysis of evolved GP individuals to perform feature selection and construction for JSS.</p>
- Dissertation
7
- 10.26686/wgtn.17018759.v1
- Jan 1, 2016
<p>Scheduling problems arise whenever there is a choice of order in which a number of tasks should be performed; they arise commonly, daily and everywhere. A job shop is a common manufacturing environment in which a schedule for processing a set of jobs through a set of machines needs to be constructed. Job shop scheduling (JSS) has been called a fascinating challenge as it is computationally hard and prevalent in the real-world. Developing more effective ways of scheduling jobs could increase profitability through increasing throughput and decreasing costs. Dispatching rules (DRs) are one of the most popular scheduling heuristics. DRs are easy to implement, have low computational cost, and cope well with the dynamic nature of real-world manufacturing environments. However, the manual development of DRs is time consuming and requires expert knowledge of the scheduling environment. Genetic programming (GP) is an evolutionary computation method which is ideal for automatically discovering DRs. This is a hyper-heuristic approach, as GP is searching the search space of heuristic (DR) solutions rather than constructing a schedule directly. The overall goal of this thesis is to develop GP based hyper-heuristics for the efficient evolution (automatic generation) of robust, reusable and effective scheduling heuristics for JSS environments, with greater interpretability. Firstly, this thesis investigates using GP to evolve optimal DRs for the static two-machine JSS problem with makespan objective function. The results show that some evolved DRs were equivalent to an optimal scheduling algorithm. This validates both the GP based hyper-heuristic approach for generating DRs for JSS and the representation used. Secondly, this thesis investigates developing ``less-myopic'' DRs through the use of wider-looking terminals and local search to provide additional fitness information. The results show that incorporating features of the state of the wider shop improves the mean performance of the best evolved DRs, and that the inclusion of local search in evaluation evolves DRs which make better decisions over the local time horizon, and attain lower total weighted tardiness. Thirdly, this thesis proposes using strongly typed GP (STGP) to address the challenging issue of interpretability of DRs evolved by GP. Several grammars are investigated and the results show that the DRs evolved in the semantically constrained search space of STGP do not have (on average) performance that is as good as unconstrained. However, the interpretability of evolved rules is substantially improved. Fourthly, this thesis investigates using multiobjective GP to encourage evolution of DRs which are more readily interpretable by human operators. This approach evolves DRs with similar performance but smaller size. Fragment analysis identifies popular combinations of terminals which are then used as high level terminals; the inclusion of these terminals improved the mean performance of the best evolved DRs. Through this thesis the following major contributions have been made: (1) the first use of GP to evolve optimal DRs for the static two-machine job shop with makespan objective function; (2) an approach to developing less-myopic DRs through the inclusion of wider looking terminals and the use of local search to provide additional fitness information over an extended decision horizon; (3) the first use of STGP for the automatic discovery of DRs with better interpretability and semantic validity for increased trust; and (4) the first multiobjective GP approach that considers multiple objectives investigating the trade-off between scheduling behaviour and interpretability. This is also the first work that uses analysis of evolved GP individuals to perform feature selection and construction for JSS.</p>
- Research Article
19
- 10.1016/j.engappai.2023.106096
- Mar 20, 2023
- Engineering Applications of Artificial Intelligence
Collaboration methods for ensembles of dispatching rules for the dynamic unrelated machines environment
- Research Article
1
- 10.3390/a17020067
- Feb 4, 2024
- Algorithms
The automated design of dispatching rules (DRs) with genetic programming (GP) has become an important research direction in recent years. One of the most important decisions in applying GP to generate DRs is determining the features of the scheduling problem to be used during the evolution process. Unfortunately, there are no clear rules or guidelines for the design or selection of such features, and often the features are simply defined without investigating their influence on the performance of the algorithm. However, the performance of GP can depend significantly on the features provided to it, and a poor or inadequate selection of features for a given problem can result in the algorithm performing poorly. In this study, we examine in detail the features that GP should use when developing DRs for unrelated machine scheduling problems. Different types of features are investigated, and the best combination of these features is determined using two selection methods. The obtained results show that the design and selection of appropriate features are crucial for GP, as they improve the results by about 7% when only the simplest terminal nodes are used without selection. In addition, the results show that it is not possible to outperform more sophisticated manually designed DRs when only the simplest problem features are used as terminal nodes. This shows how important it is to design appropriate composite terminal nodes to produce high-quality DRs.
- Book Chapter
1
- 10.1007/978-3-031-29573-7_20
- Jan 1, 2023
The automatic generation of dispatching rules (DRs) for various scheduling problems using genetic programming (GP) has become an increasingly researched topic in recent years. Creating DRs in this way relieves domain experts of the tedious task of manually designing new rules, but also often leads to the discovery of better rules than those already available. However, developing new DRs is a computationally intensive process that takes time to converge to good solutions. One possible way to improve the convergence of evolutionary algorithms is to use a more sophisticated method to generate the initial population of individuals. In this paper, we propose a simple method for initialising individuals that uses probabilistic information from previously evolved DRs. The method extracts the information on how many times each node occurs at each level of the tree and in each context. This information is then used to introduce bias in the selection of the node to be selected at a particular position during the construction of the expression tree. The experiments show that with the proposed method it is possible to improve the convergence of GP when generating new DRs, so that GP can obtain high-quality DRs in a much shorter time.
- Research Article
16
- 10.1109/access.2022.3151346
- Jan 1, 2022
- IEEE Access
Dispatching rules are most commonly used to solve scheduling problems under dynamic conditions. Since designing new dispatching rules is a time-consuming process, it can be automated by using various machine learning and evolutionary computation methods. In previous research, genetic programming has been the most commonly used method for automatically designing new dispatching rules. However, there are many other evolutionary methods that use representations other than genetic programming that can be used to create dispatching rules. Some, such as gene expression programming, have already been used successfully, while others, such as Cartesian genetic programming or grammatical evolution, have not yet been used to generate dispatching rules. In this paper, six different methods (genetic programming, gene expression programming, Cartesian genetic programming, grammatical evolution, stack representation, and analytic programming) for generating dispatching rules for the unrelated machines environment are tested and the results for various scheduling criteria are analysed. It is also analysed how different individual sizes in the tested methods affect the performance and average size of the generated dispatching rules. The results show that, with the exception of grammatical evolution and analytic programming, all tested methods perform quite similarly, with results depending on the selected scheduling criterion. The results also show that Cartesian genetic programming is the most resistant to the occurrence of bloat and evolves dispatching rules with the smallest average size.
- Research Article
- 10.3390/axioms13010037
- Jan 5, 2024
- Axioms
Dynamic scheduling represents an important class of combinatorial optimisation problems that are usually solved with simple heuristics, the so-called dispatching rules (DRs). Designing efficient DRs is a tedious task, which is why it has been automated through the application of genetic programming (GP). Various approaches have been used to improve the results of automatically generated DRs, with ensemble learning being one of the best-known. The goal of ensemble learning is to create sets of automatically designed DRs that perform better together. One of the main problems in ensemble learning is the selection of DRs to form the ensemble. To this end, various ensemble construction methods have been proposed over the years. However, these methods are quite computationally intensive and require a lot of computation time to obtain good ensembles. Therefore, in this study, we propose several simple heuristic ensemble construction methods that can be used to construct ensembles quite efficiently and without the need to evaluate their performance. The proposed methods construct the ensembles solely based on certain properties of the individual DRs used for their construction. The experimental study shows that some of the proposed heuristic construction methods perform better than more complex state-of-the-art approaches for constructing ensembles.
- Conference Article
7
- 10.1109/ssci50451.2021.9659842
- Dec 5, 2021
Genetic programming (GP) is a powerful hyper-heuristic method used for evolving dispatching rules (DRs). DRs are commonly used to solve scheduling problems in which scheduling decisions have to be performed in a small amount of time, and are often based on incomplete information. Although GP is the most commonly used method for evolving DRs, it suffers from a serious problem called bloat, which represents the uncontrolled growth of expression trees during evolution. Bloat usually has two important repercussions on the evolved DRs. First, DRs become hard to understand and it is unclear by which strategy they perform scheduling decisions. Secondly, some trees can also include parts that are a result of overfitting on the training set and which reduce their generalization ability. To deal with the problem of bloating DRs, we propose a simplification method consisted of two parts: algebraic reduction and pruning. The simplification method is applied after the normal evolution process with GP is done to reduce the complexity of the evolved DRs. The results demonstrate that it is possible to reduce the number of nodes in an expression tree without significantly deteriorating its performance. This shows that the DRs evolved by GP are bloated and that substantial parts of them are redundant.
- Research Article
67
- 10.1016/j.cor.2021.105401
- Jun 4, 2021
- Computers & Operations Research
Genetic programming-based hyper-heuristic approach for solving dynamic job shop scheduling problem with extended technical precedence constraints