Unveiling evolutionary algorithm representation with DU maps

Abstract

Evolutionary algorithms (EAs) have proven to be effective in tackling problems in many different domains. However, users are often required to spend a significant amount of effort in fine-tuning the EA parameters in order to make the algorithm work. In principle, visualization tools may be of great help in this laborious task, but current visualization tools are either EA-specific, and hence hardly available to all users, or too general to convey detailed information. In this work, we study the Diversity and Usage map (DU map), a compact visualization for analyzing a key component of every EA, the representation of solutions. In a single heat map, the DU map visualizes for entire runs how diverse the genotype is across the population and to which degree each gene in the genotype contributes to the solution. We demonstrate the generality of the DU map concept by applying it to six EAs that use different representations (bit and integer strings, trees, ensembles of trees, and neural networks). We present the results of an online user study about the usability of the DU map which confirm the suitability of the proposed tool and provide important insights on our design choices. By providing a visualization tool that can be easily tailored by specifying the diversity (D) and usage (U) functions, the DU map aims at being a powerful analysis tool for EAs practitioners, making EAs more transparent and hence lowering the barrier for their use.

This is a preview of subscription content, log in to check access.

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

Notes

  1. 1.

    For readability, we use the terms “black”, “yellow”, ”white”, and “blue” for the four colors at the corners of the color legend (see Fig. 2) corresponding to, respectively, low diversity and low usage, low diversity and high usage, high diversity and high usage, and high diversity and low usage.

  2. 2.

    http://www.genetic-programming.org/gpmailinglist.html.

  3. 3.

    http://machinelearning.inginf.units.it/data-and-tools/unveiling-evolutionary-algorithm-representation-with-du-maps.

References

  1. 1.

    H.B. Amor, A. Rettinger, Intelligent exploration for genetic algorithms: using self-organizing maps in evolutionary computation, in Companion Material Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’05, pp. 1531–1538. ACM (2005)

  2. 2.

    A. Bangor, P. Kortum, J. Miller, Determining what individual sus scores mean: adding an adjective rating scale. J. Usability Stud. 4(3), 114–123 (2009)

    Google Scholar 

  3. 3.

    M. Barlow, J. Galloway, H.A. Abbass, Mining evolution through visualization, in Workshop Proceedings of the Eighth International Conference on Artificial Life, Alife VIII, pp. 103–110. MIT Press (2002)

  4. 4.

    C.A. Brewer, Color use guidelines for data representation, in Proceedings of the Section on Statistical Graphics, pp. 55–60. American Statistical Association (1999)

  5. 5.

    J. Brooke, SUS—a quick and dirty usability scale, in Usability Evaluation in Industry, vol. 189(194), ed. by P.W. Jordan, B. Thomas, I.L. McClelland, B. Weerdmeester (CRC Press, Boca Raton, 1996), pp. 4–7

    Google Scholar 

  6. 6.

    T.F. Brooks, D.S. Pope, M.A. Marcolini, Airfoil self-noise and prediction. Technical report NASA RP-1218, National Aeronautics and Space Administration (1989)

  7. 7.

    T.F. Burgess, Guide to the design of questionnaires. A general introduction to the design of questionnaires for survey research (University of Leeds, Leeds, 2001), pp. 1–27

    Google Scholar 

  8. 8.

    B. Burlacu, M. Affenzeller, M. Kommenda, S.M. Winkler, G. Kronberger, Visualization of genetic lineages and inheritance information in genetic programming, in Companion Material Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’13, pp. 1351–1358. ACM (2013)

  9. 9.

    M. Castelli, S. Silva, L. Vanneschi, A C++ framework for geometric semantic genetic programming. Genet. Program. Evolvable Mach. 16(1), 73–81 (2015)

    Article  Google Scholar 

  10. 10.

    M. Castelli, L. Vanneschi, S. Silva, Prediction of high performance concrete strength using genetic programming with geometric semantic genetic operators. Exp. Syst. Appl. 40(17), 6856–6862 (2013)

    Article  Google Scholar 

  11. 11.

    T.D. Collins, Applying software visualization technology to support the use of evolutionary algorithms. J. Vis. Lang. Comput. 14(2), 123–150 (2003)

    Article  Google Scholar 

  12. 12.

    A. Cruz, P. Machado, F. Assunção, A. Leitão, ELICIT: Evolutionary computation visualization, in Companion Material Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’15, pp. 949–956. ACM (2015)

  13. 13.

    J.M. Daida, A.M. Hilss, D.J. Ward, S.L. Long, Visualizing tree structures in genetic programming. Genet. Program. Evolvable Mach. 6(1), 79–110 (2005)

    Article  MATH  Google Scholar 

  14. 14.

    K.A. De Jong, Evolutionary Computation: A Unified Approach (MIT Press, Cambridge, 2006)

    Google Scholar 

  15. 15.

    J. Drchal, M. Šnorek, Diversity visualization in evolutionary algorithms, in Proceedings of 41th Spring International Conference, MOSIS’07, pp. 77–84. Ostrava: MARQ (2007)

  16. 16.

    A.E. Eiben, J.E. Smith, Introduction to Evolutionary Computing, vol. 53 (Springer, Berlin, 2003)

    Google Scholar 

  17. 17.

    D. Floreano, P. Husbands, S. Nolfi, Evolutionary robotics, in Springer Handbook of Robotics, ed. by B. Siciliano, O. Khatib (Springer, Berlin, 2008), pp. 1423–1451

    Google Scholar 

  18. 18.

    E. Hart, P. Ross, GAVEL—a new tool for genetic algorithm visualization. IEEE Trans. Evol. Comput. 5(4), 335–348 (2001)

    Article  Google Scholar 

  19. 19.

    S. Ito, Y. Mitsukura, H.N. Miyamura, T. Saito, M. Fukumi, A visualization of genetic algorithm using the pseudo-color, in Revised Selected Papers from the 14th International Conference on Neural Information Processing, ICONIP 2007, Lecture Notes in Computer Science, vol. 4985, pp. 444–452. Springer (2007)

  20. 20.

    G. Jornod, E.D. Mario, I. Navarro, A. Martinoli, SwarmViz: An open-source visualization tool for particle swarm optimization, in Congress on Evolutionary Computation, CEC 2015, pp. 179–186. IEEE (2015)

  21. 21.

    E. Keedwell, M.B. Johns, D.A. Savic, Spatial and temporal visualisation of evolutionary algorithm decisions in water distribution network optimisation, in Companion Material Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’15, pp. 941–948. ACM (2015)

  22. 22.

    A. Kerren, T. Egger, EAVis: a visualization tool for evolutionary algorithms, in 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2005), pp. 299–301. IEEE (2005)

  23. 23.

    N. Khemka, C. Jacob, VISPLORE: a toolkit to explore particle swarms by visual inspection, in Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’09, pp. 41–48. ACM (2009)

  24. 24.

    Y. Kim, K.H. Lee, Y. Yoon, Visualizing the search process of particle swarm optimization, in Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’09, pp. 49–56. ACM (2009)

  25. 25.

    J.R. Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection, vol. 1 (MIT Press, Cambridge, 1992)

    Google Scholar 

  26. 26.

    W.B. Langdon, Long-term evolution of genetic programming populations, in Companion Material Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’17, pp. 235–236. ACM (2017)

  27. 27.

    S.H. Liu, M. Črepinšek, M. Mernik, Analysis of VEGA and SPEA2 using exploration and exploitation measures, in Proceedings of the 5th International Conference on Bioinspired Optimization Methods and their Applications, BIOMA 2012, pp. 97–108. Jožef Stefan Institute (2012)

  28. 28.

    N. Lourenço, F.B. Pereira, E. Costa, Sge: A structured representation for grammatical evolution, in Revised Selected Papers from the International Conference on Artificial Evolution (Evolution Artificielle), EA 2015, Lecture Notes in Computer Science, vol. 9554, pp. 136–148. Springer (2015)

  29. 29.

    E. Lutton, J. Foucquier, N. Perrot, J. Louchet, J. Fekete, Visual analysis of population scatterplots, in Revised Selected Papers from the 10th International Conference on Artificial Evolution (Evolution Artificielle), EA 2011, Lecture Notes in Computer Science, vol. 7401, pp. 61–72. Springer (2011)

  30. 30.

    M. Mach, Z. Zetakova, Visualising Genetic Algorithms: A Way Through the Labyrinth of Search Space (IOS Press, Amsterdam, 2002), pp. 279–285

    Google Scholar 

  31. 31.

    N.F. McPhee, M.M. Casale, M. Finzel, T. Helmuth, L. Spector, Visualizing genetic programming ancestries, in Companion Material Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’16, pp. 1419–1426. ACM (2016)

  32. 32.

    N.F. McPhee, R. Poli, W.B. Langdon, Field Guide to Genetic Programming. http://lulu.com (2008)

  33. 33.

    E. Medvet, A comparative analysis of dynamic locality and redundancy in grammatical evolution, in Proceedings of the 20th European Conference, EuroGP 2017, pp. 326–342. Springer (2017)

  34. 34.

    E. Medvet, Hierarchical grammatical evolution, in Companion Material Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’17, pp. 249–250. ACM (2017)

  35. 35.

    E. Medvet, T. Tušar, The DU map: a visualization to gain insights into genotype-phenotype mapping and diversity, in Companion Material Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’17, pp. 1705–1712. ACM (2017)

  36. 36.

    J.F. Miller, S.L. Smith, Redundancy and computational efficiency in Cartesian genetic programming. IEEE Trans. Evol. Comput. 10(2), 167–174 (2006)

    Article  Google Scholar 

  37. 37.

    A. Moraglio, K. Krawiec, C. Johnson, Geometric semantic genetic programming, in Proceedings of the International Congress on Parallel Problem Solving from Nature, PPSN XII, Lecture Notes in Computer Science, vol. 7491, pp. 21–31. Springer (2012)

  38. 38.

    M.M. Mourshed, S. Shikder, A.D.F. Price, Phi-array: a novel method for fitness visualization and decision making in evolutionary design optimization. Adv. Eng. Inf. 25(4), 676–687 (2011)

    Article  Google Scholar 

  39. 39.

    T. Munzner, Visualization Analysis and Design (CRC Press, Boca Raton, 2014)

    Google Scholar 

  40. 40.

    M. O’Neill, C. Ryan, Grammatical evolution by grammatical evolution: the evolution of grammar and genetic code, in Genetic Programming, pp. 138–149 (2004)

  41. 41.

    I. Ortigosa, R. Lopez, J. Garcia, A neural networks approach to residuary resistance of sailing yachts prediction, in Proceedings of the International Conference on Computational Methods in Marine Engineering, MARINE 2007, vol. 2007, p. 250 (2007)

  42. 42.

    L. Pagie, P. Hogeweg, Evolutionary consequences of coevolving targets. Evol. Comput. 5(4), 401–418 (1997)

    Article  Google Scholar 

  43. 43.

    K.E. Parsopoulos, V.C. Georgopoulos, M.N. Vrahatis, A technique for the visualization of population-based algorithms, in Proceedings of the Congress on Evolutionary Computation, CEC 2008, pp. 1694–1701. IEEE (2008)

  44. 44.

    H. Pohlheim, Multidimensional scaling for evolutionary algorithms—visualization of the path through search space and solution space using Sammon mapping. Artif. Life 12(2), 203–209 (2006)

    Google Scholar 

  45. 45.

    H. Pohlheim, Understanding the course and state of evolutionary optimizations using visualization: ten years of industry experience with evolutionary algorithms. Artif. Life 12(2), 217–227 (2006)

    Article  Google Scholar 

  46. 46.

    D. Rajanen (Marghescu), Evaluating multidimensional visualization techniques in data mining tasks (2018)

  47. 47.

    F. Rothlauf, Representations for genetic and evolutionary algorithms, in Representations for Genetic and Evolutionary Algorithms, pp. 9–32. Springer, Berlin (2006)

  48. 48.

    C. Ryan, J. Collins, M. O’Neill, Grammatical evolution: Evolving programs for an arbitrary language, in Proceedings of the First European Workshop on Genetic Programming, EuroGP’98, Lecture Notes in Computer Science, vol. 1391, pp. 83–96. Springer (1998)

  49. 49.

    K. Sastry, D.E. Goldberg, Probabilistic model building and competent genetic programming. Genet. Program. Ser. 6, 205–220 (2003)

    Google Scholar 

  50. 50.

    L. Sekanina, V. Kapusta, Visualisation and analysis of genetic records produced by Cartesian genetic programming, in Companion Material Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’16, pp. 1411–1418. ACM (2016)

  51. 51.

    W.B. Shine, C.F. Eick, Visualizing the evolution of genetic algorithm search processes, in International Conference on Evolutionary Computation, pp. 367–372. IEEE (1997)

  52. 52.

    F. Silva, P. Urbano, L. Correia, A.L. Christensen, odNEAT: an algorithm for decentralised online evolution of robotic controllers. Evol. Comput. 23(3), 421–449 (2015)

    Article  Google Scholar 

  53. 53.

    L. Spector, Introduction to the peer commentary special section on “On the mapping of genotype to phenotype in evolutionary algorithms” by Peter A. Whigham, Grant Dick, and James Maclaurin. Genet. Program. Evol. Mach. 18(3), 351–352 (2017)

    Article  Google Scholar 

  54. 54.

    G. Squillero, A. Tonda, Divergence of character and premature convergence: a survey of methodologies for promoting diversity in evolutionary optimization. Inf. Sci. 329, 782–799 (2016)

    Article  Google Scholar 

  55. 55.

    K.O. Stanley, D.B. D’Ambrosio, J. Gauci, A hypercube-based encoding for evolving large-scale neural networks. Artif. Life 15(2), 185–212 (2009)

    Article  Google Scholar 

  56. 56.

    K.O. Stanley, R. Miikkulainen, Evolving neural networks through augmenting topologies. Evol. Comput. 10(2), 99–127 (2002)

    Article  Google Scholar 

  57. 57.

    J. Talamini, G. Scaini, E. Medvet, A. Bartoli, Selfish vs. global behavior promotion in car controller evolution, in Proceedings of the Genetic and Evolutionary Computation Conference Companion (2018)

  58. 58.

    D. Thierens, P.A. Bosman, Optimal mixing evolutionary algorithms, in Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation, GECCO ’11, pp. 617–624. ACM, New York, NY, USA (2011)

  59. 59.

    D. Thierens, P.A.N. Bosman, Hierarchical problem solving with the linkage tree genetic algorithm, in Proceedings of the 15th Annual Conference on Genetic and Evolutionary Computation, pp. 877–884. ACM (2013)

  60. 60.

    A. Thorhauer, On the non-uniform redundancy in grammatical evolution, in Proceedings of the International Conference on Parallel Problem Solving from Nature, PPSN XIV, Lecture Notes in Computer Science, vol. 9921, pp. 292–302. Springer (2016)

  61. 61.

    Z. Tóth, A graphical user interface for evolutionary algorithms. Acta Cybern. 16(2), 337–365 (2003)

    MATH  Google Scholar 

  62. 62.

    T. Tušar, B. Filipič, Visualization of Pareto front approximations in evolutionary multiobjective optimization: a critical review and the prosection method. IEEE Trans. Evol. Comput. 19(2), 225–245 (2015)

    Article  Google Scholar 

  63. 63.

    T. Ulrich, Pareto-set analysis: biobjective clustering in decision and objective spaces. J. Multi-Criteria Decis. Anal. 20(5–6), 217–234 (2013)

    Article  Google Scholar 

  64. 64.

    N.Q. Uy, N.X. Hoai, M. O’Neill, R.I. McKay, E. Galván-López, Semantically-based crossover in genetic programming: application to real-valued symbolic regression. Genet. Program. Evol. Mach. 12(2), 91–119 (2011)

    Article  Google Scholar 

  65. 65.

    L. Vanneschi, M. Castelli, L. Manzoni, The k landscapes: a tunably difficult benchmark for genetic programming, in Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’11, pp. 1467–1474. ACM (2011)

  66. 66.

    L. Vanneschi, M. Castelli, L. Manzoni, S. Silva, A new implementation of geometric semantic GP and its application to problems in pharmacokinetics, in Proceedings of the 16th European Conference on Genetic Programming, EuroGP 2013, Lecture Notes in Computer Science, vol. 7831, pp. 205–216. Springer (2013)

  67. 67.

    L. Vanneschi, M. Castelli, S. Silva, A survey of semantic methods in genetic programming. Genet. Program. Evol. Mach. 15(2), 195–214 (2014)

    Article  Google Scholar 

  68. 68.

    M. Virgolin, T. Alderliesten, C. Witteveen, P.A.N. Bosman, Scalable genetic programming by gene-pool optimal mixing and input-space entropy-based building-block learning, in Proceedings of the Genetic and Evolutionary Computation Conference, pp. 1041–1048. ACM (2017)

  69. 69.

    J.A. Walker, J.F. Miller, The automatic acquisition, evolution and reuse of modules in Cartesian genetic programming. IEEE Trans. Evol. Comput. 12(4), 397–417 (2008)

    Article  Google Scholar 

  70. 70.

    P.A. Whigham, G. Dick, J. Maclaurin, On the mapping of genotype to phenotype in evolutionary algorithms. Genet. Program. Evol. Mach. 18, 1–9 (2017)

    Article  Google Scholar 

  71. 71.

    A.S. Wu, K.A. De Jong, D.S. Burke, J.J. Grefenstette, C.L. Ramsey, Visual analysis of evolutionary algorithms, in Proceedings of the 1999 Congress on Evolutionary Computation, CEC 1999, vol. 2, pp. 1419–1425. IEEE (1999)

  72. 72.

    I.C. Yeh, Simulation of concrete slump using neural networks. Proc. Inst. Civ. Eng. Constr. Mater. 162(1), 11–18 (2009)

    Article  Google Scholar 

Download references

Acknowledgements

This work is part of a project that has received funding from the European Union’s Horizon 2020 research and innovation program under Grant Agreement No. 692286. This work was also financed through the Regional Operational Programme CENTRO2020 within the scope of the Project CENTRO-01-0145-FEDER-000006. Marco Virgolin received financial support from the Kinderen Kankervrij foundation (Project No. 187).

Author information

Affiliations

Authors

Corresponding author

Correspondence to Eric Medvet.

Additional information

Publisher's Note

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

Electronic supplementary material

Below is the link to the electronic supplementary material.

Supplementary material 1 (pdf 1685 KB)

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Medvet, E., Virgolin, M., Castelli, M. et al. Unveiling evolutionary algorithm representation with DU maps. Genet Program Evolvable Mach 19, 351–389 (2018). https://doi.org/10.1007/s10710-018-9332-5

Download citation

Keywords

  • Representation
  • Diversity
  • Usage
  • GE
  • WHGE
  • SGE
  • GSGP
  • GOMEA
  • NEAT
  • Visualization
  • Heat maps