trunk.add_param(Parameter(name='sband', kind='integer', default=5, description='Semi-bandwidth of band preconditioner')) trunk.add_param(Parameter(name='nmmem', kind='integer', default=10, description='Non-monotone algorithm memory')) trunk.add_param(Parameter(name='level', kind='real', default=0.1000, description='Level, used for interpolation')) # Register constraints on the parameters. trunk.add_parameter_constraint(ParameterConstraint('eta1 < eta2')) trunk.add_parameter_constraint(ParameterConstraint('eta1 > 0')) trunk.add_parameter_constraint(ParameterConstraint('eta2 < 1')) trunk.add_parameter_constraint(ParameterConstraint('gamma1 > 0')) trunk.add_parameter_constraint(ParameterConstraint('gamma1 <= gamma2')) #trunk.add_parameter_constraint(ParameterConstraint('gamma2 < 1')) trunk.add_parameter_constraint(ParameterConstraint('gamma3 > 1')) # Register atomic measures. trunk.add_measure(Measure(name='CPU', kind='real', description='Computing time')) trunk.add_measure(Measure(name='FEVAL', kind='integer', description='Number of function evaluations')) trunk.add_measure(Measure(name='GEVAL',
'margin for barrier function')) IPOPT.add_param(Parameter(name='max_soc', kind='integer', bound=[0, None], default=4, description='Maximum number of iteration for ' +\ 'second order correction')) IPOPT.add_param(Parameter(name='kappa_soc', kind='real', bound=[0, 1], default=0.99, description='Maximum number of iteration for ' +\ 'second order correction')) # Define the feasible region. IPOPT.add_parameter_constraint('tau_min > 0') IPOPT.add_parameter_constraint('tau_min < 1') IPOPT.add_parameter_constraint('s_theta > 1') IPOPT.add_parameter_constraint('s_phi > 1') IPOPT.add_parameter_constraint('delta > 0') IPOPT.add_parameter_constraint('eta_phi > 0') IPOPT.add_parameter_constraint('eta_phi < 0.5') IPOPT.add_parameter_constraint('theta_min_fact > 0') IPOPT.add_parameter_constraint('theta_max_fact > 0') IPOPT.add_parameter_constraint('gamma_theta > 0') IPOPT.add_parameter_constraint('gamma_theta < 1') IPOPT.add_parameter_constraint('gamma_phi > 0') IPOPT.add_parameter_constraint('gamma_phi < 1') IPOPT.add_parameter_constraint('kappa_soc > 0') IPOPT.add_parameter_constraint('kappa_soc < 1') # Define and register measures.
scale = Parameter(kind='integer', default=0, name='SCALE') iprint = Parameter(kind='integer', default=1, name='IPRINT') # Register parameters with algorithm. DFO.add_param(nx) DFO.add_param(maxit) DFO.add_param(maxef) DFO.add_param(stpcrtr) DFO.add_param(delmin) DFO.add_param(stpthr) DFO.add_param(cnstol) DFO.add_param(delta) DFO.add_param(pp) DFO.add_param(scale) DFO.add_param(iprint) # Define the feasible region. DFO.add_parameter_constraint('DELTA >= DELMIN') # Define and register measures. exitcode = Measure(kind='integer', name='EXITCODE', description='Exit code') fval = Measure(kind='real', name='FVAL', description='Function value') cpu = Measure(kind='real', name='CPU', description='CPU time usage') feval = Measure(kind='real', name='FEVAL', description='Number of function evaluations') DFO.add_measure(exitcode) DFO.add_measure(fval) DFO.add_measure(cpu) DFO.add_measure(feval)