Jump to content
  • Advertisement
Sign in to follow this  
BlessmanTsanga

NEAT algorithms, why's topic on the low?

This topic is 2336 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

After being introduced to nero I've began to wonder on about research into the field and so far I'm just wondering whether there is any other notable example. Are they available? What are the best prominent ones that any of you guys know off?

Share this post


Link to post
Share on other sites
Advertisement
I've seen the use of NEAT discussed in poker bot forums. I've tried applying it find an evaluation function for Arimaa, but didn't have success at the time (I think though it was due to a buggy search function - which I need to revisit)

Share this post


Link to post
Share on other sites
I used NEAT to develop a PacMan controller - http://sourceforge.net/projects/aipac There are lots of details in the README file on the project site, but briefly...

At each step that PacMan takes, the neural network is evaluated. The net has 4 outputs, one for each direction (up, down, left, right). The output with the highest value gives the direction that PacMan takes. In the absence of ghosts, the game map is deterministic so yes, PacMan will take the same path when using the same neural network. The ghosts have a strong random component to their movements, so adding these will cause some random variation in PacMan's movement from run to run. The Neural Nets are evolved using an Evolutionary Computation process. The fitness I'm using is the score that PacMan gets for one run through the maze. The time one run can take is limited (you can also control this in the parameters file). The goal is to maximize the score that PacMan gets. In the absence of ghosts, and thus a deterministic PacMan, one evaluation is performed. In the presence of ghosts, multiple evaluations are made for any single neural net and the results evaluated by averaging, taking the minimum or the median. This helps to prevent a lucky run from dominating the score for that network. I've found it most interesting to look at PacMan's navigation early in the process and compare that to what happens after it has run for a while. No surprise that early in the process PacMan's movements are more or less random - often he just drifts one direction or the other, hits a wall, and stops. Then after it has run for a while and his score is over 1000, his behavior is much more interesting. So far the maximum score I've seen (with no ghosts) is about 2600 out of a maximum of 3040.

Let me know what you think.

-Kirk

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!