Training initial population necessitates .mll config and pretrained file
Summary
When using initialisation' := training {};
and specifying a training points file via "-Bsurrogate:training-data=<data-file>"
, it does not work unless surrogate configuration file and pretrained model are also specified.
Component
search and surrogate
Steps to reproduce
Use initialisation' := training {};
in evolutionary algorithm and specify the training points in the script with "-Bsurrogate:training-data=<data-file>"
without specifying "-Bsurrogate:configuration-file=$PRED"
and/or "-Bsurrogate:pre-trained=$PRETRAINED"
(causes error, see log). Works if these files are properly specified.
Current Behaviour
Error due to unspecified surrogate configuration.
Expected Behavior
It should be possible to use training points to generate the initial population for an evolutionary algorithm without having a pre-trained model and a surrogate configuration.
Relevant logs and/or screenshots
Possible fixes
de.evoal.surrogate.main.cdi.SurrogateProducer
in the method createTargetProperties
:
@Produces
@Dependent
@Named("surrogate-target-properties-specification")
public PropertiesSpecification createTargetProperties(final SurrogateConfiguration config) {
return PropertiesSpecification.builder()
.addDescriptions(config.getMappings()
.get(0)
.getOutputData()
.stream())
.build();
}
Contact Person
/cc @berber