Es gibt ja mittlerweile einige Spieleengines für JavaScript, unter anderem Phaser. Phaser hat neben der Kollisionserkennung auch eine Physikengine an Board. Damit habe ich eine kleine Demo geschrieben, welche wieder einmal „Tiere“ simuliert, welche sich von zufällig verstreuten „Pflanzen“ ernähren. Die „Tiere“ haben einen Aktivitätsrate und streben mit einer bestimmten Geschwindigkeit in eine zufällige Richtung. Außerdem haben sie einen Lebenszyklus und können sich fortpflanzen. Es gibt bestimmte Startparameter, welche mutiert und an die Nachkommen weitergegeben werden. Die Parameter sind dabei: Größe, Geschwindigkeit, Aktivitätsrate und Rückprallfähigkeit (bounce).
Ich habe die Demo auf CodePen veröffentlicht. Dort kann man direkt mit den Parametern experimentieren.