propeller.selection

Propeller includes many kinds of genetic operators to select parents within the population such as tournament selection, lexicase selection, and epsilon lexicase selection.

epsilon-lexicase-selection

(epsilon-lexicase-selection pop argmap)

Selects an individual from the population using epsilon-lexicase selection. Epsilon lexicase selection follows the same process as lexicase selection except, for a test case, only individuals with an error outside of a predefined epsilon are filtered.

epsilon-list

(epsilon-list pop)

List of epsilons for each training case based on median absolute deviation of errors.

fitness-proportionate-selection

(fitness-proportionate-selection pop argmap)

Selects an individual from the population using a fitness proportionate selection.

lexicase-selection

(lexicase-selection pop argmap)

Selects an individual from the population using lexicase selection. Lexicase parent selection filters the population by considering one random training case at a time, eliminating any individuals with errors for the current case that are worse than the best error in the selection pool, until a single individual remains.

motley-batch-lexicase-selection

(motley-batch-lexicase-selection pop argmap)

Selects an individual from the population using motley batch lexicase selection. Cases are combined in random collections of max size (:max-batch-size argmap).

select-parent

(select-parent pop argmap)

Selects a parent from the population using the specified method.

tournament-selection

(tournament-selection pop argmap)

Selects an individual from the population using tournaments of tournament-size by taking the individual in the tournament with the lowest :total-error.