GA tweaks
In the Deep Neuroevolution paper [2], the authors checked two tweaks to the basic GA algorithm. The first, with the name deep GA, aimed to increase the scalability of the implementation and the second, called novelty search, was an attempt to replace the reward objective with a different metric of the episode. In the following example, we'll implement the first improvement, while the second one is left as an optional exercise.
Deep GA
Being a gradient-free method, GA is potentially even more scalable than ES methods in terms of speed, with more CPUs involved in the optimization. However, the simple GA algorithm that we've seen has the similar bottleneck as ES methods: policy parameters have to be exchanged between the workers. In the above-mentioned paper, the authors proposed a trick similar to the shared seed approach but taken to an extreme. They called it deep GA, and at its core, the policy parameters are represented as a list of random seeds used to create this particular...