Flocking Example CSC360O Artificial Life Programming
Akutra quickly found artificial life programming a fascinating methodology with what appeared to be self learning and internally smart little components.
In the project Flockit, Akutra's objective was to create a routine where smart little objects attempt to remain with a group of other smart little components all the while
making their way to a desired destination.
The components plan to keep within a certain vicinity of others all the while travelling towards the objective. Things get a bit interesting when the group encounters an
obstacle. Members must avoid the obstacle yet continue travelling with the group towards the objective. Also, individuals should not decide to plot their own path away from
the group even if it is towards the objective.
Flocking Example Video
Attraction, AL Environment CSC330 Mobile Platform Software Development
Akutra quickly found artificial life environments programming a topic of high interest with the idea of creating a mini-Matrix for artificial life components.
In Project Attraction AL for Android, Akutra and team created a small board where small artificial life components would vie for the best possible position within the small environment.
Each component would attempt to move into the best possible position within their line of sight. Movement would often require trading with other members on the board.
Trading spots with other members would require the other memebers agreeing to trade. Such members would calculate if the new position was as good or better before agreeing
to trade. There was a lot of discussion as to what would be a 'better' position and that formula would be changable depending on the desired outcome.
Members had several characteristics. They had a shape, color and identifying label to distiguish them from others members. They would continue moving around the board until
they were unable to trade with neigbors or they deemed themselves to be in the best possible position within their scope of sight (8 board spaces). The board is scalable depending
on the screen size and members size depend on the display area.