示例#1
0
def run_DE_on_Ros_ND(CPV_tuple, OFE_budgets, randomSeed):
    X_min, f_best_hist, X_hist, F_hist = DE_opt(objfun=Ros_ND,
                                                x_lb=-5.0 * numpy.ones(prob_d),
                                                x_ub=5.0 * numpy.ones(prob_d),
                                                Np=int(CPV_tuple[0]),
                                                Cr=CPV_tuple[1],
                                                F=CPV_tuple[2],
                                                evals=max(OFE_budgets),
                                                printLevel=0)
    F = numpy.array(f_best_hist)
    OFEs_made = int(CPV_tuple[0]) * numpy.arange(1, len(X_hist) + 1)
    return get_F_vals_at_specified_OFE_budgets(F, OFEs_made, OFE_budgets)
示例#2
0
def run_DE_on_Ros_ND(CPV_tuple, OFE_budgets, randomSeed):
    X_min, f_best_hist, X_hist, F_hist = DE_opt(
        objfun = Ros_ND,
        x_lb = -5.0 * numpy.ones(prob_d),
        x_ub =  5.0 * numpy.ones(prob_d),
        Np = int(CPV_tuple[0]),
        Cr = CPV_tuple[1],
        F = CPV_tuple[2],
        evals = max(OFE_budgets),
        printLevel=0
        )
    F =  numpy.array(f_best_hist)
    OFEs_made = int(CPV_tuple[0])*numpy.arange(1,len(X_hist)+1)
    return  get_F_vals_at_specified_OFE_budgets(F, OFEs_made, OFE_budgets)
示例#3
0
                                                evals=max(OFE_budgets),
                                                printLevel=0)
    F = numpy.array(f_best_hist)
    OFEs_made = int(CPV_tuple[0]) * numpy.arange(1, len(X_hist) + 1)
    return get_F_vals_at_specified_OFE_budgets(F, OFEs_made, OFE_budgets)


def CPV_validity_checks(CPV_array, OFE_budget):
    'check tuning constraints'
    N, Cr, F = CPV_array
    if OFE_budget < N:
        return False, 'OFE_budget < N'
    if N < 5:
        return False, 'N < 5'
    if Cr < 0 or Cr > 1:
        return False, 'Cr not in [0,1]'
    if F < 0:
        return False, 'F < 0'
    return True, ""


#initilization bounds
CPV_lb = numpy.array([5, 0.0, 0.0])
CPV_ub = numpy.array([50, 1.0, 1.0])

OFE_budgets_to_tune_under = numpy.logspace(1, 3, 30).astype(int)

sampleSizes = [2, 8, 20]

tuningBudget = 50 * 1000 * 30  # tuning budget is equvialent of assessing 50 CPV tuples upto 1000 OFEs using 30 resampling runs each
示例#4
0
        F = CPV_tuple[2],
        evals = max(OFE_budgets),
        printLevel=0
        )
    F =  numpy.array(f_best_hist)
    OFEs_made = int(CPV_tuple[0])*numpy.arange(1,len(X_hist)+1)
    return  get_F_vals_at_specified_OFE_budgets(F, OFEs_made, OFE_budgets)

def CPV_validity_checks(CPV_array, OFE_budget):
    'check tuning constraints'
    N, Cr, F = CPV_array
    if OFE_budget < N :
        return False, 'OFE_budget < N'
    if N < 5:
        return False, 'N < 5'
    if Cr < 0 or Cr > 1 :
        return False, 'Cr not in [0,1]'
    if F < 0:
        return False, 'F < 0'
    return True, ""

#initilization bounds
CPV_lb = numpy.array([  5, 0.0, 0.0 ]) 
CPV_ub = numpy.array([ 50, 1.0, 1.0 ]) 

OFE_budgets_to_tune_under = numpy.logspace(1,3,30).astype(int)

sampleSizes = [2,8,20]

tuningBudget = 50*1000*30 # tuning budget is equvialent of assessing 50 CPV tuples upto 1000 OFEs using 30 resampling runs each