-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathconfig.ini
63 lines (59 loc) · 2.4 KB
/
config.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
[mapelites]
# random seed
;seed = 23
# number of initial random samples
bootstrap_individuals = 100
# numer of map elites iterations
# according di CEC 2010: 200000 for 10D
iterations = 1000
# True: solve a minimization problem. False: solve a maximization problem
minimization = True
# show the plot or not at the end
interactive = False
[plotting]
# Set to true to highlight the best fitness value in the final plot
highlight_best = True
[opt_function]
# Define the optimization function.
# This must be the name of a class subclassing the abstract class ConstrainedFunction
name = C16
# Number of dimensions of the optimization function
# According to CEC 2010: 10
dimensions = 10
# Define heatmap bins for feature dimensions
# Name each bin as `bin_{name of constraint}` where `name_of_constraint` is the name of the constraint
# function implemented in the specified optimization function class
# If you want to define ONE bin for all constraints, name it `bin_all`
# Note: The bins must be defined by numbers, except for the `inf` label which can be defined ether at the beginning
# of at the end of the bins.
bin_all = inf,0,0.0001,0.01,1.0,inf
;bin_g1 = inf,0.0,1.0,2.0,3.0,4.0,inf
;bin_g2 = inf,0.0,1.0,2.0,3.0,inf
;bin_g3 = inf,0.0,1.0,2.0,3.0,inf
;bin_h1 = inf,0.0,1.0,2.0,3.0,4.0,5.0,inf
;bin_h2 = inf,0.0,1.0,2.0,inf
;bin_h3 = inf,0.0,1.0,2.0,inf
;bin_h4 = inf,0.0,1.0,2.0,inf
[crossover]
# flat to activate crossover. If False the algorithm selects only 1 individual and mutates it
crossover = True
# crossover function taken from ea_operators.py file.
# name of called function is {type}_crossover(). If `type = UNIFORM` then the function call is `uniform_crossover()`
type = UNIFORM
# list of arguments to the above function
indpb = 0.5
[mutation]
# mutation function taken from ea_operators.py file.
# name of called function is {type}_mutation(). If `type = GAUSSIAN` then the function call is `gaussian_mutation()`
type = GAUSSIAN
# Define how to manage the boundaries during mutation, meaning how the algorithm should behave in case it mutates outside of the function domain.
# There are three possible cases:
# - `saturation`: x in [a,b], if after mutation x>b -> x=b; if x<a -> x=a
# - `bounce`: x in [a,b], if after mutation x=x+delta>b -> x=b-delta; se x=a-delta<a --> x=a+delta
# - `toroidal`
boundary = toroidal
# list of arguments to the above function
mu = 0
sigma = 0.1
# probability of each attribute to be mutated
indpb = 0.5