class NEAT::Controller::NeatSettings

Various parameters affecting evolution. Based somewhat on the C version of NEAT. TODO not all of these parameters are implemented yet!!!

Attributes

age_significance[RW]

based on the C version of NEAT

babies_stolen[RW]
compatibility_threshold[RW]

Species compatability threshold

disjoint_coefficient[RW]

Speciation coffficient

dropoff_age[RW]

Species Peality age for not making progress

end_sequence_at[RW]
evolved_substrate_switch[RW]

Enable Evolved Substrate HyperNEAT. Meaningless unless #hyper_switch is also enabled.

excess_coefficient[RW]

Speciation coffficient

feature_selection_switch[RW]

Enable FS-NEAT

fitness_cost_per_gene[RW]
fitness_cost_per_neuron[RW]

fitness costs, if given, use in the computation of fitness AFTER the overall fitness for the applied stimuli have been caclulated.

hash_on_fitness[RW]

Set to true to returned named parameters as hashes to the fitness function (the default is to do ordered arrays)

hyper_switch[RW]

Enable HyperNEAT. This will result in the critters being interpreted as CPPNs for substrate weights. Additional setup will be necessary.

interspecies_mate_rate[RW]

Ratio of mating are actually interspecies

linktrait_mutation_sig[RW]
mate_multipoint_avg_prob[RW]
mate_multipoint_prob[RW]
mate_only_prob[RW]
mate_singlepoint_prob[RW]
max_generations[RW]

Maximum number of generations to run, if given.

max_population_history[RW]

Maximun number of populations to maintain in the history buffer.

max_species[RW]

Max target number of species (will result in the compatability_coeifficient being adjusted automatically

mutate_add_gene_prob[RW]
mutate_add_neuron_prob[RW]
mutate_change_gene_weights_prob[RW]

For gene weights perturbations and changes (complete overwrites)

mutate_change_gene_weights_sd[RW]

For gene weights perturbations and changes (complete overwrites)

mutate_gene_disable_prob[RW]
mutate_gene_reenable_prob[RW]
mutate_gene_trait_prob[RW]
mutate_neuron_trait_prob[RW]
mutate_only_prob[RW]
mutate_perturb_gene_weights_prob[RW]

For gene weights perturbations and changes (complete overwrites)

mutate_perturb_gene_weights_sd[RW]

For gene weights perturbations and changes (complete overwrites)

mutate_random_trait_prob[RW]
mutate_toggle_enable_prob[RW]
mutdiff_coefficient[RW]
neuron_trait_mut_sig[RW]
population_size[RW]

If set, will start off at the specified size and grow to the bigger population size

print_every[RW]
real_time_switch[RW]

Enable RT-NEAT, for gradual evolution suitable for games and other human-interactive systems.

recur_only_prob[RW]
recur_prob[RW]
recurrency_switch[RW]

If true, allow for recurrent networks.

smallest_species[RW]

Species smallest population allowed (coalse smaller species into one)

start_population_size[RW]

If set, will start off at the specified size and grow to the bigger population size

start_sequence_at[RW]
survival_mininum_per_species[RW]
survival_threshold[RW]

factor (0 to 1) of the top percentage of the species that's allowed to mate.

trait_mutation_power[RW]
trait_param_mut_prob[RW]
weigh_mut_power[RW]
weight_coefficient[RW]

Speciation coffficient

Public Class Methods

new() click to toggle source

Set up defaults for mandatory entries.

Calls superclass method NEAT::NeatOb.new
# File lib/rubyneat/rubyneat.rb, line 318
def initialize
  super
  @start_sequence_at = 0
  @end_sequence_at = 100
  @max_generations = 1000

  # Default operators
  @evaluator = Evaluator.new self
  @expressor = Expressor.new self
  @evolver = Evolver.new self
end