clojush.evaluate
calculate-hah-solution-rates
(calculate-hah-solution-rates pop-agents {:keys [total-error-method error-threshold population-size]})
calculate-meta-errors
(calculate-meta-errors ind {:keys [meta-error-categories error-threshold], :as argmap})
Calculates one meta-error for each meta-error category provided. Each meta-error-category should either be a keyword for a built-in meta category or a function that takes an individual and an argmap and returns a meta error value. The built-in meta categories include: :size (minimize size of program) :compressibility (minimize ammount a program compresses compared to itself) :total-error (minimize total error) :unsolved-cases (maximize number of cases with zero error) :rand (a random floating-point value) :rand-bit (randomly 0 or 1) :age (minimize genealogical age of program)
evaluate-individual
(evaluate-individual i error-function rand-gen)
(evaluate-individual i error-function rand-gen {:keys [reuse-errors print-history total-error-method normalization max-error], :as argmap})
Returns the given individual with errors, total-errors, and weighted-errors, computing them if necessary.
normalize-errors
(normalize-errors errors normalization max-error)
Normalizes errors to [0,1] if normalize isn’t :none.