clojush.pushgp.pushgp

agent-error-handler

(agent-error-handler agnt except)

Given to individual agents for handling errors.

check-genetic-operator-probabilities-add-to-one

(check-genetic-operator-probabilities-add-to-one argmap)

compute-errors

(compute-errors pop-agents rand-gens {:keys [use-single-thread error-function], :as argmap})

install-next-generation

(install-next-generation pop-agents child-agents {:keys [population-size use-single-thread]})

make-child-agents

(make-child-agents {:keys [use-single-thread population-size]})

Makes the population of agents containing the initial random individuals in the population. Argument is a push argmap.

make-pop-agents

(make-pop-agents {:keys [use-single-thread population-size max-genome-size-in-initial-program atom-generators], :as argmap})

Makes the population of agents containing the initial random individuals in the population. Argument is a push argmap

make-rng

(make-rng {:keys [population-size]})

Creates the random number generators used by the agents in the population. Argument is a push argmap

produce-new-offspring

(produce-new-offspring pop-agents child-agents rand-gens {:keys [decimation-ratio population-size decimation-tournament-size use-single-thread]})

pushgp

(pushgp)(pushgp args)

The top-level routine of pushgp.

strip-random-insertion-flags

(strip-random-insertion-flags genome)

The :random-insertion flag is added to all elements of the genome when generated. It is used to signal that an instruction-map was generated randomly in the run (as opposed to being mutated from a parent). The individuals in generation 0 are a special case and should not have this flag present.

timer

(timer {:keys [print-timings]} step)

Used to track the time used by different parts of evolution.