Skip to content

A2. Configuration Parameters

Ezequiel Torres Feyuk edited this page Apr 19, 2017 · 1 revision

The following section has information about the parameters used by MLC to manipulate the creation and evolution of the populations throughout an entire experiment. The parameters shown in this section are exclusively used internally by MLC, so if the user find another parameters inside the configuration files of the examples, that means they were added on purpose to be used in that particular experiment

LOGGING

Parameter Description Range of Values
logmode Log configuration used by MLC root, testing, file, console, (...customs)

POPULATION

Parameter Description Range of Values
size Number of individuals of every population integer
sensors Number of inputs for control laws integer
sensor_spec If true, sensors' indexes are retrieved from the parameter sensor_list. If False, sensors' indexes will be completed in an autonumeric form boolean (0,1)
sensor_list Set the sensor indexes for the sensors set in the LISP regressive tree function integer (list)
controls Number of control laws integer
sensor_prob Probability of create a sensor-based operation integer (0 to 1)
leaf_prob Probability of create a leaf node integer (0 to 1)
range Absolute value of minimum and maximum of generated constans integer
precision Decimal precision of generated constantes 1-20
opsetrange Index of operations to use 1(+), 2(-), 3(*), 4(/), 5(sin), 6(cos), 7(log), 8(exp), 9(tanh)
formal TODO -
end_character TODO -
individual_type TODO -

GP

Parameter Description Range of Values
maxdepth Maximum depth of all individuals integer
maxdepthfirst Maximum depth of individuals in first generation integer
mindepth Minimum depth of individuals before simplification integer
mutmindepth Minimum depth at which a node is selected for mutation or crossover integer
mutmaxdepth Maximum depth at which a mode is selected for mutation or crossover integer
mutsubtreemindepth Minimum depth of a subtree for crossover integer
generation_method Choose the way the individuals will be created fixed_maxdepthfirst, mixed_ramped_gauss, random_maxdepthfirst, full_maxdepthfirst, mixed_maxdepthfirst, mixed_ramped_even
gaussigma Standard deviaton for the gaussian distribution (if mixed_ramped_gauss is used) float
ramp Range of tree depth to be sued in ramped generation methods array
maxtries TODO -
mutation_types TODO -

OPTIMIZATION

Parameter Description Range of Values
elitism Number of individuals selected by elitism integer
probrep Replication probability float
probmut Mutation probability float
probcro Crossover probability float
selectionmethod Method by which the individuals are selected tournament, fitness_proportional, pareto
tournamentsize Number of individuals that enter each tournament integer
lookforduplicates Boolean value that remove duplicates in the same generation 0, 1
simplify Boolean value that simplify LISP expressions using rules and actions coded in opset 0, 1
cascade TODO -

EVALUATOR

Parameter Description Range of Values
evaluation_method Dictates the way the evaluation of the individuals will be made test, mfile_multi, mfile_standalone
evaluation_function Dynamically choose the function of evaluation to be used arduino, toy_problem (for the moment)
indfile Name of the file where an external evaluator reads the individual string
Jfile Name of the file where an external evaluator returns the cost string
exchangedir Path for indfile and Jfile string
evaluate_all TODO -
ev_again_best Boolean value which indicates if a population has to be reevaluated before evolve it. true, false
ev_again_nb TODO (I don't really know what this param does :() -
ev_again_times Number of times a population will be evaluated if ev_again_best is true. Integer
artificialnoise Noise added to the function to the problem to be solved 0,1
execute_before_evaluation TODO -
badvalue cost value attributed to evaluation failures.Legal individuals with cost higher than badvalues has its cost changed to badvalue. This value can be expressed in scientific notation (e.g. 1e36) double
badvalues_elim Tell in which populations individuals with bad values must be eliminated none, first, all
preevaluation TODO -
preev_function TODO -

BEHAVIOUR

Parameter Description Range of Values
save If set on 1, saves the MLC object in 'mlc_be' before evaluation and in 'mlc_ae' after evaluation. Boolean value 0, 1
saveincomplete TODO -
fgen TODO -
savedir If set on 1, will trigger a display of the best individual has defined in the problem function -

ARDUINO

This parameters are used by the evaluation method 'arduino'

Parameter Description Range of Values
baudrate Baudrate of the Serial port 9600, 115200
port Port where the Arduino was mounted. Use the command dmesg to get this value /dev/ttyACM0, /dev/USB0, etc
command_opcode Opcode of the command sent by the arduino function. Opcode dos activate timeouts and retries 1, 2
wait_period Time the arduino will wait after a comand is received to send a response integer (milisencods)
read_timeout Time the Python serial port will wait for a response integer (miliseconds)
read_retries Amount of times the arduino function will try to resend a command integer
Clone this wiki locally