Skip to content
Snippets Groups Projects
Select Git revision
  • 46616c15b325ec2e7a4f8a90d58db5c989447fb5
  • main default protected
  • increase_steps
  • auto_mutation
4 results

bipedal-walker-evo

Bipedal Walker Evo

This project tries to solve OpenAI's bipedal walker with an evolutionary strategy.
After 1000 episodes, which is about 1h of learning, it will reach ~250 reward.
Best score until now: 292/300

How it works

  1. Generate a randomly weighted neural net
  2. Create a population of neural nets with mutated weights
  3. Let every net finish an episode and reward it accordingly
  4. The better the reward, the higher the chance to pass weights to next gen

Hyperparameters

Parameter Description Interval
HIDDEN_LAYER Size of hidden layer. [1;∞[
POP_SIZE Size of population. [0;∞[
MUTATION_FACTOR Percentage of weights that will be mutated for each mutant. [0;1]
LEARNING_RATE This is the rate of learning. [0;1]
GENS Number of generations. [0;1]
MAX_STEPS Number of steps that are played in one episode. [0; 1600]

Installation

We use Windows, Anaconda and Python 3.7
conda create -n evo_neuro python=3.7
conda activate evo_neuro
conda install swig
pip install -r requirements.txt\

Sources

Environment: https://github.com/openai/gym/wiki/BipedalWalker-v2
OpenAI Website: https://gym.openai.com/envs/BipedalWalker-v2/
More on evolution strategies: https://openai.com/blog/evolution-strategies/