CRITTERDING(1)

NAME
crittering - Evolving Artificial Life

SYNOPSIS
critterding [OPTION]...

DESCRIPTION
This manual page was written for the Debian distribution because critterding does not have a manual page. It provides information taken from "critterding --help" output and project homepage.

Critterding is a "Petri dish" universe in 3D that demonstrates evolving artificial life. Critters start out with completely random brains and bodies, but will automatically start evolving into something with much better survival skills.

Critters are informed by sensors:

- if their head touches food unit.
- their head touches another critter
- if they are able to procreate
- about their energy state
- about their age
- about the state of their joints
- what the world looks like (RGBA vision)

Critters can make use of the following motor neurons (actions):

- bend joint
- bend joint in other direction
- eat
- procreate

At default, the program sets up a small world with a relatively large amount of food units and keeps throwing in critters with randomly generated brains and bodies.

After a while, one of these idiot critters will unavoidably be good enough to maintain a small population:

Slowly but surely, their behaviour will become a lot less random as they demonstrate increasingly better survival skills.

KEYS
To save current settings to a profile, press "s" in the simulation. It will be saved to ./default and can be loaded by using "--profile ./default"

Use F1 in the simulation for more information about keys.

OPTIONS

--autoload num
     autoload critters from ~/.critterding/load
     (default: 0, range: 0-1)

--autoloadlastsaved num
     autoload critters from ~/.critterding/lastsaved
     (default: 0, range: 0-1)

--benchmark num
     run the critterding benchmark
     (default: 0, range: 0-1)

--body_maxbodyparts num
     maximum body parts per critter
     (default: 30, range: 0-1000000)

--body_maxbodypartsatbuildtime num
     maximum body parts for a new critter
     (default: 6, range: 1-1000000)

--body_maxbodypartsize num
     maximum size of a critters body part
     (default: 200, range: 1-1000000)

--body_maxheadsize num
     maximum size of a critters head
     (default: 80, range: 1-1000000)

--body_maxmutations num
     maximum mutations on a body mutant
     (default: 3, range: 1-1000000)

--body_minbodypartsize num
     minimum size of a critters body part
     (default: 20, range: 1-1000000)

--body_minheadsize num
     minimum size of a critters head
     (default: 30, range: 1-1000000)

--body_mutationrate num
     percentage of newborns that mutate bodies
     (default: 10, range: 0-100)

--body_percentmutateeffectaddbodypart num
     chance of adding a body part
     (default: 1, range: 0-100)

--body_percentmutateeffectchangecolor num
     chance of changing body color
     (default: 1, range: 0-100)

--body_percentmutateeffectchangecolor_slightly num
     chance of changing body color
     (default: 5, range: 0-100)

--body_percentmutateeffectchangeconstraintangles num
     chance of changing a joints position angles
     (default: 1, range: 0-100)

--body_percentmutateeffectchangeconstraintangles_slightly num
     chance of changing a joints position angles
     (default: 5, range: 0-100)

--body_percentmutateeffectchangeconstraintlimits num
     chance of changing a joints motion limits
     (default: 1, range: 0-100)

--body_percentmutateeffectchangeconstraintlimits_slightly num
     chance of slightly changing a joints motion limits
     (default: 5, range: 0-100)

--body_percentmutateeffectchangeconstraintposition num
     chance of changing a joints position
     (default: 1, range: 0-100)

--body_percentmutateeffectchangeconstraintposition_slightly num
     chance of slightly changing a joints position
     (default: 5, range: 0-100)

--body_percentmutateeffectremovebodypart num
     chance of removing a body part
     (default: 1, range: 0-100)

--body_percentmutateeffectrepositionhead num
     chance of repositioning head
     (default: 5, range: 0-100)

--body_percentmutateeffectresizebodypart num
     chance of resizing a body part
     (default: 1, range: 0-100)

--body_percentmutateeffectresizebodypart_slightly num
     chance of slightly resizing a body part
     (default: 5, range: 0-100)

--body_percentmutateeffectresizehead num
     chance of resizing a head
     (default: 1, range: 0-100)

--body_percentmutateeffectresizehead_slightly num
     chance of slightly resizing a head
     (default: 5, range: 0-100)

--brain_costfiringmotorneuron num
     cost of firing a motor neuron
     (default: 100, range: 0-1000000)

--brain_costfiringneuron num
     cost of firing a neuron
     (default: 10, range: 0-1000000)

--brain_costhavingneuron num
     cost of having a neuron (1/100000 energy)
     (default: 50, range: 0-1000000)

--brain_costhavingsynapse num
     cost of having a synapse
     (default: 1, range: 0-1000000)

--brain_maxdendridicbranches num
     maximum number of dendrites per neuron
     (default: 3, range: 1-1000000)

--brain_maxfiringthreshold num
     maximum firingthreshold of a neuron
     (default: 10, range: 1-1000000)

--brain_maxmutations num
     maximum mutations on a brain mutant
     (default: 10, range: 1-1000000)

--brain_maxneurons num
     maximum neurons per critter
     (default: 1000, range: 1-1000000)

--brain_maxneuronsatbuildtime num
     maximum neurons for a new critter
     (default: 200, range: 1-1000000)

--brain_maxplasticitystrengthen num
     maximum weight by which plastic synapses strengthen
     (default: 1000, range: 1-1000000)

--brain_maxplasticityweaken num
     maximum weight by which plastic synapses weaken
     (default: 10000, range: 1-1000000)

--brain_maxsynapses num
     maximum synapses per neuron
     (default: 100, range: 1-1000000)

--brain_maxsynapsesatbuildtime num
     maximum synapses for a new neuron of a new critter
     (default: 40, range: 1-1000000)

--brain_minfiringthreshold num
     minimum firingthreshold of a neuron
     (default: 2, range: 1-1000000)

--brain_minneuronsatbuildtime num
     minimum neurons for a new critter
     (default: 50, range: 1-1000000)

--brain_minplasticitystrengthen num
     minimum weight by which plastic synapses strengthen
     (default: 100, range: 1-1000000)

--brain_minplasticityweaken num
     minimum weight by which plastic synapses weaken
     (default: 1000, range: 1-1000000)

--brain_minsynapses num
     minimum synapses per neuron
     (default: 1, range: 1-1000000)

--brain_minsynapsesatbuildtime num
     minimum synapses for a new neuron
     (default: 1, range: 1-1000000)

--brain_mutate_maxdendridicbranches num
     mutate this value
     (default: 0, range: 0-1)

--brain_mutate_maxfiringthreshold num
     mutate this value
     (default: 0, range: 0-1)

--brain_mutate_minfiringthreshold num
     mutate this value
     (default: 0, range: 0-1)

--brain_mutate_mutateeffects num
     mutate mutation effects
     (default: 0, range: 0-1)

--brain_mutate_percentchanceconsistentsynapses num
     mutate this value
     (default: 0, range: 0-1)

--brain_mutate_percentchanceinhibitoryneuron num
     mutate this value
     (default: 0, range: 0-1)

--brain_mutate_percentchanceinhibitorysynapses num
     mutate this value
     (default: 0, range: 0-1)

--brain_mutate_percentchancemotorneuron num
     mutate this value
     (default: 0, range: 0-1)

--brain_mutate_percentchanceplasticneuron num
     mutate this value
     (default: 0, range: 0-1)

--brain_mutate_percentchancesensorysynapse num
     mutate this value
     (default: 0, range: 0-1)

--brain_mutate_plasticityfactors num
     mutate min/max plasticity values
     (default: 0, range: 0-1)

--brain_mutationrate num
     percentage of newborns that mutate brains
     (default: 10, range: 0-100)

--brain_percentchanceconsistentsynapses num
     percent chance a neurons synapses are all inhibitory or excitatory
     (default: 0, range: 0-100)

--brain_percentchanceinhibitoryneuron num
     percent chance a neuron is inhibotory
     (default: 50, range: 0-100)

--brain_percentchanceinhibitorysynapses num
     percent chance a synapse is inhibitory
     (default: 50, range: 0-100)

--brain_percentchancemotorneuron num
     percent chance a neuron is a motor neuron
     (default: 50, range: 0-100)

--brain_percentchanceplasticneuron num
     percent chance a neuron has plastic synapses
     (default: 20, range: 0-100)

--brain_percentchancesensorysynapse num
     percent change a synapse connects to an input
     (default: 20, range: 0-100)

--brain_percentmutateeffectaddneuron num
     chance of adding a neuron
     (default: 1, range: 0-100)

--brain_percentmutateeffectaddsynapse num
     chance of adding a synapse
     (default: 5, range: 0-100)

--brain_percentmutateeffectaltermutable num
     mutate value of a mutatable option
     (default: 1, range: 0-100)

--brain_percentmutateeffectalterneuron num
     chance of altering a neuron
     (default: 2, range: 0-100)

--brain_percentmutateeffectremoveneuron num
     chance of removing a neuron
     (default: 1, range: 0-100)

--brain_percentmutateeffectremovesynapse num
     chance of removing a synapse
     (default: 5, range: 0-100)

--camerasensitivity num
     sensitivity of the camera
     (default: 20, range: 1-1000)

--colormode num
     colors genetically exact critters identically
     (default: 0, range: 0-1)

--critter_autoexchangeinterval num
     save critters every n seconds
     (default: 0, range: 0-1000000)

--critter_autosaveinterval num
     save critters every n seconds
     (default: 0, range: 0-1000000)

--critter_enableomnivores num
     enables critters to eat each other
     (default: 1, range: 0-1)

--critter_insertevery num
     inserts a random critter every n frames
     (default: 0, range: 0-1000000)

--critter_killhalfat num
     kill 50% of critters if population reaches n
     (default: 120, range: 2-1000000)

--critter_maxenergy num
     maximum amount of energy a critter has
     (default: 5000, range: 1-1000000)

--critter_maxlifetime num
     maximum number of frames a critter lives
     (default: 40000, range: 1-1000000)

--critter_minenergyproc num
     energy a critters needs to procreate
     (default: 3000, range: 1-1000000)

--critter_procinterval num
     minimum frames between procreations
     (default: 20, range: 1-1000000)

--critter_raycastvision num
     use raycast vision instead of opengl
     (default: 0, range: 0-1)

--critter_retinasize num
     size of a critters eye retina
     (default: 8, range: 1-1000)

--critter_sightrange num
     distance a critter can see (10 = 1 worldsize)
     (default: 70, range: 1-1000000)

--critter_startenergy num
     energy a new critter (adam) starts with
     (default: 3000, range: 1-1000000)

--drawscene num
     draw the scene
     (default: 1, range: 0-1)

--energy num
     energy in the system by number of food cubes
     (default: 400, range: 0-1000000)

--exit_if_empty num
     exit simulation if there are no critters
     (default: 0, range: 0-1)

--food_maxenergy num
     maximum amount of energy a food unit has
     (default: 1500, range: 1-1000000)

--food_maxlifetime num
     maximum number of frames a food unit exists
     (default: 40000, range: 1-1000000)

--food_size num
     size of a food unit
     (default: 200, range: 1-1000000)

--fpslimit num
     frames per second for the fps limiter
     (default: 30, range: 1-1000)

--fsX num
     fullscreen resolution X
     (default: 800, range: 1-1000000)

--fsY num
     fullscreen resolution Y
     (default: 600, range: 1-1000000)

--fullscreen num
     enable fullscreen mode
     (default: 0, range: 0-1)

--headless num
     do not open gl context
     (default: 0, range: 0-1)

--killhalf_decrenergypct num
     decrease energy by n percent when killhalfat triggers
     (default: 1, range: 0-100)

--killhalf_decrmaxlifetimepct num
     decrease critter_maxlifetime by n when killhalfat triggers
     (default: 0, range: 0-100)

--killhalf_incrworldsizeX num
     increase worldsizeX by n when killhalfat triggers
     (default: 0, range: 0-100)

--killhalf_incrworldsizeY num
     increase worldsizeY by n when killhalfat triggers
     (default: 0, range: 0-100)

--mincritters num
     minimum number of critters
     (default: 10, range: 0-1000)

--race num
     enable race simulation
     (default: 0, range: 0-1)

--retinasperrow num
     number of vision retinas to stack per row onscreen
     (default: 20, range: 1-1000)

--roundworld num
     enable round planet
     (default: 0, range: 0-1)

--startseed num
     enable fullscreen mode
     (default: 0, range: 0-4000000000)

--testworld num
     a world for test purposes
     (default: 0, range: 0-1)

--threads num
     threads to use
     (default: 1, range: 1-16)

--worldsizeX num
     size of the world along axis X
     (default: 23, range: 1-5000)

--worldsizeY num
     size of the world along axis Y
     (default: 13, range: 1-5000)

--worldwalls num
     enable walls around the world
     (default: 1, range: 0-1)

SEE ALSO
 http://critterding.sourceforge.net/