Inspired by the helpful blog series "shorelark" Learning to Fly 🐣:
https://pwy.io/posts/learning-to-fly-pt1/
This was achieved by standard genetic algorithm, fixed neural networks structure for all birds, and the weights and bias in each individual form its chromosome, then perform population selection, crossover(mate) and mutation to evolve into the next generation. I let it run for about half an hour, some birds seem to be getting better(kinda more intelligent and slightly more efficient) to find and move towards food.
Here is the recording of my evolving brain on birds(triangle) moving around the 2D world and eating food(dots): https://youtu.be/T3QNlaff1GM?si=d8a-TQlSWoduh9Ay
Here is some screenshots:
birds evolving: moving/flying around to eat food:

measurements along the way to see how well each generation does:

But I'm not satisfied for the current result, I don't want the creatures(right now birds) only adjust weights and bias of the brain neural network, but I also wanna give it freedom to adjust the brain 🧠 structure(topology of neural network), so I found the method 💡 NEAT(Evolving Neural Networks through Augmenting Topologies) to evolve topology and weights together, I found this paper to be fascinating, as it's written in 2002, cuz I never heard of any method that can "grow" the neural network in such interesting way, it's like a new world to me. 🌟
NEAT original paper:
https://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf
Let's make this idea possible to improve and bring more intelligence to the creature through brain evolution. Excited!
Maybe I can find a way to combine the advantages of RL 👾 with NEAT 🪄 to boost the learning ability or survival performance 🦖 of the DL brain in the creature through evolution. And to understand and interpret how the brain is getting more intelligent through the process by visualizing the neural network structure and the changes along the way, and come up with some new perspectives on how to train creatures(with DL brain) in a 2D simulated world to improve intelligence as a species through evolution method.
But I don't want to get involved in making it into a game, I just want this project implemented in a limited 2D world simulation(a window on my laptop), with measurements on the evolving population's average food consume, the max and min individual food consume, to see how generations are getting better, and together with other more efficient methods that I've never learned before, It would be so much FUN! 🤩
Thank you so much for your time and your support! Let me know if you have any ideas on it, and hopefully I will have some new ideas and learnings soon!