[Avida-cvs] [Avida2-svn] r348 - trunk/source/support

brysonda@myxo.css.msu.edu brysonda at myxo.css.msu.edu
Sun Oct 16 12:25:00 PDT 2005


Author: brysonda
Date: 2005-10-16 15:25:00 -0400 (Sun, 16 Oct 2005)
New Revision: 348

Added:
   trunk/source/support/avida.cfg
Log:
Add a baseline avida.cfg (though I have modified the default values to use SMT)

Added: trunk/source/support/avida.cfg
===================================================================
--- trunk/source/support/avida.cfg	2005-10-16 19:24:07 UTC (rev 347)
+++ trunk/source/support/avida.cfg	2005-10-16 19:25:00 UTC (rev 348)
@@ -0,0 +1,188 @@
+#############################################################################
+# This file includes all the basic run-time defines for Avida.
+# For more information, see doc/config.html
+#############################################################################
+
+VERSION_ID 2.3.1   # Do not change this value.
+
+### GENERAL_GROUP ###
+# General Settings
+ANALYZE_MODE 0     # 0 = Disabled
+                   # 1 = Enabled
+                   # 2 = Interactive
+VIEW_MODE 0        # Initial viewer screen
+CLONE_FILE -       # Clone file to load
+POPULATION_FILE -  # Population file to load
+
+### ARCH_GROUP ###
+# Architecture Variables
+MAX_UPDATES -1        # Maximum updates to run experiment (-1 = no limit)
+MAX_GENERATIONS -1    # Maximum generations to run experiment (-1 = no limit)
+END_CONDITION_MODE 0  # End run when ...
+                      # 0 = MAX_UPDATES _OR_ MAX_GENERATIONS is reached
+                      # 1 = MAX_UPDATES _AND_ MAX_GENERATIONS is reached
+WORLD_X 60            # Width of the Avida world
+WORLD_Y 60            # Height of the Avida world
+WORLD_GEOMETRY 2      # 1 = Bounded Grid
+                      # 2 = Torus
+NUM_DEMES 0           # Number of independed groups in the population; 0=off
+RANDOM_SEED 0         # Random number seed (0 for based on time)
+HARDWARE_TYPE 2       # 0 = Original CPUs
+                      # 1 = New, Stack-based CPUs
+                      # 2 = Newer -- Stacks, Memory, Threading
+
+### CONFIG_FILE_GROUP ###
+# Configuration Files
+DEFAULT_DIR ../work/              # Directory in which config files are found
+INST_SET inst_set.smt             # File containing instruction set
+EVENT_FILE events.cfg             # File containing list of events during run
+ANALYZE_FILE analyze.cfg          # File used for analysis mode
+ENVIRONMENT_FILE environment.cfg  # File that describes the environment
+START_CREATURE organism.smt       # Organism to seed the soup
+
+### REPRODUCTION_GROUP ###
+# Birth and Death
+BIRTH_METHOD 4           # 0 = Replace random organism in neighborhood
+                         # 1 = Replace oldest organism in neighborhood
+                         # 2 = Replace largest Age/Merit in neighborhood
+                         # 3 = Place only in empty cells in neighborhood
+                         # 4 = Replace random from population (Mass Action)
+                         # 5 = Replace oldest in entire population (like Tierra)
+                         # 6 = Replace random within deme
+PREFER_EMPTY 1           # Are empty cells given preference in offsping placement?
+DEATH_METHOD 2           # 0 = Never die of old age.
+                         # 1 = Die when inst executed = AGE_LIMIT (+deviation)
+                         # 2 = Die when inst executed = length*AGE_LIMIT (+dev)
+AGE_LIMIT 20             # Modifies DEATH_METHOD
+AGE_DEVIATION 0          # Creates a distribution around AGE_LIMIT
+ALLOC_METHOD 0           # (Orignal CPU Only)
+                         # 0 = Allocated space is set to default instruction.
+                         # 1 = Set to section of dead genome (Necrophilia)
+                         # 2 = Allocated space is set to random instruction.
+DIVIDE_METHOD 1          # 0 = Divide leaves state of mother untouched.
+                         # 1 = Divide resets state of mother (after the divide, we have 2 children)
+                         # 2 = Divide resets state of current thread only(does not touch possible parasite threads)
+GENERATION_INC_METHOD 1  # 0 = Only the generation of the child is
+                         #     increased on divide.
+                         # 1 = Both the generation of the mother and child are
+                         #     increased on divide (good with DIVIDE_METHOD 1).
+RECOMBINATION_PROB 1.0   # probability that recombination will happen when div-sex is used
+MODULE_NUM 0             # number of modules in the genome
+CONT_REC_REGS 1          # are (modular) recombination regions continuous
+CORESPOND_REC_REGS 1     # are (modular) recombination regions swapped at random or with corresponding ones, by location
+TWO_FOLD_COST_SEX 0      # 1 = only one recombined offspring is born.
+                         # 2 = both offspring are born
+SAME_LENGTH_SEX 0        # 0 = recombine with any genome
+                         # 1 = only recombine w/ same length
+
+### DIVIDE_GROUP ###
+# Divide Restrictions
+CHILD_SIZE_RANGE 2.0  # Maximal differential between child and parent sizes.
+MIN_COPIED_LINES 0.5  # Code fraction which must be copied before divide.
+MIN_EXE_LINES 0.5     # Code fraction which must be executed before divide.
+REQUIRE_ALLOCATE 1    # (Origianl CPU Only) Is a an allocate required before a divide? (0/1)
+REQUIRED_TASK -1      # Task ID required for successful divide.
+IMMUNITY_TASK -1      # Task providing immunity from the required task.
+REQUIRED_REACTION -1  # Reaction ID required for successful divide.
+DIE_PROB 0.0          # probability of death when 'die' instruction is executed
+
+### MUTATION_GROUP ###
+# Mutations
+POINT_MUT_PROB 0.0    # Mutation rate (per-location per update)
+COPY_MUT_PROB 0.0075  # Mutation rate (per copy)
+INS_MUT_PROB 0.0      # Insertion rate (per site, applied on divide)
+DEL_MUT_PROB 0.0      # Deletion rate (per site, applied on divide)
+DIV_MUT_PROB 0.0      # Mutation rate (per site, applied on divide)
+DIVIDE_MUT_PROB 0.0   # Mutation rate (per divide)
+DIVIDE_INS_PROB 0.05  # Insertion rate (per divide)
+DIVIDE_DEL_PROB 0.05  # Deletion rate (per divide)
+PARENT_MUT_PROB 0.0   # Per-site, in parent, on divide
+SPECIAL_MUT_LINE -1   # If this is >= 0, ONLY this line is mutated
+
+### REVERSION_GROUP ###
+# Mutation Reversion
+# These slow down avida a lot, and should be set to 0.0 normally.
+REVERT_FATAL 0.0           # Should any mutations be reverted on birth?
+REVERT_DETRIMENTAL 0.0     #   0.0 to 1.0; Probability of reversion.
+REVERT_NEUTRAL 0.0         # 
+REVERT_BENEFICIAL 0.0      # 
+STERILIZE_FATAL 0.0        # Should any mutations clear (kill) the organism?
+STERILIZE_DETRIMENTAL 0.0  # 
+STERILIZE_NEUTRAL 0.0      # 
+STERILIZE_BENEFICIAL 0.0   # 
+FAIL_IMPLICIT 0            # Should copies that failed *not* due to mutations
+                           # be eliminated?
+
+### TIME_GROUP ###
+# Time Slicing
+AVE_TIME_SLICE 30        # Ave number of insts per org per update
+SLICING_METHOD 2         # 0 = CONSTANT: all organisms get default...
+                         # 1 = PROBABILISTIC: Run _prob_ proportional to merit.
+                         # 2 = INTEGRATED: Perfectly integrated deterministic.
+SIZE_MERIT_METHOD 0      # 0 = off (merit is independent of size)
+                         # 1 = Merit proportional to copied size
+                         # 2 = Merit prop. to executed size
+                         # 3 = Merit prop. to full size
+                         # 4 = Merit prop. to min of executed or copied size
+                         # 5 = Merit prop. to sqrt of the minimum size
+TASK_MERIT_METHOD 1      # 0 = No task bonuses
+                         # 1 = Bonus just equals the task bonus
+MAX_CPU_THREADS 1        # Number of Threads a CPU can spawn
+THREAD_SLICING_METHOD 0  # Formula for and organism's thread slicing -> 1 + (num_organism_threads-1) * THREAD_SLICING_METHOD.
+                         # 0 = One thread executed per time slice.
+                         # 1 = All threads executed each time slice.
+MAX_LABEL_EXE_SIZE 1     # Max nops marked as executed when labels are used
+BASE_SIZE_MERIT 100      # Base merit when size is *not* used
+DEFAULT_BONUS 1.0        # The bonus an organism gets before it has completed any tasks
+MERIT_TIME 0             # 0 = Merit Calculated when task completed
+                         # 1 = Merit Calculated on Divide
+MERIT_GIVEN 0.0          # Fraction of merit donated with 'donate' command
+MERIT_RECEIVED 0.0       # Multiplier of merit given with 'donate' command
+MAX_DONATE_KIN_DIST -1   # Limit on distance of relation for donate; -1=no max
+MAX_DONATE_EDIT_DIST -1  # Limit on genetic (edit) distance for donate; -1=no max
+MAX_DONATES 1000000      # Limit on number of donates organisms are allowed.
+
+### GENEOLOGY_GROUP ###
+# Geneology
+TRACK_MAIN_LINEAGE 1  # Keep all ancestors of the active population?
+                      # 0=no, 1=yes, 2=yes,w/sexual population
+THRESHOLD 3           # Number of organisms in a genotype needed for it
+                      #   to be considered viable.
+GENOTYPE_PRINT 0      # 0/1 (off/on) Print out all threshold genotypes?
+GENOTYPE_PRINT_DOM 0  # Print out a genotype if it stays dominant for
+                      #   this many updates. (0 = off)
+SPECIES_THRESHOLD 2   # max failure count for organisms to be same species
+SPECIES_RECORDING 0   # 1 = full, 2 = limited search (parent only)
+SPECIES_PRINT 0       # 0/1 (off/on) Print out all species?
+TEST_CPU_TIME_MOD 20  # Time allocated in test CPUs (multiple of length)
+
+### LOG_GROUP ###
+# Log Files
+LOG_CREATURES 0  # 0/1 (off/on) toggle to print file.
+LOG_GENOTYPES 0  # 0 = off, 1 = print ALL, 2 = print threshold ONLY.
+LOG_THRESHOLD 0  # 0/1 (off/on) toggle to print file.
+LOG_SPECIES 0    # 0/1 (off/on) toggle to print file.
+LOG_LANDSCAPE 0  # 0/1 (off/on) toggle to print file.
+
+### LINEAGE_GROUP ###
+# Lineage
+# NOTE: This should probably be called "Clade"
+# This one can slow down avida a lot. It is used to get an idea of how
+# often an advantageous mutation arises, and where it goes afterwards.
+# Lineage creation options are.  Works only when LOG_LINEAGES is set to 1.
+#   0 = manual creation (on inject, use successive integers as lineage labels).
+#   1 = when a child's (potential) fitness is higher than that of its parent.
+#   2 = when a child's (potential) fitness is higher than max in population.
+#   3 = when a child's (potential) fitness is higher than max in dom. lineage
+# *and* the child is in the dominant lineage, or (2)
+#   4 = when a child's (potential) fitness is higher than max in dom. lineage
+# (and that of its own lineage)
+#   5 = same as child's (potential) fitness is higher than that of the
+#       currently dominant organism, and also than that of any organism
+#       currently in the same lineage.
+#   6 = when a child's (potential) fitness is higher than any organism
+#       currently in the same lineage.
+#   7 = when a child's (potential) fitness is higher than that of any
+#       organism in its line of descent
+LOG_LINEAGES 0             # 
+LINEAGE_CREATION_METHOD 0  # 




More information about the Avida-cvs mailing list