A medium project where little things evolve in a simulated and simplified world, while trying to survive as long as possible to world climate changes.
Note that following libraries are used in the project, thus are required on your machine if you want to run it :
numpy
tkinter
matplotlib
pyyaml
- Install all dependencies
- Then run :
python3 main.py
Rain 🌧️ occures randomly on small part of the map and provide a natural world's water supply.
As for entities, we have implemented the following ones :
- A Random entity that acts regardless of his environment changes.
- A Water seeker AI that can choose only between
wait
,move
ordrink
. - An Herbivorous AI that can, not only choose between
wait
,move
anddrink
actions, but alsoeat
available food. - A Carnivorous AI which have same options as Herbivorous AI, but can also eat other "species".
- A Cannibal AI, the most dangerous one, can devour everything near it.
An example of Neural Network viewed from the console log :
$ py back/ai/network.py
[Input] Input Weights [Hidden 1] Hidden Weights [Hidden 2] Output Weights [Output]
0 -0.701 0.321 -0.904 -0.437 0 -0.689 -0.186 0 0.336 0.46 0
0 0.468 -0.1 -0.654 -0.132 0 0.149 -0.006 0 0.416 0.118 0
0 0.487 -0.192 0
0
----- mutation -----
[Input] Input Weights [Hidden 1] Hidden Weights [Hidden 2] Output Weights [Output]
0 -0.785 0.321 -1 -0.267 0 -0.504 -0.186 0 0.336 0.651 0
0 0.468 -0.214 -0.902 0.075 0 0.149 -0.006 0 0.49 0.28 0
0 0.487 0.14 0
0