|
ArtiFishial Life
|
One of the charming aspects of the work reported here is not knowing how aHowever, we were able to eventually produce a model that used decentralized behavior and emergence to make schools. After many trials, we even produced a fear/social model that we thought worked fairly well. In addition, we were also able to produce the predator/prey model which we didn't even feel was in the scope of the project when we originally started. The pond model looked great; the bubbles that we implemented really added to the realism of the pond. The interface was simple to use, and it was easy to see how different values for the inputs affected schooling, fear, and demise (from sharks eating habits) of the fish.
simulation is going to proceed from the specified behaviors and initial
conditions; there are many unexpected, pleasant surprises. On the other
hand, this charm starts to wear thin as deadlines approach and the
unexpected annoyances pop up. This author has spent a lot of time recently
trying to get uncooperative flocks to move as intended ("these darn boids
seem to have a mind of their own!").
Some of the negative aspects associated
with the project resulted from frustrations because there was no way (that
we found) to print debugging information within any of our methods.
Sometimes, we experience "buzzing" of the fish, where the fish heading
keeps flipping, causing a flashing effect as the fish graphic flips left
to right. StarLogo also wraps around the edges of the screen, which looks
slightly odd as fish go through the top to reappear at the bottom. Sometimes
the fish (or sharks) travel vertically for long periods of time - this
doesn't look very realistic as a fish schooling model, but we could see
no way to prevent those interactions from occurring. Lastly, there was
an error in the StarLogo code that caused the sharks to migrate to the
center of the screen after eating all the fish, but that was beyond our
control to fix.
Some screen shots of one simulation:
Initial Configuration
Later time step
Later Still
Notice the greens get eliminated fairly rapidly. Their fear was set low, as was their speed. Red fish wanted to school more than yellow fish and were slightly more fearful of others. All 10 of the original redfish survived, while only 7 of the yellowfish did, and none of the original 10 greenfish survived.