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.














Similar content being viewed by others
Explore related subjects
Discover the latest articles and news from researchers in related subjects, suggested using machine learning.Notes
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.
References
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)
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)
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)
C.A. Brewer, Color use guidelines for data representation, in Proceedings of the Section on Statistical Graphics, pp. 55–60. American Statistical Association (1999)
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
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)
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
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)
M. Castelli, S. Silva, L. Vanneschi, A C++ framework for geometric semantic genetic programming. Genet. Program. Evolvable Mach. 16(1), 73–81 (2015)
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)
T.D. Collins, Applying software visualization technology to support the use of evolutionary algorithms. J. Vis. Lang. Comput. 14(2), 123–150 (2003)
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)
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)
K.A. De Jong, Evolutionary Computation: A Unified Approach (MIT Press, Cambridge, 2006)
J. Drchal, M. Šnorek, Diversity visualization in evolutionary algorithms, in Proceedings of 41th Spring International Conference, MOSIS’07, pp. 77–84. Ostrava: MARQ (2007)
A.E. Eiben, J.E. Smith, Introduction to Evolutionary Computing, vol. 53 (Springer, Berlin, 2003)
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
E. Hart, P. Ross, GAVEL—a new tool for genetic algorithm visualization. IEEE Trans. Evol. Comput. 5(4), 335–348 (2001)
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)
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)
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)
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)
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)
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)
J.R. Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection, vol. 1 (MIT Press, Cambridge, 1992)
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)
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)
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)
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)
M. Mach, Z. Zetakova, Visualising Genetic Algorithms: A Way Through the Labyrinth of Search Space (IOS Press, Amsterdam, 2002), pp. 279–285
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)
N.F. McPhee, R. Poli, W.B. Langdon, Field Guide to Genetic Programming. http://lulu.com (2008)
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)
E. Medvet, Hierarchical grammatical evolution, in Companion Material Proceedings of the Genetic and Evolutionary Computation Conference, GECCO ’17, pp. 249–250. ACM (2017)
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)
J.F. Miller, S.L. Smith, Redundancy and computational efficiency in Cartesian genetic programming. IEEE Trans. Evol. Comput. 10(2), 167–174 (2006)
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)
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)
T. Munzner, Visualization Analysis and Design (CRC Press, Boca Raton, 2014)
M. O’Neill, C. Ryan, Grammatical evolution by grammatical evolution: the evolution of grammar and genetic code, in Genetic Programming, pp. 138–149 (2004)
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)
L. Pagie, P. Hogeweg, Evolutionary consequences of coevolving targets. Evol. Comput. 5(4), 401–418 (1997)
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)
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)
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)
D. Rajanen (Marghescu), Evaluating multidimensional visualization techniques in data mining tasks (2018)
F. Rothlauf, Representations for genetic and evolutionary algorithms, in Representations for Genetic and Evolutionary Algorithms, pp. 9–32. Springer, Berlin (2006)
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)
K. Sastry, D.E. Goldberg, Probabilistic model building and competent genetic programming. Genet. Program. Ser. 6, 205–220 (2003)
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)
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)
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)
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)
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)
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)
K.O. Stanley, R. Miikkulainen, Evolving neural networks through augmenting topologies. Evol. Comput. 10(2), 99–127 (2002)
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)
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)
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)
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)
Z. Tóth, A graphical user interface for evolutionary algorithms. Acta Cybern. 16(2), 337–365 (2003)
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)
T. Ulrich, Pareto-set analysis: biobjective clustering in decision and objective spaces. J. Multi-Criteria Decis. Anal. 20(5–6), 217–234 (2013)
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)
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)
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)
L. Vanneschi, M. Castelli, S. Silva, A survey of semantic methods in genetic programming. Genet. Program. Evol. Mach. 15(2), 195–214 (2014)
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)
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)
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)
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)
I.C. Yeh, Simulation of concrete slump using neural networks. Proc. Inst. Civ. Eng. Constr. Mater. 162(1), 11–18 (2009)
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
Authors and Affiliations
Corresponding author
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.
Rights and permissions
About this article
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
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10710-018-9332-5