Team:Carnegie Mellon/Fish
From 2014.igem.org
Acelentano (Talk | contribs) |
|||
(96 intermediate revisions not shown) | |||
Line 65: | Line 65: | ||
</li> | </li> | ||
<li class="dropdown"> | <li class="dropdown"> | ||
- | <a href="#" class="dropdown-toggle" data-toggle="dropdown"> | + | <a href="#" class="dropdown-toggle" data-toggle="dropdown">Policies & Practices <b class="caret"></b></a> |
<ul class="dropdown-menu"> | <ul class="dropdown-menu"> | ||
<li><a href="https://2014.igem.org/Team:Carnegie_Mellon/Our_Projects">Our Projects</a></li> | <li><a href="https://2014.igem.org/Team:Carnegie_Mellon/Our_Projects">Our Projects</a></li> | ||
Line 99: | Line 99: | ||
<h1><center>Purpose</center> </h1> | <h1><center>Purpose</center> </h1> | ||
- | <p> < | + | <p> <justify> The fish model allows users to see the effects of different concentrations of estrogen on a freshwater ecosystem containing algae, fish, and birds. The model attempts to capture the long-term effects of estrogen on male fish, and demonstrates how sensitive a freshwater ecosystem can be to various concentrations of estrogen. The model is stochastic and it was written in NetLogo, an agent-based modeling language which allows users to view and analyze complex interactions between agents and their environment. A stochastic model employs probability to determine the behavior of its components, thus it is the best type of model to capture the randomness of an ecosystem. The model was also demonstrated to local public school teachers so that they could help their students visualize interactions between different organisms and organisms and their environment. The current lake we are simulating is fictional, however, the code has been developed in such a way that one could substitute the parameters in our model with parameters they have received from a particular lake they wish to test. </justify></p> |
- | + | <hr> | |
+ | <h1> <center>Outline</center></h1> | ||
+ | <p> | ||
- | + | <center><img src="https://static.igem.org/mediawiki/2014/5/58/Model_in_Action.PNG"></center></br></br> | |
- | + | <justify> | |
+ | The fish model follows a simple tropic pyramid structure. The algae is the food source of the fish, which | ||
- | + | in turn are the food source for the birds. If no estrogen is introduced into the environment, the ecosystem is | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | turn are the food source for the birds. If no estrogen is introduced into the environment, the ecosystem is | + | |
stable and the model simulates what is essentially the predator-prey interaction. Initially there is a relatively | stable and the model simulates what is essentially the predator-prey interaction. Initially there is a relatively | ||
Line 148: | Line 138: | ||
fish population and can throw the entire ecosystem out of the equilibrium that was described above. | fish population and can throw the entire ecosystem out of the equilibrium that was described above. | ||
- | To run the model simply go to the interface tab, hit setup, and then run. < | + | To run the model simply go to the interface tab, hit setup, and then run. |
+ | |||
+ | Each fish in the model represents a school of 100 fishes. The pink fish are female, the cyan fish are male, and the yellow fish are feminized males. </justify></p> | ||
<hr> | <hr> | ||
- | < | + | <h1> <center>The Parameters</center></h1> |
- | <table border="1" cellspacing="0" cellpadding=" | + | <p>The parameters do not entirely reflect reality. For example both the max age of the fish and birds are the same |
+ | |||
+ | in the model, even though in actuality birds typically live much longer than fish. However, the parameters | ||
+ | |||
+ | are organized in such a way that the math for the model works out in a manner which is easy to program. | ||
+ | |||
+ | Essentially the most important thing for the model to do is capture the effects of estrogenic on a freshwater | ||
+ | |||
+ | ecosystem, which is what the default parameters do.</p></br> | ||
+ | |||
+ | <table border="1" cellspacing="0" cellpadding="10" align="center"> | ||
<tbody> | <tbody> | ||
<tr> | <tr> | ||
- | <td width=" | + | <td width="250" valign="top"> |
<p align="center"> | <p align="center"> | ||
<strong>Parameter</strong> | <strong>Parameter</strong> | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="250" valign="top"> |
<p align="center"> | <p align="center"> | ||
<strong>Value (if applicable)</strong> | <strong>Value (if applicable)</strong> | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="250" valign="top"> |
<p align="center"> | <p align="center"> | ||
<strong>Reasoning (if applicable)</strong> | <strong>Reasoning (if applicable)</strong> | ||
Line 181: | Line 183: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Aesthetic purposes. Static value. | Aesthetic purposes. Static value. | ||
Line 198: | Line 200: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Aesthetic purposes. Static value. | Aesthetic purposes. Static value. | ||
Line 215: | Line 217: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Aesthetic purposes. Static value. | Aesthetic purposes. Static value. | ||
Line 232: | Line 234: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Aesthetic purposes. Static value. | Aesthetic purposes. Static value. | ||
Line 249: | Line 251: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Aesthetic purposes. Static value. | Aesthetic purposes. Static value. | ||
Line 266: | Line 268: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Aesthetic purposes. Static value. Darker green squares correspond to more algae. | Aesthetic purposes. Static value. Darker green squares correspond to more algae. | ||
Line 283: | Line 285: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The distance traveled each tick. Static value. | The distance traveled each tick. Static value. | ||
Line 300: | Line 302: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The distance traveled each tick. Static value. Birds should be a little slower than the fish so that the fish are not decimated. | The distance traveled each tick. Static value. Birds should be a little slower than the fish so that the fish are not decimated. | ||
Line 317: | Line 319: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Relative size of the fish. Static value. | Relative size of the fish. Static value. | ||
Line 334: | Line 336: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Relative size of the birds. Static value. Birds should be bigger than their prey. | Relative size of the birds. Static value. Birds should be bigger than their prey. | ||
Line 351: | Line 353: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The age at which a fish is mature enough to reproduce. Static value. | The age at which a fish is mature enough to reproduce. Static value. | ||
Line 368: | Line 370: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The age at which a bird is mature enough to reproduce. Static value. | The age at which a bird is mature enough to reproduce. Static value. | ||
Line 385: | Line 387: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The age at which a fish will die of old age. Static value. | The age at which a fish will die of old age. Static value. | ||
Line 402: | Line 404: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The age at which a bird will die of old age. Static value. | The age at which a bird will die of old age. Static value. | ||
Line 419: | Line 421: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Maximum number of offspring a female fish can produce each time she successfully reproduces. Static value. DO NOT CHANGE as the value must | Maximum number of offspring a female fish can produce each time she successfully reproduces. Static value. DO NOT CHANGE as the value must | ||
Line 437: | Line 439: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Maximum number of offspring a female bird can produce each time she successfully reproduces. Static value. DO NOT CHANGE as the value must | Maximum number of offspring a female bird can produce each time she successfully reproduces. Static value. DO NOT CHANGE as the value must | ||
Line 455: | Line 457: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Assigned when an agent is born. Static at birth. 50% chance of being true. | Assigned when an agent is born. Static at birth. 50% chance of being true. | ||
Line 469: | Line 471: | ||
<td width="156" valign="top"> | <td width="156" valign="top"> | ||
<p align="center"> | <p align="center"> | ||
- | + | ≤ 100 | |
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Initialized to 100 when an agent is born. If it is less than or equal to 0, then the agent dies. Increases as the agent consumes food, up | Initialized to 100 when an agent is born. If it is less than or equal to 0, then the agent dies. Increases as the agent consumes food, up | ||
Line 490: | Line 492: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The age of an agent. Initialized to 0 when an agent is born. Incremented by one each tick. | The age of an agent. Initialized to 0 when an agent is born. Incremented by one each tick. | ||
Line 504: | Line 506: | ||
<td width="156" valign="top"> | <td width="156" valign="top"> | ||
<p align="center"> | <p align="center"> | ||
- | + | ≥ 0 | |
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Initialized to 0. Represents the current concentration of estrogen (ppt) in the water. Decreases over time and as fish are feminized. Can | Initialized to 0. Represents the current concentration of estrogen (ppt) in the water. Decreases over time and as fish are feminized. Can | ||
Line 525: | Line 527: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The ability of a male fish to resist feminization. Static value. Higher number corresponds to higher base resistance (different types of | The ability of a male fish to resist feminization. Static value. Higher number corresponds to higher base resistance (different types of | ||
Line 535: | Line 537: | ||
<td width="156" valign="top"> | <td width="156" valign="top"> | ||
<p align="center"> | <p align="center"> | ||
- | estrogen- | + | estrogen-accumulated-max |
</p> | </p> | ||
</td> | </td> | ||
Line 543: | Line 545: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
- | Essentially captures how much estrogen can be | + | Essentially captures how much estrogen can be accumulated in the fat tissue of a male fish over time. Static value. |
</p> | </p> | ||
</td> | </td> | ||
Line 552: | Line 554: | ||
<td width="156" valign="top"> | <td width="156" valign="top"> | ||
<p align="center"> | <p align="center"> | ||
- | estrogen | + | estrogen accumulated |
</p> | </p> | ||
</td> | </td> | ||
<td width="156" valign="top"> | <td width="156" valign="top"> | ||
<p align="center"> | <p align="center"> | ||
- | + | ≤ estrogen-stored-max | |
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
- | The current amount of estrogen | + | The current amount of estrogen accumulated in a male fish due to exposure to estrogen from environment. As this number increases the chance |
- | male fish is feminized also increases. | + | a male fish is feminized also increases. |
</p> | </p> | ||
</td> | </td> | ||
Line 578: | Line 580: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The amount of algae present in a square. If it equals 0, then there is no algae present in the square and the square is blue. | The amount of algae present in a square. If it equals 0, then there is no algae present in the square and the square is blue. | ||
Line 595: | Line 597: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The amount of energy an algae tile gains each time it reproduces. Static value. | The amount of energy an algae tile gains each time it reproduces. Static value. | ||
Line 612: | Line 614: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The amount of time the algae needs to wait before it can reproduce. Static value. | The amount of time the algae needs to wait before it can reproduce. Static value. | ||
Line 629: | Line 631: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The maximum amount of algae that can be located in a tile. Static value. | The maximum amount of algae that can be located in a tile. Static value. | ||
Line 646: | Line 648: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Probability that a fish makes it out of infancy. Static value. | Probability that a fish makes it out of infancy. Static value. | ||
Line 663: | Line 665: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
Probability that a bird makes it out of infancy. Static value. | Probability that a bird makes it out of infancy. Static value. | ||
Line 680: | Line 682: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The more male fish there are the greater the chance is that an egg is fertilized. Increasing this number increases the number of male fish | The more male fish there are the greater the chance is that an egg is fertilized. Increasing this number increases the number of male fish | ||
Line 698: | Line 700: | ||
</p> | </p> | ||
</td> | </td> | ||
- | <td width=" | + | <td width="156" valign="top"> |
<p align="center"> | <p align="center"> | ||
The more male birds there are the greater the chance is that an egg is fertilized. Increasing this number increases the number of male | The more male birds there are the greater the chance is that an egg is fertilized. Increasing this number increases the number of male | ||
Line 708: | Line 710: | ||
</table> | </table> | ||
- | < | + | <h1> <center>Insight</center></h1> |
- | <p> < | + | <p> <justify> In the following section we explain the reasoning behind the two stochastic processes employed in the model: </br></br> |
+ | | ||
+ | • Feminization of the male fish </br> | ||
+ | | ||
+ | • Reproduction of the birds/fish.</br></br> | ||
- | All male fish | + | All male fish accumulate estrogen in their bodies when exposed to high levels of estrogen in their environment. |
- | + | Juvenile males will be more affected by exposure to estrogen, thus they will store it at a faster rate than sexually | |
- | + | matured males. The rate of estrogen storage for a juvenile male fish is captured by the formula below:</br></br> | |
- | + | <center><img src="https://static.igem.org/mediawiki/2014/6/64/Juve_Estore.png"></center></br></br> | |
- | + | Mature male fish store estrogen at a slower rate. A male fish is defined as mature when its age is greater than or | |
- | + | equal to the age it is old enough to reproduce. The rate of estrogen storage for a mature male fish is captured by | |
- | + | the formula below:</br></br> | |
+ | |||
+ | <center><img src="https://static.igem.org/mediawiki/2014/3/31/Mature_estore.png"></center></br></br> | ||
+ | |||
+ | The model updates the state of each agent each tick. A tick is essentially representative of all the life functions | ||
+ | |||
+ | an agent needs to carry out. In a tick each organism will consume food, increment its age, move, reproduce, and | ||
+ | |||
+ | determine whether or not it needs to die. </br> | ||
+ | |||
+ | Each tick, the model of a male fish will call a function that uses a random number generator (RNG) to | ||
+ | |||
+ | determine whether or not they are feminized. The chance for a male fish to be feminized is captured by the | ||
+ | |||
+ | formula below:</br></br> | ||
+ | |||
+ | <center><img src="https://static.igem.org/mediawiki/2014/7/7e/Fem_Chance_Fish.png"></center></br></br> | ||
+ | |||
+ | The RNG then generates a floating point number between 0 and 1.0. If said number is less than the feminization | ||
+ | |||
+ | chance of a particular male fish, then that particular male fish will become feminized. Thus fish with high | ||
+ | |||
+ | amounts of estrogen accumulated in their body (representing a prolonged exposure to estrogen) and placed in a | ||
+ | |||
+ | very estrogenic environment will have a high chance of becoming feminized. | ||
+ | |||
+ | The reproduction function for both the fish and birds follow the same exact principles (they differ in only the | ||
+ | |||
+ | parameters they use). The fish reproduction function will be explained below, and the reasoning will be the | ||
+ | |||
+ | exact same for the bird reproduction function. | ||
+ | |||
+ | Essentially each female fish that is above the reproduction age will call a reproduction function that uses RNG | ||
+ | |||
+ | to determine whether or not it successfully creates offspring. The chance that a female reproduces is based on | ||
+ | |||
+ | the following formula below:</br></br> | ||
+ | |||
+ | <center><img src="https://static.igem.org/mediawiki/2014/2/23/Reproduction_Chance_Fish.png"></center></br></br> | ||
+ | |||
+ | Thus the chance any female can successfully reproduced varies as a function of the number of fertile males of | ||
+ | |||
+ | reproduction age. If there are only a few males in the lake relative to the size of the lake, adding more males | ||
+ | |||
+ | will greatly increase the chance that the eggs of a female are fertilized. Conversely if there are a large number of | ||
+ | |||
+ | males in the lake additional males will not really affect the rate at which eggs are fertilized. The constant fish- | ||
+ | find-egg represents the number of males after which additional males will not greatly affect the rate at which | ||
+ | |||
+ | eggs are fertilized. | ||
+ | |||
+ | </p> | ||
+ | |||
+ | <h1> <center>Results</center></h1> | ||
+ | <p align="justify">The most important thing to take away from the model is how fickle the organisms at the top of the food chain | ||
+ | |||
+ | are to changes in the chemical composition of the water. Even though the estrogen directly affects the fish by | ||
+ | |||
+ | feminizing them, the birds are the species which are more prone to dying out first if the estrogen level is too | ||
+ | |||
+ | high as they are highly responsive to even slight dips in the population of their food source, due to the fact that | ||
+ | |||
+ | they are a trophic level higher than the fish.</br></br> | ||
+ | |||
+ | <center><i><b><font size="4">Scenario 1: No Estrogen Added</font></b></i></center> | ||
+ | |||
+ | <video width="960" height="540" align="center" controls> | ||
+ | <source src="https://static.igem.org/mediawiki/2014/9/9d/Fish_Scenario_1.ogg" type='video/ogg'/> | ||
+ | </video></br></br> | ||
+ | |||
+ | <left>The above video represents the ecosystem with no estrogen in the water.</left></br></br> | ||
+ | |||
+ | <center><img src="https://static.igem.org/mediawiki/2014/a/a2/NoEstrogen.PNG"></center></br></br> | ||
+ | |||
+ | If there is no estrogen added, the ecosystem is in dynamic equilibrium. Essentially the ecosystem follows the classic predator prey relationship described in the section titled 'Outline'.</br></br> | ||
+ | |||
+ | <center><i><b><font size="4">Scenario 2: Low Concentrations of Estrogen (ppt 0 – 20)</center></font></b></i> | ||
+ | |||
+ | <video width="960" height="540" align="center" controls> | ||
+ | <source src="https://static.igem.org/mediawiki/2014/2/29/Fish_Scenario_2.ogg" type='video/ogg'/> | ||
+ | </video></br></br> | ||
+ | |||
+ | <left>The above video represents the ecosystem after 20 ppt estrogen is added to the water.</left></br></br> | ||
+ | |||
+ | <center><img src="https://static.igem.org/mediawiki/2014/0/07/LowEstrogen.PNG"></center></br></br> | ||
+ | |||
+ | Low concentrations of estrogen have a noticeable immediate effect on the ecosystem; however, over time the ecosystem is able to reach dynamic equilibrium once more. At tick 100, 20 ppt of estrogen was added to the water. Around tick 105 the fish population dipped to the lowest value it would ever be (150,000 individuals). This lead to the bird population experiencing a dangerously low dip at around ticks 130-135. Also the low fish population at tick 105, led to the highest recorded algae population around ticks 130-135. </br></br> | ||
+ | |||
+ | <center><i><b><font size="4">Scenario 3: Medium Estrogen Concentrations (21 – 39 ppt)</center></font></b></i> | ||
+ | |||
+ | <video width="960" height="540" align="center" controls> | ||
+ | <source src="https://static.igem.org/mediawiki/2014/5/53/Fish_Scenario_3.ogg" type='video/ogg'/> | ||
+ | </video></br></br> | ||
+ | |||
+ | <left>The above video represents the ecosystem after 30 ppt estrogen is added to the water.</left></br></br> | ||
+ | |||
+ | <center><img src="https://static.igem.org/mediawiki/2014/5/53/MediumEstrogen.PNG"></center></br></br> | ||
+ | |||
+ | Medium concentrations of estrogen have quite an interesting effect on the ecosystem. 30 ppt of estrogen was added to the ecosystem at tick 40. From ticks 50-100, the fish population was dangerously low for a longer period of time than a typical dip in the fish population. This long dip in the fish population caused the birds to die out as there was simply not enough food. The long dip in the fish population led to a large spike in the algae population. The spike in the algae population coupled with the local extinction of the bird population, allowed the fish population to boom after its prolonged dip. The long dip in the fish population could be potentially harmful for humans as well, if the lake was used for fishing. Such a low population of fish for an extended period of time, would destroy the seasonal yield for many fishermen and put them out of business.</br></br> | ||
+ | |||
+ | <center><i><b><font size="4">Scenario 4: High Estrogen Concentrations (≥ 40 ppt)</center></font></b></i> | ||
+ | |||
+ | <video width="960" height="540" align="center" controls> | ||
+ | <source src="https://static.igem.org/mediawiki/2014/d/d8/Fish_Scenario_4.ogg" type='video/ogg'/> | ||
+ | </video></br></br> | ||
+ | |||
+ | <left>The above video represents the ecosystem after 60 ppt estrogen is added to the water.</left></br></br> | ||
+ | |||
+ | <center><img src="https://static.igem.org/mediawiki/2014/a/a7/HighEstrogen.PNG"></center></br></br> | ||
+ | |||
+ | When the estrogen concentration is too high, both the fish and bird populations get wiped out. The fish are incapable of producing enough fertile offspring to sustain their population, which in turn means the birds have no available food source. The algae due to the lack of fish, overgrows, and covers the whole lake which leads to other problems such as algal bloom. 60 ppt of estrogen was added at tick 95, and the bird population died almost instantly (~15 ticks), whereas the fish population was a little hardier (died out only after ~100 ticks). | ||
+ | |||
+ | </p> | ||
+ | <hr> | ||
- | + | <h1> <center>Code</center></h1> | |
- | <center></p> | + | A commented, working version of the code can be found at <a href="https://static.igem.org/mediawiki/2014/e/e9/Feminzed_Fish.pdf">Feminized Fish Model</a> |
+ | </br> | ||
+ | <h1><center>References</center></h1> | ||
+ | <p align="left">1. Novak, M. and Wilensky, U. (2011). NetLogo Bug Hunt Predators and Invasive Species model. http://ccl.northwestern.edu/netlogo/models/BugHuntPredatorsandInvasiveSpecies. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL.</br> | ||
+ | 2. Wilensky, U. (1999). NetLogo. http://ccl.northwestern.edu/netlogo/. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL. | ||
<!-- Le javascript | <!-- Le javascript |
Latest revision as of 01:32, 18 October 2014
Purpose
Outline
The Parameters
The parameters do not entirely reflect reality. For example both the max age of the fish and birds are the same in the model, even though in actuality birds typically live much longer than fish. However, the parameters are organized in such a way that the math for the model works out in a manner which is easy to program. Essentially the most important thing for the model to do is capture the effects of estrogenic on a freshwater ecosystem, which is what the default parameters do.
Parameter |
Value (if applicable) |
Reasoning (if applicable) |
water-color |
blue |
Aesthetic purposes. Static value. |
male-fish-color |
cyan |
Aesthetic purposes. Static value. |
female-fish-color |
pink |
Aesthetic purposes. Static value. |
feminized-fish-color |
yellow |
Aesthetic purposes. Static value. |
bird-color |
orange |
Aesthetic purposes. Static value. |
algae-color |
green-scale |
Aesthetic purposes. Static value. Darker green squares correspond to more algae. |
fish-stride |
0.8 |
The distance traveled each tick. Static value. |
bird-stride |
0.5 |
The distance traveled each tick. Static value. Birds should be a little slower than the fish so that the fish are not decimated. |
fish-size |
0.8 |
Relative size of the fish. Static value. |
bird-size |
1.2 |
Relative size of the birds. Static value. Birds should be bigger than their prey. |
fish-reproduction-age |
20 |
The age at which a fish is mature enough to reproduce. Static value. |
bird-reproduction-age |
20 |
The age at which a bird is mature enough to reproduce. Static value. |
fish-max-age |
100 |
The age at which a fish will die of old age. Static value. |
bird-max-age |
100 |
The age at which a bird will die of old age. Static value. |
max-fish-offspring |
2 |
Maximum number of offspring a female fish can produce each time she successfully reproduces. Static value. DO NOT CHANGE as the value must always be greater than the max number of offspring a bird can produce but almost all computers cannot handle a value of > 2. |
max-bird-offspring |
1 |
Maximum number of offspring a female bird can produce each time she successfully reproduces. Static value. DO NOT CHANGE as the value must always be less than the max number of offspring a fish can produce but almost all computers cannot handle a value of > 1. |
male? |
true/false |
Assigned when an agent is born. Static at birth. 50% chance of being true. |
energy |
≤ 100 |
Initialized to 100 when an agent is born. If it is less than or equal to 0, then the agent dies. Increases as the agent consumes food, up to a max value of 100. Decreases by a fixed amount each tick. |
current-age |
0-100 |
The age of an agent. Initialized to 0 when an agent is born. Incremented by one each tick. |
estrogen-concentration |
≥ 0 |
Initialized to 0. Represents the current concentration of estrogen (ppt) in the water. Decreases over time and as fish are feminized. Can be increased by the user. |
estrogen-resistance |
200 |
The ability of a male fish to resist feminization. Static value. Higher number corresponds to higher base resistance (different types of fish resist estrogen to various extents so the model can be used to simulate different freshwater sources). |
estrogen-accumulated-max |
0.1 |
Essentially captures how much estrogen can be accumulated in the fat tissue of a male fish over time. Static value. |
estrogen accumulated |
≤ estrogen-stored-max |
The current amount of estrogen accumulated in a male fish due to exposure to estrogen from environment. As this number increases the chance a male fish is feminized also increases. |
algae-energy |
0-100 |
The amount of algae present in a square. If it equals 0, then there is no algae present in the square and the square is blue. |
algae-growth-rate |
10 |
The amount of energy an algae tile gains each time it reproduces. Static value. |
algae-growth-delay |
15 |
The amount of time the algae needs to wait before it can reproduce. Static value. |
algae-max-energy |
100 |
The maximum amount of algae that can be located in a tile. Static value. |
fish-survival |
0.30 |
Probability that a fish makes it out of infancy. Static value. |
bird-survival |
0.15 |
Probability that a bird makes it out of infancy. Static value. |
fish-find-egg |
10 |
The more male fish there are the greater the chance is that an egg is fertilized. Increasing this number increases the number of male fish needed to fertilize eggs (a large body of water will have a greater value for this parameter). |
bird-egg |
1 |
The more male birds there are the greater the chance is that an egg is fertilized. Increasing this number increases the number of male birds needed to fertilize eggs (a large body ecosystem will have a greater value for this parameter). |
Insight
Results
The most important thing to take away from the model is how fickle the organisms at the top of the food chain are to changes in the chemical composition of the water. Even though the estrogen directly affects the fish by feminizing them, the birds are the species which are more prone to dying out first if the estrogen level is too high as they are highly responsive to even slight dips in the population of their food source, due to the fact that they are a trophic level higher than the fish.
Code
A commented, working version of the code can be found at Feminized Fish Model
References
1. Novak, M. and Wilensky, U. (2011). NetLogo Bug Hunt Predators and Invasive Species model. http://ccl.northwestern.edu/netlogo/models/BugHuntPredatorsandInvasiveSpecies. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL. 2. Wilensky, U. (1999). NetLogo. http://ccl.northwestern.edu/netlogo/. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL.