# Define parameter optimization problem. data = ModelData(algorithm=coopsort, problems=problems) surrogate_data = ModelData(algorithm=coopsort, problems=surrogate_problems) struct = ModelStructure( objective=MeasureFunction(sum_time), constraints=[], # Unconstrained neighborhood=get_neighbors) prob = Model(modelData=data, modelStructure=struct) surrogate_prob = Model(modelData=surrogate_data, modelStructure=struct) # Solve parameter optimization problem. if __name__ == '__main__': from opal.Solvers import NOMAD NOMAD.set_parameter(name='MAX_BB_EVAL', value=100) NOMAD.set_parameter(name='DISPLAY_DEGREE', value=1) NOMAD.set_parameter( name="DISPLAY_STATS", value="%3dEVAL %3dBBE %4dSGTE [ %15lSOL, ] %8.2eBBO %4.2fTIME") NOMAD.set_parameter( name="STATS_FILE", value= "iterations.txt %3dEVAL %3dBBE %4dSGTE [ %15lSOL, ] %8.2eBBO %4.2fTIME" ) #NOMAD.set_parameter(name='EXTENDED_POLL_TRIGGER', value='r0.1') NOMAD.set_parameter(name='MAX_MESH_INDEX', value='2') NOMAD.solve(blackbox=prob, surrogate=surrogate_prob)
surrogate_problems.append(TestProblem(name=probName)) # SMP.set_parameter(name='MAX_PROC', value=5); # Define parameter optimization problem. data = ModelData(algorithm=coopsort, problems=problems) surrogate_data = ModelData(algorithm=coopsort, problems=surrogate_problems) struct = ModelStructure( objective=MeasureFunction(sum_time), constraints=[], neighborhood=get_neighbors # Unconstrained ) prob = Model(modelData=data, modelStructure=struct) surrogate_prob = Model(modelData=surrogate_data, modelStructure=struct) # Solve parameter optimization problem. if __name__ == "__main__": from opal.Solvers import NOMAD NOMAD.set_parameter(name="MAX_BB_EVAL", value=100) NOMAD.set_parameter(name="DISPLAY_DEGREE", value=1) NOMAD.set_parameter(name="DISPLAY_STATS", value="%3dEVAL %3dBBE %4dSGTE [ %15lSOL, ] %8.2eBBO %4.2fTIME") NOMAD.set_parameter( name="STATS_FILE", value="iterations.txt %3dEVAL %3dBBE %4dSGTE [ %15lSOL, ] %8.2eBBO %4.2fTIME" ) # NOMAD.set_parameter(name='EXTENDED_POLL_TRIGGER', value='r0.1') NOMAD.set_parameter(name="MAX_MESH_INDEX", value="2") NOMAD.solve(blackbox=prob, surrogate=surrogate_prob)
from opal import ModelStructure, ModelData, Model from opal.TestProblemCollections import CUTEr from dfo_declaration import DFO from opal.Solvers import NOMAD def avg_time(parameters,measures): n = len(measures['CPU']) if n == 0: return 0.0 return (sum(measures["CPU"]) + 0.0)/(n + 0.0) # Select real parameters from DFO. params = [par for par in DFO.parameters if par.is_real] # Select tiny unconstrained HS problems. problems = [prb for prb in CUTEr.HS if prb.nvar <= 5 and prb.ncon == 0] print 'Working with parameters ', [par.name for par in params] print 'Testing on problems ', [prb.name for prb in problems] data = ModelData(DFO, problems, params) structure = ModelStructure(objective=avg_time, constraints=[]) # Unconstrained # Instantiate black-box solver. model = Model(modelData=data, modelStructure=structure) # Solve parameter optimization problem. NOMAD.solve(blackbox=model)
listTypes = [0, 5, 6, 7] numberOfList = 16 listLengthStep = 25 for listType in listTypes: for k in range(numberOfList): n = listLengthStep * (k + 1) probName = str(listType) + '-' + str(n) + '-50' problems.append(TestProblem(name=probName)) #SMP.set_parameter(name='MAX_PROC', value=5); # Define parameter optimization problem. data = ModelData(algorithm=coopsort, problems=problems) struct = ModelStructure(objective=MeasureFunction(sum_time), constraints=[], # Unconstrained neighborhood=get_neighbors) prob = Model(modelData=data, modelStructure=struct) # Solve parameter optimization problem. if __name__ == '__main__': from opal.Solvers import NOMAD NOMAD.set_parameter(name='MAX_BB_EVAL', value=100) NOMAD.set_parameter(name='DISPLAY_DEGREE', value=4) NOMAD.set_parameter(name='EXTENDED_POLL_TRIGGER', value='r0.1') NOMAD.set_parameter(name='MAX_MESH_INDEX', value='2') NOMAD.set_parameter(name='MODEL_SEARCH_OPTIMISTIC', value='no') NOMAD.solve(blackbox=prob)
def test_trunk_optimize(): from trunk_optimize import prob from opal.Solvers import NOMAD NOMAD.set_parameter(name='MAX_BB_EVAL', value=10) NOMAD.solve(blackbox=prob)
from opal.TestProblemCollections import CUTEr from dfo_declaration import DFO from opal.Solvers import NOMAD def avg_time(parameters, measures): n = len(measures['CPU']) if n == 0: return 0.0 return (sum(measures["CPU"]) + 0.0) / (n + 0.0) # Select real parameters from DFO. params = [par for par in DFO.parameters if par.is_real] # Select tiny unconstrained HS problems. problems = [prb for prb in CUTEr.HS if prb.nvar <= 5 and prb.ncon == 0] print 'Working with parameters ', [par.name for par in params] print 'Testing on problems ', [prb.name for prb in problems] data = ModelData(DFO, problems, params) structure = ModelStructure(objective=avg_time, constraints=[]) # Unconstrained # Instantiate black-box solver. model = Model(modelData=data, modelStructure=structure) # Solve parameter optimization problem. NOMAD.solve(blackbox=model)
numberOfList = 16 listLengthStep = 25 for listType in listTypes: for k in range(numberOfList): n = listLengthStep * (k + 1) probName = str(listType) + '-' + str(n) + '-50' problems.append(TestProblem(name=probName)) #SMP.set_parameter(name='MAX_PROC', value=5); # Define parameter optimization problem. data = ModelData(algorithm=coopsort, problems=problems) struct = ModelStructure( objective=MeasureFunction(sum_time), constraints=[], # Unconstrained neighborhood=get_neighbors) prob = Model(modelData=data, modelStructure=struct) # Solve parameter optimization problem. if __name__ == '__main__': from opal.Solvers import NOMAD NOMAD.set_parameter(name='MAX_BB_EVAL', value=100) NOMAD.set_parameter(name='DISPLAY_DEGREE', value=4) NOMAD.set_parameter(name='EXTENDED_POLL_TRIGGER', value='r0.1') NOMAD.set_parameter(name='MAX_MESH_INDEX', value='2') NOMAD.set_parameter(name='MODEL_SEARCH_OPTIMISTIC', value='no') NOMAD.solve(blackbox=prob)
"DIXON3DQ", "EIGENALS", "FMINSRF2", "FMINSURF", "GENROSE", "HIELOW", "MANCINO", "NCB20", "NCB20B", "NONDQUAR", "NONDQUAR", "POWER", "SENSORS", "SINQUAD", "TESTQUAD", "TRIDIA", "WOODS", ] ] # Define parameter optimization problem. LSF.set_config(parameterName="-m", parameterValue='"lin01 lin02 lin03 lin04"') LSF.set_config(parameterName="-q", parameterValue="fedora") data = ModelData(algorithm=trunk, problems=problems, parameters=params, platform=LSF) struct = ModelStructure(objective=get_error, constraints=[]) # Unconstrained blackbox = Model(modelData=data, modelStructure=struct) # Solve parameter optimization problem. NOMAD.set_parameter(name="MAX_BB_EVAL", value=10) NOMAD.solve(model=blackbox)
"NCB20B", "NONDQUAR", "POWER", "SENSORS", "SINQUAD", "TESTQUAD", "TRIDIA", "WOODS", ] ] # SMP.set_parameter(name='MAX_PROC', value=5); # Define parameter optimization problem. data = ModelData(algorithm=trunk, problems=problems, parameters=params, measures=trunk.measures) struct = ModelStructure( objective=MeasureFunction(sum_heval, additivity=1), constraints=[(None, MeasureFunction(get_error, addivity=1), 0)] ) # One constraint get_error(p) <= 0 prob = Model(modelData=data, modelStructure=struct, platform="SMP", synchoronized=False, interruptible=True) # Solve parameter optimization problem. if __name__ == "__main__": from opal.Solvers import NOMAD NOMAD.set_parameter(name="MAX_BB_EVAL", value=10) NOMAD.solve(model=prob)
val = sum(measures["FEVAL"]) return val # Parameters being tuned and problem list. par_names = ['eta1', 'eta2', 'gamma1', 'gamma2', 'gamma3'] params = [param for param in trunk.parameters if param.name in par_names] problems = [ problem for problem in CUTEr if problem.name in [ 'BDQRTIC', 'BROYDN7D', 'BRYBND', 'CURLY10', 'CURLY20', 'CURLY30', 'CRAGGLVY', 'DIXON3DQ', 'EIGENALS', 'FMINSRF2', 'FMINSURF', 'GENROSE', 'HIELOW', 'MANCINO', 'NCB20', 'NCB20B', 'NONDQUAR', 'NONDQUAR', 'POWER', 'SENSORS', 'SINQUAD', 'TESTQUAD', 'TRIDIA', 'WOODS' ] ] # Define parameter optimization problem. LSF.set_config(parameterName="-m", parameterValue='"lin01 lin02 lin03 lin04"') LSF.set_config(parameterName="-q", parameterValue="fedora") data = ModelData(algorithm=trunk, problems=problems, parameters=params, platform=LSF) struct = ModelStructure(objective=get_error, constraints=[]) # Unconstrained blackbox = Model(modelData=data, modelStructure=struct) # Solve parameter optimization problem. NOMAD.set_parameter(name='MAX_BB_EVAL', value=10) NOMAD.solve(model=blackbox)
'TRIDIA', 'WOODS' ] ] #SMP.set_parameter(name='MAX_PROC', value=5); # Define parameter optimization problem. data = ModelData(algorithm=trunk, problems=problems, parameters=params, measures=trunk.measures) struct = ModelStructure(objective=MeasureFunction(sum_heval, additivity=1), constraints=[ (None, MeasureFunction(get_error, addivity=1), 0) ]) # One constraint get_error(p) <= 0 prob = Model(modelData=data, modelStructure=struct, platform='SMP', synchoronized=False, interruptible=True) # Solve parameter optimization problem. if __name__ == '__main__': from opal.Solvers import NOMAD NOMAD.set_parameter(name='MAX_BB_EVAL', value=10) NOMAD.solve(model=prob)
'SENSORS', 'SINQUAD', 'TESTQUAD', 'TRIDIA', 'WOODS']] # Define parameter optimization problem. data = ModelData(algorithm=trunk, problems=problems, parameters=params) struct = ModelStructure(objective=sum_heval, constraints=[(None,get_error, 0)]) model = Model(modelData=data, modelStructure=struct) # Define a surrogate surr_data = ModelData(algorithm=trunk, problems= [problem for problem in CUTEr \ if problem.name in ['BDQRTIC', 'BROYDN7D', 'BRYBND']], parameters=params) surr_struct = ModelStructure(objective=sum_heval, constraints=[]) surr_model = Model(modelData=surr_data, modelStructure=surr_struct, dataFile='surrogate.dat') # Solve parameter optimization problem. NOMAD.set_parameter(name='MAX_BB_EVAL', value=10) NOMAD.solve(blackbox=model, surrogate=surr_model)