NetLogo Models Library:
This is a HubNet activity of natural selection. This selection model shows how the interaction of mates and predators on a population can generate two opposing pressures from natural selection. One of these pressures is from sexual selection and the other is from predation.
When you run the model, you can either play the role of a predator or the role of a mate.
As a predator, you will try to find fish, trying to click on them to "eat" them as fast as you can. As you hunt it is likely that you will find more fish that are easier to see. In other words, the more the appearance of the fish stands out from the background, the more likely it will be seen by you, the predator. In this model the fish population over many generations, pushed by predation pressures, will adapt to accumulate trait variations that make them better camouflaged and harder to find. Such changes typically include a smaller body size, a color similar to the tank background, spotting (or lack of) that makes the fish appear to have a texture similar to the background, and movement that is similar to the movement of the debris in its environment.
As a mate, you will try to mate with fish by clicking on them. As you mate with more and more fish, you will notice that it becomes progressively easier to find fish. In this model the fish population over many generations, pushed by sexual selection pressures, will adapt to accumulate trait variations that make them easier to find. Such changes typically include a larger body size, a color that is "flashier" against the background, spotting (or lack of) that makes the fish appear to have a texture different than the background, and movement that is different than the movement of the debris in its environment. The "flashier" a male fish is, the more likely a female fish will choose him as a mate, passing his genes to the next generation. This is sexual selection at work, and it is the force that drives the fish population to greater conspicuousness.
When both predators and mates interact with a population the outcomes are more difficult to predict, since each type of interaction tends to counterbalance the effects of the other type.
Quoting from "Sex and the Single fish" : There may be several evolutionary reasons why fishs (or fish) prefer flashier mates. On the most basic level, the male with the biggest, brightest tail spot announces most loudly, "Hey, I'm over here" to any female it can see. Flashy colors are simply easier to locate. However, there is also research to suggest that bright colors serve as an indicator of good genes in the way the strong physique of a human athlete is a direct indicator of that individual's health and vitality. Or, bright coloration may signal to a potential mate that he's got something else going for him. After all, he's been able to survive the very handicap -- conspicuousness to predators -- that his flashiness creates.
You can assume either the role of a predator or the role of a mate.
When the HubNet simulation is started after pressing GO, participants should try to click on fish as fast as they can with the mouse.
Each participant can monitor his or her relative success compared to other participants by watching the monitors in the client that show the TOP PREDATOR (the person with most catches), how many that person caught (TOP PREDATOR'S CATCHES) or TOP MATE (the person with most catches), how many that person caught (TOP MATE'S MATINGS).
When GO is pressed, if you are a predator you should try to click on the fish, as fast as you can, in order to eat them. Each time you click on a fish it will be removed from the fish population. At that point, another randomly selected fish in the population will hatch an offspring to replace the one that was caught (keeping the population of fish constant).
If you are a mate (a female fish), you should try to click on the male fish as fast as you can (they are all males). When you click on a fish that is old enough to mate, your mating will hatch an offspring that is similar in appearance to its dad. In this way the population increases with each mating event. But, when the population of fish exceeds the carrying capacity, a random fish will be removed.
Each new offspring fish may undergo small mutations in its genetics for its color, size, motion, and visibility of a spotting pattern (5 spots) based on the genetic information inherited from the fish clicked on (the male) only.
Predators prey on the most easily spotted individuals more often than those that are hard to spot eliminating them from the gene pool. Thus, predators cause fish populations to remain relatively drab, small, and still (with respect to colors and patterns of the environment they live in).
However, fish looking for a mate exert the opposite selection. Relatively small drab fish are hard to find and mate with, while large fish with garish colors and patterns that move in patterns that help them stand out are easier to find. As these fish reproduce, the frequency of their genes increases in the gene pool.
The adaptation of the population in terms of movement is sometimes harder to predict than color changes. In environments with lots of motion (debris floating in water currents, ripples on the surface of the water) staying still might actually cause a fish to stand out, just as moving much faster than the surroundings would also make a fish stand out.
The adaptation of spotting patterns for a population is also sometimes harder to predict than color changes. In environments with a grainy background, spotting may help the fish blend in. However, in an environment with large regular colored shapes (rocks), spots might make the fish stand out.
In general however, the population will evolve to blend in, and/or stand out (being more easily spotted), from their environment depending on which of the selective pressures are stronger. When there is an equal number of predators and mates, the selective pressures may not strongly push the adaptation of the population in a clear direction - the result may be a population that is balanced between having traits that help the fish stand out and traits that help the fish remain hidden.
When you run the simulation you can set up two different tank environments to compare the outcomes from the same selective pressures from mates and predators in these different surroundings.
To run the activity press the GO/PAUSE button. To start the activity over with the same group of students stop the GO/PAUSE button by pressing it again, press the SETUP button, and press GO/PAUSE again.
Make sure you select Mirror 2D view on clients in the HubNet Control Center after you press SETUP.
LISTENING? when switched "off," prevents clients from clicking on the WORLD & VIEW and selecting fishes. Turn this switch to "on" after GO/STOP is pressed to allow clients to interact with the fishes and turn it "off" if you want to ignore any of the mouse clicks registered in the client windows.
CLIENT-ROLES can be set to "all mates", in which case every client assumes the role of a a mate, or it can be set to "all predators", in which case every client assumes the role of a predator. This chooser can also be set to "mix of predators & mates", in which case for every client assigned the role of a predator, the next client is assigned the role of a mate. This last setting allows you to coordinate an experiment where all the mates interact with the fish in one tank and all the predators interact with the fish in another tank. While such coordination can be directed by the teacher, or designed by the entire class, this model is embedded within the BEAGLE curriculum, and serves as a test bed for designing an experiment by a team of students. Decisions about how to coordinate participant roles in such an experiment is part of the challenge of the related student activities.
TANK-CAPACITY determines the size of the population in each of the two tanks on SETUP. It also determines how many fish are in each tank at one time when GO is pressed and fish are being eaten or offspring are being produced. Sliding it back and forth while the model runs can simulate the effects of population effects and founder effects, since it will cause the population to be culled or undergo a population boom, depending which way you slide it.
TOP-WATER specifies the type of debris in the water. "Ripples" move from left to right, while "debris" represent leaves that drift around the tank. TOP-FLOW specifies how fast this debris moves. BOTTOM-WATER and BOTTOM-FLOW specify these same values for the bottom tank.
TOP-GROUND specifies the type of background to draw in the top tank. BOTTOM-GROUND specified it for the bottom tank. While this value will often be set before the model is run, when the value of either option is changed during a model run, the environment is automatically updated.
TOP-INITIAL-FISH specifies the colors of the fish in the initial population in each tank. "Multi-colored" sets each fish to a random set of rgb value genes, "All gray" sets each fish to have equal values of 150 150 150 for its rgb gene values. And "Black or white" sets each fish to have either the rgb gene values of 0 0 0 (black) or 255 255 255 (white).
AMOUNT-OF-DEBRIS controls the % of debris in the tanks. 100% will populate the tank with the same amount of debris (leaves or ripples) as there are patches in the tank.
COLOR-MUTATIONS? when set to "on" allows offspring to incur mutations in their color they inherit.
SWIM-MUTATIONS? when set to "on" allows offspring to incur mutations in the amount of motion they inherit. AVG. FISH MOTIONS keeps track of the average gene values for each population (the top tank and bottom tank)
SIZE-MUTATIONS? when set to "on" allows offspring to incur mutations in the adult body size they inherit. AVG. FISH SIZE keeps track of the average gene values for size for each population (the top tank and bottom tank)
SPOT-MUTATIONS? when set to "on" allows offspring to incur mutations in the visibility of a 5 spot pattern near its tail. When the gene is 0, the spot pattern is completely transparent. When the gene is 255, the spot pattern is completely opaque (black). AVG. FISH SPOTTING keeps track of the average gene values for spotting for each population (the top tank and bottom tank)
The PREDATIONS monitor keeps track of how many fish the predators have caught.
The MATING monitor keeps track of the number of mating events that have occurred.
FLASH FISH will temporarily alternately flash the fish black and white so that they are visible. This will last for about 3 seconds.
Fish get smaller and harder to find over time when only predators are present. Fish get larger and easier to find over time when only mates are present. Fish motion depends on the amount of environmental movement in the background. If the background has little environmental movement, then fish with a lot of movement stand out, but if the background has some amount of environmental movement, then fish with a less (or a lot more) movement stand out.
If you are having trouble finding the fish, it is useful to press FLASH to show where they are (and how they are camouflaged);
Try setting up experiments where the predators prey on only fish in one tank and the mates only breed with fish in the other tank.
What if fish needed to move and eat food to survive? Would that create other counter balancing selective pressure? What if fish released pheromones for other creatures to detect? Could that replace the need for garish appearances? Would mates evolve pheromones that could be detected only by mates and not predators?
IN-RADIUS is the primitive used to check if the mouse is within the graphical "footprint" of a turtle.
This model uses RGB colors, that is, colors expressed as a three item list of red, green and blue. This gives a larger range of color possibilities than with NetLogo colors.
The background for each fish tank is created using the stamp command for turtle images of plants and rocks.
Bub Hunters Camouflage Peppered Moth
This model is a part of the BEAGLE curriculum (http://ccl.northwestern.edu/rp/beagle/index.shtml)
 Inspired by Sex and the Single Guppy http://www.pbs.org/wgbh/evolution/sex/guppy/index.html
If you mention this model or the NetLogo software in a publication, we ask that you include the citations below.
For the model itself:
Please cite the NetLogo software as:
Copyright 2012 Uri Wilensky.
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Commercial licenses are also available. To inquire about commercial licenses, please contact Uri Wilensky at firstname.lastname@example.org.