Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Evolution

Create creatures and let them evolve to see how they master various tasks. · By Keiwan

Suggestions & Ideas Sticky

A topic by Keiwan created May 06, 2018 Views: 22,905 Replies: 248
Viewing posts 112 to 131 of 182 · Next page · Previous page · First page · Last page
(+1)

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.

Developer

You can enable the "Keep best creatures" option already, which guarantees to carry the best two creatures to the next generation without any change to their genes whatsoever (no recombination or mutation). You might still see slight fitness drops and variations though, as explained here: http://keiwando.com/evolution/faq/fitness-drop/ 

(+1)

Would be nice to be able to select multiple pieces together and move them as a unit. Perhaps a rectangular drag-to-select type arrangement, such that assembled "parts" could be moved around in relation to other parts. Moving things around one joint at a time is pretty tedious and at certain levels of complexity it can be almost impossible to move something you've already made.

An 'undo' button that reverses the last change would be a big help as well. I've completely ruined a creature by deleting the wrong bundle of bones & muscle.

Developer(+1)

Both Undo & Redo and a selection tool will be part of the upcoming update :) I've already finished implementing Undo & Redo.

i think it would be useful to add like a vertical laser that follow the creature; to improve the speed and avoiding to go back

Developer

I'm not going to just copy Code Bullet's ideas ;)

yeah, you are right

(+1)

Hello!  Just got my copy, and I've actually been doing some coding with neural networks of my own.  

I noticed that there are only 6 inputs for a creature.  Seems like this would ultimately limit what a creature could ever "learn" resulting in (theoretically) a lot of "stalls"  (ie, creature moves until it gets to a certain position, then simply can't any more).  

What are the odds that we could have a mode where each "joint" is in fact an input, or even a series of inputs (ie: the joint's current Y position, and orientation, for example.)  Also, the "state" of each muscle could be an additional input.  

This would allow for VERY intelligent and complex actions to be learned over time.  For instance, creatures may even be able to learn how to stand back up once they fall down.  

If people are concerned about the additional overhead of the math, it could be a toggleable series of options, maybe?

Love the tool!  

(+1)

Oh, and another nice feature would be the ability to "hide" or "dim" bones/joints/muscles.  So when editing a complex creature, we can click on "onion skin" or something, and then click those things we want to make less visible, and they'd be dimmed out.  While dimmed, they wouldn't be collidable (ie: you wouldn't be able to attach muscles to them).  For more complex creatures, this could be super helpful!

Joints in general function like a ballbearing, they almost revolve 360 degree ! they must work like the kneee; stop at some point to be like in nature.

A big thing for me would be a mute button.  The music is very nice, but to mute it, I have to mute all things chrome/chromium.  That said, this is exactly the thing I have been hoping to see for a long time.  I really hope you expand on this idea even further.  I really enjoy it a lot.  I'd also love to see generations displayed in parallel in tiled windows, so I could watch a lot of them at the same without them being overlayed on top of each other.  But the priority for me would be an option to disable audio.  I suspect this will see a lot of run time!

Developer

There is no audio at all in this simulator, so I'm not quite sure what you mean.

huh, I just ran it again and no audio.  I don't know where the music was coming from then.  Well either way, its gone now.
Sorry about the confusion.

Downloadable content that other people made

(+1)

I'm waiting anxiously for GPU delegation. Seeing the screen lag when my computer is sitting at idle is a painful reminder of how much faster things could be running.

Speaking of faster, how about turning off real-time simulation and letting it go as fast as it can?

(-1)

maybe you could choose a landscape or climate and theyll adapt to the temperature and landscape as well or you could add predators for them to avoid 

(1 edit) (+2)

Make the ability to change the parameters of the joints, bones, muscles, etc. before installing them.
Make the ability to select multiple objects with shift key pressed, and if the allocated refers to the same type of objects give the ability to change parameters on all selected objects.

I think a good idea would be to add tabs, as in be able to create and evolve multiple creatures at a time, because some creatures slowly evolve and then you could work on another one. I do realise that this might make it really laggy if you have lots running at the same time but i think it is worth it if you just use batches and dont do to many at a time :)

Thanks, it would be really great if you could add this

To do that, select "simulate in batches" in the pause menu.

No, i mean be able to simulate completely different creatures at the same time 

It would be nice if we could select 1 creature to be a parent in a generation.

(1 edit) (+1)

add multi selection editing. so i can select multiple things edit them.

like weight and strength.

(-1)

Is there a log output file, cause if not i would like to know why my significantly powerful pc was completely frozen when I got home from a 9 hour shift. Not only that but it was only on stage 302.  Given the time frame it was supposed to be on stage 2163. I'd like to know the method of movement that gave my computer a brain aneurysm. So if there is a output file can you point me in a direction if not then it wouldn't be a bad idea to have one.

(-1)

A copy and paste button for mobile

(-1)

you should make it so you can speed up time

(-1)

y don't u put meter lines/checkpoints on both sides of the starting point instead? it'll make it fair for the creatures  traveling a different direction.

(1 edit) (-1)

the best creature in the current gen can be on the screen next to the best creature in the last gen. You should also make it so you can control how the simulation determines the best creatures each gen in the settings. Example: u could put fitness proportional so the best creature is determined by its fitness & other options.

(+1)

u should add the option to control how ur creatures reproduce (Sexually &/or Asexually)

why

Because genetics work differently when organisms reproduce differently..just a suggestion

Viewing posts 112 to 131 of 182 · Next page · Previous page · First page · Last page