Breeding Bunnies
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
Breeding Bunnies
Made by Luke Elissiry with help and ideas from Mr. Johnson, Evan and Dana Laufer, and Mrs. Groch.
WHAT IS IT?
This model examines natural selection in a population of wild rabbits. Evolution, on a genetic level, is a change in the frequency of alleles in a population over a period of time. Breeders of rabbits have long been familiar with a variety of genetic traits that affect the survivability of rabbits in the wild, as well as in breeding populations. One such trait is the trait for furless rabbits (naked bunnies). This trait was first discovered in England by W.E. Castle in 1933. The furless rabbit is rarely found in the wild because the cold English winters are a definite selective force against it.
Note: In this model, the dominant allele for normal fur is represented by F and the recessive allele for no fur is represented by f. Bunnies that inherit two F alleles or one F and one f allele have fur, while bunnies that inherit two f alleles have no fur.
HOW IT WORKS
The alleles at setup are randomly distributed into bunnies with two alleles each. If a bunny has at least one fur allele, it has fur. Before a new generation, the homozygous recessive bunnies die and their no fur alleles are lost due to the cold. The cycle continues until evolution causes the no fur allele to become rare in the bunny population.
HOW TO USE IT
The Setup button creates the alleles. Every time the Generation button is pressed, the alleles are randomly distributed into bunnies.
THINGS TO NOTICE
The data after each generation below the allele sliders can be used to fill in the [Gene Frequency Graph] (http://www-tc.pbs.org/wgbh/evolution/educators/lessons/lesson4/4bunniesdata.pdf).
Also, notice how the findings differ over time to the right of the model in the plots.
THINGS TO TRY
Change the amount of starting alleles to see how the frequency of the alleles changes.
EXTENDING THE MODEL
- More controls
- Bunnies physically breed
- Save data from prior tests and average it to show probability.
CREDITS AND REFERENCES
For use with Breeding Bunnies activity by PBS: http://www.pbs.org/wgbh/evolution/educators/lessons/lesson4/act1.html
Comments and Questions
breed [bunnies] bunnies-own [fur allele1 allele2] globals [furallele nofurallele breed?] to setup ca reset-ticks ask patches [; create background set pcolor 9.9 - (random 5) ] diffuse pcolor 1 create-bunnies amount-fur-alleles [; creates alleles set size 1.5 set color brown set shape "circle" setxy random-xcor random-ycor set fur true ] create-bunnies amount-no-fur-alleles [ set size 1.5 set color pink set shape "circle" setxy random-xcor random-ycor set fur false ] set furallele count bunnies with [fur = true]; counts alleles for first generation set nofurallele count bunnies with [fur = false] end to generation ask bunnies [die] set breed? true; starts loop while [breed? = true] [ create-bunnies 1 [ set size 2 set shape "rabbit" setxy random-xcor random-ycor if furallele > 0 and nofurallele > 0 [ ifelse (random (furallele + nofurallele)) < furallele [set allele1 true] [set allele1 false] ]; sets allele1 random depending on possible alleles left if furallele > 0 and nofurallele = 0 [set allele1 true] if furallele = 0 and nofurallele > 0 [set allele1 false] if allele1 = true [set furallele (furallele - 1)]; removes allele1 from possible alleles left if allele1 = false [set nofurallele (nofurallele - 1)] if furallele > 0 and nofurallele > 0 [ ifelse (random (furallele + nofurallele)) < furallele [set allele2 true] [set allele2 false] ]; sets allele2 random depending on possible alleles left if furallele > 0 and nofurallele = 0 [set allele2 true] if furallele = 0 and nofurallele > 0 [set allele2 false] if allele2 = true [set furallele (furallele - 1)]; removes allele2 from possible alleles left if allele2 = false [set nofurallele (nofurallele - 1)] ifelse allele1 = true or allele2 = true [set color brown][set color pink]; sets color depending on alleles ] if (furallele + nofurallele) = 0 [set breed? false]; if no more bunnies can be created, stops cycle ] set furallele (furallele + count bunnies with [allele1 = true and allele2 = true] * 2); sets number of possible alleles for next generation set furallele (furallele + count bunnies with [allele1 = true and allele2 = false] + count bunnies with [allele1 = false and allele2 = true]) set nofurallele (nofurallele + count bunnies with [allele1 = true and allele2 = false] + count bunnies with [allele1 = false and allele2 = true]) tick end
There are 2 versions of this model.
Attached files
File | Type | Description | Last updated | |
---|---|---|---|---|
4_bunnies_data.pdf | Gene Frequency Graph - used for PBS activity | over 10 years ago, by Luke Elissiry | Download | |
Breeding Bunnies.png | preview | Preview for 'Breeding Bunnies' | almost 11 years ago, by Luke Elissiry | Download |
This model does not have any ancestors.
This model does not have any descendants.