User Tools

Site Tools


people:chris_symonds:model

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
people:chris_symonds:model [2014/11/07 21:21] csymondspeople:chris_symonds:model [2014/11/16 23:07] (current) – [Figure 1] csymonds
Line 1: Line 1:
-=====Model Description===== 
  
-Paralta is a simulation that runs in the Moveable Feast Machine, a robust-first, spatially distributed computational environment. The Paralta simulation is made up of three elements +Paralta is a simulation that runs in the Moveable Feast Machine, a robust-first, spatially distributed computational environment.
-   *Dynamic Regulators (DREGs): Produce RES and can destroy nearby elements with small probability. +
-   *Resources (RES): A resource of the world. Diffuse around the world until consumed. +
-   *Sytizens: A denizen of the simulation world+
  
 +=====Model Description===== 
  
-DREGs are set with the following parameters: +The Paralta simulation consists of two elements from the MFM: DREGs and RES, and introduces one new element: Sytizen, which represents a denizen of the simulation world. The DREG parameters are kept primarily the same with the exception of spawning RES with probability 0.02. This allows a sufficient amount of RES to sustain a meaningful population of Sytizens, which use the RES for energy.
-   * Spawn RES with probability 0.02 +
-   * Delete nearby Elements with probability 0.01 +
-   * Spawn other DREGs with probability 0.002 +
-   * Delete other DREGs with probability 0.02+
  
 Each Sytizen is represented by the following parameters: Each Sytizen is represented by the following parameters:
 +   * Team - a three-bit value representing the in-group of the Sytizen.
 +   * Energy - a nine-bit value 0 =< e =< 511, and initialized to 20.
 +     * res grant 10 energy when consumed by the Sytizen.
 +   * Genotype - the genetic makeup of the Sytizen that determines its overall behavior in the world. This is represented by two, four-bit values:
 +     * Parochialism - a Sytizen with Parochial value 0 =< p =< 7 is considered non-parochial, while a value 7 > p >= 15 is considered parochial.
 +     * Altruism - a Sytizen with Altruism value 0 =< a =< 7 is considered non-altruistic, while a value 7 > a >= 15 is considered altruistic.
  
-   * Team - an integer value representing the in-group of the Sytizen. +The Genotype parameter combinations translate to four discrete phenotype categories:
-   * Energy - an integer value initialized to 20. +
-   Genotype - the genetic makeup of the Sytizen that determines its overall behavior in the world. This is represented by two integer values: +
-     * Parochialism - a value <=7 indicates a non-parochial individual, while a value >7 implies a parochial citizen. +
-     * Altruism - a value <=7 indicates a non-altruistic individual, while a value >7 implies an altruistic citizen.+
  
-The genotype parameters gives rise to four discrete behavior categories as follows:+Parochial Altruist (PA) will take on the genetic behavior of both Parochials and Altruists.
  
-Parochial Altruist (PA): The behavior of a parochial altruist is to attack and attempt to kill any out-group members encountered with 0.5 probability of success. If this attempt fails, the PA dies with probability 0.5. Movement is additionally biased towards out-group members.+Parochial Non-Altruists (PNAwill take on the genetic behavior of Parochials.
  
-Parochial Non-Altruists (PNA): This category will result in a behavior of attempting to injure an out-group member at a reduced risk to the attacker. With 0.5 probability, the victim will suffer a loss of 10 energy. If the attack fails, the attacker will suffer the same energy loss with 0.5 probability.+Non-Parochial Altruists (NPA) will take on the genetic behavior of Altruists.
  
-Non-Parochial Altruists (NPA): These Sytizens, upon encountering an in-group member with low energy, will share an amount of their resources equal to half the difference in energy, less a sharing threshold of 20. Movement is biased towards in-group members.+Non-Parochial Non-Altruists (NPNAexhibit no specialized behavior.
  
-Non-Parochial Non-Altruists (NPNA): These Sytizens exhibit no specialized behavior.+===Genetic Behavior=== 
 +A Sytizen that falls into the Altruist category will engage in their genetic behavior once per simulation event, if the energy of the Sytizen is greater than the threshold set before the simulation begins. If so, the Sytizen will choose an in-group member at random within two Manhattan distance from herself. If the energy of that member is less than the energy of the active Sytizen (less the threshold amountthen the active Sytizen will share half the difference in the two energy amounts to a maximum of 10 energy. The chosen member gains energy in that amount and the active Sytizen will lose energy in the same amount.
  
-All Sytizens, in addition to their genetic movement bias (if any) are also movement-biased towards any RES visible to them in given eventUpon the beginning of an event, a Sytizen will first consume any neighboring RES within 2 Manhattan distance from themA consumed RES bestows 10 energy on the Sytizen. The "neighborhoodof the Sytizen is then scanned, and the location and type of any Element or empty space is recorded within a Manhattan distance of 4. +Any Sytizen that is considered Parochial will engage in Parochial behavior once per simulation eventif the energy of the Sytizen is greater than the threshold set before the simulation begins. This behavior will happen in addition to the Altruistic behavior, if the Sytizen is considered to be both. The Sytizen will choose one out-group member within Manhattan distance two uniformly at random. The victim will be killed with probability 0.5. If the victim is not killed, the attacker herself has 0.5 probability of dying in the attempt. 
 + 
 +===Simulation Events=== 
 +At the beginning of an event, a Sytizen will first pay a metabolism cost of 1 energyIf this depletes the energy to 0, the Sytizen is removed and the event ended. The neighborhood of the Sytizen is then scanned, and the location and type of any Element or empty space is recorded within a Manhattan distance of four. The Sytizen will then consume one neighboring RES within two Manhattan distance from them. A consumed RES bestows 10 energy on the Sytizen. Then, any genetic-specific behavior is performed as described above.  
 + 
 +If the Sytizen is still alive and their total energy is greater than 30, they will attempt to procreate. Any in-group members within a Manhattan distance of four are sorted by energy. If the highest energy amount is greater than 40 RES, that Sytizen is selected to breed. If an empty location is available, an offspring will appear with a starting energy of 20, and the energy of each parent reduced by 10. The offspring will inherit one of the parent's Altruism values and Parochial values with 0.5 probability each. Thus, a PA and an NPNA could produce any of the categories of phenotype. Once the genes are established, the parochial and altruism values are each subject to mutation with probability 0.02. If a mutation occurs, the new value is increased or decreased by 1 with 0.5 probability. 
 + 
 +Finally, the Sytizen engages in movement. All Sytizens are movement-biased towards any RES visible to them in a given event. The normalized locations of any RES within manhattan distance four are summed, and a vector is determined from the average of those locations. They take a single step, and the event is concluded. 
 + 
 +===Methodology=== 
 +The energy threshold by which a Sytizen will engage in genetic behavior was adjusted over several runs. Initially, this threshold is set to 0, and genetic behavior will be engaged in every turn, if all other conditions are met. Then, we conduct runs at thresholds of 100, 250, 400, and 512 (effectively turning off the genetic behavior). We make 4 simulation runs per threshold.  
 + 
 +[[people:chris_symonds:model:Draft_1|Model Description Draft 1]] 
 + 
 +=====Figure 1===== 
 +{{:people:chris_symonds:fig_01_v01.png?direct&300|}}
people/chris_symonds/model.1415395270.txt.gz · Last modified: 2014/11/07 21:21 by csymonds