filterSQP NLP interface
Definition in file nlpi_filtersqp.c.
#include <string.h>
#include <sys/time.h>
#include "scip/nlpi_filtersqp.h"
#include "scip/nlpioracle.h"
#include "scip/scip_general.h"
#include "scip/scip_message.h"
#include "scip/scip_mem.h"
#include "scip/scip_numerics.h"
#include "scip/scip_nlpi.h"
#include "scip/scip_randnumgen.h"
#include "scip/scip_solve.h"
#include "scip/pub_misc.h"
#include "scip/pub_message.h"
Go to the source code of this file.
Data Structures | |
struct | SCIP_Time |
struct | SCIP_NlpiProblem |
Macros | |
#define | NLPI_NAME "filtersqp" |
#define | NLPI_DESC "Sequential Quadratic Programming trust region solver by R. Fletcher and S. Leyffer" |
#define | NLPI_PRIORITY -1000 |
#define | RANDSEED 26051979 |
#define | MAXPERTURB 0.01 |
#define | MAXNRUNS 3 |
#define | WORKSPACEGROWTHFACTOR 2 |
#define | MINEPS 1e-14 |
#define | OPTTOLFACTOR 0.5 |
Functions | |
void | F77_FUNC (filtersqp, FILTERSQP) |
F77_FUNC (cpname, CPNAME) | |
struct { | |
fint phl | |
fint phr | |
fint phc | |
} | F77_FUNC (hessc, HESSC) |
struct { | |
real ubd | |
real tt | |
} | F77_FUNC (ubdc, UBDC) |
struct { | |
real infty | |
real eps | |
} | F77_FUNC (nlp_eps_inf, NLP_EPS_INF) |
struct { | |
fint n_bqpd_calls | |
fint n_bqpd_prfint | |
} | F77_FUNC (bqpd_count, BQPD_COUNT) |
struct { | |
fint scale_mode | |
fint phe | |
} | F77_FUNC (scalec, SCALEC) |
static SCIP_TIME | gettime (void) |
static SCIP_Real | timeelapsed (SCIP_NLPIDATA *nlpidata) |
static SCIP_Bool | timelimitreached (SCIP_NLPIDATA *nlpidata, SCIP_NLPIPROBLEM *nlpiproblem) |
void | F77_FUNC (objfun, OBJFUN) |
void | F77_FUNC (confun, CONFUN) |
void | F77_FUNC (gradient, GRADIENT) |
void | F77_FUNC (objgrad, OBJGRAD) |
void | F77_FUNC (hessian, HESSIAN) |
static SCIP_RETCODE | setupGradients (SCIP *scip, SCIP_NLPIORACLE *oracle, fint **la, int *lasize, real **a) |
static SCIP_RETCODE | setupHessian (SCIP *scip, SCIP_NLPIORACLE *oracle, fint **la, int *lasize) |
static SCIP_RETCODE | setupStart (SCIP_NLPIDATA *data, SCIP_NLPIPROBLEM *problem, real *x, SCIP_Bool *success) |
static void | invalidateSolution (SCIP_NLPIPROBLEM *problem) |
static SCIP_RETCODE | handleNlpParam (SCIP *scip, SCIP_NLPIPROBLEM *nlpiproblem, const SCIP_NLPPARAM param) |
static SCIP_RETCODE | processSolveOutcome (SCIP_NLPIDATA *nlpidata, SCIP_NLPIPROBLEM *problem, fint ifail, SCIP_Real feastol, SCIP_Real opttol, real *x, real *lam) |
static | SCIP_DECL_NLPICOPY (nlpiCopyFilterSQP) |
static | SCIP_DECL_NLPIFREE (nlpiFreeFilterSQP) |
static | SCIP_DECL_NLPICREATEPROBLEM (nlpiCreateProblemFilterSQP) |
static | SCIP_DECL_NLPIFREEPROBLEM (nlpiFreeProblemFilterSQP) |
static | SCIP_DECL_NLPIADDVARS (nlpiAddVarsFilterSQP) |
static | SCIP_DECL_NLPIADDCONSTRAINTS (nlpiAddConstraintsFilterSQP) |
static | SCIP_DECL_NLPISETOBJECTIVE (nlpiSetObjectiveFilterSQP) |
static | SCIP_DECL_NLPICHGVARBOUNDS (nlpiChgVarBoundsFilterSQP) |
static | SCIP_DECL_NLPICHGCONSSIDES (nlpiChgConsSidesFilterSQP) |
static | SCIP_DECL_NLPIDELVARSET (nlpiDelVarSetFilterSQP) |
static | SCIP_DECL_NLPIDELCONSSET (nlpiDelConstraintSetFilterSQP) |
static | SCIP_DECL_NLPICHGLINEARCOEFS (nlpiChgLinearCoefsFilterSQP) |
static | SCIP_DECL_NLPICHGEXPR (nlpiChgExprFilterSQP) |
static | SCIP_DECL_NLPICHGOBJCONSTANT (nlpiChgObjConstantFilterSQP) |
static | SCIP_DECL_NLPISETINITIALGUESS (nlpiSetInitialGuessFilterSQP) |
static | SCIP_DECL_NLPISOLVE (nlpiSolveFilterSQP) |
static | SCIP_DECL_NLPIGETSOLSTAT (nlpiGetSolstatFilterSQP) |
static | SCIP_DECL_NLPIGETTERMSTAT (nlpiGetTermstatFilterSQP) |
static | SCIP_DECL_NLPIGETSOLUTION (nlpiGetSolutionFilterSQP) |
static | SCIP_DECL_NLPIGETSTATISTICS (nlpiGetStatisticsFilterSQP) |
SCIP_RETCODE | SCIPincludeNlpSolverFilterSQP (SCIP *scip) |
const char * | SCIPgetSolverNameFilterSQP (void) |
const char * | SCIPgetSolverDescFilterSQP (void) |
SCIP_Bool | SCIPisFilterSQPAvailableFilterSQP (void) |
#define NLPI_NAME "filtersqp" |
short concise name of solver
Definition at line 63 of file nlpi_filtersqp.c.
#define NLPI_DESC "Sequential Quadratic Programming trust region solver by R. Fletcher and S. Leyffer" |
description of solver
Definition at line 64 of file nlpi_filtersqp.c.
#define NLPI_PRIORITY -1000 |
priority of NLP solver
Definition at line 65 of file nlpi_filtersqp.c.
#define RANDSEED 26051979 |
initial random seed
Definition at line 67 of file nlpi_filtersqp.c.
#define MAXPERTURB 0.01 |
maximal perturbation of bounds in starting point heuristic
Definition at line 68 of file nlpi_filtersqp.c.
Referenced by ensureStartingPoint(), SCIP_DECL_NLPISOLVE(), and setupStart().
#define MAXNRUNS 3 |
maximal number of FilterSQP calls per NLP solve (several calls if increasing workspace or decreasing eps)
Definition at line 69 of file nlpi_filtersqp.c.
Referenced by SCIP_DECL_NLPISOLVE().
#define WORKSPACEGROWTHFACTOR 2 |
factor by which to increase workspace
Definition at line 70 of file nlpi_filtersqp.c.
Referenced by SCIP_DECL_NLPISOLVE().
#define MINEPS 1e-14 |
minimal FilterSQP epsilon
Definition at line 71 of file nlpi_filtersqp.c.
Referenced by SCIP_DECL_NLPISOLVE().
#define OPTTOLFACTOR 0.5 |
factor to apply to optimality tolerance, because FilterSQP do scaling
Definition at line 72 of file nlpi_filtersqp.c.
Referenced by SCIP_DECL_NLPISOLVE().
typedef int fint |
Definition at line 78 of file nlpi_filtersqp.c.
typedef double real |
Definition at line 79 of file nlpi_filtersqp.c.
typedef long ftnlen |
Definition at line 80 of file nlpi_filtersqp.c.
Definition at line 87 of file nlpi_filtersqp.c.
void F77_FUNC | ( | filtersqp | , |
FILTERSQP | ) |
FilterSQP main routine.
Array a has length nnza, which is the number of nonzeros in the gradient of the objective and the Jacobian. The first entries of a is the objective gradient, next are the gradients of the constraints.
Array la has length lamax, which is at least nnza+m+2. la contains the index information of a row-oriented sparse matrix storage. It stores the number of nonzeros, the column indices, and the row starts: la[0] must be set to nnza+1. la[1]..la[nnza] are indices of the variables corresponding to the entries in a (colidx). la[nnza+1]..la[nnza+1+m] contain the index where each row starts in a and la (rowstart). common block for problemname
Definition at line 170 of file nlpi_filtersqp.c.
Referenced by SCIP_DECL_NLPISOLVE(), SCIPlapackSolveLinearEquations(), SCIPlapackVersion(), and setupHessian().
F77_FUNC | ( | cpname | , |
CPNAME | ) |
|
extern |
common block for Hessian storage set to 0, i.e. NO Hessian
|
extern |
common block for upper bound on filter
|
extern |
common block for infinity & epsilon
|
extern |
common block for printing from QP solver
|
extern |
common for scaling: scale_mode = 0 (none), 1 (variables), 2 (vars+cons)
|
static |
Definition at line 275 of file nlpi_filtersqp.c.
References NULL, SCIP_Time::sec, and SCIP_Time::usec.
Referenced by SCIP_DECL_NLPISOLVE(), and timeelapsed().
|
static |
nlpidata | NLPI data |
Definition at line 297 of file nlpi_filtersqp.c.
References assert(), gettime(), NULL, SCIP_Real, SCIP_Time::sec, and SCIP_Time::usec.
Referenced by processSolveOutcome(), and timelimitreached().
|
static |
nlpidata | NLPI data |
nlpiproblem | NLPI problem |
Definition at line 315 of file nlpi_filtersqp.c.
References FALSE, SCIP_NlpiProblem::maxtime, SCIP_Bool, SCIP_REAL_MAX, and timeelapsed().
Referenced by F77_FUNC(), and SCIP_DECL_NLPISOLVE().
void F77_FUNC | ( | objfun | , |
OBJFUN | ) |
Objective function evaluation set to 1 if arithmetic exception occurs, otherwise 0
Definition at line 327 of file nlpi_filtersqp.c.
References assert(), NULL, SCIP_NlpiProblem::oracle, SCIP_NlpiProblem::scip, SCIP_OKAY, SCIPdebugMsg, SCIPisFinite, SCIPisSolveInterrupted(), SCIPnlpiOracleEvalObjectiveValue(), timelimitreached(), and x.
void F77_FUNC | ( | confun | , |
CONFUN | ) |
Constraint functions evaluation set to 1 if arithmetic exception occurs, otherwise 0
Definition at line 362 of file nlpi_filtersqp.c.
References a, assert(), c, NULL, SCIP_NlpiProblem::oracle, SCIP_NlpiProblem::scip, SCIP_OKAY, SCIPdebugMsg, SCIPisFinite, SCIPnlpiOracleEvalConstraintValue(), and x.
void F77_FUNC | ( | gradient | , |
GRADIENT | ) |
Objective gradient and Jacobian evaluation
Definition at line 399 of file nlpi_filtersqp.c.
References a, assert(), BMScopyMemoryArray, SCIP_NlpiProblem::evalbuffer, SCIP_NlpiProblem::evalbufsize, NULL, SCIP_NlpiProblem::oracle, SCIP_NlpiProblem::scip, SCIP_OKAY, SCIP_Real, SCIPdebugMsg, SCIPnlpiOracleEvalJacobian(), SCIPnlpiOracleEvalObjectiveGradient(), TRUE, and x.
void F77_FUNC | ( | objgrad | , |
OBJGRAD | ) |
Definition at line 455 of file nlpi_filtersqp.c.
References SCIPerrorMessage.
void F77_FUNC | ( | hessian | , |
HESSIAN | ) |
Hessian of the Lagrangian evaluation
phase = 1 : Hessian of the Lagrangian without objective Hessian
phase = 2 : Hessian of the Lagrangian (including objective Hessian)
Definition at line 469 of file nlpi_filtersqp.c.
References assert(), BMSallocMemoryArray, BMScopyMemoryArray, BMSfreeMemoryArray, SCIP_NlpiProblem::evalbuffer, SCIP_NlpiProblem::evalbufsize, SCIP_NlpiProblem::hessiannz, i, NULL, SCIP_NlpiProblem::oracle, SCIP_NlpiProblem::scip, SCIP_OKAY, SCIP_Real, SCIPdebugMsg, SCIPnlpiOracleEvalHessianLag(), TRUE, and x.
|
static |
scip | SCIP data structure |
oracle | NLPI oracle |
la | buffer to store pointer to sparsity structure |
lasize | buffer to store length of *la array |
a | buffer to store pointer to value buffer |
Definition at line 527 of file nlpi_filtersqp.c.
References a, assert(), c, i, NULL, nvars, SCIP_CALL, SCIP_OKAY, SCIPallocBlockMemoryArray, SCIPnlpiOracleGetJacobianSparsity(), SCIPnlpiOracleGetNConstraints(), and SCIPnlpiOracleGetNVars().
Referenced by SCIP_DECL_NLPISOLVE().
|
static |
scip | SCIP data structure |
oracle | NLPI oracle |
la | buffer to store pointer to Hessian sparsity structure |
lasize | buffer to store length of *la array |
Definition at line 596 of file nlpi_filtersqp.c.
References assert(), F77_FUNC(), i, NULL, nvars, SCIP_CALL, SCIP_OKAY, SCIPallocBlockMemoryArray, SCIPnlpiOracleGetHessianLagSparsity(), and SCIPnlpiOracleGetNVars().
Referenced by SCIP_DECL_NLPISOLVE().
|
static |
setup starting point for FilterSQP
data | NLPI data |
problem | NLPI problem |
x | array to store initial values |
success | whether we could setup a point in which functions could be evaluated |
Definition at line 659 of file nlpi_filtersqp.c.
References assert(), SCIP_NlpiProblem::evalbuffer, FALSE, i, SCIP_NlpiProblem::initguess, MAX, MAXPERTURB, MIN, NULL, SCIP_NlpiProblem::oracle, RANDSEED, SCIP_NlpiProblem::scip, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPcreateRandom(), SCIPdebugMsg, SCIPfreeBlockMemoryArray, SCIPisFinite, SCIPnlpiOracleEvalConstraintValue(), SCIPnlpiOracleEvalJacobian(), SCIPnlpiOracleEvalObjectiveGradient(), SCIPnlpiOracleEvalObjectiveValue(), SCIPnlpiOracleGetNConstraints(), SCIPnlpiOracleGetNVars(), SCIPnlpiOracleGetVarLbs(), SCIPnlpiOracleGetVarUbs(), SCIPrandomGetReal(), setupStart(), TRUE, SCIP_NlpiProblem::varssize, and x.
Referenced by SCIP_DECL_NLPISOLVE(), and setupStart().
|
static |
sets the solstat and termstat to unknown and other, resp.
problem | data structure of problem |
Definition at line 735 of file nlpi_filtersqp.c.
References assert(), NULL, SCIP_NLPSOLSTAT_UNKNOWN, SCIP_NLPTERMSTAT_OTHER, SCIP_NlpiProblem::solstat, and SCIP_NlpiProblem::termstat.
Referenced by SCIP_DECL_NLPIADDCONSTRAINTS(), SCIP_DECL_NLPIADDVARS(), SCIP_DECL_NLPICHGCONSSIDES(), SCIP_DECL_NLPICHGEXPR(), SCIP_DECL_NLPICHGLINEARCOEFS(), SCIP_DECL_NLPICHGOBJCONSTANT(), SCIP_DECL_NLPICHGVARBOUNDS(), SCIP_DECL_NLPICREATEPROBLEM(), SCIP_DECL_NLPIDELCONSSET(), SCIP_DECL_NLPIDELVARSET(), and SCIP_DECL_NLPISETOBJECTIVE().
|
static |
store NLP solve parameters in nlpiproblem
scip | SCIP data structure |
nlpiproblem | NLP |
param | solve parameters |
Definition at line 747 of file nlpi_filtersqp.c.
References assert(), SCIP_NlpParam::fastfail, SCIP_NlpiProblem::fmin, SCIP_NlpParam::lobjlimit, SCIP_NlpiProblem::maxtime, NULL, SCIP_OKAY, SCIPdebugMsg, and SCIP_NlpParam::timelimit.
Referenced by SCIP_DECL_NLPISOLVE().
|
static |
processes results from FilterSQP call
nlpidata | NLPI data |
problem | NLPI problem |
ifail | fail flag from FilterSQP call |
feastol | feasibility tolerance |
opttol | optimality tolerance |
x | primal solution values from FilterSQP call, or NULL if stopped before filtersqp got called |
lam | dual solution values from FilterSQP call, or NULL if stopped before filtersqp got called |
Definition at line 770 of file nlpi_filtersqp.c.
References assert(), SCIP_NlpiProblem::consdualvalues, SCIP_NlpiProblem::conssize, FALSE, SCIP_NlpiProblem::fmin, i, MAX, SCIP_NlpiProblem::maxtime, NULL, nvars, SCIP_NlpiProblem::oracle, SCIP_NlpiProblem::primalvalues, SCIP_NlpiProblem::rstat, SCIP_NlpiProblem::scip, SCIP_CALL, SCIP_NLPSOLSTAT_FEASIBLE, SCIP_NLPSOLSTAT_GLOBINFEASIBLE, SCIP_NLPSOLSTAT_LOCINFEASIBLE, SCIP_NLPSOLSTAT_LOCOPT, SCIP_NLPSOLSTAT_UNBOUNDED, SCIP_NLPSOLSTAT_UNKNOWN, SCIP_NLPTERMSTAT_EVALERROR, SCIP_NLPTERMSTAT_INTERRUPT, SCIP_NLPTERMSTAT_ITERLIMIT, SCIP_NLPTERMSTAT_LOBJLIMIT, SCIP_NLPTERMSTAT_NUMERICERROR, SCIP_NLPTERMSTAT_OKAY, SCIP_NLPTERMSTAT_OTHER, SCIP_NLPTERMSTAT_OUTOFMEMORY, SCIP_NLPTERMSTAT_TIMELIMIT, SCIP_OKAY, SCIP_Real, SCIP_REAL_MIN, SCIPallocBlockMemoryArray, SCIPisSolveInterrupted(), SCIPnlpiOracleGetNConstraints(), SCIPnlpiOracleGetNVars(), SCIP_NlpiProblem::solstat, SCIP_NlpiProblem::solvetime, SCIP_NlpiProblem::termstat, timeelapsed(), TRUE, SCIP_NlpiProblem::varlbdualvalues, SCIP_NlpiProblem::varssize, SCIP_NlpiProblem::varubdualvalues, SCIP_NlpiProblem::warmstart, and x.
Referenced by SCIP_DECL_NLPISOLVE().
|
static |
copy method of NLP interface (called when SCIP copies plugins)
Definition at line 925 of file nlpi_filtersqp.c.
References SCIP_CALL, SCIP_OKAY, and SCIPincludeNlpSolverFilterSQP().
|
static |
destructor of NLP interface to free nlpi data
Definition at line 934 of file nlpi_filtersqp.c.
References assert(), NULL, SCIP_OKAY, SCIPfreeBlockMemory, and SCIPfreeRandom().
|
static |
creates a problem instance
Definition at line 953 of file nlpi_filtersqp.c.
References assert(), invalidateSolution(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_REAL_MAX, SCIP_REAL_MIN, SCIPallocClearBlockMemory, SCIPnlpiOracleCreate(), and SCIPnlpiOracleSetProblemName().
|
static |
free a problem instance
Definition at line 974 of file nlpi_filtersqp.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeBlockMemory, SCIPfreeBlockMemoryArrayNull, and SCIPnlpiOracleFree().
|
static |
add variables
Definition at line 1012 of file nlpi_filtersqp.c.
References assert(), FALSE, i, invalidateSolution(), NULL, nvars, SCIP_CALL, SCIP_OKAY, SCIPcalcMemGrowSize(), SCIPfreeBlockMemoryArrayNull, SCIPnlpiOracleAddVars(), SCIPnlpiOracleGetNConstraints(), SCIPnlpiOracleGetNVars(), and SCIPreallocBlockMemoryArray.
|
static |
add constraints
Definition at line 1111 of file nlpi_filtersqp.c.
References assert(), FALSE, i, invalidateSolution(), NULL, nvars, SCIP_CALL, SCIP_OKAY, SCIPcalcMemGrowSize(), SCIPfreeBlockMemoryArrayNull, SCIPnlpiOracleAddConstraints(), SCIPnlpiOracleGetNConstraints(), SCIPnlpiOracleGetNVars(), SCIPnlpiOracleIsConstraintNonlinear(), and SCIPreallocBlockMemoryArray.
|
static |
sets or overwrites objective, a minimization problem is expected
Definition at line 1191 of file nlpi_filtersqp.c.
References assert(), invalidateSolution(), NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeBlockMemoryArrayNull, and SCIPnlpiOracleSetObjective().
|
static |
change variable bounds
Definition at line 1212 of file nlpi_filtersqp.c.
References assert(), i, invalidateSolution(), NULL, nvars, SCIP_CALL, SCIP_OKAY, and SCIPnlpiOracleChgVarBounds().
|
static |
change constraint bounds
Definition at line 1239 of file nlpi_filtersqp.c.
References assert(), i, invalidateSolution(), NULL, nvars, SCIP_CALL, SCIP_OKAY, SCIPnlpiOracleChgConsSides(), and SCIPnlpiOracleGetNVars().
|
static |
delete a set of variables
Definition at line 1269 of file nlpi_filtersqp.c.
References assert(), FALSE, invalidateSolution(), NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeBlockMemoryArrayNull, and SCIPnlpiOracleDelVarSet().
|
static |
delete a set of constraints
Definition at line 1299 of file nlpi_filtersqp.c.
References assert(), FALSE, invalidateSolution(), NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeBlockMemoryArrayNull, and SCIPnlpiOracleDelConsSet().
|
static |
changes (or adds) linear coefficients in a constraint or objective
Definition at line 1326 of file nlpi_filtersqp.c.
References assert(), invalidateSolution(), NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeBlockMemoryArrayNull, and SCIPnlpiOracleChgLinearCoefs().
|
static |
replaces the expression of a constraint or objective
Definition at line 1350 of file nlpi_filtersqp.c.
References assert(), invalidateSolution(), NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeBlockMemoryArrayNull, and SCIPnlpiOracleChgExpr().
|
static |
change the constant offset in the objective
Definition at line 1376 of file nlpi_filtersqp.c.
References assert(), invalidateSolution(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPnlpiOracleChgObjConstant().
|
static |
sets initial guess for primal variables
Definition at line 1391 of file nlpi_filtersqp.c.
References assert(), BMScopyMemoryArray, NULL, SCIP_CALL, SCIP_OKAY, SCIPallocBlockMemoryArray, SCIPfreeBlockMemoryArrayNull, and SCIPnlpiOracleGetNVars().
|
static |
tries to solve NLP
Definition at line 1416 of file nlpi_filtersqp.c.
References assert(), BMSclearMemoryArray, BMScopyMemoryArray, BMSreallocBlockMemoryArray, eps, F77_FUNC(), FALSE, gettime(), handleNlpParam(), i, MAX, MAX3, MAXNRUNS, MIN, MINEPS, NULL, OPTTOLFACTOR, processSolveOutcome(), SCIP_Bool, SCIP_CALL, SCIP_NLPPARAM_PRINT, SCIP_NLPSOLSTAT_UNKNOWN, SCIP_NLPTERMSTAT_TIMELIMIT, SCIP_OKAY, SCIP_Real, SCIPallocBlockMemoryArray, SCIPallocClearBlockMemoryArray, SCIPblkmem(), SCIPcalcMemGrowSize(), SCIPdebugMsg, SCIPensureBlockMemoryArray, SCIPinfinity(), SCIPinfoMessage(), SCIPisSolveInterrupted(), SCIPnlpiGetData(), SCIPnlpiOracleGetConstraintLhs(), SCIPnlpiOracleGetConstraintRhs(), SCIPnlpiOracleGetNConstraints(), SCIPnlpiOracleGetNVars(), SCIPnlpiOracleGetVarLbs(), SCIPnlpiOracleGetVarUbs(), SCIPnlpiOracleIsConstraintNonlinear(), SCIPnlpiOracleResetEvalTime(), setupGradients(), setupHessian(), setupStart(), timelimitreached(), and WORKSPACEGROWTHFACTOR.
|
static |
gives solution status
Definition at line 1718 of file nlpi_filtersqp.c.
|
static |
gives termination reason
Definition at line 1727 of file nlpi_filtersqp.c.
|
static |
gives primal and dual solution values
Definition at line 1736 of file nlpi_filtersqp.c.
References assert(), NULL, objval, SCIP_CALL, SCIP_INVALID, SCIP_OKAY, and SCIPnlpiOracleEvalObjectiveValue().
|
static |
gives solve statistics
Definition at line 1784 of file nlpi_filtersqp.c.
References assert(), NULL, SCIP_OKAY, and SCIPnlpiOracleGetEvalTime().
fint phl |
Definition at line 237 of file nlpi_filtersqp.c.
fint phr |
Definition at line 237 of file nlpi_filtersqp.c.
fint phc |
Definition at line 237 of file nlpi_filtersqp.c.
real ubd |
Definition at line 244 of file nlpi_filtersqp.c.
real tt |
Definition at line 244 of file nlpi_filtersqp.c.
real infty |
Definition at line 250 of file nlpi_filtersqp.c.
real eps |
Definition at line 250 of file nlpi_filtersqp.c.
Referenced by checkRedundancySide(), createSubproblem(), ObjPricerVRP::find_shortest_tour(), SCIP_DECL_NLPISOLVE(), SCIPbanditCreateEpsgreedy(), SCIPbranchGetScore(), SCIPcalcMachineEpsilon(), SCIPcalcRootNewton(), SCIPcomputeGap(), SCIPcreateBanditEpsgreedy(), SCIPhistoryUpdatePseudocost(), SCIPintervalAreDisjointEps(), SCIPintervalIntersectEps(), SCIPlpGetNUnfixedCols(), SCIPlpiGetBInvACol(), SCIPlpiGetBInvARow(), SCIPlpiGetBInvCol(), SCIPlpiGetBInvRow(), SCIPlpiIsPrimalFeasible(), SCIPlpiSolveDual(), SCIProwGetLPEfficacy(), SCIProwGetNLPEfficacy(), SCIProwGetRelaxEfficacy(), SCIProwGetSolEfficacy(), SCIPsetEpsilonEpsgreedy(), strongbranch(), tightenDualproof(), and varProcessChgBranchFactor().
fint n_bqpd_calls |
Definition at line 257 of file nlpi_filtersqp.c.
fint n_bqpd_prfint |
Definition at line 257 of file nlpi_filtersqp.c.
fint scale_mode |
Definition at line 266 of file nlpi_filtersqp.c.
fint phe |
Definition at line 266 of file nlpi_filtersqp.c.