Two days of free tutorials and workshops (included with conference registration) presented by some of the world's foremost experts in topics of interest to genetic and evolutionary computation researchers and practitioners.

Introductory Tutorials

Complex Networks
  • Marco Tomassini University of Lausanne, Switzerland
Evolutionary Computation: A Unified Approach
  • Kenneth A. De Jong George Mason University, Fairfax, VA
Evolutionary Multiobjective Optimization
  • Dimo Brockhoff INRIA Lille - Nord Europe, France
  • Tobias Wagner Technische Universität Dortmund
Evolving Neural Networks
  • Risto Miikkulainen University of Texas at Austin
Genetic Programming
  • Una-May O'Reilly Massachusetts Institute of Technology, US
  • John R. Woodward University of Stirling, UK
  • Daniel R. Tauritz Missouri University of Science and Technology
Introducing rule-based machine learning: capturing complexity
  • Ryan Urbanowicz University of Pennsylvania, USA
NEW Introduction to Randomized Continuous Optimization
  • Youhei Akimoto Shinshu University, Japan
  • Anne Auger Inria Saclay-Ile-de-France
  • Nikolaus Hansen INRIA Saclay, France
NEW Introductory Statistics for EC: A Visual Approach
  • Mark Wineberg
Model-Based Evolutionary Algorithms
  • Dirk Thierens Utrecht University, The Netherlands
  • Peter A.N. Bosman Centre for Mathematics and Computer Science, The Netherlands
Representations for Evolutionary Algorithms
  • Franz Rothlauf Johannes Gutenberg-Universtität Mainz
NEW Runtime Analysis of Population-based Evolutionary Algorithms
  • Per Kristian Lehre University of Nottingham, UK
  • Pietro S. Oliveto University of Sheffield, UK
NEW Theory for Non-Theoreticians
  • Benjamin Doerr Ecole Polytechnique
  • Carola Doerr CNRS & Universite Pierre et Marie Curie (Paris 6), France

Advanced Tutorials

NEW Biased Random-Key Genetic Algorithms
  • mauricio.resende Amazon.com
  • Celso Ribeiro Universidade Federal Fluminense, Brazil
Blind No More: Deterministic Mutation and Recombination Operators for Evolutionary Algorithms and Local Search
  • Darrell Whitley Colorado State University, USA
NEW CMA-ES and Advanced Adaptation Mechanisms
  • Youhei Akimoto Shinshu University, Japan
  • Anne Auger Inria Saclay-Ile-de-France
  • Nikolaus Hansen INRIA Saclay, France
Constraint-Handling Techniques used with Evolutionary Algorithms
  • Carlos Artemio Coello CINVESTAV-IPN, Mexico
Expressive Genetic Programming: Concepts and applications
  • Lee Spector Hampshire College, USA
  • Nic McPhee University of Minnesota
Generative and Developmental Systems
  • Kenneth Stanley University of Central Florida
Semantic Genetic Programming
  • Alberto Moraglio University of Exeter, UK
  • Krzysztof Krawiec Poznan University of Technology, Poland
NEW 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
Theory of Swarm Intelligence
  • Dirk Sudholt The University of Sheffield
NEW Visualization in Multiobjective Optimization
  • Bogdan Filipic Jozef Stefan Institute, Slovenia
  • Tea Tušar INRIA Lille – Nord Europe, France

Specialized Tutorials

Automatic (Offline) Configuration of Algorithms
  • Thomas Stützle IRIDIA laboratory, ULB, Belgium
  • Manuel López-Ibáñez University of Manchester, UK
NEW Cloudy distributed evolutionary computation
  • JJ Merelo CITIC U. Granada
NEW Evolutionary Computation and Cryptology
  • Stjepan Picek KU Leuven, Belgium and Faculty of Electrical Engineering and Computing, Zagreb, Croatia
NEW Evolutionary Computation for Feature Selection and Feature Construction
  • Mengjie Zhang Victoria University of Wellington
  • bing.xue Victoria University of Wellington
Evolutionary Computation in Games
  • Julian Togelius
Intelligent Systems for Smart Cities
  • Enrique Alba University of Málaga, Spain
Medical Applications of Evolutionary Computation
  • Stephen L. Smith University of York, UK

Introductory Tutorials

Complex Networks

Complex networks are everywhere around us. They play a central role in many ways, from internet-mediated social networks, to transportation, biological processes, and the transmission of information among others. This tutorial will provide an overview and synthesis of state-of-the-art knowledge on complex networks, thus allowing researchers to better understand their structure, function, and dynamics.

The following subjects will be treated.

  • What are complex networks? Examples from several fields and fundamental structural features.
  • Characterization of complex networks: network statistics.
  • Models of complex networks: Erdos-Renyi random graphs, Watts-Strogatz small worlds, preferential attachment and Barabasi-Albert growing networks.
  • Networks embedded in physical space, random geometric graphs.
  • Network evolution: Dynamical complex networks.
  • Dynamics on networks: epidemic spreading.
  • Applications of complex network theory in population-based metaheuristics and to the fitness landscapes of hard problems.

Marco Tomassini

Marco Tomassini is a professor of Computer Science at the Information Systems Department of the University of Lausanne, Switzerland. He got a Doctor's degree in theoretical chemistry from the University of Perugia, Italy, working on computer simulations of condensed matter systems. His current research interests are centered around the application of biological ideas to artificial systems. His current main research interests are the modeling of evolutionary games in networks, experimental games, complex networks and systems, and the structure of hard combinatorial search spaces. He is also active in evolutionary computation, especially spatially structured systems, genetic programming, and the structure of program search spaces. He has been Program Chairman of several international events and has published many scientific papers and several authored and edited books in these fields. He has received the EvoStar 2010 Award in recognition for outstanding contribution to evolutionary computation.

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 se 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.

Evolutionary Multiobjective Optimization

Many optimization problems are multiobjective in nature in the sense that multiple, conflicting criteria need to be optimized simultaneously. Due to the conflict between objectives, usually, no single optimal solution exists. Instead, the optimum corresponds to a set of so-called Pareto-optimal solutions for which no other solution has better function values in all objectives.

Evolutionary Multiobjective Optimization (EMO) algorithms are widely used in practice for solving multiobjective optimization problems due to several reasons. As randomized blackbox algorithms, EMO approaches allow to tackle problems with nonlinear, nondifferentiable, or noisy objective functions. As set-based algorithms, they allow to compute or approximate the full set of Pareto-optimal solutions in one algorithm run---opposed to classical solution-based techniques from the multicriteria decision making (MCDM) field. Using EMO approaches in practice has two other advantages: they allow to learn about a problem formulation, for example, by automatically revealing common design principles among (Pareto-optimal) solutions (innovization) and it has been shown that certain single-objective problems become easier to solve with randomized search heuristics if the problem is reformulated as a multiobjective one (multiobjectivization).

This tutorial aims at giving a broad introduction to the EMO field and at presenting some of its recent research results in more detail. More specifically, I am 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, I will present some of the most important research results in areas such as indicator-based EMO, preference articulation, and performance assessment.

Though classified as introductory, this tutorial is intended for both novices and regular users of EMO. Those without any knowledge will learn about the foundations of multiobjective optimization and the basic working principles of state-of-the-art EMO algorithms. Open questions, presented throughout the tutorial, can serve for all participants as a starting point for 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). Since November 2011, he has been a permanent researcher at INRIA Lille - Nord Europe, France. 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.

Tobias Wagner

Tobias Wagner obtained his diploma in computer science (Dipl.-Inf.) from the University of Dortmund, Germany in 2006. He received his PhD in mechanical engineering (Dr.-Ing.) from the Technische Universität Dortmund, Germany in 2013. Between June 2006 and September 2013 he held a scientific assistant position at the Institute of Machining Technology (ISF). Since October 2013 he works as a nonpermanent "Akademischer Rat" (academic councilor) at the ISF. His research is focused on surrogate-assisted single- and multiobjective optimization and sequential design techniques. He is particularly interested in industrial and technical applications of EMO methods. Methodically, he works on the use of performance indicators and preference information within sequential design techniques. In 2015, Tobias Wagner co-hosted the EMO Tutorial at GECCO 2015. Together with Dimo Brockhoff, Boris Naujoks, and Michael Emmerich, he currently organizes the Lorentz Center workshop "SAMCO: Surrogate-Assisted Multi-Criteria Optimization", which will be held in February 2016.

Evolving Neural Networks

Neuroevolution, i.e. evolution of artificial neural networks, has recently emerged as a powerful technique for solving challenging reinforcement learning problems. Compared to traditional (e.g. value-function based) methods, neuroevolution is especially strong in domains where the state of the world is not fully known: The state can be disambiguated through recurrency, and novel situations handled through pattern matching. In this tutorial, I will review (1) neuroevolution methods that evolve fixed-topology networks, network topologies, and network construction processes, (2) ways of combining traditional neural network learning algorithms with evolutionary methods, and (3) applications of neuroevolution to control, robotics, artificial life, and games.

Demos: The tutorial includes over 30 videos illustrating methods and applications of neuroevolution, including rocket control, multilegged walking, predator-prey coevolution, evolving morphology and behavior for virtual creatures, the NERO machine-learning video game, and a Turing Test for game bots.

Risto Miikkulainen

Risto Miikkulainen is a Professor of Computer Sciences at the University of Texas at Austin. 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 for evolving neural networks and applying these methods to game playing, robotics, and intelligent control. He is an author of over 350 articles on neuroevolution, connectionist natural language processing, and the computational neuroscience of the visual cortex. He is an associate editor of IEEE Transactions on Computational Intelligence and AI in Games and Cognitive Systems Research, and a member of the Board of Governors of the International Neural Networks Society.

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 framework. It explains how the powerful capability of genetic programming is derived from modular algorithmic components: executable representations such as an abstract syntax tree, variation operators that preserve syntax and explore a variable length, hierarchical solution space, appropriately chosen programming functions and fitness function specification.

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.


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, including live demos, will illustrate and reinforce the issues of practical application. This technique has continually 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: 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. Knowledge of genetic programming will be assumed.

John R. Woodward

John R. Woodward s a lecturer at the University of Stirling, within the CHORDS group (http://chords.cs.stir.ac.uk/) and is employed on the DAASE project (http://daase.cs.ucl.ac.uk/), and for the previous four years was a lecturer with the University of Nottingham. 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, particularly Search Based Software Engineering, Artificial Intelligence/Machine Learning and in particular Genetic Programming. He has over 50 publications in Computer Science, Operations Research and Engineering which include both theoretical and empirical contributions, and given over 100 talks at International Conferences and as an invited speaker at Universities. He has worked in industrial, military, educational and academic settings, and been employed by EDS, CERN and RAF and three UK Universities.

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.

Introducing rule-based machine learning: capturing complexity

In the context of evolutionary machine learning, rule-based machine learning (RBML) algorithms are a unique and often overlooked class of algorithms with flexible features that set them apart from other strategies, particularly with respect to modeling complex systems. Learning classifier systems (LCS), or more specifically Michigan-style LCSs, being the most prevalent and archetypical of the RBML algorithms, will be the focus of this tutorial. These algorithms combine the global search of evolutionary algorithms with the local optimization of reinforcement or supervised learning. Michigan-style LCS algorithms uniquely distribute learned patterns over a collaborative population of individually interpretable (IF: THEN) rules. This allows the algorithm to flexibly and effectively describe complex and diverse problem spaces found in behavior modeling, function approximation, classification, prediction, and data mining.

This proposed tutorial will improve and expand upon the one I presented last year in collaboration with Dr. Will Browne. I will focus on presenting an accessible, gentle introduction to how RBML algorithms work, and to what types of problems they have been or could be applied to, discussing their advantages and drawbacks with respect to other machine learning approaches. Furthermore, I will incorporate a guided, hands-on demonstration of how to get an LCS algorithm up and running, using the LCS algorithm I developed called ‘ExSTraCS 2.0’ published earlier this year. ExSTraCS provides not only a convenient example implementation, as it is clearly annotated, coded in python, and designed to be as user friendly as possible, but it is a very powerful tool for real-world applications. Specifically in the recent publication of ExSTraCS 2.0, we demonstrated that in addition to having been applied successfully to a study in genetic epidemiology, this algorithm was the first ever to report solving the extremely complex 135-bit multiplexer computer science benchmark problem directly. The overall goal of this tutorial is to increase awareness of RBML algorithms as not only a viable, but often advantageous alternative to other machine learning approaches, as well as to promote a fundamental understanding of how they work, and where they can be applied. While ExSTraCS will be the focus of the demonstration, this tutorial will also review and contrast many of the other major LCS algorithms available in the literature, as well as discuss statistical analysis, interpretation, and data visualization strategies for knowledge discovery. Additionally I will tie into this tutorial to the upcoming publication of an introductory textbook on LCS of which I am a co-author with Dr. Will Browne. Specifically, we had previously coded and posted some easy code for an ‘educational’-learning classifier system (eLCS) also freely available online. We will pair code and analysis demonstrations directly with eLCS and ExSTrACS, as two clear, and available examples of Learning Classifier Systems.

Ryan Urbanowicz

Dr. Urbanowicz’s research is focused on bioinformatics, machine learning, epidemiology, data mining, and the development of a new learning classifier system that is maximally functional, accessible, and easier to use and interpret. He has written one of the most cited and regarded reviews of the Learning Classifier System research field as well as 12 additional peer-reviewed LCS research papers, has co-chaired the International Workshop on Learning Classifier Systems for the past 4 years, and has recently published and a new open source learning classifier system algorithm implemented in python, called ExSTraCS. He has also given several invited introductory lectures on LCS algorithms in addition to co-presenting this tutorial in 2013. Dr. Urbanowicz received a Bachelors and Masters of Biological Engineering from Cornell University, as well as a PhD in Genetics from Dartmouth College. Currently he is a post-doctoral researcher in the Geisel School of Medicine, about to transition to a new research position at the University of Pennsylvania, USA.

NEW Introduction to Randomized Continuous Optimization

Continuous optimization problems arise in many domains in academia or industry. They are commonly formulated as black-box problems that can solely return function values at queried points but no other information like gradient of the function. Typical difficulties that the optimizer then need to face are non-separability, ill-conditioning and ruggedness of the function. In this context, randomized methods like evolution strategies have their raison d'etre.

This tutorial will start by discussing typical difficulties of optimization problems in continuous domain. It will then introduce basics of randomized method in continuous domain with a specific focus on evolution strategies. In particular sampling of solutions and adaptation mechanism will be presented. Different algorithms will be introduced including simple evolution strategies, EDAs and CMA-ES. For this latter algorithm, the most advanced notions will be presented in the companion tutorial.

Theoretical concepts related to algorithm design will also be introduced, namely progress and convergence rates and invariance.

DEMO: In this tutorial, we will run some randomized algorithms in python and illustrate how they behave. We will demonstrate the importance of invariance properties by comparing the results of different algorithms on functions with/without transformations in objective and search spaces.

Youhei Akimoto

Youhei Akimoto is an assistant professor at Shinshu University, 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 started working at Shinshu University in 2013. His research interests include design principle and theoretical analysis of stochastic search heuristics in continuous domain, in particular, the Covariance Matrix Adaptation Evolution Strategy.

Anne Auger

Anne Auger is a permanent researcher at the French National Institute for Research in Computer Science and Control (INRIA). She received her diploma (2001) and PhD (2004) in mathematics from the Paris VI University. Before to join INRIA, she worked for two years (2004-2006) at ETH in Zurich. Her main research interest is stochastic continuous optimization including theoretical aspects and algorithm designs. She is a member of ACM-SIGECO executive committee and of the editorial board of Evolutionary Computation. She has been organizing the biannual Dagstuhl seminar "Theory of Evolutionary Algorithms" in 2008 and 2010 and served as track chair for the theory and ES track in 2011, 2013 and 2014. Together with Benjamin Doerr, she is editor of the book "Theory of Randomized Search Heuristics".

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).

NEW Introductory Statistics for EC: A Visual Approach

In the past, it was common to see papers published in Evolutionary Computational conferences that presented experimental results without any statistical analysis performed. Fortunately, it is now becoming widely accepted that experimental results lacking proper statistical analysis must be considered anecdotal at best, or even wholly inaccurate. In many areas within EC, and especially at GECCO, if your paper does not include a proper statistical analysis it will be rejected. Yet still many researchers in the GEC field still exhibit an unfortunate lack of statistical rigor when performing and analyzing experiments.
This tutorial, a staple at past GECCOs, aims at providing the basic statistical framework that all experimenters in the EC field should follow. It covers introductory topics in statistics such as the T test, confidence intervals, non-parametric statistics, and will touch on multivariate and multifactorial analysis such as the Analysis of Variance (ANOVA) and regression analysis (both linear and polynomial), time permitting.
The tutorial is presented at an introductory level, and takes a very visual approach to statistics; relying on graphics and animation to provide an intuitive understanding of the subject, instead of the traditional equations, which cater to only the initiated. In other words, it is meant for any EC researcher, independent of their mathematical training, who want to compare their newly designed EC system against established EC systems to see if there is an improvement, or who want to determine which EC system performs better on their chosen problem; i.e. nearly everyone.
It is vital, if our community is to be taken seriously, for us to continue to educate ourselves (especially new Graduate students) on the statistical techniques that are considered de rigor for experiments performed in any field, such as ours, that is stochastic in nature.

Mark Wineberg

Prof. Wineberg has been actively researching the field of Evolutionary Computation (EC) and Genetic Algorithms (GA) since 1993 while he was still a graduate student at Carleton University, Ottawa, Canada. Over the years he has published on various topics including: the intersection of Genetic Algorithms and Genetic Programming, enhancing the GA for improved behavior in dynamic environments through specialized multiple populations, and exploring the concept of distances and diversity in GA populations. He is currently continuing his research in dynamic environments and studying the properties that allow one population to evolve more readily than another. Prof. Wineberg also teaches an undergraduate course at Guelph on computer simulation and modeling of discrete stochastic systems, which emphasizes proper statistical analysis, as well as a graduate course on experimental design and analysis for computer science, which is an outgrowth of the statistical analysis tutorial given at GECCO.

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 use of statistical models in the Linkage Tree Genetic Algorithm (LTGA). 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). Peter is best known for his status of active researcher in the area of EDAs since its upcoming and has (co-)authored over 80 refereed publications, studying 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) and (co-)local chair (2013).

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.

In EA practice one can distinguish two complementary approaches. The first approach uses indirect representations where a solution is encoded in a standard data structure, such as strings, vectors, or discrete permutations, and standard off-the-shelf search operators are applied to these genotypes. This is for example the case in standard genetic algorithms, evolution strategies, and some genetic programming approaches like grammatical evolution or cartesian genetic programming. To evaluate the solution, the genotype needs to be mapped to the phenotype space. The proper choice of this genotype-phenotype mapping is important for the performance of the EA search process. The second approach, the direct representation, encodes solutions to the problem in its most 'natural' space and designs search operators to operate on this 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 properties of representations are locality and redundancy.

Locality is a result of the interplay between the search operator and the genotype-phenotype mapping. 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.

NEW Runtime Analysis of Population-based Evolutionary Algorithms

Populations are at the heart of evolutionary algorithms (EAs). They provide the genetic variation which selection acts upon. A complete picture of EAs can only be obtained if we understand their population dynamics. A rich theory on runtime analysis (also called time-complexity analysis) of EAs has been developed over the last 20 years. The goal of this theory is to show, via rigorous mathematical means, how the performance of EAs depends on their parameter settings and the characteristics of the underlying fitness landscapes.

Initially, runtime analysis of EAs was mostly restricted to simplified EAs that do not employ large populations, such as the (1+1) EA. This tutorial introduces more recent techniques that enable runtime analysis of EAs with realistic population sizes.

The tutorial begins with a brief overview of the population-based EAs that are covered by the techniques. We recall the common stochastic selection mechanisms and how to measure the selection pressure they induce. The main part of the tutorial covers in detail widely applicable techniques tailored to the analysis of populations. We discuss random family trees and branching processes, drift and concentration of measure in populations, and level-based analyses.

To illustrate how these techniques can be applied, we consider several fundamental questions: When are populations necessary for efficient optimisation with EAs? What is the appropriate balance between exploration and exploitation and how does this depend on relationships between mutation and selection rates? What determines an EA's tolerance for uncertainty, e.g. in form of noisy or partially available fitness?

Per Kristian Lehre

Per Kristian Lehre received MSc and PhD degrees in Computer Science from the Norwegian University of Science and Technology (NTNU) in Trondheim, Norway. He finished the PhD in 2006 under the supervision of Prof Pauline Haddow, and joined the School of Computer Science at The University of Birmingham, UK, as a Research Fellow in January 2007 with Prof Xin Yao. He was a Post Doctoral Fellow at DTU Informatics, Technical University of Denmark in Lyngby, Denmark from April 2010. He is since September 2011 a Lecturer in the School of Computer Science at the University of Nottingham, UK. 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 numerous best paper awards, including GECCO (2013, 2010, 2009, 2006) and ICSTW (2008). He is vice-chair of IEEE Task Force on Theoretical Foundations of Bio-inspired Computation, and a member of the editorial board of Evolutionary Computation. He has guest-edited special issues of Theoretical Computer Science and IEEE Transaction on Evolutionary Computation on theoretical foundations of evolutionary computation. Dr Lehre has given many tutorials on evolutionary computation in summer schools (UK: 2007, France: 2009, 2010, and 2011, Estonia: 2010), as well as major conferences and workshops (GECCO 2013 and 2014, CEC 2013, ThRaSH 2013). He is the main coordinator of the 2M euro EU-funded project SAGE which brings together 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.

NEW Theory for Non-Theoreticians

This tutorial addresses GECCO attendees who do not or just seldomly use
mathematical proofs in their everyday research activities. We provide a smooth introduction to the theory of evolutionary computation (EC). Complementing other introductory theory tutorials, we do NOT aim at equipping you with tools or theorems that can be beneficial for your research. Instead, after this tutorial, you will have a clear opinion on
- what theory of evolutionary algorithms aims at,
- how research in theory of evolutionary computation is done,
- how to interpret statements from the theory literature, as well as
- the limits of what theory can offer to more applied approaches to EC.

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".

Carola Doerr

Carola Doerr (Carola.Doerr@mpi-inf.mpg.de, http://www-ia.lip6.fr/~doerr/) is a CNRS researcher at the Université Pierre et Marie Curie (Paris 6). She studied mathematics at Kiel University (Germany, Diploma in 2007) andcomputer science at the Max Planck Institute for Informatics and Saarland University (Germany, PhD in 2011). From Dec. 2007 to Nov. 2009, Carola Doerr has worked as a business consultant for McKinsey & Company, mainly in the area of network optimization, where she has used randomized search heuristics to compute more efficient network layouts and schedules. Before joining the CNRS she was a post-doc at the Université Diderot (Paris 7) and the Max Planck Institute for Informatics.

Carola Doerr's main research interest is in the theory of randomized algorithms, both in the design of efficient algorithms as well as in finding a suitable complexity theory for randomized search heuristics. Most of her papers are on black-box complexities, a theory-guided approach to explore the limitations of heuristic search algorithms. She has contributed to the field of evolutionary computation also through results on the runtime analysis of evolutionary algorithms and drift analysis, as well as through the development of search heuristics for solving geometric discrepancy problems.

Advanced Tutorials

NEW Biased Random-Key Genetic Algorithms

A biased random-key genetic algorithm (BRKGA) is a general search procedure for finding optimal or near-optimal solutions to hard combinatorial optimization problems. It is derived from the random-key genetic algorithm of Bean (1994), differing in the way solutions are combined to produce offspring. BRKGAs have three key features that specialize genetic algorithms:

1) A fixed chromosome encoding using a vector of N random keys or alleles over the real interval [0, 1), where the value of N depends on the instance of the optimization problem;

2) A well-defined evolutionary process adopting parameterized uniform crossover to generate offspring and thus evolve the population;

3) The introduction of new chromosomes called mutants in place of the mutation operator usually found in evolutionary algorithms.

Such features simplify and standardize the procedure with a set of self-contained tasks from which only one is problem-dependent: that of decoding a chromosome, i.e. using, the keys to construct asolution to the underlying optimization problem, from which the objective function value or fitness can be computed. BRKGAs have the additional characteristic that, under a weak assumption, crossover always produces feasible offspring and, therefore, a repair or healing procedure to recover feasibility is not required in a BRKGA.

In this tutorial we review the basic components of a BRKGA and introduce an Application Programming Interface (API) for quick implementations of BRKGA heuristics. We then apply the framework to a number of hard combinatorial optimization problems, including 2-D and 3-D packing problems, network design problems, routing problems, scheduling problems, and data mining. We conclude with a brief review of other domains where BRKGA heuristics have been applied.


Mauricio G. C. Resende grew up in Rio de Janeiro (BR), West Lafayette (IN), and Amherst (MA). He did his undergraduate work in electrical engineering (systems engineering concentration) at the Pontifical Catholic U. of Rio de Janeiro. He obtained an MS in operations research from Georgia Tech and a PhD in operations research from the U. of California, Berkeley. He is most known for his work with metaheuristics, in particular GRASP and biased random-key genetic algorithms, as well as for his work with interior point methods for linear programming and network flows. Mauricio has published over 200 papers on combinatorial optimization and holds 15 U.S. patents. He has edited five handbooks, including the Handbook of Applied Optimization and the Handbook of Optimization in Telecommunications, and is on the editorial boards of several optimization journals, including Networks, J. of Global Optimization, J. of Heuristics, Computational Optimization and Applications, R.A.I.R.O., and International Transactions in Operational Research.

Prior to joining Amazon.com in December 2014 as a Principal Research Scientist, Mauricio was a Lead Inventive Scientist at the Mathematical Foundations of Computing Department of AT&T Bell Labs and at the Algorithms and Optimization Research Department of AT&T Labs Research in New Jersey.

Celso Ribeiro

Celso Carneiro Ribeiro is a full Professor at the Department of Computer Science of Universidade Federal Fluminense, Brazil. He chaired the Departments of Electrical Engineering (1983-1987) and Computer Science (1993-1995) of the Catholic University of Rio de Janeiro. He has a bachelor degree in Electrical Engineering and a M.Sc. degree in Systems Engineering. He obtained his doctorate in Computer Science at the Ecole Nationale Supérieure des Télécommunications, France, in 1983. His research is supported by the Brazilian Council of Scientific and Technological Development and by the Rio de Janeiro State Foundation for Research Support (FAPERJ). Dr. Ribeiro was a President of the Brazilian Operations Research Society (SOBRAPO, 1989-1990) and a President of the Latin-American Association of Operations Research Societies (ALIO, 1992-1994), and a Vice-President of IFORS (1998-2000). He is the editor of four books and the author of more than 120 papers in international journals and book chapters. He is an Associate Editor of the journals Discrete Optimization, Journal of Heuristics, and RAIRO Recherche Opérationnelle. Dr. Ribeiro is currently the General Editor of the journal International Transactions in Operational Research. He also chaired the Department of Modernization Programs of the Brazilian Ministry Education (April 2005 - April 2007) and Subsecretary of Education of the State of Rio de Janeiro (April 2007 – February 2008). He is a member of the Brazilian Academy of Sciences.

NEW 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. Recent variants for large-scale optimization will be also presented, where we will see how the design principles are applied and the parameters are tuned.

We will demonstrate the ease of using different adaptation mechanisms and different parameter settings within the CMA-ES module (in Python). We will run the CMA-ES with different settings and visualize their behavior on some benchmark problems and see how different algorithmic components and different parameter settings have impact on the performance. The CMA-ES is impremented in different programming languages such as Matlab/Octave, Python, C++, Java, etc. They can be found in https://www.lri.fr/~hansen/cmaes_inmatlab.html

Youhei Akimoto

Youhei Akimoto is an assistant professor at Shinshu University, 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 started working at Shinshu University in 2013. His research interests include design principle and theoretical analysis of stochastic search heuristics in continuous domain, in particular, the Covariance Matrix Adaptation Evolution Strategy.

Anne Auger

Anne Auger is a permanent researcher at the French National Institute for Research in Computer Science and Control (INRIA). She received her diploma (2001) and PhD (2004) in mathematics from the Paris VI University. Before to join INRIA, she worked for two years (2004-2006) at ETH in Zurich. Her main research interest is stochastic continuous optimization including theoretical aspects and algorithm designs. She is a member of ACM-SIGECO executive committee and of the editorial board of Evolutionary Computation. She has been organizing the biannual Dagstuhl seminar "Theory of Evolutionary Algorithms" in 2008 and 2010 and served as track chair for the theory and ES track in 2011, 2013 and 2014. Together with Benjamin Doerr, she is editor of the book "Theory of Randomized Search Heuristics".

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.

Expressive Genetic Programming: Concepts and applications

The language in which evolving programs are expressed can have significant impacts on the dynamics and problem-solving capabilities of a genetic programming system. In GP these impacts are driven by far more than the absolute computational power of the languages used; just because a computation is theoretically possible in a language, it doesn’t mean it’s readily discoverable or leveraged by evolution. Highly expressive languages can facilitate the evolution of programs for any computable function using, as appropriate, multiple data types, evolved subroutines, evolved control structures, evolved data structures, and evolved modular program and data architectures. In some cases expressive languages can even support the evolution of programs that express methods for their own reproduction and variation (and hence for the evolution of their offspring).

This tutorial will present a range of approaches that have been taken for evolving programs in expressive programming languages. We will then provide a detailed introduction to the Push programming language, which was designed specifically for expressiveness in genetic programming systems. Push programs are syntactically unconstrained but can nonetheless make use of multiple data types and express arbitrary control structures, supporting the evolution of complex, modular programs in a particularly simple and flexible way.

Interleaved with our description of the Push language will be demonstrations of the use of analytical tools such as graph databases and program diff/merge 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’ll 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

Generative and Developmental Systems

In evolutionary computation it is common for the genotype to map directly to the phenotype such that each gene in the genotype represents a single discrete component of the phenotype. While this convention is widespread, in nature the mapping is not direct. Instead, the genotype maps to the phenotype through a process of development, which means that each gene may be activated multiple times and in multiple places in the process of constructing the phenotype.

This tutorial will examine why such indirect mapping may be critical to the continuing success of evolutionary computation. Rather than just an artifact of nature, indirect mapping means that vast phenotypic spaces (e.g. the 100 trillion connection human brain) can be searched effectively in a space of far fewer genes (e.g. the 30,000 gene human genome). The tutorial will introduce this research area, called Generative and Developmental Systems (GDS; now part of the Complex Systems track at GECCO), by surveying milestones in the field and introducing its most profound puzzles. In particular, the first half of the tutorial will review the most historically high-impact algorithms and achievements in the field while the second half will probe more deeply into cutting-edge research and its greatest current challenges.

Most importantly, what is the right abstraction of natural development to capture its essential advantages without introducing unnecessary overhead into the search?

Kenneth Stanley

Kenneth Stanley is an associate professor in the Department of Electrical Engineering and Computer Science at the University of Central Florida and director of the Evolutionary Complexity Research Group. He received a B.S.E. from the University of Pennsylvania in 1997 and received a Ph.D. in 2004 from the University of Texas at Austin. He is an inventor of the Neuroevolution of Augmenting Topologies (NEAT), HyperNEAT, and novelty search algorithms for evolving complex artificial neural networks. His main research contributions are in neuroevolution (i.e. evolving neural networks), generative and developmental systems (GDS), coevolution, machine learning for video games, and interactive evolution. He has won best paper awards for his work on NEAT, NERO, NEAT Drummer, FSMC, HyperNEAT, ES-HyperNEAT, adaptive HyperNEAT, novelty search, Galactic Arms Race, and NA-IEC. A founder of the Generative and Developmental Systems track at GECCO, he is also an associate editor of IEEE Transactions on Computational Intelligence and AI in Games, on the editorial board of Evolutionary Computation journal, on the ACM SIGEVO Executive Committee, and a co-founder and the editor-in-chief of aigameresearch.org.

Semantic Genetic Programming

Semantic genetic programming is a recent, 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 a 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 number of realworld applications of this framework will be also presented. Other promising emerging approaches to semantics in GP will be reviewed. In particular, the recent developments in the behavioral programming, which aims at characterizing the entire program behavior (and not only program outputs) 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 and the Genetic Programming 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.

NEW 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 briefly cover parallelization and surrogate models to reduce the runtime, but then focus in particular on the handling of noise.

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 150 papers in peer-reviewed journals and conferences, and an H-Index of 44 (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 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 control problems (keepaway soccer, tractor control) evolution 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.

Theory of Swarm Intelligence

Social animals as found in fish schools, bird flocks, bee hives, and ant colonies are able to solve highly complex problems in nature. This includes foraging for food, constructing astonishingly complex nests, and evading or defending against predators. Remarkably, these animals in many cases use very simple, decentralized communication mechanisms that do not require a single leader. This makes the animals perform surprisingly well, even in dynamically changing environments. The collective intelligence of such animals is known as swarm intelligence and it has inspired popular and very powerful optimization paradigms, including ant colony optimization (ACO) and particle swarm optimization (PSO).

The reasons behind their success are often elusive. We are just beginning to understand when and why swarm intelligence algorithms perform well, and how to use swarm intelligence most effectively. Understanding the fundamental working principles that determine their efficiency is a major challenge.

This tutorial will give a comprehensive overview of recent theoretical results on swarm intelligence algorithms, with an emphasis on their efficiency (runtime/computational complexity). In particular, the tutorial will show how techniques for the analysis of evolutionary algorithms can be used to analyze swarm intelligence algorithms and how the performance of swarm intelligence algorithms compares to that of evolutionary algorithms.
The results shed light on the working principles of swarm intelligence algorithms, identify the impact of parameters and other design choices on performance, and thus help to use swarm intelligence more effectively.

The tutorial will be divided into a first, larger part on ACO and a second, smaller part on PSO. For ACO we will consider simple variants of the MAX-MIN ant system. Investigations of example functions in pseudo-Boolean optimization demonstrate that the choices of the pheromone update strategy and the evaporation rate have a drastic impact on the running time. We further consider the performance of ACO on illustrative problems from combinatorial optimization: constructing minimum spanning trees, solving shortest path problems with and without noise, and finding short tours for the TSP.

For particle swarm optimization, the tutorial will cover results on PSO for pseudo-Boolean optimization as well as a discussion of theoretical results in continuous spaces.

Dirk Sudholt

Dirk obtained his Diplom (Master's) degree in 2004 and his PhD in computer science in 2008 from the Technische Universitaet Dortmund, Germany, under the supervision of Prof. Ingo Wegener. He has held postdoc positions at the International Computer Science Institute in Berkeley, California, working in the Algorithms group led by Prof. Richard M. Karp and at the University of Birmingham, UK, working with Prof. Xin Yao. Since January 2012 he is a Lecturer at the University of Sheffield, UK.

His research focuses on the computational complexity of randomized search heuristics such as evolutionary algorithms and swarm intelligence algorithms like ant colony optimization and particle swarm optimization. He is an editorial board member of Evolutionary Computation and Natural Computing and receives funding from the EU's Future and Emerging Technologies scheme (SAGE project). He has more than 60 refereed publications in international journals and conferences, including 8 best paper awards at leading conferences, GECCO and PPSN. He has given 7 tutorials at ThRaSH, WCCI/CEC, GECCO, and PPSN.

NEW 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. This tutorial will provide a comprehensive overview of methods used in multiobjective optimization for visualizing either individual approximation sets or the probabilistic distribution of multiple approximation sets through the empirical attainment function (EAF).

This tutorial will be among the first comprehensive presentations of visualization methods for multiobjective optimization and will be valuable to students, researchers, algorithm designers and end users dealing with multiobjective optimization problems. Tutorial attendees will become aware of the many ways of visualizing approximation sets and the EAF, and learn about the advantages and limitations of each method.

Contents of the tutorial:

- Requirements for visualization methods
- Benchmark approximation sets that can be used for comparing visualization methods in a similar way as performance metrics and benchmark test problems are used for comparing optimization algorithms
- Two groups of methods used for visualizing individual approximation sets (for each method we will demonstrate its outcome on the benchmark approximation sets and discuss its advantages and limitations):
-- General methods (not designed for multiobjective optimization): scatter plot matrix, bubble chart, radial coordinate visualization, parallel coordinates, heatmaps, Sammon mapping, neuroscale, self-organizing maps, principal component analysis and isomap
-- Specific methods (able to handle the unique features of approximation sets): distance and distribution charts, interactive decision maps, hyper-space diagonal counting, two-stage mapping, level diagrams, hyper-radial visualization, Pareto shells, seriated heatmaps, multidimensional scaling and prosections
- Visualization of EAF values and differences

We will demonstrate how each of the introduced methods visualizes the benchmark approximation sets. In addition, for some of the methods (such as parallel coordinates, prosections and direct volume rendering) animations will be used to show their additional capabilities.

Bogdan Filipic

Bogdan Filipic received his Ph.D. degree in Computer Science from the University of Ljubljana, Slovenia, in 1993. He is now a senior researcher and head of Computational Intelligence Group at the Department of Intelligent Systems of the Jozef Stefan Institute, Ljubljana. He is also an associate professor of Computer Science at the Jozef Stefan International Postgraduate School and at the University of Ljubljana. His research interests include stochastic optimization, evolutionary computation and intelligent data analysis. Recently he has been focusing on parallelization, use of surrogate models and visualization of results in evolutionary multiobjective optimization. He is also active in promoting evolutionary computation in practice and has led optimization projects for steel production, car manufacturing and energy distribution. 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 VU University Amsterdam, The Netherlands, in Fall 2014, and was giving tutorials on industrial applications of evolutionary algorithms at WCCI 2014 and CEC 2015.

Tea Tušar

Tea Tušar is a postdoc in the Dolphin team at INRIA Lille - Nord Europe, France. She received her Ph.D. degree in Information and Communication Technologies from the Jožef Stefan International Postgraduate School, Ljubljana, Slovenia, in 2014. Before joining INRIA in 2015, she has worked at the Department of Intelligent Systems at the Jožef Stefan Institute since 2004, first as a research assistant and later as a postdoc. Her research interests include evolutionary algorithms for single- and multi-objective optimization with emphasis on visualizing and benchmarking their results and applying them to real-world problems. She served as a workshops co-chair at PPSN 2014 and co-organized GECCO’s Student Workshop in years 2013-2015.

Specialized Tutorials

Automatic (Offline) Configuration of Algorithms

Most optimization algorithms, including evolutionary algorithms and metaheuristics, and general-purpose solvers for integer or constraint programming, have often many parameters that need to be properly configured (i.e., tuned) for obtaining the best results on a particular problem. Automatic (offline) algorithm configuration methods help algorithm users to determine the parameter settings that optimize the performance of the algorithm before the algorithm is actually deployed. Moreover, automatic algorithm configuration methods may potentially lead to a paradigm shift in algorithm design and configuration because they enable algorithm designers to explore much larger design spaces than by traditional trial-and-error and experimental design procedures. Thus, algorithm designers can focus on inventing new algorithmic components, combine them in flexible algorithm frameworks, and let final algorithm design decisions be taken by automatic algorithm configuration techniques for specific application contexts.

This tutorial will be divided in two parts. The first part will give an overview of the algorithm configuration problem, review recent methods for automatic algorithm configuration, and illustrate the potential of these techniques using recent, notable applications from the presenters' and other researchers work. The second part of the tutorial will focus on a detailed discussion of more complex scenarios, including multi-objective problems, anytime algorithms, heterogeneous problem instances, and the automatic generation of algorithms from algorithm frameworks. The focus of this second part of the tutorial is, hence, on practical but challenging applications of automatic algorithm configuration. The second part of the tutorial will demonstrate how to tackle these configuration tasks using our
irace software (http://iridia.ulb.ac.be/irace), which implements the iterated racing procedure for automatic algorithm configuration. We will provide a practical step-by-step guide on using irace for the typical algorithm configuration scenario.

Thomas Stützle

Thomas Stützle is a senior research associate of the Belgian F.R.S.-FNRS working at the IRIDIA laboratory of Université libre de Bruxelles (ULB), Belgium. He received the Diplom (German equivalent of M.S. degree) in business engineering from the Universität Karlsruhe (TH), Karlsruhe, Germany in 1994, and his PhD and his habilitation in computer science both from the Computer Science Department of Technische Universität Darmstadt, Germany, in 1998 and 2004, respectively. He is the co-author of two books about ``Stochastic Local Search: Foundations and Applications and ``Ant Colony Optimization and he has extensively published in the wider area of metaheuristics including 20 edited proceedings or books, 8 journal special issues, and more than 190 journal, conference articles and book chapters, many of which are highly cited. He is associate editor of Computational Intelligence, Swarm Intelligence, and Applied Mathematics and Computation and on the editorial board of seven other journals including Evolutionary Computation and Journal of Artificial Intelligence Research. His main research interests are in metaheuristics, swarm intelligence, methodologies for engineering stochastic local search algorithms, multi-objective optimization, and automatic algorithm configuration. In fact, since more than a decade he is interested in automatic algorithm configuration and design methodologies and he has contributed to some effective algorithm configuration techniques such as F-race, Iterated F-race and ParamILS. His 2002 GECCO paper on "A Racing Algorithm For Configuring Metaheuristics" (joint work with M. Birattari, L. Paquete, and K. Varrentrapp) has received the 2012 SIGEVO impact award.

Manuel López-Ibáñez

Dr. López-Ibáñez is a lecturer in the Decision and Cognitive Sciences Research Centre at the Alliance Manchester Business School, University of Manchester, UK. He received the M.S. degree in computer science from the University of Granada, Granada, Spain, in 2004, and the Ph.D. degree from Edinburgh Napier University, U.K., in 2009. He has published 17 journal papers, 6 book chapters and 36 papers in peer-reviewed proceedings of international conferences on diverse areas such as evolutionary algorithms, ant colony optimization, multi-objective optimization, pump scheduling and various combinatorial optimization problems. His current research interests are experimental analysis and the automatic configuration and design of stochastic optimization algorithms, for single and multi-objective problems. He is the lead developer and current maintainer of the irace software package for automatic algorithm configuration (http://iridia.ulb.ac.be/irace).

NEW Cloudy distributed evolutionary computation

Cloud computing has emerged as one of the dominant frameworks for performing large-scale computation. However, having a grid, cluster or money to pay for vast amounts of cloud resources is great, but the need to do science and the high performance attached to it is not always in sync with what is provided by your friendly science funding agency. At the same time, there are nowadays many resources connected to the Internet which you can tap when free or when they are offered to you voluntarily.

In this tutorial we will, first, make a general review of volunteer/citizen grid and cloud computing resources. Then we will make a brief introduction to the JavaScript language and how it can be leveraged for programming the cloud, and which is the language used in all browsers, and explain how to create, very simply, a client-server application that uses free or low-cost cloud resources to create a fully distributed evolutionary computing system.

We will also explain which evolutionary computing paradigms are better suited to this kind of environment, introducing pool-based evolutionary algorithms and a very simple implementation; we will also show what is the state of the art in that area and how researchers, so far, have dealt with this problem and what kind of application areas we could we use.

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 Evolutionary Computation and Cryptology

Evolutionary Computation (EC) has been used with great success on various real-world problems. One domain abundant with numerous difficult problems is cryptology. Cryptology can be divided into cryptography, that informally speaking considers methods how to ensure secrecy (but also authenticity, privacy, etc.), and cryptanalysis, that deals with methods how to break cryptographic systems. Although not always in an obvious way, EC can be applied to problems from both domains.

This tutorial will first give a brief introduction to cryptology intended for general audience (therefore, omitting proofs and mathematics behind many concepts). Afterwards, we concentrate on several topics from cryptography that are successfully tackled up to now with EC and discuss why those topics are suitable to apply EC. However, care must be taken since there exists a number of problems that seem to be impossible to solve with EC and one needs to realize the limitations of the heuristics. We will discuss the choice of appropriate EC techniques (GA, GP, CGP, ES, multi-objective optimization, etc) for various problems and evaluate on the importance of that choice. Furthermore, we will discuss the gap between the cryptographic community and EC community and what does that mean for the results. By doing that, we will give a special emphasis on the perspective that cryptography presents a source of benchmark problems for the EC community. To conclude, we will present a number of topics we consider to be a strong research choice that can have a real-world impact. In that part, we give a special attention to cryptographic problems where cryptographic community successfully applied EC, but where those problems remained out of the focus of EC community.

This tutorial will also present some live demos of EC in action when dealing with cryptographic problems. We will present several problems, ways of encoding solutions, impact of the algorithms choice and finally, we will run some experiments to show the results and discuss how to assess them from cryptographic perspective.

Stjepan Picek

Stjepan Picek finished his PhD in 2015 as a double doctorate under the supervision of Lejla Batina, Elena Marchiori (Radboud University Nijmegen, The Netherlands) and Domagoj Jakobovic (Faculty of Electrical Engineering and Computing, Croatia). The topic of his research was cryptology and evolutionary computation techniques (EC) which resulted in a thesis "Evolutionary Computation in Cryptology".
Currently, Stjepan is working as a postdoc researcher at the KU Leuven, Belgium as a part of the COSIC group where he continues his research on the applications of EC in the field of cryptology. His research topics include evolutionary computation, cryptology, and machine learning.
Prior to that, Stjepan worked in industry and government.
He regularly publishes papers in both evolutionary computation and cryptographic conferences and journals.
Besides that, he is a member of several professional societies (ACM, IEEE, IACR).

NEW Evolutionary Computation for Feature Selection and Feature Construction

In data mining and machine learning, many real-world problems such as bio-data classification and biomarker detection, image analysis, text mining often involve a large number of features/attributes. However, not all the features are essential since many of them are redundant or even irrelevant, and the useful features are typically not equally important. Using all the features for classification or other data mining tasks typically does not produce good results due to the big dimensionality and the large search space. This problem can be solved by feature selection to select a small subset of original (relevant) features or feature construction to create a smaller set of high-level features using the original low-level features.

Feature selection and construction are very challenging tasks due to the large search space and feature interaction problems. Exhaustive search for the best feature subset of a given dataset is practically impossible in most situations. A variety of heuristic search techniques have been applied to feature selection and construction, but most of the existing methods still suffer from stagnation in local optima and/or high computational cost. Due to the global search potential and heuristic guidelines, evolutionary computation techniques such as genetic algorithms, genetic programming, particle swarm optimisation, ant colony optimisation, differential evolution and evolutionary multi-objective optimisation have been recently used for feature selection and construction for dimensionality reduction, and achieved great success. Many of these methods only select/construct a small number of important features, produce higher accuracy, and generated small models that are easy to understand/interpret and efficient to run on unseen data. Evolutionary computation techniques have now become an important means for handle big dimensionality and feature selection and construction.

The tutorial will introduce the general framework within which evolutionary feature selection and construction 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 bio-data classification and biomarker detection, image analysis and object recognition and pattern classification, symbolic regression, network security and intrusion detection, and text mining. EC techniques to be covered will include genetic algorithms, genetic programming, particle swarm optimisation, differential evolution, ant colony optimisation, artificial bee colony optimisation, and evolutionary multi-objective optimisation. We will show how such evolutionary computation techniques can be effectively applied to feature selection/construction and dimensionality reduction 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 350 research papers in refereed international journals and conferences in these areas.

He has been serving as an associated editor or editorial board member for seven international journals including IEEE Transactions on Evolutionary Computation, the Evolutionary Computation Journal (MIT Press) and Genetic Programming and Evolvable Machines (Springer), and as a reviewer of over 30 international journals. He has been a major chair for eight international conferences. He has also been serving as a steering committee member and a program committee member for over 80 international conferences including all major conferences in evolutionary computation. 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).

He is the Tutorial Chair for GECCO 2014 and AIS-BIO Track Chair for GECCO 2016. Since 2012, he has been co-chairing IEEE CEC, SSCI, and EvoIASP/EvoApplications conferences (he has been involving major EC conferences such as GECCO, CEC, EvoStar, SEAL). Since 2014, he has been co-organising and co-chairing the special session on evolutionary feature selection and construction at IEEE CEC and SEAL.

Prof Zhang is the Chair of the IEEE CIS Evolutionary Computation Technical Committee, a vice-chair of the IEEE CIS Task Force on Evolutionary Feature Selection and Construction, a vice-chair of the IEEE CIS Task Force on Evolutionary Computer Vision and Image Processing, and the founding chair of the IEEE Computational Intelligence Chapter in New Zealand.


Bing Xue received her PhD degree in 2014 at Victoria University of Wellington, New Zealand. Since May 2015, she has been working as a Lecturer at Victoria University of Wellington. She is with the Evolutionary Computation Research Group at VUW, and her research focuses mainly on evolutionary computation, machine learning and data mining, particularly, evolutionary computation for feature selection, feature construction, dimension reduction, symbolic regression, multi-objective optimisation, bioinformatics and big data. Bing is currently leading the strategic research direction on evolutionary feature selection and construction in Evolutionary Computation Research Group at VUW, and has been organsing special sessions and issues on evolutionary computation for feature selection and construction. She is also the Chair of IEEE CIS Task Force on Evolutionary Computation for Feature Selection and Construction. Bing is a committee member of Evolutionary Computation Technical Committee, and Emergent Technologies Technical Committee, IEEE CIS. She has been serving as a guest editor, associated editor or editorial board member for international journals, and program chair, special session chair, symposium/special session organiser for a number of international conferences, and as reviewer for top international journals and conferences in the field.

Evolutionary Computation in Games

In recent years, the field of Computational Intelligence and Games (CIG) has enjoyed rapid progress and a sharp rise in popularity. In this field, algorithms from across the computational intelligence spectrum are tested on benchmarks based on e.g. board games and video games, and new CI-based solutions are developed for problems in game development and game design. This tutorial will give an overview of key research challenges and methods of choice in CIG. The tutorial is divided in two parts, where the second part builds on methods and results introduced in the first part. Level: introductory. No particular background is assumed beyond basic knowledge of computational intelligence methods and an interest in games.

Julian Togelius

Julian Togelius is Associate Professor at the Center for Computer Games Research, IT University of Copenhagen, Denmark. He works on all aspects of computational intelligence and games and on selected topics in evolutionary computation and evolutionary reinforcement learning. His current main research directions involve search-based procedural content generation in games, game adaptation through player modelling, automatic game design, and fair and relevant benchmarking of game AI through competitions. He is a past chair of the IEEE CIS Technical Committee on Games, and an associate editor of IEEE Transactions on Computational Intelligence and Games. Togelius holds a BA from Lund University, an MSc from the University of Sussex, and a PhD from the University of Essex.

Intelligent Systems for Smart Cities

The concept of Smart Cities can be understood as a holistic approach to improve the level of development and management of the city in a broad range of services by using information and communication technologies.

It is common to recognize six axes of work in them: i) Smart Economy, ii) Smart People, iii) Smart Governance, iv) Smart Mobility, v) Smart Environment, and vi) Smart Living. In this tutorial we first focus on a capital issue: smart mobility. European citizens and economic actors need a transport system which provides them with seamless, high-quality door-to-door mobility. At the same time, the adverse effects of transport on the climate, the environment and human health need to be reduced. We will show many new systems based in the use of bio-inspired techniques to ease the road traffic flow in the city, as well as allowing a customized smooth experience for travellers (private and public transport).

This tutorial will then discuss on potential applications of intelligent systems for energy (like adaptive lighting in streets), environmental applications (like mobile sensors for air pollution), smart building (intelligent design), and several other applications linked to smart living, tourism, and smart municipal governance.

Enrique Alba

Prof. Enrique Alba had his degree in engineering and PhD in Computer Science in 1992 and 1999, respectively, by the University of Málaga (Spain). He works as a Full Professor in this university with different teaching duties: data communications, distributed programing, software quality, and also evolutionary algorithms, bases for R+D+i and smart cities at graduate and master/doctoral programs. Prof. Alba leads an international team of researchers in the field of complex optimization/learning with applications in smart cities, bioinformatics, software engineering, telecoms, and others. In addition to the organization of international events (ACM GECCO, IEEE IPDPS-NIDISC, IEEE MSWiM, IEEE DS-RT, …) Prof. Alba has offered dozens postgraduate courses, multiple seminars in more than 30 international institutions, and has directed several research projects (7 with national funds, 5 in Europe, and numerous bilateral actions). Also, Prof. Alba has directed 7 projects for innovation and transference to the industry (OPTIMI, Tartessos, ACERINOX, ARELANCE, TUO, INDRA, AOP) and presently he also works as invited professor at INRIA, the Univ. of Luxembourg, and Univ. of Ostrava. He is editor in several international journals and book series of Springer-Verlag and Wiley, as well as he often reviews articles for more than 30 impact journals. He has published 87 articles in journals indexed by Thomson ISI, 17 articles in other journals, 40 papers in LNCS, and more than 250 refereed conferences. Besides that, Prof. Alba has published 11 books, 39 book chapters, and has merited 6 awards to his professional activities. Pr. Alba’s H index is 44, with more than 8900 cites to his work.

Medical Applications of Evolutionary Computation

The application of genetic and evolutionary computation to problems in medicine has increased rapidly over the past five years, but there are specific issues and challenges that distinguish it from other real-world applications. Obtaining reliable and coherent patient data, establishing the clinical need and demonstrating value in the results obtained are all aspects that require careful and detailed consideration.

My research uses genetic programming (a representation of Cartesian Genetic Programming) in the diagnosis and monitoring of Parkinson's disease, Alzheimer's disease and other neurodegenerative conditions. It is also being used in the early detection of breast cancer through automated assessment of mammograms. I currently have multiple clinical studies in progress in the UK (Leeds General Infirmary), USA (UCSF), UAE (Dubai Rashid Hospital), Australia (Monash Medical Center) and Singapore (National Neuroscience Institute). The technology is protected through 3 patent applications and a spinout company marketing 4 medical devices.

The tutorial considers the following topics:

  1. Introduction to medical applications of genetic and evolutional computation and how these differ from other real-world applications
  2. Overview of past work in the from a medical and evolutional computation point of view
  3. Three case examples of medical applications:
    i. diagnosis and monitoring of Parkinson's disease
    ii. detection of beast cancer from mammograms
    iii. cancer screening using Raman spectroscopy
  4. Practical advice on how to get started working on medical applications, including existing medical databases and conducting new medical studies, commercialization and protecting intellectual property.
  5. Summary, further reading and links

Stephen L. Smith

Stephen L. Smith received a BSc in Computer Science and then an MSc and PhD in Electronic Engineering from the University of Kent, UK. He is currently a reader in the Department of Electronics at the University of York, UK.

Stephen's main research interests are in developing novel representations of evolutionary algorithms particularly with application to problems in medicine. His work is currently centered on the diagnosis of neurological dysfunction and analysis of mammograms. Stephen was program chair for the Euromicro Workshop on Medical Informatics, program chair and local organizer for the Sixth International Conference on Information Processing in Cells and Tissues (IPCAT) and guest editor for the subsequent special issue of BioSystems journal. More recently he was tutorial chair for the IEEE Congress on Evolutionary Computation (CEC) in 2009, local organiser for the International Conference on Evolvable Systems (ICES) in 2010 and co-general chair for the Ninth International Conference on Information Processing in Cells and Tissues (IPCAT) in April 2012. Stephen currently holds a Royal Academy of Engineering Enterprise Fellowship.

Stephen is co-founder and organizer of the MedGEC Workshop, which is now in its tenth year. He is also guest editor for a special issue of Genetic Programming and Evolvable Machines (Springer) on medical applications and co-editor of a book on the subject (John Wiley, November 2010).

Stephen is associate editor for the journal Genetic Programming and Evolvable Machines and a member of the editorial board for the International Journal of Computers in Healthcare and Neural Computing and Applications.

Stephen has some 75 refereed publications, is a Chartered Engineer and a fellow of the British Computer Society.