How I created an evolving neural network ecosystem

preview_player
Показать описание
After my last video I got a lot of comments (mainly on Reddit) asking me to make a video explaining how I did it.
It took me a while to learn how to video edit, voice act, and animate, so it was about time I presented and explained this project.

Made in C# on Unity

I highly inspired my algorithm from the following document :
Stanley K. O. and Miikkulainen R. (2002). Evolving Neural
Networks through Augmenting Topologies. MIT Press journals

=================================

The Bibites is an Artificial Life (Living AI!) simulation where I recreate some biological processes and let the lifeforms live, eat, reproduce, and mutate, leading to active evolution.
Their can evolve their body through a genetic algorithm and their behavior through a custom neural network algorithm.

=================================

Music: "Perspectives" by Kevin MacLeod
Рекомендации по теме
Комментарии
Автор

You could use shape to show the speed. A faster Bibit could be more slender.

nikosaarinen
Автор

I would suggest adding three things:
1. Sexual reproduction, this would allow for much higher genetic diversity along with competition for mates
2. Objects other than food that the bibites can manipulate, allowing for the construction of structures
3. Vision? I don't know how easily this could be done, but if you could accomplish this, a whole range of new possibilities for the creatures would be opened up

CamelCaseCam
Автор

Concerning the colors: You can have different viewing modes where colors represent different states like the current action (mating, laying egg, searching food) or other states (energy level, diet composition, ...)

malekbensalem
Автор

Add a pellet to individuals so they canibalize.

Make it run on an android with screen-sized ecosystems and provide communication by bluetooth to other devices so they can migrate to other ecosystems. And let them make audio noise by intentionally bumping an on-screen red button, and hear noise by listening to the device microphone.

SMunro
Автор

Since it's a computer program shouldn't they be called Bibytes?

NICK....
Автор

I just found this and I haven't watched your other videos yet, but it's exactly the kind of thing I've been learning coding for! I love the idea of ecosystem simulators as sort of digital fishtank where you can experiment with different organisms and how they react to environments and each other, with no real animals getting involved. I'm excited to see where this goes!

peytonfastabend
Автор

This is pretty cool, I am working on a similar (Very similar, in fact, down to using NEAT) project myself.

One thing I have noticed in your video at around 3:35 is that your bibites can collide and grab each other, I suggest that you look at energy sharing, i.e. if two creatures are colliding and each are willing enough, they share their energy in proportion of how much energy the other has. I think it just might evolve synergy organisms or even multi-cellular groups of bibites, which would be very cool.

bertrandrodruiguez
Автор

While nutrients on earth are a closed loop system, Energy is not, plants absorb incoming energy from the sun, capturing it in chemical bonds. Maybe you could make a system where the food pellets are also evolving to cover maximum area to capture light.

Deez-Master
Автор

I love this, its so interesting, i could see it for hours, if more variables were added id see it for even longer.

auri
Автор

use graphs to represent what traits are most used, this would show what traits are the most favored for survival.

Potato-sgwq
Автор

Will you share the source code on git in description ? I'd be curious to see how it works. Maybe people can contribute

ashtwenty
Автор

Seeing this old prototype for the simulation is oddly surreal.

purplehaze
Автор

1:36 I love how there's just that one that just runs around in circles trying to get a pellet

greatestgrasshopper
Автор

When I saw this in my feed I was like cool a simulated evolving ecosystem I haven't seen yet! Then I saw the channel name and I was like ah bin tabarnak ! Very well done, this looks promising

francoisrioux
Автор

This is cool.
Have you considered using CPU cycles as your "energy"?
I don't know how to implement this but it would be aa more "real" limitation than an arbitrary amount of pellets.

bmobert
Автор

@6:45 color for traits would still result in identifiable species since "families" should be similar in color.


you could use the three primary colors to represent 3 different important traits and the mix of how far those traits have drifted will determine color. You could also introduce simple patterns for this like stripe or XX pattern or something.

elchikoriko
Автор

Merci beaucoup d'avoir entièrement traduis la vidéo en français. En plus, tu as très bien simulé l'évolution naturelle. Super vidéo

flixou
Автор

At 4:54 when you said "They get so numerous my framerate drops to infinite negative", I thought that the next thing you'd implement was a killer predator that acts as a population regulator haha

na_trium_
Автор

Did I search for this? No. Did I watch the whole thing? YES

lazartoncev
Автор

Beautiful project my friend! :) Bibites are so cute!
Thank you for sharing!

tyfoodsforthought