Permalink
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
211 lines (210 sloc) 3.94 KB
# General settings
starting_nodes: 50
static_node_size: 70
node_size_cap: 150
node_inputs: 2
weights: True
mutate_method: ":gene_mutate"
crossover_method: ":single_point_crossover"
recurrency: 0.1
total_evals: 10000
input_start: -1.0
# Logging settings
save_best: True
log_config: True
log_function: ":log_best"
# Mutation
active_mutate: False
input_mutation_rate: 0.3
output_mutation_rate: 0.2
node_mutation_rate: 0.2
node_size_delta: 0.0
modify_mutation_rate: 0.0
# Oneplus settings
lambda: 7
# GA settings
ga_population: 50
ga_elitism_rate: 0.1
ga_crossover_rate: 0.25
ga_mutation_rate: 0.65
# Speciation settings
speciation_thresh: 0.8
init_species: 5
# CMAES settings
cmaes_population: 5
cmaes_stopeval: 5000
functions:
# list processing
f_split_before:
- "x"
- "if length(x) > 1; return x[1:f2ind(x, (c+1)/2.0)]; else; return x; end"
f_split_after:
- "x"
- "if length(x) > 1; return x[f2ind(x, (c+1)/2.0):end]; else; return x; end"
f_range_in:
- "x"
- "range_in(x, (y+1)/2.0, (c+1)/2.0)"
f_index_y:
- "x"
- "index_in(x, (y+1)/2.0)"
f_index_c:
- "x"
- "index_in(x, (c+1)/2.0)"
f_vectorize:
- "x"
- "x[:]"
f_first:
- "x"
- "x[1]"
f_last:
- "x"
- "x[end]"
f_differences:
- "x"
- "if length(x) > 1; return scaled(diff(x[:])); else; return 0.0; end"
f_avgdifferences:
- "x"
- "if length(x) > 1; return scaled(mean(diff(x[:]))); else; return 0.0; end"
f_rotate:
- "x"
- "circshift(x, ceil(c))"
f_reverse:
- "x"
- "reverse(x[:])"
f_pushback:
- "[x; y]"
- "[x; y[:]]"
- "[x[:]; y]"
- "[x[:]; y[:]]"
f_pushfront:
- "[y; x]"
- "[y[:]; x]"
- "[y; x[:]]"
- "[y[:]; x[:]]"
f_set:
- "x"
- "x*ones(size(y))"
- "y*ones(size(x))"
- "mean(x)*ones(size(y))"
f_sum:
- "x"
- "scaled(sum(x))"
f_transpose:
- "x"
- "if ndims(x) < 3; return Array{Float64}(ctranspose(x)); else; return x; end"
# mathematical
f_add:
- "(x+y)/2.0"
- "(x.+y)/2.0"
- "(x.+y)/2.0"
- ".+(eqsize(x,y,c)...)/2.0"
f_aminus:
- "abs(x-y)/2.0"
- "abs.(x.-y)/2.0"
- "abs.(x.-y)/2.0"
- "abs.(.-(eqsize(x,y,c)...))/2.0"
f_mult:
- "x*y"
- "x.*y"
- "x.*y"
- ".*(eqsize(x,y,c)...)"
f_cmult:
- "x.*c"
f_inv:
- "scaled(1./x)"
f_abs:
- "abs.(x)"
f_sqrt:
- "sqrt.(abs.(x))"
f_cpow:
- "abs.(x).^(c+1.0)"
f_ypow:
- "abs(x)^abs(y)"
- "abs.(x).^abs.(y)"
- "abs.(x).^abs.(y)"
- ".^(eqsize(abs.(x),abs.(y),c)...)"
f_expx:
- "(exp.(x)-1.0)/(exp(1.0)-1.0)"
f_sinx:
- "sin.(x)"
f_cosx:
- "cos.(x)"
f_sqrtxy:
- "sqrt.(x*x+y*y)/sqrt(2.0)"
- "sqrt.(x*x+y.*y)/sqrt(2.0)"
- "sqrt.(x.*x+y*y)/sqrt(2.0)"
- "sqrt.(.+(eqsize(x.*x, y.*y, c)...))/sqrt(2.0)"
f_acos:
- "acos.(x)/pi"
f_asin:
- "2*asin.(x)/pi"
f_atan:
- "4*atan.(x)/pi"
# Comparison
f_lt:
- "Float64(x < y)"
- "Float64.(x.<y)"
- "Float64.(x.<y)"
- "Float64.(.<(eqsize(x,y,c)...))"
f_gt:
- "Float64(x > y)"
- "Float64.(x.>y)"
- "Float64.(x.>y)"
- "Float64.(.>(eqsize(x,y,c)...))"
# Statistical
f_stddev:
- "0.0"
- "scaled(std(x[:]))"
f_skew:
- "x"
- "scaled(skewness(x[:]))"
f_kurtosis:
- "x"
- "scaled(kurtosis(x[:]))"
f_mean:
- "x"
- "mean(x)"
f_range:
- "x"
- "maximum(x)-minimum(x)-1.0"
f_round:
- "round.(x)"
f_ceil:
- "ceil.(x)"
f_floor:
- "floor.(x)"
f_max1:
- "x"
- "maximum(x)"
f_max2:
- "max(x,y)"
- "max.(x,y)"
- "max.(x,y)"
- "max.(eqsize(x, y, c)...)"
f_min1:
- "x"
- "minimum(x)"
f_min2:
- "min(x,y)"
- "min.(x,y)"
- "min.(x,y)"
- "min.(eqsize(x, y, c)...)"
# Misc
f_vecfromdouble:
- "[x]"
- "x"
f_ywire:
- "y"
f_nop:
- "x"
f_const:
- "c"
f_constvectord:
- "c"
- "c.*ones(size(x))"
f_zeros:
- "0.0"
- "zeros(size(x))"
f_ones:
- "1.0"
- "ones(size(x))"