Comparison of ensemble learning methods for creating ensembles of dispatching rules for the unrelated machines environment

Dispatching rules are often the method of choice for solving various scheduling problems, especially since they are applicable in dynamic scheduling environments. Unfortunately, dispatching rules are hard to design and are also unable to deliver results which are of equal quality as results achieved by different metaheuristic methods. As a consequence, genetic programming is commonly used in order to automatically design dispatching rules. Furthermore, a great amount of research with different genetic programming methods is done to increase the performance of the generated dispatching rules. In order to additionally improve the effectiveness of the evolved dispatching rules, in this paper the use of several different ensemble learning algorithms is proposed to create ensembles of dispatching rules for the dynamic scheduling problem in the unrelated machines environment. Four different ensemble learning approaches will be considered, which will be used in order to create ensembles of dispatching rules: simple ensemble combination (proposed in this paper), BagGP, BoostGP and cooperative coevolution. Additionally, the effectiveness of these algorithms is analysed based on some ensemble learning parameters. Finally, an additional search method, which finds the optimal combinations of dispatching rules to form the ensembles, is proposed and applied. The obtained results show that by using the aforementioned ensemble learning approaches it is possible to significantly increase the performance of the generated dispatching rules.

[1]  Domagoj Jakobovic,et al.  Evolving priority scheduling heuristics with genetic programming , 2012, Appl. Soft Comput..

[2]  John R. Koza,et al.  Human-competitive results produced by genetic programming , 2010, Genetic Programming and Evolvable Machines.

[3]  Bernd Scholz-Reiter,et al.  Towards improved dispatching rules for complex shop floor scenarios: a genetic programming approach , 2010, GECCO '10.

[4]  Graham Kendall,et al.  Exploring Hyper-heuristic Methodologies with Genetic Programming , 2009 .

[5]  Emma Hart,et al.  A Hyper-Heuristic Ensemble Method for Static Job-Shop Scheduling , 2016, Evolutionary Computation.

[6]  Yoav Freund,et al.  A decision-theoretic generalization of on-line learning and an application to boosting , 1995, EuroCOLT.

[7]  Nhu Binh Ho,et al.  Evolving dispatching rules using genetic programming for solving multi-objective flexible job-shop problems , 2008, Comput. Ind. Eng..

[8]  Liang Gao,et al.  Evolving scheduling rules with gene expression programming for dynamic single-machine scheduling problems , 2010 .

[9]  Mark Johnston,et al.  A sequential genetic programming method to learn forward construction heuristics for order acceptance and scheduling , 2014, 2014 IEEE Congress on Evolutionary Computation (CEC).

[10]  Mark Johnston,et al.  Evolving Ensembles of Dispatching Rules Using Genetic Programming for Job Shop Scheduling , 2015, EuroGP.

[11]  Mark Johnston,et al.  Genetic programming for order acceptance and scheduling , 2013, 2013 IEEE Congress on Evolutionary Computation.

[12]  Graham Kendall,et al.  A Classification of Hyper-heuristics Approaches – Revisited , 2017 .

[13]  Graham Kendall,et al.  A Classification of Hyper-heuristic Approaches , 2010 .

[14]  Mark Johnston,et al.  A Computational Study of Representations in Genetic Programming to Evolve Dispatching Rules for the Job Shop Scheduling Problem , 2013, IEEE Transactions on Evolutionary Computation.

[15]  Mark Johnston,et al.  Learning iterative dispatching rules for job shop scheduling with genetic programming , 2013, The International Journal of Advanced Manufacturing Technology.

[16]  Gavin Brown,et al.  Ensemble Learning , 2010, Encyclopedia of Machine Learning and Data Mining.

[17]  Reinhard Männer,et al.  Proceedings of the International Conference on Evolutionary Computation. The Third Conference on Parallel Problem Solving from Nature: Parallel Problem Solving from Nature , 1994 .

[18]  Giandomenico Spezzano,et al.  Training Distributed GP Ensemble With a Selective Algorithm Based on Clustering and Pruning for Pattern Classification , 2008, IEEE Transactions on Evolutionary Computation.

[19]  Mark Johnston,et al.  Reusing Genetic Programming for Ensemble Selection in Classification of Unbalanced Data , 2014, IEEE Transactions on Evolutionary Computation.

[20]  Lu Hong,et al.  Groups of diverse problem solvers can outperform groups of high-ability problem solvers. , 2004, Proceedings of the National Academy of Sciences of the United States of America.

[21]  Ali M. S. Zalzala,et al.  A genetic programming heuristic for the one-machine total tardiness problem , 1999, Proceedings of the 1999 Congress on Evolutionary Computation-CEC99 (Cat. No. 99TH8406).

[22]  Mark Johnston,et al.  Evolving "less-myopic" scheduling rules for dynamic job shop scheduling with genetic programming , 2014, GECCO.

[23]  Anselmo Chaves Neto,et al.  Genetic Programming and Boosting Technique to Improve Time Series Forecasting , 2009 .

[24]  Chung Yee Lee Scheduling: Theory, Algorithms, and Systems , 1996 .

[25]  Cyril Fonlupt,et al.  Applying Boosting Techniques to Genetic Programming , 2001, Artificial Evolution.

[26]  Mengjie Zhang,et al.  Enhancing genetic programming based hyper-heuristics for dynamic multi-objective job shop scheduling problems , 2015, 2015 IEEE Congress on Evolutionary Computation (CEC).

[27]  Mark Johnston,et al.  Dynamic Multi-objective Job Shop Scheduling: A Genetic Programming Approach , 2013, Automated Scheduling and Planning.

[28]  Shiu Yin Yuen,et al.  On composing an algorithm portfolio , 2015, Memetic Computing.

[29]  Kenneth A. De Jong,et al.  A Cooperative Coevolutionary Approach to Function Optimization , 1994, PPSN.

[30]  Jatinder N. D. Gupta,et al.  A review of scheduling research involving setup considerations , 1999 .

[31]  Liang Gao,et al.  Application of gene expression programming on dynamic job shop scheduling problem , 2011, Proceedings of the 2011 15th International Conference on Computer Supported Cooperative Work in Design (CSCWD).

[32]  Cândida Ferreira,et al.  Gene Expression Programming: A New Adaptive Algorithm for Solving Problems , 2001, Complex Syst..

[33]  Domagoj Jakobovic,et al.  Genetic Programming Heuristics for Multiple Machine Scheduling , 2007, EuroGP.

[34]  Mark Johnston,et al.  A coevolution genetic programming method to evolve scheduling policies for dynamic multi-objective job shop scheduling problems , 2012, 2012 IEEE Congress on Evolutionary Computation.

[35]  Michael Pinedo,et al.  Scheduling: Theory, Algorithms, and Systems , 1994 .

[36]  Yoav Freund,et al.  A decision-theoretic generalization of on-line learning and an application to boosting , 1997, EuroCOLT.

[37]  Mark Johnston,et al.  Evolving Diverse Ensembles Using Genetic Programming for Classification With Unbalanced Data , 2013, IEEE Transactions on Evolutionary Computation.

[38]  H. Iba Bagging, Boosting, and bloating in Genetic Programming , 1999 .

[39]  Mengjie Zhang,et al.  Automated Design of Production Scheduling Heuristics: A Review , 2016, IEEE Transactions on Evolutionary Computation.

[40]  Mengjie Zhang,et al.  A Dispatching rule based Genetic Algorithm for Order Acceptance and Scheduling , 2015, GECCO.

[41]  Domagoj Jakobovic,et al.  Adaptive scheduling on unrelated machines with genetic programming , 2016, Appl. Soft Comput..

[42]  Kazuo Miyashita,et al.  Job-shop scheduling with genetic programming , 2000 .

[43]  Giandomenico Spezzano,et al.  GP Ensemble for Distributed Intrusion Detection Systems , 2005, ICAPR.

[44]  Fei Peng,et al.  Population-Based Algorithm Portfolios for Numerical Optimization , 2010, IEEE Transactions on Evolutionary Computation.

[45]  Mark Johnston,et al.  Automatic Design of Scheduling Policies for Dynamic Multi-objective Job Shop Scheduling via Cooperative Coevolution Genetic Programming , 2014, IEEE Transactions on Evolutionary Computation.

[46]  Leo Breiman,et al.  Bagging Predictors , 1996, Machine Learning.

[47]  Riccardo Poli,et al.  A Field Guide to Genetic Programming , 2008 .

[48]  Reinhard Männer,et al.  Parallel Problem Solving from Nature — PPSN III , 1994, Lecture Notes in Computer Science.