Transfer Learning in Evolutionary Spaces
Description
Evolutionary algorithms have been effectively applied to various search spaces. Traditionally evolutionary algorithms explore a solution space. However, since their inception the application of evolutionary algorithms has been extended to other spaces including the program, heuristic and design spaces. More recently the potential of transfer learning in evolutionary algorithms, focusing predominantly on the solution and program spaces, has been established. This tutorial examines the use of transfer learning in the application of evolutionary algorithms to four spaces, namely, the solution, program, heuristic (hyper-heuristics) and design (automated design of machine learning and search algorithms) spaces. The tutorial will provide an overview of transfer learning for the four spaces in terms of what to transfer, when to transfer and how to transfer knowledge. A case study for each of the spaces will be presented. The benefits of transfer learning for each of the four spaces will be highlighted. This will also include a study on machine learning for transfer learning in evolutionary algorithms, including supervised and reinforcement learning. Determining what knowledge to transfer, when to transfer the knowledge and how to transfer the knowledge for the different spaces is itself an optimization problem. Traditionally this has been done manually. The tutorial will also look at how this process can be automated. A Python and Java library ATLEA (Automated Transfer Learning for Evolutionary Algorithms) for the automated design of transfer learning in evolutionary algorithms will be presented.
Tutorial Breakdown:
1. Evolutionary Spaces
This tutorial firstly provides an overview of the evolutionary spaces that it will be focussing on:
1.1 Solution space
1.2 Program space
1.3 Heuristic space
1.4 Design space
2. Introduction to Transfer Learning in Search
The tutorial will then provide an overview of the use of transfer learning in search:
2.1 An overview of transfer learning
2.2 How can transfer learning be used in search?
2.2 Benefits of using transfer learning in search
3. Transfer learning in the solution space
This part of the tutorial will focus on transfer learning in evolutionary solution space:
3.1 An overview of transfer learning in the evolutionary solution space (ESS)
3.2 Machine learning for transfer learning in the ESS
3.3 A case study of transfer learning in the ESS
4. Transfer learning in the program space
This part of the tutorial will focus on transfer learning in evolutionary program space:
4.1 An overview of transfer learning in the evolutionary program space (EPS)
4.2 A case study of transfer learning in the EPS
5. Transfer learning in the heuristic space
This part of the tutorial will focus on transfer learning in evolutionary heuristic space:
5.1 An overview of transfer learning in the evolutionary heuristic space (EHS)
5.2 A case study of transfer learning in the EHS
6. Transfer learning in the design space
This part of the tutorial will focus on transfer learning in evolutionary design space:
6.1 An overview of transfer learning in the evolutionary solution space (EDS)
6.2 A case study of transfer learning in the EDS
7. Transfer learning for different evolutionary spaces
Based on 3-6, this part of the tutorial will highlight differences and similarities between transfer learning in the four different spaces, namely, ESS, EPS, EHS and EDS, and introduce the concept of inter-space transfer learning.
8. Supervised Machine Learning for Transfer Learning
This part of the tutorial looks at how supervised machine learning, namely, random forests, support vector machines and neural networks, can be used for search specific knowledge transfer.
8.1 Transfer learning in genetic algorithms for combinatorial optimization.
8.2 Transfer learning in differential evolution and particle swarm optimization for continuous optimization.
9. Automated transfer learning in evolutionary spaces
This part of the tutorial will focus on the automated design of transfer learning in evolutionary spaces:
9.1 An overview of the automated design of transfer learning
9.2 Machine learning for automated transfer learning
9.3 Demonstration of ATLEA (Automated Transfer Learning in Evolutionary Algorithms) Python library and Java libraries for the automated design of transfer learning
10. Future research directions and discussion
Organizers