2 An Introduction to Evolutionary Computation
This chapter covers
- Exploring the Game of Life with Google Collaboratory
- Creating a simple cellular life simulation in Python
- Optimizing simulation attributes by simulating life
- Apply the theory of evolution to a simulation
- Applying genetics and genetic algorithms to simulation optimization
In the last chapter we introduced the concept of applying evolutionary computation on top or as an optimization of deep learning. As a general all-encompassing term, we will refer to this process as Evolutionary Deep Learning, EDL. Before we start exploring the applications of EDL we first need to ground ourselves in what evolutionary computation or algorithms are.
Evolutionary computation is likewise a blanket term for a whole host of methods that borrow from life simulation in many forms, evolution being just one of them. In this chapter we are going to take a gradual introduction to life simulation, what it is, what it does and how it can optimize problems.
Life simulation is just one form of simulation that we may use to explore and optimize problems. There are plenty of other forms of simulation that allow us to better model processes from fires to financial markets and more. However, they do all share one thing in common and that is their origins with the Game of Life, the computer version.