Genetic programming hyperheuristic parameter configuration using fitness landscape analysis

Abstract

Fitness landscape analysis is a tool that can help us gain insight into a problem, determine how hard it is to solve a problem using a given algorithm, choose an algorithm for solving a given problem, or choose good algorithm parameters for solving the problem. In this paper, fitness landscape analysis of hyperheuristics is used for clustering instances of three scheduling problems. After that, good parameters for tree-based genetic programming that can solve a given scheduling problem are calculated automatically for every cluster. Additionally, we introduce tree editing operators which help in the calculation of fitness landscape features in tree based genetic programming. A heuristic is proposed based on introduced operators, and it calculates the distance between any two trees. The results show that the proposed approach can obtain parameters that offer better performance compared to manual parameter selection.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Availability of data and material

The data for the resource constrained project scheduling problem (RCPSP) is a part of the PSPLIB library, which is opensource and available online. The data for single machine environment and unrelated machines environment is available on request.

Notes

  1. 1.

    http://www.om-db.wi.tum.de/psplib/getdata_sm.html

References

  1. 1.

    Acharya D, Goel S, Asthana R, Bhardwaj A (2020) A novel fitness function in genetic programming to handle unbalanced emotion recognition data. Pattern Recogn Lett 133:272–279

    Article  Google Scholar 

  2. 2.

    Astarabadi SSM, Ebadzadeh MM (2019) Genetic programming performance prediction and its application for symbolic regression problems. Inf Sci 502:418–433

    MathSciNet  Article  Google Scholar 

  3. 3.

    Artigues C, Demassey S, Neron E (2008) Resource-constrained project scheduling: Models, algorithms, extensions and applications. Wiley-ISTE

  4. 4.

    Bouziri H, Mellouli K, Talbi E-G (2011) The k-coloring fitness landscape. J Comb Optim 21(3):306–329

    MathSciNet  Article  Google Scholar 

  5. 5.

    Bogon T, Poursanidis G, Lattner AD, Timm IJ (2013) Setting up particle swarm optimization by decision tree learning out of function features. In: Filipe J, Fred A (eds) Agents and Artificial Intelligence. Springer, Berlin, pp 72–85

  6. 6.

    Baykasoğlu A, Madenoğlu FS, Hamzadayı A (2020) Greedy randomized adaptive search for dynamic flexible job-shop scheduling. J Manuf Syst 56:425–451

    Article  Google Scholar 

  7. 7.

    Chan K, Kwong CK, Kremer GE (2020) Predicting customer satisfaction based on online reviews and hybrid ensemble genetic programming algorithms. Eng Appl Artif Intell 95:103902

    Article  Google Scholar 

  8. 8.

    Caliński T, Harabasz J (1974) A dendrite method for cluster analysis. Commun Stat 3 (1):1–27

    MathSciNet  MATH  Google Scholar 

  9. 9.

    Campobello G, Dell’Aquila D, Russo M, Segreto A (2020) Neuro-genetic programming for multigenre classification of music content. Appl Soft Comput 94:106488

    Article  Google Scholar 

  10. 10.

    Cheng T, Zhong J (2020) An efficient memetic genetic programming framework for symbolic regression. Memetic Comput:1–17

  11. 11.

    Davies DL, Bouldin DW (1979) A cluster separation measure. IEEE Transactions on Pattern Analysis and Machine Intelligence PAMI-1(2):224–227

    Article  Google Scholar 

  12. 12.

    Dimopoulos C, Zalzala A (2001) Investigating the use of genetic programming for a classic one-machine scheduling problem. Adv Eng Softw 32:489–498

    Article  Google Scholar 

  13. 13.

    Djurasević M, Jakobović D, Knežević K (2016) Adaptive scheduling on unrelated machines with genetic programming. Appl Soft Comput 48:419–430

    Article  Google Scholar 

  14. 14.

    Djumić M, Šižejković D, Čorić R, Jakobović D (2018) Evolving priority rules for resource constrained project scheduling problem with genetic programming. Futur Gener Comput Syst 86:211–221

    Article  Google Scholar 

  15. 15.

    DJurasević M, Jakobović D (2020) Comparison of schedule generation schemes for designing dispatching rules with genetic programming in the unrelated machines environment. Appl Soft Comput 96:106637

    Article  Google Scholar 

  16. 16.

    dos Santos Coelho L, Bora TC, Klein CE (2014) A genetic programming approach based on lévy flight applied to nonlinear identification of a poppet valve. Appl Math Model 38(5):1729–1736

    MathSciNet  Article  Google Scholar 

  17. 17.

    Dy J, Brodley C (2004) Feature selection for unsupervised learning. J Mach Learn Res 5:845–889

    MathSciNet  MATH  Google Scholar 

  18. 18.

    Giorgi M, Quarta M (2020) Hybrid multigene genetic programming - artificial neural networks approach for dynamic performance prediction of an aeroengine. Aerosp Sci Technol 103:105902

    Article  Google Scholar 

  19. 19.

    Gomes FM, Pereira FM, da Silva AF, Silva M (2019) Multiple response optimization: Analysis of genetic programming for symbolic regression and assessment of desirability functions. Knowl Based Syst 179:21–33

    Article  Google Scholar 

  20. 20.

    Hancer E, Xue B, Zhang M (2020) A survey on feature selection approaches for clustering. Artif Intell Rev:1–27

  21. 21.

    Hien NT, Tran CT, Nguyen XH, Kim S, Phai VD, Thuy NB, Manh NV (2020) Genetic programming for storm surge forecasting. Ocean Eng 215:107812

    Article  Google Scholar 

  22. 22.

    Jakobović D, Budin L (2006) Dynamic scheduling with genetic programming. Lect Notes Comput Sci 3905:73–84

    Article  Google Scholar 

  23. 23.

    Jiang X, Lee K, Pinedo ML (2020) Ideal schedules in parallel machine settings. Eur J Oper Res

  24. 24.

    Kauffman S (1992) The origins of order: Self-organization and selection in evolution. emergence.org, vol 15

  25. 25.

    Kevin Michell V, Kristjanpoller W (2020) Strongly-typed genetic programming and fuzzy inference system: An embedded approach to model and generate trading rules. Appl Soft Comput 90:106169

    Article  Google Scholar 

  26. 26.

    Kinnear KEJ (1994) Fitness landscapes and difficulty in genetic programming. In: Evolutionary Computation, IEEE World Congress on Computational Intelligence, pp 142–147

  27. 27.

    Klein R (2000) Bidirectional planning: improving priority rule-based heuristics for scheduling resource-constrained projects. Eur J Oper Res 127(3):619–638

    Article  Google Scholar 

  28. 28.

    Kolisch R (1996) Serial and parallel resource-constrained project scheduling methods revisited: Theory and computation. Eur J Oper Res 90(2):320–333

    MathSciNet  Article  Google Scholar 

  29. 29.

    Koza JR (1992) Genetic programming: On the programming of computers by means of natural selection. MIT Press, Cambridge

    Google Scholar 

  30. 30.

    Liefooghe A, Derbel B, Verel S, Aguirre H, Tanaka K (2017) Towards landscape-aware automatic algorithm configuration: Preliminary experiments on neutral and rugged landscapes. In: Hu B, López-Ibáñez M (eds) Evolutionary Computation in Combinatorial Optimization. Springer International Publishing, Cham, pp 215–232

  31. 31.

    Liu M-Y, Huai W-X, Yang Z-H, Zeng Y-H (2020) A genetic programming-based model for drag coefficient of emergent vegetation in open channel flows. Adv Water Resour 140:103582

    Article  Google Scholar 

  32. 32.

    López-Ibáñez M, Dubois-Lacoste J, Pérez Cáceres L, Stützle T, Birattari M (2016) The irace package: Iterated racing for automatic algorithm configuration. Oper Res Perspect 3:43–58

    MathSciNet  Google Scholar 

  33. 33.

    Lu S (1979) A tree-to-tree distance and its application to cluster analysis. IEEE Trans Pattern Anal Mach Intell PAMI-1(2):219–224

    Article  Google Scholar 

  34. 34.

    Mehr AD (2020) An ensemble genetic programming model for seasonal precipitation forecasting. SN Appl Sci 2:1821

    Article  Google Scholar 

  35. 35.

    Malan KM, Engelbrecht AP (2014) Fitness landscape analysis for metaheuristic performance prediction. In: Recent Advances in the Theory and Application of Fitness Landscapes. Springer, Berlin, pp 103–132

  36. 36.

    Moon TK (1996) The expectation-maximization algorithm. IEEE Signal Proc Mag 13(6):47–60

    Article  Google Scholar 

  37. 37.

    Morgan R, Gallagher M (2017) Analysing and characterising optimization problems using length scale. Soft Comput 21:1735–1752

    Article  Google Scholar 

  38. 38.

    Nguyen S, Zhang M, Johnston M, Tan KC (2019) Genetic programming for job shop scheduling. In: Evolutionary and Swarm Intelligence Algorithms. Springer International Publishing, Cham, pp 143–167

  39. 39.

    Ochoa G, Qu R, Burke EK (2009) Analyzing the landscape of a graph based hyper-heuristic for timetabling problems. In: Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation, GECCO ’09. Association for Computing Machinery, New York, pp 341–348

  40. 40.

    Ochoa G, Vazquez-Rodriguez JA, Petrovic S, Burke E (2009) Dispatching rules for production scheduling: A hyper-heuristic landscape analysis. In: 2009 IEEE Congress on Evolutionary Computation, pp 1873–1880

  41. 41.

    Pawlik M, Augsten N (December 2011) Rted: A robust algorithm for the tree edit distance. Proc VLDB Endow 5(4):334–345

  42. 42.

    Pinedo M (2012) Scheduling: Theory, algorithms, and systems. Springer, New York

  43. 43.

    Pitzer E, Affenzeller M (2012) A comprehensive survey on fitness landscape analysis. In: Recent Advances in Intelligent Engineering Systems. Springer, Berlin, pp 161–191

  44. 44.

    Pitzer E, Beham A, Affenzeller M (2013) Automatic algorithm selection for the quadratic assignment problem using fitness landscape analysis. In: Middendorf M, Blum C (eds) Evolutionary Computation in Combinatorial Optimization. Springer, Berlin, pp 109–120

  45. 45.

    Prugel-Bennett A, Tayarani-Najaran M (2012) Maximum satisfiability: Anatomy of the fitness landscape for a hard combinatorial optimization problem. IEEE Trans Evol Comput 16(3):319–338. https://doi.org/10.1109/TEVC.2011.2163638

    Article  Google Scholar 

  46. 46.

    Ragalo AW, Pillay N (2018) Evolving dynamic fitness measures for genetic programming. Expert Syst Appl 109:162–187

    Article  Google Scholar 

  47. 47.

    Rousseeuw PJ (1987) Silhouettes: A graphical aid to the interpretation and validation of cluster analysis. J Comput Appl Math 20:53–65

    Article  Google Scholar 

  48. 48.

    Salgotra R, Gandomi M, Gandomi AH (2020) Time series analysis and forecast of the covid-19 pandemic in india using genetic programming. Chaos Solitons Fractals 138:109945

    MathSciNet  Article  Google Scholar 

  49. 49.

    Tayarani-N. M, Prugel-Bennett A (2014) On the landscape of combinatorial optimization problems. IEEE Trans Evol Comput 18(3):420–434. https://doi.org/10.1109/TEVC.2013.2281502

    Article  Google Scholar 

  50. 50.

    Uy N, Chu TH (2020) Semantic approximation for reducing code bloat in genetic programming. Swarm Evol Comput 58:100729

    Article  Google Scholar 

  51. 51.

    Ventura S, Luna JM (2016) Pattern mining with evolutionary algorithms. Springer International Publishing

  52. 52.

    Vassilev VK, Fogarty TC, Miller JF (2000) Information characteristics and the structure of landscapes. Evol Comput 8:31–60

    Article  Google Scholar 

  53. 53.

    Weinberger E (1990) Correlated and uncorrelated fitness landscapes and how to tell the difference. Biol Cybern 63(5):325–336

    Article  Google Scholar 

  54. 54.

    Wright S (1932) The Roles of Mutation, Inbreeding, Crossbreeding and Selection in Evolution. Proceedings of the Sixth International Congress on Genetics, pp 365–366

  55. 55.

    Zou J, Yuan J (2020) Single-machine scheduling with maintenance activities and rejection. Discret Optim 38:100609

    MathSciNet  Article  Google Scholar 

  56. 56.

    Zupanćić J, Filipić B, Gams M (2020) Genetic-programming-based multi-objective optimization of strategies for home energy-management systems. Energy 203:117769. https://doi.org/10.1016/j.energy.2020.117769. https://www.sciencedirect.com/science/article/pii/S0360544220308768

    Article  Google Scholar 

Download references

Funding

This work has been partially supported by the Croatian Science Fundation under the project IP-2019-04-4333, which is titled Hyperheuristic Design of Dispatching Rules.

Author information

Affiliations

Authors

Corresponding author

Correspondence to Rebeka Čorić.

Ethics declarations

Conflicts of Interest/Competing Interests

The authors declare that they have no conflict of interest.

Code availability

Available on request.

Additional information

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Čorić, R., Ðumić, M. & Jakobović, D. Genetic programming hyperheuristic parameter configuration using fitness landscape analysis. Appl Intell (2021). https://doi.org/10.1007/s10489-021-02227-3

Download citation

Keywords

  • Fitness landscape analysis
  • Genetic programming
  • Scheduling
  • Tree operators
  • Clustering
  • Parameter configuration