Project:
Squids AI
A project started when I was an undergrad at York University. This project was created together with Martin Harriott, and Yodhin Singh. This project simulates "fish" and "squid" AI within a constrained simulated environment.

This project was made using javascript and posted on the Codepen website. Using the Alicelab library the project aims simulate the interaction of "fish" and "squid" AI in a constrained environment.
The "fish" serve as the "food" and have a fixed size with varying colours. The "squids" serve as the "predators" having varying sizes, colours, and movement speeds.
Coded into this project is a reactionary AI that has the "schools of fish" aiming to group together while reacitonary ai of "squids" aim to chase down the "fish".
Each property of the "fish" and "squid" will affect how they function. These properties range from basic functions such as size and move speed, to more discrete effects such as colour affecting grouping/"schooling"/hunting/chase priority and genetic traits being passed hereditarily.
Each "fish" and "squid" contains a lexicon string. This string consists of variables: "+","-","x","y", and "/" with each variable associating with each of the previously listed attributes.
While the initial set of artificial life forms have their lexicon string consisting of some random combination of the variables previously listed, future life forms will derive their lexicon string from previous surviving life forms. This allows the traits of the artificial life forms to directly be passed down to future generations.
Code for this project can be found on the Project_Squids-AI page of my Github.