GECCO 2016 logo

6th Workshop on Evolutionary Computation for the Automated Design of Algorithms

July 20-24, 2016 @ GECCO 2016 in Denver, Colorado, U.S.A.

Related Events

Workshop Schedule & Location

Time: Thursday, 21 July 2016, 8:30-12:30
Location: Wind Star B
Schedule:
Session 1 - Full Length Papers - Session Chair: John R. Woodward
8:30-8:45 Workshop Intro
8:45-9:15 Paper 1 - Alberto Franzin, Thomas Stutzle "Exploration of Metaheuristics through Automatic Algorithm Configuration Techniques and Algorithmic Frameworks"
9:15-9:45 Paper 2 - Alex R. Bertels, Daniel R. Tauritz "Why Asynchronous Parallel Evolution is the Future of Hyper-heuristics: A CDCL SAT Solver Case Study"
9:45-10:15 Paper 3 - Lee Spector, Nicholas Freitag McPhee, Thomas Helmuth, Maggie M. Casale, Julian Oks "Evolution Evolves with Autoconstruction"
Break
Session 2 - Invited Speaker & Panel Discussion - Session Chair: Daniel R. Tauritz
10:40-10:45 Session 2 Intro
10:45-11:05 Short Paper - John R. Woodward, Colin G. Johnson, Alexander E. I. Brownlee "Connecting Automatic Parameter Tuning, Genetic Programming as a Hyper-heuristic, and Genetic Improvement Programming"
11:05-11:50 Invited Talk - Krzysztof "Chris" Krawiec "Behavioral Program Synthesis for the Automated Design of Algorithms"
11:50-12:20 Discussion Panel
12:20-12:25 Closing Words

Invited Talk

[Picture] Speaker: Krzysztof "Chris" Krawiec

Title: Behavioral Program Synthesis for the Automated Design of Algorithms

Abstract: A running program may exhibit complex behavior, not only in terms of the produced output, but also regarding the execution states it traverses. In program synthesis as practiced with conventional genetic programming, only a fraction of that behavior, usually compressed into a scalar fitness, is used to navigate the search space. This 'evaluation bottleneck' leaves a search algorithm underinformed about the actual and potential qualities of candidate programs. Behavioral program synthesis aims at providing search algorithms with richer information on a program's operating characteristics, and so making them better informed and thus more efficient. In this talk, I will present the motivations and interesting features of the behavioral perspective, show how the existing approaches fit into it, and discuss the implications for program synthesis and automated design of algorithms.

Short Bio: I'm an associate professor affiliated to Laboratory of Intelligent Decision Support Systems, Institute of Computing Science, Poznan University of Technology. My main fields of interest are program synthesis, evolutionary computation, genetic programming, coevolutionary algorithms, machine learning and pattern recognition. See Research and Publications for more details and my profiles: ResearchGate, DBLP, Google Scholar, ResearcherID, ACM, LinkedIn.

Description

The main objective of this workshop is to discuss hyper-heuristics and related methods, including but not limited to evolutionary computation methods, for generating and improving algorithms with the goal of producing solutions (algorithms) that are applicable to multiple instances of a problem domain. The areas of application of these methods include optimization, data mining and machine learning [1-18].

Automatically generating and improving algorithms by means of other algorithms has been the goal of several research fields, including Artificial Intelligence in the early 1950s, Genetic Programming in the early 1990s, and more recently automated algorithm configuration [1] and hyper-heuristics [2]. The term hyper-heuristics generally describes meta-heuristics applied to a space of algorithms. While Genetic Programming has most famously been used to this end, other evolutionary algorithms and meta-heuristics have successfully been used to automatically design novel (components of) algorithms. Automated algorithm configuration grew from the necessity of tuning the parameter settings of meta-heuristics and it has produced several powerful (hyper-heuristic) methods capable of designing new algorithms by either selecting components from a flexible algorithmic framework [3,4] or recombining them following a grammar description [5,9].

Although most Evolutionary Computation techniques are designed to generate specific solutions to a given instance of a problem, one of the defining goals of hyper-heuristics is to produce solutions that solve more generic problems. For instance, while there are many examples of Evolutionary Algorithms for evolving classification models in data mining and machine learning, the work described in [8] employed a hyper-heuristic using Genetic Programming to create a generic classification algorithm which in turn generates a specific classification model for any given classification dataset, in any given application domain. In other words, the hyper-heuristic is operating at a higher level of abstraction compared to how most search methodologies are currently employed; i.e., it is searching the space of algorithms as opposed to directly searching in the problem solution space [9], raising the level of generality of the solutions produced by the hyper-heuristic evolutionary algorithm. In contrast to standard Genetic Programming, which attempts to build programs from scratch from a typically small set of atomic functions, hyper-heuristic methods specify an appropriate set of primitives (e.g., algorithmic components) and allow evolution to combine them in novel ways as appropriate for the targeted problem class. 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 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.

As meta-heuristics are themselves a type of algorithm, they too can be automatically designed employing hyper-heuristics. For instance, in 2007, Genetic Programming was used to evolve mate selection in evolutionary algorithms [11]; in 2011, Linear Genetic Programming was used to evolve crossover operators [12]; more recently, Genetic Programming was used to evolve complete black-box search algorithms [13,14,16]. Moreover, hyper-heuristics may be applied before deploying an algorithm (offline) [5] or while problems are being solved (online) [9], or even continuously learn by solving new problems (life-long) [19]. Offline and life-long hyper-heuristics are particularly useful for real-world problem solving where one can afford a large amount of a priori computational time to subsequently solve many problem instances drawn from a specified problem domain, thus amortizing the a priori computational time over repeated problem solving.

Very little is known yet about the foundations of hyper-heuristics, such as the impact of the meta-heuristic exploring algorithm space on the performance of the thus automatically designed algorithm. An initial study compared the performance of algorithms generated by hyper-heuristics powered by five major types of Genetic Programming [18].

[1]
Edmund K. Burke, Gendreau, M., Hyde, M., Kendall, G., Ochoa, G., Özcan, E., & Qu, R. (2013). Hyper-heuristics: A survey of the state of the art. Journal of the Operational Research Society, 64(12), 1695-1724.
[2]
Holger H. Hoos (2012). Automated algorithm configuration and parameter tuning. In Autonomous search (pp. 37-71). Springer Berlin Heidelberg. doi:10.1007/978-3-642-21434-9_3.
[3]
KhudaBukhsh, A. R., Xu, L., Holger H. Hoos & Leyton-Brown, K. (2009). SATenstein: Automatically Building Local Search SAT Solvers from Components. In IJCAI, 9, 517-524.
[4]
Manuel López-Ibáńez and Thomas Stützle. (2012). The automatic design of multiobjective ant colony optimization algorithms. IEEE Transactions on Evolutionary Computation, 16(6):861-875.
[5]
Mascia, F., Manuel López-Ibáńez, Dubois-Lacoste, J., & Thomas Stützle. (2014). Grammar-based generation of stochastic local search heuristics through automatic algorithm configuration tools. Computers & operations research, 51, 190-199.
[6]
William B. Langdon and Mark Harman. Genetically Improving 50000 Lines of C++. Research Note , RN/12/09, Department of Computer Science, University College London, Gower Street, London WC1E 6BT, UK, 2012.
[7]
Justyna Petke, Mark Harman, William B. Langdon, and Westley Weimer. Using Genetic Improvement & Code Transplants to Specialise a C++ Program to a Problem Class Proceedings of the 17th European Conference on Genetic Programming, EuroGP 2014, Granada, Spain, 2014. Springer Verlag.
[8]
Gisele L. Pappa and Alex A. Freitas. Automating the Design of Data Mining Algorithms: An Evolutionary Computation Approach, Springer, Natural Computing Series, 2010.
[9]
Edmund K. Burke, Matthew Hyde, Graham Kendall and John Woodward. A genetic programming hyper-heuristic approach for evolving 2-D strip packing heuristics. In IEEE Transactions on Evolutionary Computation, 14(6):942-958, December 2010.
[10]
M. Oltean and D. Dumitrescu. Evolving TSP heuristics using multi expression programming. In: Computational Science - ICCS 2004, Lecture Notes in Computer Science 3037, pp. 670-673. Springer, 2004.
[11]
Ekaterina A. Smorodkina and Daniel R. Tauritz. Toward Automating EA Configuration: the Parent Selection Stage. In Proceedings of CEC 2007 - IEEE Congress on Evolutionary Computation, pages 63-70, Singapore, September 25-28, 2007.
[12]
Brian W. Goldman and Daniel R. Tauritz. Self-Configuring Crossover. In Proceedings of the 13th Annual Conference Companion on Genetic and Evolutionary Computation (GECCO '11), pages 575-582, Dublin, Ireland, July 12-16, 2011.
[13]
Matthew A. Martin and Daniel R. Tauritz. Evolving Black-Box Search Algorithms Employing Genetic Programming. In Proceedings of the 15th Annual Conference Companion on Genetic and Evolutionary Computation (GECCO '13), pages 1497-1504, Amsterdam, The Netherlands, July 6-10, 2013.
[14]
Matthew A. Martin and Daniel R. Tauritz. A Problem Configuration Study of the Robustness of a Black-Box Search Algorithm Hyper-Heuristic. In Proceedings of the 16th Annual Conference Companion on Genetic and Evolutionary Computation (GECCO '14), pages 1389-1396, Vancouver, BC, Canada, July 12-16, 2014.
[15]
John R. Woodward and Jerry Swan, "The automatic generation of mutation operators for genetic algorithms", in Proceedings of the 14th international conference on Genetic and evolutionary computation conference, 2012.
[16]
Matthew A. Martin and Daniel R. Tauritz. Hyper-Heuristics: A Study On Increasing Primitive-Space. In Proceedings of the 17th Annual Conference Companion on Genetic and Evolutionary Computation (GECCO '15), pages 1051-1058, Madrid, Spain, July 11-15, 2015.
[17]
Su Nguyen and Mengjie Zhang and Mark Johnston and Kay Chen Tan. Automatic Design of Scheduling Policies for Dynamic Multi-objective Job Shop Scheduling via Cooperative Coevolution Genetic Programming. IEEE Transactions on Evolutionary Computation, 18(2):193-208, April 2014.
[18]
Sean Harris, Travis Bueter, and Daniel R. Tauritz. A Comparison of Genetic Programming Variants for Hyper-Heuristics. In Proceedings of the 17th Annual Conference Companion on Genetic and Evolutionary Computation (GECCO '15), pages 1043-1050, Madrid, Spain, July 11-15, 2015.
[19]
Kevin Sim, Emma Hart, and Ben Paechter. A Lifelong Learning Hyper-Heuristic for Bin-Packing Evolutionary Computation, MIT Press Evolutionary Computation, 23(1):37-67, March 2015.

Call for Papers

We welcome original submissions on all aspects of Evolutionary Computation for the Automated Design of Algorithms, in particular, evolutionary computation methods and other hyper-heuristics for the automated design, generation or improvement of algorithms that can be applied to any instance of a target problem domain. Relevant methods include methods that evolve whole algorithms given some initial components as well as methods that take an existing algorithm and improve it or adapt it to a specific domain. Another important aspect in automated algorithm design is the definition of the primitives that constitute the search space of hyper-heuristics. These primitives should capture the knowledge of human experts about useful algorithmic components (such as selection, mutation and recombination operators, local searches, etc) and, at the same time, allow the generation of new algorithm variants. Examples of the application of hyper-heuristics, including genetic programming and automatic configuration methods, to such frameworks of algorithmic components are of interest to this workshop, as well as the (possibly automatic) design of the algorithmic components themselves and the overall architecture of metaheuristics. Therefore, relevant topics include (but are not limited to):

Important Dates

April 3 10, 2016 Workshop paper submission deadline
April 20 18, 2016 Notification of acceptance
April 20, 2016 Author registration deadline
May 4 8, 2016 Camera-ready deadline

Paper Submission

Submitted papers may not exceed 8 pages and are required to be in compliance with the GECCO 2016 Call for Papers Preparation Instructions. However, note that the review process of the workshop is not double-blind; hence, authors' information should be included in the paper.

Submit your paper in PDF format by e-mail, with subject "Submission to ECADA @GECCO2016", to all three e-mail addresses: dtauritz@acm.org; jrw@cs.stir.ac.uk; manuel.lopez-ibanez@manchester.ac.uk.

All accepted papers will be presented at the workshop and appear in the GECCO Conference Companion Proceedings.

Organizers (in alphabetical order)

[Picture]

E-mail: manuel.lopez-ibanez@manchester.ac.uk

Manuel López-Ibáńez is a lecturer in the Decision and Cognitive Sciences Group of the Alliance Manchester Business School, University of Manchester, UK. Between October 2011 and September 2015, he was a postdoctoral researcher (Chargé de recherche) of the Belgian Fund for Scientific Research (F.R.S.-FNRS) working at the IRIDIA laboratory of Université libre de Bruxelles, Brussels, Belgium. 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 topics such as evolutionary algorithms, ant colony optimization, multi-objective optimization, and various combinatorial and real-world optimization problems. His current research interests are automatic configuration and design of optimization algorithms, for single and multi-objective optimization. He is the lead developer and current maintainer of the irace automatic configuration method (http://iridia.ulb.ac.be/irace).
[Picture]

E-mail: dtauritz@acm.org

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.
[Picture]

E-mail: jrw@cs.stir.ac.uk

John R. Woodward is a Lecturer at the University of Stirling, within the CHORDS group and is employed on the DAASE project, 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.

Previous ECADA workshops