56 UbpNLopt(mc::FFGraph& DAG,
const std::vector<mc::FFVar>& DAGvars,
const std::vector<mc::FFVar>& DAGfunctions,
const std::vector<babBase::OptimizationVariable>& variables,
57 const unsigned nineqIn,
const unsigned neqIn,
const unsigned nineqSquashIn,
Settings* settingsIn,
Logger* loggerIn, std::vector<Constraint>* constraintPropertiesIn,
UBS_USE useIn);
69 virtual SUBSOLVER_RETCODE _solve_nlp(
const std::vector<double>& lowerVarBounds,
const std::vector<double>& upperVarBounds,
double& objectiveValue, std::vector<double>& solutionPoint);
90 static double _NLopt_get_objective(
const std::vector<double>& x, std::vector<double>& grad,
void* f_data);
102 static void _NLopt_get_ineq(
unsigned m,
double* result,
unsigned n,
const double* x,
double* grad,
void* f_data);
114 static void _NLopt_get_eq(
unsigned m,
double* result,
unsigned n,
const double* x,
double* grad,
void* f_data);
Struct for storing settings for MAiNGO.
Definition: settings.h:143
static double _NLopt_get_objective(const std::vector< double > &x, std::vector< double > &grad, void *f_data)
Function returning the objective value to the NLopt interface.
Definition: ubpNLopt.cpp:186
nlopt::opt _NLoptSubopt
Definition: ubpNLopt.h:76
virtual SUBSOLVER_RETCODE _solve_nlp(const std::vector< double > &lowerVarBounds, const std::vector< double > &upperVarBounds, double &objectiveValue, std::vector< double > &solutionPoint)
Function for actually solving the NLP sub-problem.
Definition: ubpNLopt.cpp:139
This class contains all logging and output information.
Definition: logger.h:100
UbpNLopt & operator=(const UbpNLopt &)
Base class for wrappers for handling the upper bounding problems.
Definition: ubp.h:49
SUBSOLVER_RETCODE
Enum for representing the return codes returned by the different sub-solvers (UpperBoundingSolver,...
Definition: returnCodes.h:40
nlopt::opt _NLopt
Definition: ubpNLopt.h:75
static void _NLopt_get_eq(unsigned m, double *result, unsigned n, const double *x, double *grad, void *f_data)
Function providing gradient and value information on equalities to the NLopt interface.
Definition: ubpNLopt.cpp:216
namespace holding all essentials of MAiNGO
Definition: aleModel.h:31
UbpNLopt(mc::FFGraph &DAG, const std::vector< mc::FFVar > &DAGvars, const std::vector< mc::FFVar > &DAGfunctions, const std::vector< babBase::OptimizationVariable > &variables, const unsigned nineqIn, const unsigned neqIn, const unsigned nineqSquashIn, Settings *settingsIn, Logger *loggerIn, std::vector< Constraint > *constraintPropertiesIn, UBS_USE useIn)
Constructor, stores information on the problem and initializes the local-subsolvers used.
Definition: ubpNLopt.cpp:28
UBS_USE
Enum for communicating what the intended purpose of the solver is. This determines which settings are...
Definition: ubp.h:56
Wrapper for handling the upper bounding problems by interfacing NLopt.
Definition: ubpNLopt.h:38
static void _NLopt_get_ineq(unsigned m, double *result, unsigned n, const double *x, double *grad, void *f_data)
Function providing gradient and value information on inequalities to the NLopt interface.
Definition: ubpNLopt.cpp:201