Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Manabender

1
Posts
A member registered Apr 20, 2019

Recent community posts

So, there's a couple concerns I have involving the evolution process, which might be significantly hindering creatures' ability to improve their fitness.

First, there doesn't seem to be any bias nodes in the neural network. Usually, one bias node is added to the input layer and to each hidden layer, and is simply set to always output 1. This is then multiplied by genetic coefficients (just like with any other node) to make nodes in the next layer have a constant offset; making certain nodes easier or harder to set very low or very high. It's a small, but extremely useful, addition to nearly any neural network. (I suspect this is the case because you list six inputs in the help screen: distance from ground, horizontal velocity, vertical velocity, rotational velocity, number of points touching ground, body rotation. Also, when looking at saved generations, it says there are six input layer nodes.)

Second, I'm concerned that the "sexual" (for lack of a better term) reproduction method is inefficient. You mention that new children are created by selecting two random parents (weighted by fitness), splitting their neural network data at a random location, and splicing opposite parents' pairs back together. This seems likely to sometimes kill off a highly-fit creature by breeding it with another creature whose strategy is completely incompatible, resulting in two children that both use two incomplete halves of two strategies that only work when whole.

I'd like an option to use an "asexual" method (again, for lack of a better term). It goes like this: You simulate a generation and give them fitness scores. Then you kill off half of them. The most fit creature is guaranteed to survive, and the least fit is guaranteed to die. All other creatures are then randomly selected for death, with the lower-fitness creatures getting higher chances of dying. The surviving creatures then generate two offspring each; both of them exact copies of the original, but one of them with a random amount of mutations. This method is guaranteed never to kill off the most fit creature unless another creature comes along that outperforms it. In otherwords, you never lose progress; every generation is at least as good as the one before it.