[Avida-cvs] [avida-svn] r554 - in development: . consistencytests consistencytests/Tests consistencytests/Tests/Default source source/support source/tools

kaben@myxo.css.msu.edu kaben at myxo.css.msu.edu
Mon Apr 3 15:04:46 PDT 2006


Author: kaben
Date: 2006-04-03 18:04:39 -0400 (Mon, 03 Apr 2006)
New Revision: 554

Added:
   development/source/support/avida-smt.cfg
Modified:
   development/CMakeLists.txt
   development/consistencytests/CMakeLists.txt
   development/consistencytests/Tests/CMakeLists.txt
   development/consistencytests/Tests/Default/CMakeLists.txt
   development/source/CMakeLists.txt
   development/source/support/avida.cfg
   development/source/tools/CMakeLists.txt
   development/test_avida
Log:

Changes to consistency checks for development branch:
- disabled all but Default consistency checks.
- disabled old unit-test cruft.
- avida.cfg changed to match old genesis file.
- added avida-smt.cfg.



Modified: development/CMakeLists.txt
===================================================================
--- development/CMakeLists.txt	2006-04-03 21:30:43 UTC (rev 553)
+++ development/CMakeLists.txt	2006-04-03 22:04:39 UTC (rev 554)
@@ -167,9 +167,9 @@
 	IF(AVD_CONSISTENCY_TEST_PRIMITIVE)
 		IF(EXISTS ${PROJECT_SOURCE_DIR}/consistencytests)
 			SET(_AvidaExePath
-				"${PROJECT_BINARY_DIR}/bin/primitive"
+				"${PROJECT_BINARY_DIR}/bin/avida"
 				CACHE FILEPATH
-				"Where can the Avida executable 'primitive' be found ?"
+				"Where can the Avida executable 'avida' be found ?"
 				FORCE
 			)
 			SET(BUILD_TESTING TRUE)

Modified: development/consistencytests/CMakeLists.txt
===================================================================
--- development/consistencytests/CMakeLists.txt	2006-04-03 21:30:43 UTC (rev 553)
+++ development/consistencytests/CMakeLists.txt	2006-04-03 22:04:39 UTC (rev 554)
@@ -7,9 +7,9 @@
 #SET(AvidaExePath "/Users/kaben/Projects/Software/Avida/branch.kaben/current--HEAD--cvs/build.cmake.dbg/bin/primitive")
 #SET(PythonExePath "/sw/bin/python")
 FIND_PROGRAM(_AvidaExePath
-  NAMES primitive
+  NAMES avida
   PATHS ${PROJECT_BINARY_DIR}
-  DOC "Where can the Avida executable 'primitive' be found ?"
+  DOC "Where can the Avida executable 'avida' be found ?"
 )
 IF(_AvidaExePath)
   SET(AvidaExePath_FOUND TRUE)

Modified: development/consistencytests/Tests/CMakeLists.txt
===================================================================
--- development/consistencytests/Tests/CMakeLists.txt	2006-04-03 21:30:43 UTC (rev 553)
+++ development/consistencytests/Tests/CMakeLists.txt	2006-04-03 22:04:39 UTC (rev 554)
@@ -1,2 +1,2 @@
 SUBDIRS(Default)
-SUBDIRS(Researchers)
+#SUBDIRS(Researchers)

Modified: development/consistencytests/Tests/Default/CMakeLists.txt
===================================================================
--- development/consistencytests/Tests/Default/CMakeLists.txt	2006-04-03 21:30:43 UTC (rev 553)
+++ development/consistencytests/Tests/Default/CMakeLists.txt	2006-04-03 22:04:39 UTC (rev 554)
@@ -23,12 +23,12 @@
 # Where to find default configure files.
 SET(ConfigDir "${AVIDA_SOURCE_DIR}/source/support")
 # Configure files (other than the event file, generated above).
-SET(GenesisFile "${ConfigDir}/genesis")
+SET(GenesisFile "${ConfigDir}/avida.cfg")
 SET(InstSetFile "${ConfigDir}/inst_set.default")
 SET(EnvironmentFile "${ConfigDir}/environment.cfg")
 SET(StartCreatureFile "${ConfigDir}/organism.default")
 # Command-line arguments passed to Avida.
-SET(AvidaArgs "-seed %d -set WORLD-X 40 -set WORLD-Y 40 -set INST_SET ${InstSetFile} -set EVENT_FILE ${EventFile} -set ENVIRONMENT_FILE ${EnvironmentFile} -set START_CREATURE ${StartCreatureFile}")
+SET(AvidaArgs "-c ${GenesisFile} -seed %d -set WORLD_X 40 -set WORLD_Y 40 -set INST_SET ${InstSetFile} -set EVENT_FILE ${EventFile} -set ENVIRONMENT_FILE ${EnvironmentFile} -set START_CREATURE ${StartCreatureFile} -set DATA_DIR .")
 
 #
 # Consistency checks configuration

Modified: development/source/CMakeLists.txt
===================================================================
--- development/source/CMakeLists.txt	2006-04-03 21:30:43 UTC (rev 553)
+++ development/source/CMakeLists.txt	2006-04-03 22:04:39 UTC (rev 554)
@@ -4,5 +4,5 @@
   SUBDIRS(bindings python)
 ENDIF(AVD_PY_BINDINGS)
 IF(AVD_UNIT_TESTS)
-  SUBDIRS(testsuites)
+  #SUBDIRS(testsuites)
 ENDIF(AVD_UNIT_TESTS)

Added: development/source/support/avida-smt.cfg
===================================================================
--- development/source/support/avida-smt.cfg	2006-04-03 21:30:43 UTC (rev 553)
+++ development/source/support/avida-smt.cfg	2006-04-03 22:04:39 UTC (rev 554)
@@ -0,0 +1,183 @@
+#############################################################################
+# This file includes all the basic run-time defines for Avida.
+# For more information, see doc/config.html
+#############################################################################
+
+VERSION_ID 2.5.0   # 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
+DATA_DIR data                     # 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
+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_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.
+
+### 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  # 

Modified: development/source/support/avida.cfg
===================================================================
--- development/source/support/avida.cfg	2006-04-03 21:30:43 UTC (rev 553)
+++ development/source/support/avida.cfg	2006-04-03 22:04:39 UTC (rev 554)
@@ -27,7 +27,7 @@
                       # 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
+HARDWARE_TYPE 0       # 0 = Original CPUs
                       # 1 = New, Stack-based CPUs
                       # 2 = Newer -- Stacks, Memory, Threading
 
@@ -119,7 +119,7 @@
 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)
+SIZE_MERIT_METHOD 4      # 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

Modified: development/source/tools/CMakeLists.txt
===================================================================
--- development/source/tools/CMakeLists.txt	2006-04-03 21:30:43 UTC (rev 553)
+++ development/source/tools/CMakeLists.txt	2006-04-03 22:04:39 UTC (rev 554)
@@ -38,6 +38,6 @@
 ADD_LIBRARY(tools ${libtools_a_SOURCES})
 
 IF(BUILD_TESTING)
-  SUBDIRS(tests)
+  #SUBDIRS(tests)
 ENDIF(BUILD_TESTING)
 

Modified: development/test_avida
===================================================================
--- development/test_avida	2006-04-03 21:30:43 UTC (rev 553)
+++ development/test_avida	2006-04-03 22:04:39 UTC (rev 554)
@@ -8,4 +8,4 @@
   ../
 make
 make install
-ctest --verbose -R Consistency
+ctest --verbose "$@"




More information about the Avida-cvs mailing list