An unnecessary, complicated way to learn some AI
- Some carrots randomly spawn in an empty land
- They can spread nearby other carrots or randomly spawn across the map
- After a while, they rot and disappear
- 10 rabbits with 10 different genomes, they see what there's in front of their and they can rotate left/right or go forward and reverse (like cars with long rabbit ears)
- If a rabbit doesn't eat start losing life. When life is 0 they die
- If a rabbit eat a carrot restore part of his life
- When all the rabbits are dead I calculate the fitness of each one (life duration in frameCount) pick the top 4 rabbit, other 1 from the pool, brew 5 new rabbit configuration and restart
- Game ends when a rabbit can live forever
- I (sadly) never worked with genetic algorithm
- I (sadly) never worked with neural network
- In general, I know very little about artificial intelligence [img]
- WebPack
- EntityManager
- Rabbit die when they reach 0 life
- Carrot rottenizer
- RabbitManager, for creating and brewing rabbits
- Rabbit N.Net
- GeneticManager, for create a new Rabbit generation
- Low Poly 3D! (because why not?)