HN user

wholemoley

49 karma

Lurker, Interested in AI, RL, GA and your recipes for jujubes.

Posts2
Comments13
View on HN

The article is from last year but it's still extremely valuable and interesting.

Exploring this topic is currently my primary hobby. Specifically, I've been using OpenAI's retro (Sonic, Contra, Mario, Donkey Kong and, more recently FZero) and comparing the ancient NEAT with more fashionable stuff like DQN, PPO, A3C and DDPG.

With my extremely limited experience, NEAT seems to outperform all of these other algorithms. I believe the advantage is the potential for strange/novel network structure.

And the best part is that NEAT doesn't require a powerful GPU.

Apologies for the shameless plug but here's a link to a series on youtube I made about using Retro and NEAT together to play Sonic. https://www.youtube.com/watch?v=pClGmU1JEsM&list=PLTWFMbPFsv...

I've been using the python-neat library in open-ai's retro with some success. And while it works quickly, it normally finds local maximas. It seems to struggle with long sequences. And defining the fitness function/parameters is an artform.

Here's a video of Donkey Kong Country played by python-neat in open-ai's retro. It took 8 generations of 20 genones to beat level one. I'll post the code if anyone's interested.

https://vimeo.com/280611464