Mechanisms of Evolution - BIOL 3445
Model was written in NetLogo 6.0
•
Viewed 244 times
•
Downloaded 24 times
•
Run 0 times
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
Info tab cannot be displayed because of an encoding error
Comments and Questions
Please start the discussion about this model!
(You'll first need to log in.)
Click to Run Model
turtles-own [mat-chrom pat-chrom] globals [ max-percent ;; percent of the total population that is in the population-to-cull ;; global population size for culling procedure hw-rec hw-dom hw-homo-rec hw-hetero hw-homo-dom ] to setup ;; (for this model to work with NetLogo's new plotting features, ;; __clear-all-and-reset-ticks should be replaced with clear-all at ;; the beginning of your setup procedure and reset-ticks at the end ;; of the procedure.) __clear-all-and-reset-ticks ;; create turtles with random colors and locations crt initial-population-size [ spawn ] set hw-dom ((count turtles with [mat-chrom = 1] + count turtles with [pat-chrom = 1]) / (2 * initial-population-size)) set hw-rec ((count turtles with [mat-chrom = 2] + count turtles with [pat-chrom = 2]) / (2 * initial-population-size)) end to spawn ifelse random 100 < (proportion-allele-A * 100) [ set mat-chrom 1 ] [ set mat-chrom 2 ] ifelse random 100 < (proportion-allele-A * 100) [ set pat-chrom 1 ] [ set pat-chrom 2 ] ifelse (mat-chrom = 1 or pat-chrom = 1) [ set color blue ] [ set color red ] setxy random-xcor random-ycor let agent-shape species if agent-shape = "human" [ set agent-shape "person"] if agent-shape = "ant" [ set agent-shape "bug"] set shape agent-shape end to run-99 setup repeat 99 [go] end to go if ( ((count turtles with [mat-chrom = 1] = 0 and count turtles with [pat-chrom = 1] = 0) or (count turtles with [mat-chrom = 2] = 0 and count turtles with [pat-chrom = 2] = 0))) or (99 > 0 and ticks > 99 or count turtles = 0) [ stop ] ask turtles [ if ticks = 1 [ cull ] rt random 50 - random 50 fd 1 mutate meet ] immigrate set population-to-cull count turtles ;; show ((population-to-cull - population-size) / population-to-cull) * 100 ask turtles [ cull ] tick end to immigrate crt (initial-population-size * homo-dominant-immigration * .01) [ set mat-chrom 1 set pat-chrom 1 set color blue setxy random-xcor random-ycor let agent-shape species if agent-shape = "human" [ set agent-shape "person"] if agent-shape = "ant" [ set agent-shape "bug"] set shape agent-shape ] crt (initial-population-size * hetero-immigration * .01) [ set mat-chrom 1 set pat-chrom 2 set color blue setxy random-xcor random-ycor let agent-shape species if agent-shape = "human" [ set agent-shape "person"] if agent-shape = "ant" [ set agent-shape "bug"] set shape agent-shape ] crt (initial-population-size * homo-recessive-immigration * .01) [ set mat-chrom 2 set pat-chrom 2 set color red setxy random-xcor random-ycor let agent-shape species if agent-shape = "human" [ set agent-shape "person"] if agent-shape = "ant" [ set agent-shape "bug"] set shape agent-shape ] end to meet ;; turtle procedure - when two turtles are adjacent, reproduce (but no self-fertilization!) let mom self let mate nobody ifelse mate-with = "random" [ set mate one-of other turtles ] [ set mate one-of other turtles in-radius 1 ] if mate != nobody [ hatch 1 [ ifelse random 100 < 50 [ set mat-chrom [mat-chrom] of mom ] [ set mat-chrom [pat-chrom] of mom ] ifelse random 100 < 50 [ set pat-chrom [mat-chrom] of mate ] [ set pat-chrom [pat-chrom] of mate ] ifelse (mat-chrom = 1 or pat-chrom = 1) [ set color blue ] [ set color red ] let agent-shape species if agent-shape = "human" [ set agent-shape "person"] if agent-shape = "ant" [ set agent-shape "bug"] set population-to-cull count turtles set shape agent-shape cull ] ] end to mutate ifelse mat-chrom = 1 [ if random 10000 < mutation-dominant-to-recessive * 100 [ set mat-chrom 2] ] [ if random 10000 < mutation-recessive-to-dominant * 100 [ set mat-chrom 1] ] ifelse pat-chrom = 1 [ if random 10000 < mutation-dominant-to-recessive * 100 [ set pat-chrom 2] ] [ if random 10000 < mutation-recessive-to-dominant * 100 [ set pat-chrom 1] ] end to cull let death-chance ((population-to-cull - initial-population-size) / population-to-cull) * 100 if (selection-against-blue > 0 and color = blue) [ set death-chance death-chance + ((100 - death-chance) * selection-against-blue * .01) ] if (selection-against-red > 0 and color = red) [ set death-chance death-chance + ((100 - death-chance) * selection-against-red * .01) ] if random 100 < death-chance [ die ] end
There is only one version of this model, created over 7 years ago by Andrew McDevitt.
Attached files
File | Type | Description | Last updated | |
---|---|---|---|---|
Mechanisms of Evolution - BIOL 3445.png | preview | preview image | over 7 years ago, by Andrew McDevitt | Download |
Parent: SCAv6.4
This model does not have any descendants.