Currently, if a configuration is illegal and objective_higher_is_better==True, CostFunc will return -sys.float_info.max.
However, all strategies assume that lower is better, meaning they assume that this point is an optimum. Instead of avoiding this configuration, the search strategies will instead purposely move towards this point.
|
# get numerical return value, taking optimization direction into account |
|
return_value = result[self.tuning_options.objective] or sys.float_info.max |
|
return_value = return_value if not self.tuning_options.objective_higher_is_better else -return_value |
|
|