Some quirks when tuning under multiple OFE budgets.
The get_F_vals_at_specified_OFE_budgets function is nessary as the following example illustrates. For this example an algorithm is assessed which makes use of a population size of 5, and the tuner wants utility values at [ 2, 3, 5, 7, 11, 16, 20, 30].
import numpy
from optTune import get_F_vals_at_specified_OFE_budgets
evals_made = numpy.array( [ 5 , 10, 15, 20 ])
solution_error_achieved = numpy.array([ 0.5, 0.3, 0.2, 0.15])
OFE_budgets = numpy.array( [ 2, 3, 5, 7, 11, 16, 20, 30] )
F, E = get_F_vals_at_specified_OFE_budgets( solution_error_achieved , evals_made, OFE_budgets)
print('F : %s' % F)
print('E : %s' % E)
which returns:
F : [ 0.5 0.5 0.3 0.2 0.15 0.15]
E : [ 5 7 11 16 20 30]