# This is an example config file for AI::Evolve::Befunge.
# It can be installed as ~/.ai-evolve-befunge or /etc/ai-evolve-befunge.conf.
# All of the valid settings are listed below, along with their default values.

# This config file is in YAML format.  If you're not familiar with it, just
# follow the syntax as shown below, and everything will work out just fine.

# NORMAL OPERATING PARAMETERS

# Select the physics engine for this instance.  This is "othello", "ttt",
# or any other module under the AI::Evolve::Befunge::Physics:: namespace.
physics: ttt

# The number of CPUs (or cores) this node has.  This affects the number of
# worker child processes.
cpus: 1

# The number of critters alive in each generation.
popsize: 40


# NETWORKING

# Hostname or IP address to connect to.  See tools/migrationd for more info.
migrationd_host: quack.glines.org

# TCP port to connect to.
migrationd_port: 29522


# LOW LEVEL STUFF

# The number of dimensions newly created critters will operate in.  This
# setting only has an effect on the first generation (after that, it is
# inherited).
dimensions: 3

# The percentage of code (versus whitespace) from the random code generator.
code_density: 70

# Like code_density, above, but only applies to the first generation (or the
# first after resuming a saved results file).
initial_code_density: 90

# The number of resource tokens each critter gets, per battle.
tokens: 2000

# Number of tokens each character of code costs.
code_cost: 1

# Number of tokens each clock cycle costs (per thread).
iter_cost: 2

# Number of tokens each repeat-cycle (from the "k" instruction) costs.
repeat_cost: 1

# Number of tokens each stack entry costs.
stack_cost: 1

# Number of tokens to create a new thread.
thread_cost: 10