List of Tutorials

Introductory Tutorials

A Practical Guide to Experimentation
  • Nikolaus Hansen INRIA Saclay, France
Constraint-Handling Techniques used with Evolutionary Algorithms
  • Carlos Artemio Coello CINVESTAV-IPN, Mexico
Evolution of Neural Networks
  • Risto Miikkulainen University of Texas at Austin
Evolutionary Computation: A Unified Approach
  • Kenneth A. De Jong George Mason University, Fairfax, VA
NEW Evolutionary Many-Objective Optimization
  • Hisao Ishibuchi Southern University of Science and Technology
  • Hiroyuki Sato The University of Electro-Communications, Tokyo
Evolutionary Multiobjective Optimization
  • Dimo Brockhoff Inria Saclay - Ile-de-France and CMAP, Ecole Polytechnique, France
Evolutionary Robotics
  • Nicolas Bredeche Université Pierre et Marie Curie
  • Stéphane Doncieux Sorbonne Université
  • Jean-Baptiste Mouret Inria
  • Daniel R. Tauritz Missouri University of Science and Technology
Introduction to Genetic Programming
  • Una-May O'Reilly Massachusetts Institute of Technology, US
  • Erik Hemberg MIT, CSAIL
NEW Learning Classifier Systems: From Principles to Modern Systems
  • Anthony Stein University of Augsburg, Germany
Model-Based Evolutionary Algorithms
  • Dirk Thierens Utrecht University, The Netherlands
  • Peter A.N. Bosman Centre for Mathematics and Computer Science, The Netherlands
Neuroevolution for Deep Reinforcement Learning Problems
  • David Ha Google Brain
Representations for Evolutionary Algorithms
  • Franz Rothlauf Johannes Gutenberg-Universtität Mainz
Runtime Analysis of Evolutionary Algorithms: Basic Introduction
  • Per Kristian Lehre University of Birmingham, UK
  • Pietro S. Oliveto University of Sheffield, UK
Theory for Non-Theoreticians
  • Benjamin Doerr Ecole Polytechnique

Advanced Tutorials

CMA-ES and Advanced Adaptation Mechanisms
  • Youhei Akimoto University of Tsukuba, Japan
  • Nikolaus Hansen INRIA Saclay, France
Decomposition Multi-Objective Optimization: Current Developments and Future Opportunities
  • Ke Li University of Exeter, UK
  • Qingfu Zhang City University of Hong-Kong
Dynamic Parameter Choices in Evolutionary Computation
  • Carola Doerr CNRS & Sorbonne University, Paris, France
Evolutionary Computation for Digital Art
  • Frank Neumann University of Adelaide, Australia
  • Aneta Neumann University of Adelaide
Next Generation Genetic Algorithms
  • Darrell Whitley Colorado State University, USA
NEW Recent Advances in Fitness Landscape Analysis
  • Gabriela Ochoa University of Stirling, UK
  • Katherine Malan University of South Africa
NEW Recent Advances in Particle Swarm Optimization Analysis and Understanding
  • Andries Engelbrecht University Of Pretoria, South Africa
  • Christopher Cleghorn University of Pretoria, South Africa
NEW Semantic Genetic Programming
  • Alberto Moraglio University of Exeter, UK
  • Krzysztof Krawiec Poznan University of Technology, Poland
Sequential Experimentation by Evolutionary Algorithms
  • Ofer Shir Tel-Hai College
  • Thomas Bäck Leiden Institute of Advanced Computer Science
Simulation Optimization
  • Jürgen Branke Warwick Business School
Solving Complex Problems with Coevolutionary Algorithms
  • Krzysztof Krawiec Poznan University of Technology, Poland
  • Malcolm Heywood Dalhousie University
Visualization in Multiobjective Optimization
  • Bogdan Filipic Jozef Stefan Institute, Ljubljana, Slovenia
  • Tea Tušar Jožef Stefan Institute, Ljubljana, Slovenia

Specialized Tutorials

NEW Concurrency in evolutionary algorithms
  • JJ Merelo CITIC U. Granada
NEW Creative Evolutionary Computation
  • Antonios Liapis Institute of Digital Games, The University of Malta
  • Georgios N. Yannakakis The University of Malta
Evolutionary Computation and Evolutionary Deep Learning for Image Analysis, Signal Processing and Pattern Recognition
  • Mengjie Zhang Victoria University of Wellington
  • Stefano Cagnoni Universita' degli Studi di Parma, Italy
NEW Exploratory Landscape Analysis
  • Pascal Kerschke University of Muenster
  • Mike Preuss WWU Münster
  • Lee Spector Hampshire College, USA
  • Nic McPhee University of Minnesota
Theory of Estimation-of-Distribution Algorithms
  • Carsten Witt Technical University of Denmark

Introductory Tutorials

A Practical Guide to Experimentation

Many evolutionary algorithms, in particular those we use in practice, and many if not most relevant optimization problems, are not amenable to comprehensive theoretical analysis. For this reason, experimentation plays a central role in evolutionary computation and comes in three main flavours:

  • explorative experiments
  • systematic experimentation
  • real-world problem solving

Explorative experiments serve to investigate, to improve, or to improve our understanding of algorithms. Systematic experimentation serves for the assessment of performance of algorithms and benchmarking. In this tutorial, we cover the first two flavours of experimentation which are somewhat complementary in their objectives and, to some extend, in their approach, but we also touch upon the third.

The tutorial emphasises on ways to make experimentation as effective and valuable as possible and on preventing common pitfalls. Attendees will learn how to make quick yet meaningful experiments, how to present, analyse and interpret experimental results and to measurement performance. We introduce run-length distributions (data profiles), performance profiles, scale-up studies, and connect success probabilities with restarts. Furthermore, the number of trials, the role of invariance, statistical significance, and the most common mistakes when conducting experimental studies are touched upon.

Nikolaus Hansen

Nikolaus Hansen is a research scientist at INRIA, France. Educated in medicine and mathematics, he received a Ph.D. in civil engineering in 1998 from the Technical University Berlin under Ingo Rechenberg. Before he joined INRIA, he has been working in evolutionary computation, genomics and computational science at the Technical University Berlin, the InGene Institute of Genetic Medicine and the ETH Zurich. His main research interests are learning and adaptation in evolutionary computation and the development of algorithms applicable in practice. His best-known contribution to the field of evolutionary computation is the so-called Covariance Matrix Adaptation (CMA).

Constraint-Handling Techniques used with Evolutionary Algorithms

Evolutionary Algorithms (EAs), when used for global optimization, can be seen as unconstrained optimization techniques. Therefore, they require an additional mechanism to incorporate constraints of any kind (i.e., inequality, equality, linear, nonlinear) into their fitness function. Although the use of penalty functions (very popular with mathematical programming techniques) may seem an obvious choice, this sort of approach requires a careful fine tuning of the penalty factors to be used. Otherwise, an EA may be unable to reach the feasible region (if the penalty is too low) or may reach quickly the feasible region but being unable to locate solutions that lie in the boundary with the infeasible region (if the penalty is too severe). This has motivated the development of a number of approaches to incorporate constraints into the fitness function of an EA. This tutorial will cover the main proposals in current use, including novel approaches such as the use of tournament rules based on feasibility, multiobjective optimization concepts, hybrids with mathematical programming techniques (e.g., Lagrange multipliers), cultural algorithms, and artificial immune systems, among others. Other topics such as the importance of maintaining diversity, current benchmarks and the use of alternative search engines (e.g., particle swarm optimization, differential evolution, evolution strategies, etc.) will be also discussed (as time allows).

Carlos Artemio Coello

Carlos Artemio Coello received a BSc in Civil Engineering from the Universidad Autonoma de Chiapas in Mexico in 1991 (graduating Summa Cum Laude). Then, he was awarded a scholarship from the Mexican government to pursue graduate studies in Computer Science at Tulane University (in the USA). He received a MSc and a PhD in Computer Science in 1993 and 1996, respectively. Dr. Coello has been a Senior Research Fellow in the Plymouth Engineering Design Centre (in England) and a Visiting Professor at DePauw University (in the USA). He is currently full professor at CINVESTAV-IPN in Mexico City, Mexico. He has published over 390 papers in international peer-reviewed journals, book chapters, and conferences. He has also co-authored the book "Evolutionary Algorithms for Solving Multi-Objective Problems", which is now in its Second Edition (Springer, 2007) and has co-edited the book "Applications of Multi-Objective Evolutionary Algorithms" (World Scientific, 2004). His publications currently report over 23,600 citations, according to Google Scholar (his h-index is 61). He has delivered invited talks, keynote speeches and tutorials at international conferences held in Spain, USA, Canada, Switzerland, UK, Chile, Colombia, Brazil, Argentina, China, India, Uruguay and Mexico. Dr. Coello has served as a technical reviewer for over 50 international journals and for more than 100 international conferences and actually serves as associate editor of the journals "Evolutionary Computation", "IEEE Transactions on Evolutionary Computation", "Computational Optimization and Applications", "Applied Soft Computing", and "Pattern Analysis and Applications". He is also a member of the editorial board of "Engineering Optimization". He received the 2007 National Research Award (granted by the Mexican Academy of Science) in the area of "exact sciences" and, since January 2011, he is an IEEE Fellow for "contributions to multi-objective optimization and constraint-handling techniques." He is also the recipient of the prestigious "2013 IEEE Kiyo Tomiyasu Award" and of the "2012 National Medal of Science and Arts" in the area of "Physical, Mathematical and Natural Sciences" (this is the highest award that a scientist can receive in Mexico). His current research interests are: evolutionary multiobjective optimization and constraint-handling techniques for evolutionary algorithms.

Evolution of Neural Networks

Evolution of artificial neural networks has recently emerged as a powerful technique in two areas. First, while the standard value-function based reinforcement learning works well when the environment is fully observable, neuroevolution makes it possible to disambiguate hidden state through memory. Such memory makes new applications possible in areas such as robotic control, game playing, and artificial life. Second, deep learning performance depends crucially on the network architecture and hyperparameters. While many such architectures are too complex to be optimized by hand, neuroevolution can be used to do so automatically. Such evolutionary AutoML can be used to achieve good deep learning performance even with limited resources, or state-of-the art performance with more effort. It is also possible to optimize other aspects of the architecture, like its size, speed, or fit with hardware. In this tutorial, I will review (1) neuroevolution methods that evolve fixed-topology networks, network topologies, and network construction processes, (2) methods for neural architecture search and evolutionary AutoML, and (3) applications of these techniques in control, robotics, artificial life, games, image processing, and language.

Risto Miikkulainen

Risto Miikkulainen is a Professor of Computer Science at the University of Texas at Austin and a Fellow at Sentient Technologies, Inc. He received an M.S. in Engineering from the Helsinki University of Technology, Finland, in 1986, and a Ph.D. in Computer Science from UCLA in 1990. His recent research focuses on methods and applications of neuroevolution, as well as neural network models of natural language processing, and self-organization of the visual cortex; he is an author of over 370 articles in these research areas. He is an IEEE Fellow, member of the Board of Governors of the Neural Network Society, and an action editor of Cognitive Systems Research and IEEE Transactions on Computational Intelligence and AI in Games.

Evolutionary Computation: A Unified Approach

The field of Evolutionary Computation has experienced tremendous growth over the past 20 years, resulting in a wide variety of evolutionary algorithms and applications. The result poses an interesting dilemma for many practitioners in the sense that, with such a wide variety of algorithms and approaches, it is often hard to see the relationships between them, assess strengths and weaknesses, and make good choices for new application areas. This tutorial is intended to give an overview of a general EC framework that can help compare and contrast approaches, encourages crossbreeding, and facilitates intelligent design choices. The use of this framework is then illustrated by showing how traditional EAs can be compared and contrasted with it, and how new EAs can be effectively designed using it. Finally, the framework is used to identify some important open issues that need further research.

Kenneth A. De Jong

Kenneth A. De Jong is a senior and well-known researcher in the EC community with a rich and diverse research profile. De Jong's research interests include genetic algorithms, evolutionary computation, machine learning, and adaptive systems. He is currently involved in research projects involving the development of new evolutionary algorithm (EA) theory, the use of EAs as heuristics for NP-hard problems, and the application of EAs to the problem of learning task programs in domains such as robotics, diagnostics, navigation and game playing. Support for these projects is provided by NSF, DARPA, ONR, and NRL. He is an active member of the Evolutionary Computation research community and has been involved in organizing many of the workshops and conferences in this area. He is the founding editor-in-chief of the journal Evolutionary Computation (MIT Press), and a member of the board of ACM SIGEVO.

NEW Evolutionary Many-Objective Optimization

The goal of the proposed tutorial is clearly explaining difficulties of evolutionary many-objective optimization, approaches to the handling of those difficulties, and promising future research directions. Evolutionary multi-objective optimization (EMO) has been a very active research area in the field of evolutionary computation in the last two decades. In the EMO area, the hottest research topic is evolutionary many-objective optimization. The difference between multi-objective and many-objective optimization is simply the number of objectives. Multi-objective problems with four or more objectives are usually referred to as many-objective problems. It sounds that there exists no significant difference between three-objective and four-objective problems. However, the increase in the number of objectives significantly makes multi-objective problem difficult. In the first part (Part I: Difficulties), we clearly explain not only frequently-discussed well-known difficulties such as the weakening selection pressure towards the Pareto front and the exponential increase in the number of solutions for approximating the entire Pareto front but also other hidden difficulties such as the deterioration of the usefulness of crossover and the difficulty of performance evaluation of solution sets. The attendees of the tutorial will learn why many-objective optimization is difficult for EMO algorithms. After the clear explanations about the difficulties of many-objective optimization, we explain in the second part (Part II: Approaches and Future Directions) how to handle each difficulty. For example, we explain how to prevent the Pareto dominance relation from weakening its selection pressure and how to prevent a binary crossover operator from decreasing its search efficiently. We also explain some state-of-the-art many-objective algorithms. The attendees of the tutorial will learn some representative approaches to many-objective optimization and state-of-the-art many-objective algorithms. At the same time, the attendees will also learn that there still exist a large number of promising, interesting and important research directions in evolutionary many-objective optimization. Some promising research directions are explained in detail in the tutorial.

Hisao Ishibuchi

Hiroyuki Sato

2009- Assistant professor, Faculty of Electro-Communications, The University of Electro-Communications
2010- Assistant professor, Graduate School of Informatics and Engineering, The University of Electro-Communications
2016- Associate Professor, Graduate School of Informatics and Engineering, The University of Electro-Communications

Evolutionary Multiobjective Optimization

Many optimization problems are multiobjective in the sense that multiple, conflicting criteria need to be considered simultaneously. Due to the conflict between these objectives, usually, no single optimum solution exist. Instead, a \emph{set} of so-called Pareto-optimal solutions, for which no other solution has better function values in all objectives, does result.

In practice, Evolutionary Multiobjective Optimization (EMO) algorithms are widely used for solving these multiobjective optimization problems. Being stochastic blackbox optimizers, EMO approaches allow problems with nonlinear, nondifferentiable, or noisy objective functions to be tackled. By inherently working on sets of solutions, they allow the Pareto-optimal set to be computed or approximated in one algorithm run---opposed to classical techniques from the multicriteria decision making (MCDM) field, which aim for single solutions. Defining problems in a multiobjective way, has two further advantages:

  1. The set of (Pareto-optimal) solutions may reveal design principles shared by different solutions (innovization)
  2. Some single-objective problems become easier to solve using randomized search heuristics if additional objectives are added (multiobjectivization).

Within this tutorial, a comprehensive introduction to the EMO field will be given and selected research results will be presented in more detail. More specifically, we are going to (i) introduce the basic principles of EMO algorithms in comparison to classical solution-based approaches, (ii) show a few practical examples which motivate the use of EMO in terms of the mentioned innovization and multiobjectivization principles, and (iii) present a general overview of state-of-the-art algorithms and techniques. Moreover, we will present important recent research results in areas such as preference articulation, performance assessment, and benchmarking.

Though classified as introductory, this tutorial is intended for both novices and people familiar with EMO. Those without experience will learn about the foundations of multiobjective optimization and the basic working principles of state-of-the-art EMO algorithms. The recent results and open questions, highlighted after each chapter of the tutorial, can stimulate future research and/or discussions during the conference.

Dimo Brockhoff

Dimo Brockhoff received his diploma in computer science from University of Dortmund, Germany in 2005 and his PhD (Dr. sc. ETH) from ETH Zurich,
Switzerland in 2009. Afterwards, he held two postdoctoral research positions in France at Inria Saclay Ile-de-France (2009-2010) and at Ecole
Polytechnique (2010-2011) before joining Inria in November 2011 as a permanent researcher (first in its Lille - Nord Europe research center and since October 2016 in the Saclay - Ile-de-France center). His research interests are focused on evolutionary multiobjective optimization (EMO), in particular on theoretical aspects of indicator-based search and on the benchmarking of blackbox algorithms in general.

Evolutionary Robotics

In the same way as evolution shapes animals, is it possible to use artificial evolution to automatically design robots? This attractive vision gave birth to Evolutionary Robotics (ER), an interdisciplinary field that incorporates ideas from Biology, Robotics and Artificial Intelligence. Within the last 20 years, Evolutionary Robotics explored many research avenues, from understanding Natural Evolution thanks to ER models, to co-designing robots’ bodies and brains.
This tutorial will give an overview of the various questions addressed in ER, relying on examples from the literature. Past achievements and major contributions, as well as specific challenges in ER will be described. The tutorial will in particular focus on:

  • what is evolutionary robotics?
  • fitness function design and the influence of selection pressure; • evolution for physical robots and the reality gap;
  • evolutionary algorithms for collective and swarm robotics;
  • open questions and future challenges.

Nicolas Bredeche

Nicolas Bredeche is Professeur des Universites (Professor) at Universite Pierre et Marie Curie (UPMC, Paris, France), His research is done in the team Architectures and Models for Adaptation and Cognition, within the Institute of Intelligent Systems and Robotics (ISIR, CNRS). His field of research is mostly concerned with Evolutionary Computation and Complex Systems (self-adaptive collective robotic systems, generative and developmental systems, evolutionary robotics). In particular, part of his work is about (a) evolutionary design and/or adaptation of group of embodied agents and (b) artificial ontogeny such as multi-cellular developmental systems and self-regulated networks.

Nicolas Bredeche is author of more than 30 papers in journals and major conferences in the field. He has (or currently is) advisor or co-advisor of six PhD students and has served in program committees and/or as track chair of the major conferences in the field of Evolutionary Computation (incl. GECCO track chair for the Artificial Life and Robotics track 2012/2013). He is also a member of the french Evolution Artificielle association and has been regularly co-organizing the french Artificial Evolution one-day seminar (JET) since 2009. He has also organized several international workshops in Evolution, Robotics, and Development of Artificial Neural Networks.

Stéphane Doncieux

Stéphane Doncieux is Professeur des Universités (Professor) in Computer Science at Sorbonne Université, Paris, France. His research is mainly concerned with the use of evolutionary algorithms in the context of optimization or synthesis of robot controllers. He worked in a robotics context to design, for instance, controllers for flying robots, but also in the context of modelling where he worked on the use of multi-objective evolutionary algorithms to optimize and study computational models. More recently, he focused on the use of multi-objective approaches to tackle learning problems like premature convergence or generalization.
He is the head of the AMAC (Architecture and Models of Adaptation and Cognition) research team with 12 permanent researchers, 3 post-doc students and 13 PhD students. Researchers of the team work on different aspects of learning in the context of motion control and cognition, both from a computational neuroscience perspective and a robotics perspective.

Jean-Baptiste Mouret

Dr. Jean-Baptiste Mouret is a senior researcher ("Directeur de recherche") at Inria, the French research institute dedicated to computer science and mathematics. He is currently the principal investigator of an ERC grant (ResiBots – Robots with animal-like resilience, 2015-2020). From 2009 to 2015, he was an assistant professor ("maître de conférences") at the Pierre and Marie Curie University (Paris, France). Overall, J.-B. Mouret conducts researches that intertwine evolutionary algorithms, neuro-evolution, and machine learning to make robots more adaptive. His work was recently featured on the cover of Nature (Cully et al., 2015) and it received 3 GECCO best paper awards (2011, GDS track, 2017 & 2018 CS track), the "Distinguished Young Investigator in Artificial Life 2017" award, the French "La Recherche" award (2016), and the IEEE CEC "best student paper" award (2009).


The automatic design of algorithms has been an early aim of both machine learning and AI, but has proved elusive. The aim of this tutorial is to introduce hyper-heuristics as a principled approach to the automatic design of algorithms. Hyper-heuristics are metaheuristics applied to a space of algorithms; i.e., any general heuristic method of sampling a set of candidate algorithms. In particular, this tutorial will demonstrate how to mine existing algorithms to obtain algorithmic primitives for the hyper-heuristic to compose new algorithmic solutions from, and to employ various types of genetic programming to execute the composition process; i.e., the search of program space.

This tutorial will place hyper-heuristics in the context of genetic programming - which differs in that it constructs solutions from scratch using atomic primitives - as well as genetic improvement - which takes a program as starting point and improves on it (a recent direction introduced by William Langdon).

The approach proceeds from the observation that it is possible to define an invariant framework for the core of any class of algorithms (often by examining existing human-written algorithms for inspiration). The variant components of the algorithm can then be generated by genetic programming. Each instance of the framework therefore defines a family of algorithms. While this allows searches in constrained search spaces based on problem knowledge, it does not in any way limit the generality of this approach, as the template can be chosen to be any executable program and the primitive set can be selected to be Turing-complete. Typically, however, the initial algorithmic primitive set is composed of primitive components of existing high-performing algorithms for the problems being targeted; this more targeted approach very significantly reduces the initial search space, resulting in a practical approach rather than a mere theoretical curiosity. Iterative refining of the primitives allows for gradual and directed enlarging of the search space until convergence.

This leads to a technique for mass-producing algorithms that can be customised to the context of end-use. This is perhaps best illustrated as follows: typically a researcher might create a travelling salesperson algorithm (TSP) by hand. When executed, this algorithm returns a solution to a specific instance of the TSP. We will describe a method that generates TSP algorithms that are tuned to representative instances of interest to the end-user. This method has been applied to a growing number of domains including; data mining/machine learning, combinatorial problems including bin packing (on- and off-line), Boolean satisfiability, job shop scheduling, exam timetabling, image recognition, black-box function optimization, wind-farm layout, and the automated design of meta-heuristics themselves (from selection and mutation operators to the overall meta-heuristic architecture).

This tutorial will provide a step-by-step guide which takes the novice through the distinct stages of automatic design. Examples will illustrate and reinforce the issues of practical application. This technique has repeatedly produced results which outperform their manually designed counterparts, and a theoretical underpinning will be given to demonstrate why this is the case. Automatic design will become an increasingly attractive proposition as the cost of human design will only increase in-line with inflation, while the speed of processors increases in-line with Moore's law, thus making automatic design attractive for industrial application. Basic knowledge of genetic programming will be assumed.

Daniel R. Tauritz

Daniel R. Tauritz is an Associate Professor in the Department of Computer Science at the Missouri University of Science and Technology (S&T), a contract scientist for Sandia National Laboratories, a former Guest Scientist at Los Alamos National Laboratory (LANL), the founding director of S&T's Natural Computation Laboratory, and founding academic director of the LANL/S&T Cyber Security Sciences Institute. He received his Ph.D. in 2002 from Leiden University for Adaptive Information Filtering employing a novel type of evolutionary algorithm. He served previously as GECCO 2010 Late Breaking Papers Chair, GECCO 2012 & 2013 GA Track Co-Chair, GECCO 2015 ECADA Workshop Co-Chair, GECCO 2015 MetaDeeP Workshop Co-Chair, GECCO 2015 Hyper-heuristics Tutorial co-instructor, and GECCO 2015 CBBOC Competition co-organizer. For several years he has served on the GECCO GA track program committee, the Congress on Evolutionary Computation program committee, and a variety of other international conference program committees. His research interests include the design of hyper-heuristics and self-configuring evolutionary algorithms and the application of computational intelligence techniques in cyber security, critical infrastructure protection, and program understanding. He was granted a US patent for an artificially intelligent rule-based system to assist teams in becoming more effective by improving the communication process between team members.

John R. Woodward

John R. Woodward is head of the Operational Research Group (http://or.qmul.ac.uk/) at QMUL. He holds a BSc in Theoretical Physics, an MSc in Cognitive Science and a PhD in Computer Science, all from the University of Birmingham. His research interests include Automated Software Engineering, Artificial Intelligence/Machine Learning and in particular Genetic Programming. Publications are at (https://scholar.google.co.uk/citations?user=iZIjJ80AAAAJ&hl=en), and current EPSRC grants are at (https://gow.epsrc.ukri.org/NGBOViewPerson.aspx?PersonId=-485755). Public engagement articles are at (https://theconversation.com/profiles/john-r-woodward-173210/articles). He has worked in industrial, military, educational and academic settings, and been employed by EDS, CERN and RAF and three UK Universities (Birmingham, Nottingham, Stirling).

Introduction to Genetic Programming

Genetic programming emerged in the early 1990's as one of the most exciting new evolutionary algorithm paradigms. It has rapidly grown into a thriving area of research and application. While sharing the evolutionary inspired algorithm principles of a genetic algorithm, it differs by exploiting an executable genome. Genetic programming evolves a 'program' to solve a problem rather than a single solution. This tutorial introduces the basic genetic programming paradigm. It explains how the powerful capability of genetic programming is derived from modular algorithmic components: executable representations such as a parse tree, variation operators that preserve syntax and explore a variable length, hierarchical solution space, appropriately chosen programming functions and fitness function specification. It provides demos and walks through an example of GP software.

Una-May O'Reilly

Una-May O'Reilly is leader of the AnyScale Learning For All (ALFA) group at CSAIL. ALFA focuses on scalable machine learning, evolutionary algorithms, and frameworks for large scale knowledge mining, prediction and analytics. The group has projects in clinical medicine knowledge discovery: arterial blood pressure forecasting and pattern recognition, diuretics in the ICU; wind energy: turbine layout optimization, resource prediction, cable layout; and MOOC Technology: MoocDB, student persistence and resource usage analysis.

Her research is in the design of scalable Artificial Intelligence systems that execute on a range of hardware systems: GPUs, workstations, grids, clusters, clouds and volunteer compute networks. These systems include machine learning components such as evolutionary algorithms (e.g. genetic programming, genetic algorithms and learning classifiers), classification, non-linear regression, and forecasting algorithms. They span the interpretation and analysis of raw data, through inference on conditioned exemplar data, to the deployment and evaluation of learned “algorithmic machines” in the original application context.

Una-May received the EvoStar Award for Outstanding Achievements in Evolutionary Computation in Europe in 2013. She is a Junior Fellow (elected before age 40) of the International Society of Genetic and Evolutionary Computation, now ACM Sig-EVO. She now serves as Vice-Chair of ACM SigEVO. She served as chair of the largest international Evolutionary Computation Conference, GECCO, in 2005. She has served on the GECCO business committee, co-led the 2006 and 2009 Genetic Programming: Theory to Practice Workshops and co-chaired EuroGP, the largest conference devoted to Genetic Programming. IIn 2013, with Anna Esparcia, Anniko Ekart and Gabriela Ochoa she inaugurated the Women@GECCO meeting and chairs the group. She is the area editor for Data Analytics and Knowledge Discovery for Genetic Programming and Evolvable Machines (Kluwer), and editor for Evolutionary Computation (MIT Press), and action editor for the Journal of Machine Learning Research.

Una-May has a patent for a original genetic algorithm technique applicable to internet-based name suggestions. She holds a B.Sc. from the University of Calgary, and a M.C.S. and Ph.D. (1995) from Carleton University, Ottawa, Canada. She joined the Artificial Intelligence Laboratory, MIT as a Post-Doctoral Associate in 1996.

Erik Hemberg

Erik Hemberg is a Research Scientist in the AnyScale Learning
For All(ALFA) group at Massachusetts Institute of Technology Computer Science and Artificial Intelligence Lab, USA. He has a PhD in Computer Science from University College Dublin, Ireland and a MSc in Industrial Engineering and Applied Mathematics from Chalmers University of Technology, Sweden. He has 10 years of experience in EC focusing on the use of programs with grammatical representations, estimation of distribution and coevolution. His work has been applied to networks, tax avoidance, and Cyber Security.

NEW Learning Classifier Systems: From Principles to Modern Systems

Learning Classifier Systems (LCSs) emerged in the late 1970s and since then have attracted a lot of research attention. Originally introduced as a technique to model adaptive agents within Holland’s notion of complex adaptive systems, various enhancements toward a full-fledged Machine Learning (ML) technique with an evolutionary component at its core have appeared. Nowadays, several variations capable of dealing with most modern ML tasks exist, including online and batch-wise supervised learning, single- and multi-step reinforcement learning, and even unsupervised learning. This great flexibility, which is due to their modular and clearly defined algorithmic structure paving the way for simple and straight-forward adaptations, is unique in the field of Evolutionary Machine Learning (EML) – yielding the LCS paradigm an indisputable permanent place in the EML field. Despite this well-known blueprint comprising the building blocks bringing LCSs to function, gaining theoretical insights regarding the interplay between them has been a crucial research topic for a long time, and this still constitutes a pursued subject of active research.

In this tutorial, the main goal is to introduce exactly these building blocks of LCS-based EML and to conceptually develop a modern, generic Michigan-style LCS step by step from scratch. The resulting generic LCS is subsequently brought in line with the mostly investigated representative – Wilson’s Extended Classifier System (XCS) – which then serves as reference system for the subsequent parts. Past and recent theoretical advances in XCS research will be the subject of further discussions to provide the attendees with a feeling for the fundamental challenges and also the bounds of what can be achieved by XCS under which circumstances. To nevertheless provide a holistic view on LCSs, the tutorial starts with a sketch on the lineage and historical developments in the field, but will then quickly focus on the more prominent Michigan-style systems. The third part of the tutorial is then devoted to the state of the art in LCS research in terms of their real world applicability. The most recent advances that have led to modern systems such as XCSF for online function approximation or ExSTraCS for large-scale supervised data mining will thus be the subject of elaboration. The tutorial closes with a wrap-up regarding the distinctive potentials of LCS and with suggestions for a complementary (“traditional”) ML-centric view on this specific paradigm. With the intention to provide the audience with an impression about where LCS research stands these days and which open questions are still around, a review of most recent endeavors to tackle unsolved issues constitutes the end of the tutorial.

Anthony Stein

Anthony Stein is a research associate and Ph.D. candidate at the Department of Computer Science of the University of Augsburg, Germany. He received his B.Sc. in Business Information Systems from the University of Applied Sciences in Augsburg in 2012. He then switched to the University of Augsburg to proceed with his master's degree (M.Sc.) in computer science with a minor in information economics which he received in 2014. Within his master's thesis, he dived into the nature of Learning Classifier Systems for the first time. Since then, he is a passionate follower and contributor of ongoing research in this field. Besides his position in the Organic Computing Group at the University of Augsburg, he currently finishes his Ph.D. in computer science. His research focuses on the applicability of EML techniques in self-learning adaptive systems which are asked to act in real world environments that exhibit challenges such as data imbalance and non-stationarity. Therefore, in his work he investigates the utilization of interpolation and active learning methods to change the means of how classifiers are initialized, insufficiently covered problem space niches are filled, or adequate actions are selected. A further aspect he investigates is the question how Learning Classifier Systems can be enhanced toward a behavior of proactive knowledge construction.
Since 2017, he is an organizing committee member of the International Workshop on Learning Classifier Systems (IWLCS). For the third year now, he also co-organizes the Workshop Series on Autonomously Learning and Optimizing Systems (SAOS). Among others, he serves as reviewer for GECCO’s EML track, ACM's Transactions on Autonomous and Adapative Systems (TAAS) Journal, and several workshops.

Model-Based Evolutionary Algorithms

In model-building evolutionary algorithms the variation operators are guided by the use of a model that conveys as much problem-specific information as possible so as to best combine the currently available solutions and thereby construct new, improved, solutions. Such models can be constructed beforehand for a specific problem, or they can be learnt during the optimization process. Well-known types of algorithms of the latter type are Estimation-of-Distribution Algorithms (EDAs) where probabilistic models of promising solutions are built and subsequently sampled to generate new solutions.

Although EDAs are the best known example, other approaches also exist, such as the Optimal Mixing EAs (e.g. the Linkage Tree Genetic Algorithm). In general, replacing traditional crossover and mutation operators by building and using models enables the use of machine learning techniques for automatic discovery of problem regularities and exploitation of these regularities for effective exploration of the search space. Using machine learning in optimization enables the design of optimization techniques that can automatically adapt to the given problem. This is an especially useful feature when considering optimization in a black-box setting. Successful applications include Ising spin glasses in 2D and 3D, graph partitioning, MAXSAT, feature subset selection, forest management, groundwater remediation design, telecommunication network design, antenna design, and scheduling.

This tutorial will provide an introduction and an overview of major research directions in this area.

Dirk Thierens

Dirk Thierens is affiliated with the Department of Information and Computing Sciences at Utrecht University, the Netherlands, where he is teaching courses on Evolutionary Computation and on Computational Intelligence. He has been involved in genetic algorithm research since 1990. His current research interests are mainly focused on the design and application of model learning techniques to improve evolutionary search. Dirk is (has been) a member of the Editorial Board of the journals Evolutionary Computation, Evolutionary Intelligence, IEEE Transactions on Evolutionary Computation, and a member of the program committee of the major international conferences on evolutionary computation. He was elected member of the SIGEVO ACM board and contributed to the organization of several GECCO conferences: workshop co-chair (2003, 2004), track (co-)chair (2004, 2006, 2014), and Editor-in-Chief (2007).

Peter A.N. Bosman

Peter A. N. Bosman is a senior researcher in the Life Sciences research group at the Centrum Wiskunde & Informatica (CWI) (Centre for Mathematics and Computer Science) located in Amsterdam, the Netherlands. Peter was formerly affiliated with the Department of Information and Computing Sciences at Utrecht University, where also he obtained both his MSc and PhD degrees in Computer Science, more specifically on the design and application of estimation-of-distribution algorithms (EDAs). He has (co-)authored over 90 refereed publications on both algorithmic design aspects and real-world applications of evolutionary algorithms. At the GECCO conference, Peter has previously been track (co-)chair (EDA track, 2006, 2009), late-breaking-papers chair (2007), (co-)workshop organizer (OBUPM workshop, 2006; EvoDOP workshop, 2007; GreenGEC workshop, 2012-2014), (co-)local chair (2013) and general chair (2017).

Neuroevolution for Deep Reinforcement Learning Problems

In recent years, there has been a resurgence of interest in reinforcement learning (RL), particularly in the deep learning community. While much of the attention has been focused on using Value-function learning approaches (i.e. Q-Learning) or Estimated Policy Gradient-based approaches to train neural-network policies, little attention has been paid to Neuroevolution (NE) for policy search. The larger research community may have forgotten about previous successes of Neuroevolution.

Some of the most challenging reinforcement learning problems are those where reward signals are sparse and noisy. For many of these problems, we only know the outcome at the end of the task, such as whether the agent wins or loses, whether the robot arm picks up the object or not, or whether the agent has survived. Since NE only require the final cumulative reward that an agent gets at the end of its rollout in an environment, these are the types of problems where NE may have an advantage over traditional RL methods.

In this tutorial, I show how Neuroevolution can be successfully applied to Deep RL problems to help find a suitable set of model parameters for a neural network agent. Using popular modern software frameworks for RL (TensorFlow, OpenAI Gym, pybullet, roboschool), I will apply NE to continuous control robotic tasks, and show we can obtain very good results to control bipedal robot walkers, Kuka robot arm for grasping tasks, Minitaur robot, and also various existing baseline locomotion tasks common in the Deep RL literature. I will even show that NE can even obtain state-of-the-art results over Deep RL methods, and highlight ways to use NE that can lead to more stable and robust policies compared to traditional RL methods. I will also describe how to incorporate NE techniques into existing RL research pipelines taking advantage of distributed processing on Cloud Compute.

I will also discuss how to combine techniques from deep learning, such as the use of deep generative models, with Neuroevolution to solve more challenging Deep Reinforcement Learning problems that rely on high dimensional video inputs for continous robotics control, or for video game simulation tasks. We will look at combining model-based reinforcement learning approaches with Neuroevolution to tackle these problems, using TensorFlow, OpenAI Gym, and pybullet environments.

Lastly, we will cover recent developments where we have seen a lot of success in the past 2 years in areas where Neuroevolution has incorporated concepts from Deep Learning/RL, and vice versa. A case study will be presented when researchers prepare to tackle both areas, and we end with a group discussion about issues with cross-community collaborations with the audience.

David Ha

David Ha is Research Scientist at Google Brain. His research interests include Recurrent Neural Networks, Creative AI, and Evolutionary Computing. Prior to joining Google, He worked at Goldman Sachs as a Managing Director, where he co-ran the fixed-income trading business in Japan. He obtained undergraduate and graduate degrees in Engineering Science and Applied Math from the University of Toronto.

Representations for Evolutionary Algorithms

Successful and efficient use of evolutionary algorithms (EA) depends on the choice of the genotype, the problem representation (mapping from genotype to phenotype) and on the choice of search operators that are applied to the genotypes. These choices cannot be made independently of each other. The question whether a certain representation leads to better performing EAs than an alternative representation can only be answered when the operators applied are taken into consideration. The reverse is also true: deciding between alternative operators is only meaningful for a given representation.

Research in the last few years has identified a number of key concepts to analyse the influence of representation-operator combinations on EA performance. Relevant concepts are the locality and redundancy of representations.

Locality is a result of the interplay between the search operator and the genotype-phenotype mapping. Representations have high locality if the application of variation operators results in new solutions similar to the original ones. Representations are redundant if the number of phenotypes exceeds the number of possible genotypes. Redundant representations can lead to biased encodings if some phenotypes are on average represented by a larger number of genotypes or search operators favor some kind of phenotypes.

The tutorial gives a brief overview about existing guidelines for representation design, illustrates the different aspects of representations, gives a brief overview of models describing the different aspects, and illustrates the relevance of the aspects with practical examples.

It is expected that the participants have a basic understanding of EA principles.

Franz Rothlauf

Franz Rothlauf received a Diploma in Electrical Engineering from the University of Erlangen, Germany, a Ph.D. in Information Systems from the University of Bayreuth, Germany, and a Habilitation from the University of Mannheim, Germany, in 1997, 2001, and 2007, respectively.

Since 2007, he is professor of Information Systems at the University of Mainz. He has published more than 90 technical papers in the context of planning and optimization, evolutionary computation, e-business, and software engineering, co-edited several conference proceedings and edited books, and is author of the books ""Representations for Genetic and Evolutionary Algorithms"" and ""Design of Modern Heuristics"". Since 2013, he is Academic Director of the Executive MBA program at the University of Mainz.

His main research interests are the application of modern heuristics in planning and optimization systems. He is a member of the Editorial Board of Evolutionary Computation Journal (ECJ) and Business & Information Systems Engineering (BISE). Since 2007, he is member of the Executive Committee of ACM SIGEVO. He serves as treasurer for ACM SIGEVO since 2011. He has been organizer of many workshops and tracks on heuristic optimization issues, chair of EvoWorkshops in 2005 and 2006, co-organizer of the European workshop series on ""Evolutionary Computation in Communications, Networks, and Connected Systems"", co-organizer of the European workshop series on ""Evolutionary Computation in Transportation and Logistics"", and co-chair of the program committee of the GA track at GECCO 2006. He was conference chair of GECCO 2009.

Runtime Analysis of Evolutionary Algorithms: Basic Introduction

Evolutionary algorithm theory has studied the time complexity of evolutionary algorithms for more than 20 years. Different aspects of this rich and diverse research field were presented in three different advanced or specialized tutorials at last year's GECCO. This tutorial presents the foundations of this field. We introduce the most important notions and definitions used in the field and consider different evolutionary algorithms on a number of well-known and important example problems. Through a careful and thorough introduction of important analytical tools and methods, including fitness-based partitions, typical events and runs and drift analysis, by the end of the tutorial the attendees will be able to apply these techniques to derive relevant runtime results for non-trivial evolutionary algorithms. Moreover, the attendees will be fully prepared to follow the more advanced tutorials that cover more specialized aspects of the field, including the new advanced runtime analysis tutorial on realistic population-based EAs. To assure the coverage of the topics required in the specialised tutorials, this introductory tutorial will be coordinated with the presenters of the more advanced ones. In addition to custom-tailored methods for the analysis of evolutionary algorithms we also introduce the relevant tools and notions from probability theory in an accessible form. This makes the tutorial appropriate for everyone with an interest in the theory of evolutionary algorithms without the need to have prior knowledge of probability theory and analysis of randomized algorithms.

Per Kristian Lehre

Per Kristian Lehre is a Senior Lecturer at the University of Birmingham, UK.

He received MSc and PhD degrees in Computer Science from the Norwegian University of Science and Technology (NTNU). After finishing his PhD in 2006, he held postdoctorial positions in the School of Computer Science at the University of Birmingham and at the Technical University of Denmark. From 2011, he was a Lecturer in the School of Computer Science at the University of Nottingham, until 2017, when he returned to Birmingham.

Dr Lehre's research interests are in theoretical aspects of nature-inspired search heuristics, in particular, runtime analysis of population-based evolutionary algorithms. His research has won several best paper awards, including at GECCO (2013, 2010, 2009, 2006), ICSTW (2008), and ISAAC (2014). He is editorial board member of Evolutionary Computation, and associate editor of IEEE Transactions on Evolutionary Computation. He was the coordinator of the successful 2M euro EU-funded project SAGE which brought together the theory of evolutionary computation and population genetics.

Pietro S. Oliveto

Pietro S. Oliveto iHe is currently a Vice-Chancellor Fellow at the University of Sheffield, UK and has recently been awarded an EPSRC Early Career Fellowship which he will start in March 2015. He received the Laurea degree and PhD degree in computer science respectively from the University of Catania, Italy in 2005 and from the University of Birmingham, UK in 2009. From October 2007 to April 2008, he was a visiting researcher of the Ecient Algorithms and Complexity Theory Institute at the Department of Computer Science of the University of Dortmund where he collaborated with Prof. Ingo Wegener's research group.

His main research interest is the time complexity analysis of randomized search heuristics for combinatorial optimization problems. He has published several runtime analysis papers on Evolutionary Algorithms (EAs), Articial Immune Systems (AIS) and Ant Colony Optimization (ACO) algorithms for classical NP-Hard combinatorial optimization problems, a review paper of the field of time complexity analysis of EAs for combinatorial optimization problems and a book chapter containing a tutorial on the runtime analysis of EAs. He has won best paper awards at the GECCO08, ICARIS11 and GECCO14 conferences and got very close at CEC09 and at ECTA11 through best paper nominations.

Dr. Oliveto has given tutorials on the runtime complexity analysis of EAs at WCCI 2012, CEC 2013, GECCO 2013, WCCI 2014 and GECCO 2014. He is part of the Steering Committee of the annual workshop on Theory of Randomized Search Heuristics (ThRaSH), IEEE member and Chair of the IEEE CIS Task Force on Theoretical Foundations of Bio-inspired Computation.

Theory for Non-Theoreticians

This tutorial addresses GECCO attendees who do not regularly use theoretical methods in their research. For these, we give a smooth introduction to the theory of evolutionary computation (EC). Complementing other introductory theory tutorials, we do not discuss mathematical methods or particular results, but explain

  • what theory of evolutionary algorithms aims at,
  • how research in theory of evolutionary computation is done,
  • how to interpret statements from the theory literature,
  • what are some important contributions of theory to our field,
  • and what are the current hot topics.

Benjamin Doerr

Benjamin Doerr is a full professor at the Ecole Polytechnique (France). He also is an adjunct professor at Saarland University (Germany). His research area is the theory both of problem-specific algorithms and of randomized search heuristics like evolutionary algorithms. Major contributions to the latter include runtime analyses for evolutionary algorithms and ant colony optimizers, as well as the further development of the drift analysis method, in particular, multiplicative and adaptive drift. In the young area of black-box complexity, he proved several of the current best bounds.

Together with Frank Neumann and Ingo Wegener, Benjamin Doerr founded the theory track at GECCO, served as its co-chair 2007-2009 and served again in 2014. In 2016, he chaires the Hot-off-the-press track. He is a member of the editorial boards of "Evolutionary Computation", "Natural Computing", "Theoretical Computer Science" and "Information Processing Letters". Together with Anne Auger, he edited the book "Theory of Randomized Search Heuristics".

Advanced Tutorials

CMA-ES and Advanced Adaptation Mechanisms

The Covariance-Matrix-Adaptation Evolution Strategy is nowadays considered as the state-of-the art continuous stochastic search algorithm, in particular for optimization of non-separable, ill-conditioned and rugged functions. The CMA-ES consists of different components that adapt the step-size and the covariance matrix separately.
This tutorial will focus on CMA-ES and provide the audience with an overview of the different adaptation mechanisms used within CMA-ES and
the scenarios where their relative impact is important. We will in particular present the rank-one update, rank-mu update, active CMA for the covariance matrix adaptation. Different step-size mechanisms (CSA and TPA) as well as the scenario where they should be applied will be discussed.
We will address important design principles as well as questions related to parameter tuning that always accompany algorithm design. The input parameters such as the initial mean, the initial step-size, and the population size will be discussed in relation with the ruggedness of functions. Restart strategies that automatize the input parameter tuning will be presented.

Youhei Akimoto

Youhei Akimoto is an associate professor at University of Tsukuba, Japan. He received his diploma (2007) in computer science and his master degree (2008) and PhD (2011) in computational intelligence and systems science from Tokyo Institute of Technology, Japan. Since 2010, he was also a research fellow of Japan Society for the Promotion of Science for one year. Afterwords, He joined TAO group at INRIA, France, for two years as a post-doc. He was an assistant professor at Shinshu University from 2013 to 2018. He started working at the current position in April, 2018. He has been co-chairing Continuous Optimization Track at GECCO 2015 and 2015. His research interests include design principle and theoretical analysis of stochastic search heuristics in continuous domain, in particular, the Covariance Matrix Adaptation Evolution Strategy.

Nikolaus Hansen

Nikolaus Hansen is a research scientist at INRIA, France. Educated in medicine and mathematics, he received a Ph.D. in civil engineering in 1998 from the Technical University Berlin under Ingo Rechenberg. Before he joined INRIA, he has been working in evolutionary computation, genomics and computational science at the Technical University Berlin, the InGene Institute of Genetic Medicine and the ETH Zurich. His main research interests are learning and adaptation in evolutionary computation and the development of algorithms applicable in practice. His best-known contribution to the field of evolutionary computation is the so-called Covariance Matrix Adaptation (CMA).

Decomposition Multi-Objective Optimization: Current Developments and Future Opportunities

Evolutionary multi-objective optimization (EMO) has been a major research topic in the field of evolu- tionary computation for many years. It has been generally accepted that combination of evolutionary algorithms and traditional optimization methods should be a next generation multi-objective optimization solver. As the name suggests, the basic idea of the decomposition-based technique is to transform the original complex problem into simplified subproblem(s) so as to facilitate the optimization. Decomposition methods have been well used and studied in traditional multi-objective optimization. MOEA/D decom- poses a multi-objective problem into a number of subtasks, and then solves them in a collaborative manner. MOEA/D provides a very natural bridge between multi-objective evolutionary algorithms and traditional decomposition methods. It has been a commonly used evolutionary algorithmic framework in recent years.
Within this tutorial, a comprehensive introduction to MOEA/D will be given and selected research results will be presented in more detail. More specifically, we are going to (i) introduce the basic principles of MOEA/D in comparison with other two state-of-the-art EMO frameworks, i.e., Pareto- and indicator-based frameworks; (ii) present a general overview of state-of-the-art MOEA/D variants and their applications; (iii) discuss the future opportunities for possible further developments.
The intended audience of this tutorial can be both novices and people familiar with EMO or MOEA/D. In particular, it is self-contained that foundations of multi-objective optimization and the basic working principles of EMO algorithms will be included for those without experience in EMO to learn. Open questions will be posed and highlighted for discussion at the latter session of this tutorial.

Ke Li

Ke Li is a Lecturer (Assistant Professor) in Data Analytics at the Department of Computer Science, University of Exeter. He earned his PhD from City University of Hong Kong. Afterwards, he spent a year as a postdoctoral research associate at Michigan State University. Then, he moved to the UK and took the post of research fellow at University of Birmingham. His current research interests include the evolutionary multi-objective optimization, automatic problem solving, machine learning and applications in water engineering and software engineering.

Qingfu Zhang

Qingfu Zhang is a Professor at the Department of Computer Science, City University of Hong Kong. His main research interests include evolutionary computation, optimization, neural networks, data analysis, and their applications. He is currently leading the Metaheuristic Optimization Research (MOP) Group in City University of Hong Kong. Professor Zhang is an Associate Editor of the IEEE Transactions on Evolutionary Computation and the IEEE Transactions Cybernetics. He was awarded the 2010 IEEE Transactions on Evolutionary Computation Outstanding Paper Award. He is on the list of the Thomson Reuters 2016 and 2017 highly cited researchers in computer science. He is an IEEE fellow.

Dynamic Parameter Choices in Evolutionary Computation

One of the most challenging problems in solving optimization problems with evolutionary algorithms (EAs) is the choice of the parameters, which allow to adjust the behavior of the algorithms to the problem at hand. Suitable parameter values need to be found, for example, for the population size, the mutation strength, the crossover rate, the selective pressure, etc. The choice of these parameters can have a crucial impact on the performance of the algorithm and need thus to be executed with care.

In the early years of evolutionary computation there had been a quest to determine universally "optimal" parameter choices. At the same time, researchers have soon realized that different parameter choices can be optimal in different stages of the optimization process: in the beginning of an optimization process, for example, one may want to allow a larger mutation rate to increase the chance of finding the most promising regions of the search space ("exploration" phase) while later on, a small mutation rate guarantees the search to stay focused ("exploitation" phase). Such dynamic parameter choices are today standard in continuous optimization. Quite surprisingly, however, the situation is much different in discrete optimization, where non-static parameter choices have never lived up to their impact.

The ambition of this tutorial is to contribute to a paradigm change towards a more systematic use of dynamic parameter choices. To this end, we survey existing techniques to automatically select parameter values on the fly. We will discuss both experimental and theoretical results that demonstrate the unexploited potential of non-static parameter choices. Our tutorial thereby addresses experimentally as well as theory-oriented researchers alike.
No specific background is required to follow this tutorial.

Carola Doerr

Carola Doerr (Carola.Doerr@lip6.fr, http://www-ia.lip6.fr/~doerr/) is a permanent CNRS researcher at Sorbonne University in Paris, France. She studied Mathematics at Kiel University (Germany, 2003-2007, Diplom) and Computer Science at the Max Planck Institute for Informatics and Saarland University (Germany, 2010-2011, PhD). Before joining the CNRS she was a post-doc at Paris Diderot University (Paris 7) and the Max Planck Institute for Informatics. From 2007 to 2009, Carola Doerr has worked as a business consultant for McKinsey & Company, where her interest in evolutionary algorithms originates from.

Carola Doerr's main research activities are in the mathematical analysis of randomized algorithms, with a strong focus on evolutionary algorithms and other black-box optimizers. She has been very active in the design and analysis of black-box complexity models, a theory-guided approach to explore the limitations of heuristic search algorithms. Most recently, she has used knowledge from these studies to prove superiority of dynamic parameter choices in evolutionary computation, a topic that she believes to carry huge unexplored potential for the community.

Carola Doerr has received several awards for her work on evolutionary computation, among them the Otto Hahn Medal of the Max Planck Society and four best paper awards at GECCO. She is chairing the programm commitee of FOGA 2019 and previously chaired the theory tracks of GECCO 2015 and 2017. Carola is an editor of two special issues in Algorithmica. She is also vice chair of the EU-funded COST action 15140 on "Improving Applicability of Nature-Inspired Optimisation by Joining Theory and Practice (ImAppNIO)".

Evolutionary Computation for Digital Art

Evolutionary algorithms have been used in various ways to create or guide the creation of digital art. In this tutorial we present techniques from the thriving field of biologically inspired art. We show how evolutionary computation methods can be used to enhance artistic creativity and lead to software systems that help users to create artistic work.

We start by providing a general introduction into the use of evolutionary computation methods for digital art and highlight different application areas. This covers different evolutionary algorithms including genetic programming for the creation of artistic images.
Afterwards, we discuss evolutionary algorithms to create artistic artwork in the context of image transition and animation. We show how the connection between evolutionary computation methods and a professional artistic approach finds application in digital animation and new media art, and discuss the different steps of involving evolutionary algorithms for image transition into the creation of paintings. Afterwards, we give an overview on the use of aesthetic features to evaluate digital art. The feature-based approach complements the existing evaluation through human judgments/analysis and allows to judge digital art in a quantitative way. Finally, we outline directions for future research and discuss some open problems.

Frank Neumann

Frank Neumann received his diploma and Ph.D. from the Christian-Albrechts-University of Kiel in 2002 and 2006, respectively. He is a professor and leader of the Optimisation and Logistics Group at the School of Computer Science, The University of Adelaide, Australia. Frank has been the general chair of the ACM GECCO 2016. With Kenneth De Jong he organised ACM FOGA 2013 in Adelaide and together with Carsten Witt he has written the textbook "Bioinspired Computation in Combinatorial Optimization - Algorithms and Their Computational Complexity" published by Springer. He is an Associate Editor of the journals "Evolutionary Computation" (MIT Press) and "IEEE Transactions on Evolutionary Computation" (IEEE). In his work, he considers algorithmic approaches in particular for combinatorial and multi-objective optimization problems and focuses on theoretical aspects of evolutionary computation as well as high impact applications in the areas of renewable energy, logistics, and mining.

Aneta Neumann

Aneta Neumann graduated from the Christian-Albrechts-University of Kiel, Germany in computer science and is currently undertaking her postgraduate research at the School of Computer Science, the University of Adelaide, Australia. She was a participant in the SALA 2016 and 2017 exhibitions in Adelaide and has presented invited talks at UCL London, Goldsmiths, University of London, the University of Nottingham and the University of Sheffield in 2016 and 2017. Aneta is a co-designer and co-lecturer for the EdX Big Data Fundamentals course in the Big Data MicroMasters® program. Her main research interest is understanding the fundamental link between bio-inspired computation and digital art.

Next Generation Genetic Algorithms

New developments in Gray Box Optimization makes it possible to construct new forms of Genetic Algorithms that do not use random mutation or random recombination. Instead, for certain classes of NP Hard problems (ranging from MAXSAT to the Traveling Salesman Problem), it is possible to exactly compute the location of improving moves (often in constant time), and to use highly efficient forms of greedy deterministic recombination. In some domains, this makes random mutation and random recombination obsolete. Deterministic “Partition Crossover” can be applied to k-bounded pseudo-Boolean optimization problems such as MAXSAT and NK Landscapes as well as problems such as the Traveling Salesman Problem (TSP). Partition Crossover locally decomposes a recombination graph into q subgraphs in O(n) time. It can then identify the best of 2!possible offspring. For example, for q=40, partition crossover returns the best of one trillion (2!") possible offspring. If the parents are local optima, the offspring are guaranteed to be locally optimal in the largest hyperplane subspace containing both parents, and offspring are typically also local optima in the full space. This allows partition crossover to directly “tunnel” between local optima, moving directly from local optimum to local optimum. New innovations in this tutorial include the use of ``articulation points” to discover new additional decompositions of k-bounded pseudo-Boolean functions. And new work has shown how large industrial and ``crafted” MAX-kSAT problems can be optimized using these methods: the results are competitive with current state of the art Iterative Local Search Methods. Other recent results also use a similar form of local decomposition coupled with greedy and deterministic optimization. When applied to multiply constrained scheduling problems, the genetic algorithm is able to solve industrial problems with unto 1 billion variables.

Darrell Whitley

Prof. Darrell Whitley has been active in Evolutionary Computation since 1986, and has published more than 200 papers. These papers have garnered more than 16,000 citations. Dr. Whitley's H-index is 54. He has served as Editor-in-Chief of the journal Evolutionary Computation, and recently served as Chair of the Governing Board of ACM Sigevo from 2007 to 2011. He currently serves as an Associate Editor of Artificial Intelligence.

NEW Recent Advances in Fitness Landscape Analysis

Fitness landscape analysis (FLA) can be used to characterise optimisation problems by analysing the underlying search space in terms of the objective to be optimised. There have been many recent advances in the field of FLA on the development of methods and measures that have been shown to be effective in the understanding of complex problems, algorithm behaviour, and the selection of algorithms.

This tutorial is aimed at delegates interested in developing a deeper understanding of the complexities of search spaces and how these impact on the performance of algorithms.

The tutorial will cover both discrete and continuous domains and will include the following topics:

- Fundamental concepts of fitness landscapes
- Local optima networks (LONs) for understanding global structure and modelling high dimensional spaces
- Case study: LONs applied to feature selection for classification
- Case study: Landscape-aware algorithm selection for Constraint-handling

Gabriela Ochoa

Gabriela Ochoa is a Professor in Computing Science at the University of Stirling, Scotland. She received a PhD in Computer Science from the University of Sussex, UK. She worked in industry for five years before joining academia and has held faculty and research positions at the University Simon Bolivar, Venezuela and the University of Nottingham, UK. Her research interests lie in the foundations and application of evolutionary algorithms and heuristic search methods, with emphasis on autonomous search, hyper-heuristics, fitness landscape analysis and visualisation. She is associate editor of the Evolutionary Computation Journal and the IEEE Transactions on Evolutionary Computation; and is a member of the SIGEvo executive board. She has served as an organiser and/or program chair for several international events such as GECCO, PPSN, FOGA, and IEEE CEC and was the Editor-in-Chief for GECCO 2017.

Katherine Malan

Katherine Malan is a senior lecturer at the Department of Decision Sciences at the University of South Africa. She recently obtained her PhD in Computer Science from the University of Pretoria (2014), but has 20 years' lecturing experience in Computer Science at three different South African universities. Her research interests include fitness landscape analysis and the application of computational intelligence techniques to real-world problems. She is particularly interested in the link between fitness landscape features and algorithm performance and to applying FLA techniques to real-world optimisation problems, such as the training of neural networks. Katherine is an associated editor for Swarm and Evolutionary Computation and regularly reviews for a number of journals in fields related to evolutionary computation, swarm intelligence and operational research.

NEW Recent Advances in Particle Swarm Optimization Analysis and Understanding

The main objective of this tutorial will be to inform particle swarm optimization (PSO) practitioners of the many common misconceptions and falsehoods that are actively hindering a practitioner’s successful use of PSO in solving challenging optimization problems. While the behaviour of PSO’s particles has been studied both theoretically and empirically since its inception in 1995, most practitioners unfortunately have not utilized these studies to guide their use of PSO. This tutorial will provide a succinct coverage of common PSO misconceptions, with a detailed explanation of why the misconceptions are in fact false, and how they are negatively impacting results. The tutorial will also provide recent theoretical results about PSO particle behaviour from which the PSO practitioner can now make better and more informed decisions about PSO and in particular make better PSO parameter selections. The tutorial will focus on the following important aspects of PSO behaviour

  • Understanding why the random variables used in the velocity update should not be scalars, but rather vectors of random values
  • Exploring the effects of different ways in which velocity can be initialized
  • Clearning up issues with reference to velocity clamping
  • Influence of social topology and different iteration strategies on performance
  • Understanding PSO control parameters, and how to use them more efficiently. The importance of parameter selection will be illustrated with an interactive demo where audience members will vote for/suggest control parameters. From the set of audience selected control parameters relative performance ranking, based on popular benchmark suites, of these configuration will be given in relation to a very extensive set of possible configurations. This demo will clearly illustrate why the subsequent theoretical discussion on control parameters is so import for effective PSO use.
  • Existing theoretical PSO results and what they mean to a PSO practitioner
  • Roaming behaviour of PSO particles
  • Understanding why PSO struggles with large-scale optimization problems
  • Known stability criteria of PSO algorithms
  • Effects of particle stability of PSO’s performance
  • How to derive new stability criteria for PSO variants and verify them
  • Control parameter tuning, and self-adaptive control parameters
  • Is the PSO a local optimizer or a global optimizer?

With the knowledge presented in this tutorial a PSO practitioner will gain up to date theoretical insights into PSO behaviour and as a result be able to make informed choices when utilizing PSO.

Andries Engelbrecht

Andries Engelbrecht received the Masters and PhD degrees in Computer Science from the University of Stellenbosch, South Africa, in 1994 and 1999 respectively. He is Professor in Computer Science at the University of Pretoria, and is appointed as the Director of the Institute for Big Data and Data Science. He holds the position of South African Research Chair in Artificial Intelligence, and leads the Computational Intelligence Research Group. His research interests include swarm intelligence, evolutionary computation, neural networks, artificial immune systems, and the application of these paradigms to data mining, games, bioinformatics, finance, and difficult optimization problems. He has published over 350 papers in these fields and is author of two books, Computational Intelligence: An Introduction and Fundamentals of Computational Swarm Intelligence.

Christopher Cleghorn

Christopher Cleghorn received his Masters and PhD degrees in Computer Science from the University of Pretoria, South Africa, in 2013 and 2017 respectively. He is lecturer in Computer Science at the University of Pretoria, and a member of the Computational Intelligence Research Group. His research interests include swarm intelligence, evolutionary computation, and machine learning, with a strong focus of theoretical research. Dr Cleghorn annually serves as a reviewer for numerous international journals and conferences in domains ranging from swarm intelligence and neural networks to mathematical optimization.

NEW Semantic Genetic Programming

Semantic genetic programming is a rapidly growing trend in Genetic Programming (GP) that aims at opening the ‘black box’ of the evaluation function and make explicit use of more information on program behavior in the search. In the most common scenario of evaluating a GP program on a set of input-output examples (fitness cases), the semantic approach characterizes program with a vector of outputs rather than a single scalar value (fitness). The past research on semantic GP has demonstrated that the additional information obtained in this way facilitates designing more effective search operators. In particular, exploiting the geometric properties of the resulting semantic space leads to search operators with attractive properties, which have provably better theoretical characteristics than conventional GP operators. This in turn leads to dramatic improvements in experimental comparisons.
The aim of the tutorial is to give a comprehensive overview of semantic methods in genetic programming, illustrate in an accessible way the formal geometric framework for program semantics to design provably good mutation and crossover operators for traditional GP problem domains, and to analyze rigorously their performance (runtime analysis). A recent extension of this framework to Grammatical Evolution will be also presented. Other promising emerging approaches to semantics in GP will be reviewed. In particular, the recent developments in the behavioural programming and approaches that automatically acquire a multi-objective characterization of programs will be covered as well. Current challenges and future trends in semantic GP will be identified and discussed.
Efficient implementation of semantic search operators may be challenging. We will illustrate very efficient, concise and elegant implementations of these operators, which are available for download from the web.

Alberto Moraglio

Alberto Moraglio is a Lecturer in Computer Science in the College of Engineering, Mathematics and Physical Sciences at the University of Exeter, UK. He has been active in evolutionary computation research for the last 10 years with a substantial publication record in the area. He is the founder of the Geometric Theory of Evolutionary Algorithms, which unifies Evolutionary Algorithms across representations and has been used for the principled design of new successful search algorithms and for their rigorous theoretical analysis. He was co-chair of the Theory Track, the Genetic Programming Track and the Genetic Algorithms Track in past editions of GECCO, co-chair of the European Conference on Genetic Programming, and has regular tutorials at GECCO and IEEE CEC.

Krzysztof Krawiec

Krzysztof Krawiec is an Associate Professor in the Institute of Computing Science at Poznan University of Technology, Poland. His primary research areas are genetic programming, semantic genetic programming, and coevolutionary algorithms, with applications in program synthesis, modeling, pattern recognition, and games. Dr. Krawiec co-chaired the European Conference on Genetic Programming in 2013 and 2014, GP track at GECCO'16, and is an associate editor of Genetic Programming and Evolvable Machines journal.

Sequential Experimentation by Evolutionary Algorithms

This tutorial addresses applications of Evolutionary Algorithms (EAs) to global optimization tasks where the objective function cannot be calculated (no explicit model nor a simulation exist), but rather requires a measurement/assay ("wet experiment") in the real-world – e.g., in pharmaceuticals, biocatalyst design, protein expression, quantum processes – to mention only a few.

The use of EAs for experimental optimization is placed in its historical context with an overview of the landmark studies in this area carried out in the 1960s at the Technical University of Berlin. At the same time, statistics-based Design of Experiments (DoE) methodologies, rooted in the late 1950s, constitute a gold-standard in existing laboratory equipment, and are therefore reviewed as well at an introductory level to EC audience.

The main characteristics of experimental optimization work, in comparison to optimization of simulated systems, are discussed, and practical guidelines for real-world experiments with EAs are given. For example, experimental problems can constrain the evolution due to overhead considerations, interruptions, changes of variables, missing assays, imposed population-sizes, and target assays that have different evaluation times (in the case of multiple objective optimization problems).

Selected modern-day case studies show the persistence of experimental optimization problems today. These cover experimental quantum systems, combinatorial drug discovery, protein expression, and others. These applications can throw EAs out of their normal operating envelope, and raise research questions in a number of different areas ranging across constrained EAs, multiple objective EAs, robust and reliable methods for noisy and dynamic problems, and metamodeling methods for expensive evaluations.

Ofer Shir

Ofer Shir is a Senior Lecturer at the Computer Science Department in Tel-Hai College, and a Principal Investigator at Migal-Galilee Research Institute – both located in the Upper Galilee, Israel.
Ofer Shir holds a BSc in Physics and Computer Science from the Hebrew University of Jerusalem, Israel, and both MSc and PhD in Computer Science from Leiden University, The Netherlands (PhD advisers: Thomas Bäck and Marc Vrakking). Upon his graduation, he completed a two-years term as a Postdoctoral Research Associate at Princeton University, USA (2008-2010), hosted by Prof. Herschel Rabitz – where he specialized in computer science aspects of experimental quantum systems. He then joined IBM-Research as a Research Staff Member (2010-2013), which constituted his second postdoctoral term, and where he gained real-world experience in convex and combinatorial optimization as well as in decision analytics.
His current fields of interest encompass Statistical Learning in Theory and in Practice, Experimental Optimization, Scientific Informatics, Natural Computing, Computational Intelligence in Physical Sciences, Quantum Control and Quantum Information.


Thomas Bäck

Thomas Bäck is full professor of computer science at the Leiden Institute of Advanced Computer Science (LIACS), Leiden University, The Netherlands, where he is head of the Natural Computing group since 2002.

He received his PhD (adviser: Hans-Paul Schwefel) in computer science from Dortmund University, Germany, in 1994, and then worked for the Informatik Centrum Dortmund (ICD) as department leader of the Center for Applied Systems Analysis. From 2000 - 2009, Thomas was Managing Director of NuTech Solutions GmbH and CTO of NuTech Solutions, Inc. He gained ample experience in solving real-life problems in optimization and data mining through working with global enterprises such as BMW, Beiersdorf, Daimler, Ford, Honda, and many others.

Thomas Bäck has more than 200 publications on natural computing, as well as two books on evolutionary algorithms: Evolutionary Algorithms in Theory and Practice (1996), Contemporary Evolution Strategies (2013). He is co-editor of the Handbook of Evolutionary Computation, and most recently, the Handbook of Natural Computing. He is also editorial board member and associate editor of a number of journals on evolutionary and natural computing. Thomas received the best dissertation award from the German Society of Computer Science (Gesellschaft für Informatik, GI) in 1995 and is an elected fellow of the International Society for Genetic and Evolutionary Computation for his contributions to the field.

Simulation Optimization

The optimization of parameters of a simulation model is usually denoted as Simulation Optimization. This is a typical problem in the design and optimization of complex systems, where a solution can only be evaluated by means of running a simulation. On the one hand, simulation optimization is black box optimization, which suits evolutionary algorithms well. On the other hand, simulation models are often stochastic, which affects the selection step in evolutionary algorithms. Furthermore, running a simulation is usually computationally expensive, so the number of solutions that can be evaluated is limited.

This tutorial will survey various simulation optimization techniques and then explain in more detail what it takes to successfully apply evolutionary algorithms for simulation optimization. It will brie y cover parallelization and surrogate models to reduce the runtime, but then focus in particular on the handling of noise. The tutorial assumes that the audience is familiar with evolutionary computation.

Jürgen Branke

Jürgen Branke is Professor of Operational Research and Systems at Warwick Business School, University of Warwick, UK. He has been an active researcher in the field of Evolutionary Computation for over 20 years, has published over 170 papers in peer-reviewed journals and conferences, resulting in an H-Index of 52 (Google Scholar). His main research interests include optimization under uncertainty, simulation-based optimization and multi-objective optimization. Jürgen is Area Editor for the Journal of Heuristics and the Journal on Multi-Criteria Decision Analysis, and Associate Editor for the Evolutionary Computation Journal and IEEE Transactions on Evolutionary Computation.

Solving Complex Problems with Coevolutionary Algorithms

Coevolutionary algorithms (CoEAs) go beyond the conventional paradigm of evolutionary computation in having the potential to answer questions about what to evolve against (competition) and / or establish how multi-agent behaviours can be discovered (cooperation). Competitive coevolution can be considered from the perspective of discovering tests that distinguish between the performance of candidate solutions. Cooperative coevolution implies that mechanisms are adopted for distributing fitness across more than one individual. In both these variants, the evolving entities engage in interactions that affect all the engaged parties, and result in search gradients that may be very different from those observed in conventional evolutionary algorithm, where fitness is defined externally. This allows CoEAs to model complex systems and solve problems that are difficult or not naturally addressed using conventional evolution.

This tutorial will begin by first establishing basic frameworks for competitive and cooperative coevolution and noting the links to related formalisms (interactive domains and test-based problems). We will identify the pathologies that potentially appear when assuming such coevolutionary formulations (disengagement, forgetting, mediocre stable states) and present the methods that address these issues. Compositional formulations will be considered in which hierarchies of development are explicitly formed leading to the incremental complexification of solutions. The role of system dynamics will also be reviewed with regards to providing additional insight into how design decisions regarding, say, the formulation assumed for cooperation, impact on the development of effective solutions. We will also present the concepts of coordinate systems and underlying objectives and how they can make search/learning more effective. Other covered developments will include hybridization with local search and relationships to shaping.

The concepts covered in the tutorial will be illustrated with numerous examples and applications, including the cooperative development of programs (Rubik’s Cube, Arcade Learning Environment, ViZDoom), competitive coevolution of game strategies (Othello), and machine learning (learning from data streams and object recognition).

Krzysztof Krawiec

Krzysztof Krawiec is an Associate Professor in the Institute of Computing Science at Poznan University of Technology, Poland. His primary research areas are genetic programming, semantic genetic programming, and coevolutionary algorithms, with applications in program synthesis, modeling, pattern recognition, and games. Dr. Krawiec co-chaired the European Conference on Genetic Programming in 2013 and 2014, GP track at GECCO'16, and is an associate editor of Genetic Programming and Evolvable Machines journal.

Malcolm Heywood

Malcolm Heywood is a Professor of Computer Science at Dalhousie University, Canada. He has conducted research in genetic programming (GP) since 2000. He has a particular interest in scaling up the tasks that GP can potentially be applied to. His current research is attempting the appraise the utility of coevolutionary methods under non-stationary environments as encountered in streaming data applications, and coevolving agents for single and multi-agent reinforcement learning tasks. In the latter case the goal is to coevolve behaviours for playing soccer under the RoboSoccer environment (a test bed for multi-agent reinforcement learning). Dr. Heywood is a member of the editorial board for Genetic Programming and Evolvable Machines (Springer). He was a track co-chair for the GECCO GP track in 2014 and a co-chair for European Conference on Genetic Programming in 2015.

Visualization in Multiobjective Optimization

Multiobjective optimization algorithms usually produce a set of trade-off solutions approximating the Pareto front where no solution from the set is better than any other in all objectives (this is called an approximation set). While there exist many measures to assess the quality of approximation sets, no measure is as effective as visualization, especially if the Pareto front is known and can be visualized as well. Visualization in evolutionary multiobjective optimization is relevant in many aspects, such as estimating the location, range, and shape of the Pareto front, assessing conflicts and trade-offs between objectives, selecting preferred solutions, monitoring the progress or convergence of an optimization run, and assessing the relative performance of different algorithms.

This tutorial will provide a comprehensive overview of methods used in multiobjective optimization for visualizing either individual approximation sets resulting from a single algorithm run or multiple approximation sets stemming from repeated runs. The methods will be organized in a recently proposed taxonomy of visualization methods and analyzed according to a methodology for assessing and comparing visualization methods. The methodology uses a list of requirements for visualization methods and benchmark approximation sets in a similar way as performance metrics and benchmark test problems are used for comparing optimization algorithms.

Bogdan Filipic

Bogdan Filipic is a senior researcher and head of Computational Intelligence Group at the Department of Intelligent Systems of the Jozef Stefan Institute, Ljubljana, Slovenia, and associate professor of Computer Science at the Jozef Stefan International Postgraduate School. He received his Ph.D. degree in Computer Science from the University of Ljubljana. His research interests are in stochastic optimization, evolutionary computation and intelligent data analysis. He focuses on evolutionary multiobjective optimization, including result visualization, constraint handling and use of surrogate models. He is also active in promoting evolutionary computation in practice and has led optimization projects for steel industry, car manufacturing and energy management. He co-chaired the biennial BIOMA conference from 2004 to 2012, and served as the general chair of PPSN 2014. He was a guest lecturer at the University of Oulu, Finland, and the the VU University Amsterdam, The Netherlands, and was giving tutorials at recent CEC and GECCO conferences.

Tea Tušar

Tea Tusar is a research fellow at the Department of Intelligent Systems of the Jozef Stefan Institute in Ljubljana, Slovenia. She was awarded the PhD degree in Information and Communication Technologies by the Jozef Stefan International Postgraduate School for her work on visualizing solution sets in multiobjective optimization. She has completed a one-year postdoctoral fellowship at Inria Lille in France where she worked on benchmarking multiobjective optimizers.

Her research interests include evolutionary algorithms for singleobjective and multiobjective optimization with emphasis on visualizing and benchmarking their results and applying them to real-world problems.

Specialized Tutorials

NEW Concurrency in evolutionary algorithms

This tutorial will first describe the current paradigms of concurrent programming, including mainly channel-based concurrency, and which languages work with it. It will then proceed to examine the changes evolutionary algorithms have to undergo in order to properly leverage these kind of software architectures.
It will be addressed mainly to students who have some knowledge of programming techniques, as well as those who understand basic concepts of evolutionary algorithms and want to advance on the its basic architecture and its implementations. Eventually, the attendee will be able to reformulate existing evolutionary algorithms in a concurrent setting and know basic concepts on how to implement them using concurrent languages such as Go, Scala or Perl 6.

The tutorial will have the following outline:

  • Why it is now the moment of concurrent algorithms and languages.
  • Basic concepts of concurrency.
  • Functional programming and what it's got to do with concurrent programming.
  • The concept of state and how it's related to concurrent programming.
  • Stateless algorithms HOWTO
  • How to eliminate state from evolutionary algorithms
  • Levels of concurrency and programming patterns for concurrent evolutionary algorithms
  • Issues and challenges in concurrent evolutionary algorithms.

Nowadays, concurrency has the promise of bringing high-performance computing to the most plain vanilla desktop, since the increase in power in CPUs has been due mainly to architectural, and not physical, changes. However, the existence of languages that can use this concurrency properly is not so mainstream, with just a few languages implementing core functionalities to work with concurrent primitives, data structures and functions. Most languages are based in a relatively old concept, communicating sequential processes, which make different threads only share state through communication; this has led to the rise of functional languages (which do not have side effect and do not change state in pure functions) and reactive architectures (which instead of working sequentially, impose a certain sequence on data flow. This tutorial will explain these basic concepts, and then will apply it to evolutionary algorithms, seeing how the canonical evolutionary algorithm can be changed to a stateless algorithm, while keeping the bioinspired spirit and leveraging concurrency.

JJ Merelo

JJ Merelo is professor at the university of Granada. He has been involved in evolutionary computation for 20 years and not missed a PPSN since 2000, including the organisation of PPSN 2002 in Granada. He's the author of Algorithm::Evolutionary, a Perl evolutionary computation library and has given tutorials in GECCO, PPSN and CEC conferences. He's also been plenary speaker in ECTA 2013 and IDC 2014.

NEW Creative Evolutionary Computation

Creativity is a core ability that was fostered throughout human evolution: it has enabled new ways of solving problems and doing art, but it has also led to discoveries through unconventional ways. Can computational processes be creative? Who should judge and what should be critiqued? How can artificial evolution help such computational processes? In turn, how can evolutionary search benefit from computational creativity?

To address the above questions, in this tutorial we use principles such as unconventional search, deception, value, novelty, surprise, and quality diversity as overarching elements for connecting evolutionary computation (EC) and computational creativity (CC). In particular, we will explore the research area in which bio-inspired algorithmic design meets creativity and search and, hence, we attempt to incorporate foundational ideas and concepts from evolutionary computation in the computational creativity domain. EC areas such as divergent search and quality diversity could benefit from theoretical approaches of computational creativity and empirical implementations of CC-inspired algorithms. Similarly, we argue that CC research and practice can only help in advancing work on EA theory and algorithm design.

Detailed Content:
The proposed structure of the tutorial covers the following topics:

  • Introduction to Computational Creativity
    • Basic Notions and Definitions
    • What is Creativity? What is Computational Creativity (CC)? Evaluation of CC
    • Domains of CC: from problem solving to art
  • Artificial Evolution for Computational Creativity
    • What makes evolution ideal for CC?
    • Value, Novelty and Surprise as drivers of Evolution
  • Core Domains of CC via evolution
    • Problem Solving (e.g. maze navigation)
    • Art & Music
    • Digital Games
    • Mathematical & Algorithmic Discovery
  • Next Steps
    • Future challenges and open questions
    • Emotion as a driver for CC

Antonios Liapis

Antonios Liapis is a Lecturer at the Institute of Digital Games, University of Malta, where he bridges the gap between game technology and game design in courses focusing on human-computer creativity, digital prototyping and game development. He received the Ph.D. degree in Information Technology from the IT University of Copenhagen in 2014. His research focuses on Artificial Intelligence as an autonomous creator or as a facilitator of human creativity. His work includes computationally intelligent tools for game design, as well as computational creators that blend semantics, visuals, sound, plot and level structure to create horror games, adventure games and more. He is the general chair of the EvoMusArt conference (2018-2019) and has served as local chair (2016) and demonstrations chair (2019) at the Computational Intelligence and Games conference. He is an Associate Editor of the IEEE Transactions on Games, and has co-organized many workshops in a diverse set of conferences. He has received several awards for his research contributions and reviewing effort.


Georgios N. Yannakakis

Evolutionary Computation and Evolutionary Deep Learning for Image Analysis, Signal Processing and Pattern Recognition

The intertwining disciplines of image analysis, signal processing and pattern recognition are major fields of computer science, computer engineering and electrical and electronic engineering, with past and on-going research covering a full range of topics and tasks, from basic research to a huge number of real-world industrial applications.

Among the techniques studied and applied within these research fields, evolutionary computation (EC) including evolutionary algorithms, swarm intelligence and other paradigms is playing an increasingly relevant role. Recently, evolutionary deep learning has also attracted very good attention to these fields. The terms Evolutionary Image Analysis and Signal Processing and Evolutionary Computer Vision are more and more commonly accepted as descriptors of a clearly defined research area and family of techniques and applications. This has also been favoured by the recent availability of environments for computer hardware and systems such as GPUs and grid/cloud/parallel computing systems, whose architecture and computation paradigm fit EC algorithms extremely well, alleviating the intrinsically heavy computational burden imposed by such techniques and allowing even for real-time applications.

The tutorial will introduce the general framework within which Evolutionary Image Analysis, Signal Processing and Pattern Recognition can be studied and applied, sketching a schematic taxonomy of the field and providing examples of successful real-world applications. The application areas to be covered will include edge detection, segmentation, object tracking, object recognition, motion detection, image classification and recognition. EC techniques to be covered will include genetic algorithms, genetic programming, particle swarm optimisation, evolutionary multi-objective optimisation as well as memetic/hybrid paradigms. In particular, we will discuss the detection of relevant set of features for classification based on an information-theoretical approach derived from complex system analysis. We take a focus on the use of evolutionary deep learning idea for image analysis --- this includes automatic learning architectures, learning parameters and transfer functions of convolutional neural networks (and autoencoders and genetic programming if time allows). The use of GPU boxes will be discussed for real-time/fast object classification. We will show how such EC techniques can be effectively applied to image analysis and signal processing problems and provide promising results.

Mengjie Zhang

Mengjie Zhang is currently Professor of Computer Science at Victoria University of Wellington, where he heads the interdisciplinary Evolutionary Computation Research Group. He is a member of the University Academic Board, a member of the University Postgraduate Scholarships Committee, a member of the Faculty of Graduate Research Board at the University, Associate Dean (Research and Innovation) in the Faculty of Engineering, and Chair of the Research Committee of the Faculty of Engineering and School of Engineering and Computer Science.

His research is mainly focused on evolutionary computation, particularly genetic programming, particle swarm optimisation and learning classifier systems with application areas of feature selection/construction and dimensionality reduction, computer vision and image processing, job shop scheduling, multi-objective optimisation, and classification with unbalanced and missing data. He is also interested in data mining, machine learning, and web information extraction. Prof Zhang has published over 400 research papers in refereed international journals and conferences in these areas.

He has been serving as an associated editor or editorial board member for over ten international journals including IEEE Transactions on Evolutionary Computation, the Evolutionary Computation Journal (MIT Press), IEEE Transactions on Emergent Topics in Computational Intelligence, Genetic Programming and Evolvable Machines (GPEM, Springer), Applied Soft Computing, Natural Computing, and Engineering Applications of Artificial Intelligence, and as a reviewer of over 30 international journals. He is the Tutorial Chair for GECCO 2014 and AIS-BIO Track Co-Chair for GECCO 2016. Since 2012, he has been involving GECCO, CEC, SSCI, EvoStar, SEAL and PAKDD conferences as a general/program/technical/tutorial/track/special session chair. Since 2007, he has been listed as one of the top ten world genetic programming researchers by the GP bibliography (http://www.cs.bham.ac.uk/~wbl/biblio/gp-html/index.html).

Prof Zhang is currently chairing the IEEE CIS Emergent Technologies Technical Committee consisting of over 40 top CI researchers from the five continents and 17 task forces. He is the immediate Past Chair for the IEEE CIS Evolutionary Computation Technical Committee and a member of the IEEE CIS Award Committee. He is also a member of IEEE CIS Intelligent System Applications Technical Committee, a vice-chair of the IEEE CIS Task Force on Evolutionary Feature Selection and Construction, a vice-chair of the Task Force on Evolutionary Computer Vision and Image Processing, and the founding chair of the IEEE Computational Intelligence Chapter in New Zealand.

Stefano Cagnoni

Stefano Cagnoni graduated in Electronic Engineering at the University of Florence, Italy, where he has been a PhD student and a post-doc until 1997. In 1994 he was a visiting scientist at the Whitaker College Biomedical Imaging and Computation Laboratory at the Massachusetts Institute of Technology. Since 1997 he has been with the University of Parma, where he has been Associate Professor since 2004.

Recent research grants include: co-management of a project funded by Italian Railway Network Society (RFI) aimed at developing an automatic inspection system for train pantographs; a "Marie Curie Initial Training Network" grant, for a four-year research training project in Medical Imaging using Bio-Inspired and Soft Computing; a grant from "Compagnia diS. Paolo" on "Bioinformatic and experimental dissection of the signalling pathways underlying dendritic spine function".

He has been Editor-in-chief of the "Journal of Artificial Evolution and Applications" from 2007 to 2010. Since 1999, he has been chair of EvoIASP, an event dedicated to evolutionary computation for image analysis and signal processing, now a track of the EvoApplications conference. Since 2005, he has co-chaired MedGEC, workshop on medical applications of evolutionary computation at GECCO. Co-editor of special issues of journals dedicated to Evolutionary Computation for Image Analysis and Signal Processing. Member of the Editorial Board of the journals “Evolutionary Computation” and “Genetic Programming and Evolvable Machines”.

He has been awarded the "Evostar 2009 Award", in recognition of the most outstanding contribution to Evolutionary Computation.

NEW Exploratory Landscape Analysis

Whenever one performs optimization on a (continuous) problem, having at least a vague idea of its landscape structure usually is very beneficial, as this allows to select and/or configure a suitable, well-performing optimization algorithm. However, characterizing problem landscapes poses (at least) two challenges: (i) one wants to avoid spending major parts of the overall budget on the characterization of the landscape (as this would reduce the budget that is left for the optimizer), and (ii) the properties should be automatically measurable/computable (otherwise one would always depend on the availability of some expert, i.e., a real person). As a result, over the last decade an entire research area - denoted Exploratory Landscape Analysis (ELA) - has developed around the topic of automated and feature-based problem characterization for continuous optimization problems.
Within this tutorial, we will first introduce the general concepts of automated algorithm selection - being one of the main use cases of ELA - as well as ELA itself. Next, we will provide a detailed overview of its state of the art, succeeded by a brief presentation of exemplary success stories for the usage of ELA. Amongst others, this will include studies on algorithm selection and configuration, the detection of funnel structures, or the comparison of common optimization benchmarks. Moreover, we will address how ELA actually helps to improve our understanding of problem characteristics (and thus the problems themselves), as well as the search behavior of optimization algorithms.
The remainder of the tutorial will be used for an interactive live-demo, in which our participants will perform ELA on some continuous optimization problems.

Pascal Kerschke

Pascal Kerschke is a PostDoc at the group of Information Systems and Statistics at the University of Muenster (Germany). Prior to completing his PhD studies in 2017, he has received a M.Sc. degree in "Data Sciences" (2013) from the Faculty of Statistics at the TU Dortmund (Germany). His main research interests are algorithm selection (for continuous or TSP problems), as well as Exploratory Landscape Analysis (ELA) for single- and multi-objective, continuous (Black-Box) optimization problems. Furthermore, he is one of the developers of related R-packages, such as "flacco", "smoof" and "mlr".

Mike Preuss

Mike Preuss is Research Associate at ERCIS, University of Muenster, Germany. Previously, he was with the Chair of Algorithm Engineering at TU Dortmund, Germany, where he received his PhD in 2013. His research interests focus on the field of evolutionary algorithms for real-valued problems, namely on multimodal and multiobjective optimization. He is also active in computational intelligence methods for computer games, especially in procedural content generation (PGC) and realtime strategy games (RTS).


Push is a general purpose, multi-type, Turing complete programming language for programs that evolve in an evolutionary computation system. Initially developed in 2000, it has been used for a range of research projects and applications, including the production of human-competitive results and state-of-the-art work on general program synthesis.

Push and systems that evolve Push programs (such as PushGP) are available in a variety of host languages. However, the core concepts of Push are simple enough that programmers should also be able to build their own Push systems relatively quickly, and to incorporate them into their own evolutionary computation systems. This tutorial will present examples and best practices that will help participants to use Push effectively in their own work, whether they use existing libraries or develop their own.

Push has unusually simple syntax, which makes it particularly easy to randomly generate and vary valid programs. It nonetheless supports rich data and control structures, which in most other languages involve syntax restrictions that can be difficult to maintain during evolutionary change. Furthermore, the data and control structures used by a Push program can themselves emerge through the evolutionary process.

This tutorial will provide a detailed introduction to the Push programming language, and will demonstrate the use of the PushGP genetic programming system with open source libraries in Python (PyshGP) and Clojure (Clojush). Participants will be invited to install and interact with these libraries during the tutorial.

Interleaved with our description and demonstrations of Push and PushGP will be demonstrations of the use of analytical tools to explore ways in which evolved Push programs are actually taking advantage of the language’s expressive features. We will illustrate, for example, the effective use of multiple types and type-appropriate functions, the evolution and modification of code blocks and looping/recursive constructs, and the ability of Push programs to handle multiple, potentially related tasks. We will also briefly illustrate Push-based "autoconstructive evolution" systems, in which evolutionary methods co-evolve with solutions to problems.

We will conclude with a brief review of over a decade of Push-based research, including the production of human-competitive results, along with recent enhancements to Push that are intended to support the evolution of complex and robust software systems.

Lee Spector

Lee Spector is a Professor of Computer Science in the School of Cognitive Science at Hampshire College in Amherst, Massachusetts, and an adjunct professor in the Department of Computer Science at the University of Massachusetts, Amherst. He received a B.A. in Philosophy from Oberlin College in 1984 and a Ph.D. from the Department of Computer Science at the University of Maryland in 1992. His areas of teaching and research include genetic and evolutionary computation, quantum computation, and a variety of intersections between computer science, cognitive science, evolutionary biology, and the arts. He is the Editor-in-Chief of the journal Genetic Programming and Evolvable Machines (published by Springer) and a member of the editorial board of Evolutionary Computation (published by MIT Press). He is also a member of the SIGEVO executive committee and he was named a Fellow of the International Society for Genetic and Evolutionary Computation.

More info: http://hampshire.edu/lspector


Nic McPhee

Theory of Estimation-of-Distribution Algorithms

Estimation-of-distribution algorithms (EDAs) are general metaheuristics for optimization that represent a more recent and popular alternative to classical approaches like evolutionary algorithms. In a nutshell, EDAs typically do not directly evolve populations of search points but build probabilistic models of promising solutions by repeatedly sampling and selecting points from the underlying search space. However, until recently the theoretical knowledge of the working principles of EDAs was relatively limited.

In the last few years, there has been made significant progress in the theoretical understanding of EDAs. This tutorial provides an up-to-date overview of the most commonly analyzed EDAs and the most important theoretical results in this area, ranging from convergence to runtime analyses. Different algorithms and objective functions, including optimization under uncertainty (i. e. noise) are covered. The tutorial will present typical benchmark functions and tools relevant in the theoretical analysis. It will be demonstrated that some EDAs are very sensitive with respect to their parameter settings and that their runtime can be optimized for very different choices of learning parameters. Altogether, the tutorial with make the audience familiar with the state of the art in the theory of EDAs and the most useful techniques for the analysis. We will conclude with open problems and directions for future research.

Carsten Witt

Carsten Witt is an associate professor at the Technical University of Denmark. He received his diploma and Ph.D. in Computer Science from the Technical University of Dortmund in 2000 and 2004, respectively. Carsten's main research interests are the theoretical aspects of randomized search heuristics, in particular evolutionary algorithms, ant colony optimization and particle swarm optimization. He co-organized the biannual Dagstuhl seminar ""Theory of Evolutionary Algorithms"" in 2008 and 2010 and has given tutorials on the computational complexity of bioinspired search heuristics in combinatorial optimization at several previous GECCOs and other venues. Carsten Witt is a member of the steering committee of the international Theory of Randomized Search Heuristics (ThRaSH) workshop, which he co-organized in 2011, and a member of the editorial boards of Evolutionary Computation and Theoretical Computer Science. Together with Frank Neumann, he has authored the textbook ""Bioinspired Computation in Combinatorial Optimization – Algorithms and Their Computational Complexity"", published by Springer.