This is an agent model of hermit crabs responding to external stimuli. The model simulates the interaction between crabs, seagulls, and humans on an expanse of sand. The only parameter that can be changed is whether it is day or night, but users can also interact with the hermit crabs directly, either by clicking on them (simulating a human touch), or by moving seagulls with the arrow keys.
Hermit crabs live near the ocean in tidal zones that are underwater at high tide, but out of the water during low tide. Their primary defense mechanism when scared or attacked is to retreat into their shell, hence the name. Most hermit crabs are nocturnal. The most common predator of the hermit crab is a seagull, so hermit crabs developed a unique defense mechanism - they go into their shell whenever they see a fast-moving or unexpected shadow. Naturally, such caution means that they also commonly go into shells when faced with the unexpected presence of a human. Shells are both for defense and for camouflage. In most hermit crab habitats, there are enough unoccupied shells that the crabs can simply blend in. If they are identified, however, seagulls can pick them up, carry them high into the air, and drop them on a flat rock to break open the shell and reveal the meat inside. Unlike many other crabs, hermit crabs can move equally well in all directions and can even climb effectively. Some types of crabs even climb trees to get to fruit. This is simulated in the applet by the fact that the hermit crabs can move in all directions with equal probability.
The fundamental principle behind this model is reactive evolution, the principle that the evolution of a single species doesn't occur in a vacuum. Instead, species evolve in response to their environment and other species. Hermit crabs evolved a shell and elaborate defense mechanisms in order to prevent themselves from being eaten by seagulls, fish, and other predators found in their natural habitat. Meanwhile, seagulls evolved better eyesight and the instinct to drop hermit crab shells on flat rocks to break them open. Both species continue to evolve in response to one another in a sort of evolutionary arms race. This model simulates the crabs' defensive behaviors as follows:
An effective way of introducing this model is to ask students to put themselves in the place of the hermit crab and brainstorm what kinds of defensive mechanisms they would use against flying predators. Then, discuss the defenses that hermit crabs have and how they are used. Ask the following questions:
This is a relatively simple model with only one modifiable parameter - day/night cycle - but there are a number of other ways that students can interact with the hermit crabs:
All of the aforementioned actions can be taken using the tools bar on the left-hand side of the screen alongside the Gallery at the top left. The day/night cycle can be changed by clicking on the sun or moon agent at the right with the hand tool, or by clicking the dropdown arrow at the top right, selecting simulation properties, and changing the cycle manually. For more information about Agentsheets reference the Agentsheets tutorial at: http://shodor.org/tutorials/agentSheets/Introduction.
To accomplish this objective, have students place a seagull on the game board and come up with several different strategies for how a seagull might move. Examples might include no movement at all, moving towards the nearest hermit crab, or moving randomly. Then, have students step through the simulation, carrying out their algorithm, and discuss the effects it has on the final outcomes. Ask the following questions:
To accomplish this objective, have students place anywhere from 1 to 10 seagulls on the game board, choose a movement algorithm, and then count how many steps it takes before all of the hermit crabs are dead. Repeat the experiment with different numbers of hermit crabs and different day/night cycle choices. Ask the following questions:
Have students work with the source files for the AgentSheets model to implement one of their algorithms for the seagulls. Ask the following questions:
Discuss with students the ways in which this model is not realistic, with emphasis on the long-run state of the world that it yields. Ask the following questions:
This is a much more feature-rich predator-prey model, allowing reproduction for both predator and prey as well as a resource constraint in the form of grass. However, the agents in this model are unintelligent, simply moving around at random rather than intelligently reacting to and/or avoiding one another. This is a great way to discuss with students to what degree it is worthwhile to model agents as intelligent. Giving them complex behavior may make the model more realistic, but it often yields the same end result as a simpler algorithm. For large agent models, it may be necessary to use a simpler algorithm just for the sake of computability. Taking this a step further, population models are so simple that they don't even model the individual agents; they just assume that some proportion of predators manage to eat prey during each time step, and some portion of the prey manages to escape.
BaitfishThis model gives a different example of an agent model in which the agents exhibit rudimentary intelligence. In Baitfish, the prey fish swim in a circular pattern with groups of other fish, or schools. The predator fish hover around outside of the circles, and then swoop in to try to catch a target fish. When the predator swoops in, the other fish immediately scatter and try to escape. Using this model, you can discuss with students how modeling intelligent behavior adds to the realism of an agent model, and any conclusions that can be drawn from the interaction of these creatures. You can also use this as a springboard to discuss how agents might interact with one another as a group rather than as a collection of individuals.