Scippy

SCIP

Solving Constraint Integer Programs

SCIP_NlpiProblem Struct Reference

Detailed Description

Definition at line 47 of file nlpi_all.c.

Public Member Functions

 SCIP_NlpiProblem ()
 

Data Fields

SCIP_NLPIPROBLEM ** nlpiproblems
 
int nnlpiproblems
 
int bestidx
 
SCIP_NLPIORACLEoracle
 
int varssize
 
int conssize
 
SCIP_Realinitguess
 
SCIP_Bool warmstart
 
SCIP_Realprimalvalues
 
SCIP_Realconsdualvalues
 
SCIP_Realvarlbdualvalues
 
SCIP_Realvarubdualvalues
 
SCIP_NLPSOLSTAT solstat
 
SCIP_NLPTERMSTAT termstat
 
SCIP_Real solvetime
 
int niterations
 
SCIP_Bool fromscratch
 
fint istat [14]
 
real rstat [7]
 
real feastol
 
real opttol
 
real fmin
 
SCIP_Real maxtime
 
fint maxiter
 
fint iprint
 
realx
 
realc
 
reallam
 
realbl
 
realbu
 
reals
 
char * cstype
 
reala
 
fintla
 
int lasize
 
finthessiannz
 
int hessiannzsize
 
realws
 
fintlws
 
fint mxwk
 
fint mxiwk
 
realevalbuffer
 
int evalbufsize
 
SmartPtr< IpoptApplication > ipopt
 
SmartPtr< ScipNLP > nlp
 
std::string optfile
 
bool storeintermediate
 
bool fastfail
 
SCIP_Bool firstrun
 
SCIP_NLPSOLSTAT lastsolstat
 
SCIP_NLPTERMSTAT lasttermstat
 
SCIP_Reallastsolprimals
 
SCIP_Reallastsoldualcons
 
SCIP_Reallastsoldualvarlb
 
SCIP_Reallastsoldualvarub
 
SCIP_Real lastsolinfeas
 
int lastniter
 
SCIP_Real lasttime
 
BMS_BLKMEMblkmem
 
SCIP_RANDNUMGENrandnumgen
 
SCIP_Reallastprimal
 
SCIP_Reallastdualcons
 
SCIP_Reallastduallb
 
SCIP_Reallastdualub
 
int lastprimalsize
 
int lastdualconssize
 
int lastduallbsize
 
int lastdualubsize
 
OptVar * opt
 
Workspace * wsp
 
Params * par
 
Control * cnt
 
SCIP_Real feastol
 
SCIP_Real relobjtol
 
SCIP_Real lobjlim
 
SCIP_Real timelim
 
int fromscratch
 
int verblevel
 
int itlim
 
int fastfail
 

Constructor & Destructor Documentation

◆ SCIP_NlpiProblem()

Field Documentation

◆ nlpiproblems

SCIP_NLPIPROBLEM** SCIP_NlpiProblem::nlpiproblems

array containing all nlpi problems

Definition at line 49 of file nlpi_all.c.

◆ nnlpiproblems

int SCIP_NlpiProblem::nnlpiproblems

total number of nlpi problems

Definition at line 50 of file nlpi_all.c.

◆ bestidx

int SCIP_NlpiProblem::bestidx

index of NLP solver with the best solution

Definition at line 51 of file nlpi_all.c.

◆ oracle

SCIP_NLPIORACLE * SCIP_NlpiProblem::oracle

Oracle-helper to store and evaluate NLP

Definition at line 83 of file nlpi_filtersqp.c.

Referenced by F77_FUNC(), initWorhp(), processSolveOutcome(), SCIPgetNlpiOracleIpopt(), setupStart(), updateWorhp(), userDF(), userDG(), userF(), userG(), and userHM().

◆ varssize

int SCIP_NlpiProblem::varssize

length of variables-related arrays, if allocated

Definition at line 85 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome(), and setupStart().

◆ conssize

int SCIP_NlpiProblem::conssize

length of constraints-related arrays, if allocated

Definition at line 86 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ initguess

SCIP_Real * SCIP_NlpiProblem::initguess

initial values for primal variables, or NULL if not known, size varssize

initial values for primal variables, or NULL if not known

Definition at line 88 of file nlpi_filtersqp.c.

Referenced by setupStart().

◆ warmstart

SCIP_Bool SCIP_NlpiProblem::warmstart

whether we could warmstart the next solve

Definition at line 89 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ primalvalues

SCIP_Real* SCIP_NlpiProblem::primalvalues

primal values of variables in solution, size varssize

Definition at line 91 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ consdualvalues

SCIP_Real* SCIP_NlpiProblem::consdualvalues

dual values of constraints in solution, size conssize

Definition at line 92 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ varlbdualvalues

SCIP_Real* SCIP_NlpiProblem::varlbdualvalues

dual values of variable lower bounds in solution, size varssize

Definition at line 93 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ varubdualvalues

SCIP_Real* SCIP_NlpiProblem::varubdualvalues

dual values of variable upper bounds in solution, size varssize

Definition at line 94 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ solstat

SCIP_NLPSOLSTAT SCIP_NlpiProblem::solstat

solution status from last NLP solve

Definition at line 96 of file nlpi_filtersqp.c.

Referenced by invalidateSolution(), and processSolveOutcome().

◆ termstat

SCIP_NLPTERMSTAT SCIP_NlpiProblem::termstat

termination status from last NLP solve

Definition at line 97 of file nlpi_filtersqp.c.

Referenced by invalidateSolution(), and processSolveOutcome().

◆ solvetime

SCIP_Real SCIP_NlpiProblem::solvetime

time spend for last NLP solve

Definition at line 98 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ niterations

int SCIP_NlpiProblem::niterations

number of iterations for last NLP solve

Definition at line 99 of file nlpi_filtersqp.c.

◆ fromscratch [1/2]

SCIP_Bool SCIP_NlpiProblem::fromscratch

value of fromscratch parameter

Definition at line 101 of file nlpi_filtersqp.c.

◆ istat

fint SCIP_NlpiProblem::istat[14]

integer solution statistics from last FilterSQP call

Definition at line 102 of file nlpi_filtersqp.c.

◆ rstat

real SCIP_NlpiProblem::rstat[7]

real solution statistics from last FilterSQP call

Definition at line 103 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ feastol [1/2]

real SCIP_NlpiProblem::feastol

user-given feasibility tolerance

Definition at line 104 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ opttol

real SCIP_NlpiProblem::opttol

user-given optimality tolerance

Definition at line 105 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ fmin

real SCIP_NlpiProblem::fmin

lower bound on objective value

Definition at line 106 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome().

◆ maxtime

SCIP_Real SCIP_NlpiProblem::maxtime

time limit

Definition at line 107 of file nlpi_filtersqp.c.

Referenced by processSolveOutcome(), and timelimitreached().

◆ maxiter

fint SCIP_NlpiProblem::maxiter

iteration limit

Definition at line 108 of file nlpi_filtersqp.c.

◆ iprint

fint SCIP_NlpiProblem::iprint

print verbosity level

Definition at line 109 of file nlpi_filtersqp.c.

◆ x

real* SCIP_NlpiProblem::x

variable values, size varssize

Definition at line 112 of file nlpi_filtersqp.c.

◆ c

real* SCIP_NlpiProblem::c

constraint value, size conssize

Definition at line 113 of file nlpi_filtersqp.c.

◆ lam

real* SCIP_NlpiProblem::lam

duals, size varssize + conssize

Definition at line 114 of file nlpi_filtersqp.c.

◆ bl

real* SCIP_NlpiProblem::bl

variable lower bounds and constraint lhs, size varssize + conssize

Definition at line 115 of file nlpi_filtersqp.c.

◆ bu

real* SCIP_NlpiProblem::bu

variable upper bounds and constraint rhs, size varssize + conssize

Definition at line 116 of file nlpi_filtersqp.c.

◆ s

real* SCIP_NlpiProblem::s

scaling factors, size varssize + conssize

Definition at line 117 of file nlpi_filtersqp.c.

◆ cstype

char* SCIP_NlpiProblem::cstype

constraint linearity, size conssize

Definition at line 118 of file nlpi_filtersqp.c.

◆ a

real* SCIP_NlpiProblem::a

gradients values, size la[0]-1

Definition at line 119 of file nlpi_filtersqp.c.

◆ la

fint* SCIP_NlpiProblem::la

gradients indices, size lasize

Definition at line 120 of file nlpi_filtersqp.c.

◆ lasize

int SCIP_NlpiProblem::lasize

length of la array

Definition at line 121 of file nlpi_filtersqp.c.

◆ hessiannz

fint* SCIP_NlpiProblem::hessiannz

nonzero information about Hessian, size hessiannzsize

Definition at line 122 of file nlpi_filtersqp.c.

Referenced by F77_FUNC().

◆ hessiannzsize

int SCIP_NlpiProblem::hessiannzsize

length of hessiannz array

Definition at line 123 of file nlpi_filtersqp.c.

◆ ws

real* SCIP_NlpiProblem::ws

real workspace, size mxwk

Definition at line 124 of file nlpi_filtersqp.c.

◆ lws

fint* SCIP_NlpiProblem::lws

integer workspace, size mxiwk

Definition at line 125 of file nlpi_filtersqp.c.

◆ mxwk

fint SCIP_NlpiProblem::mxwk

size of real workspace

Definition at line 126 of file nlpi_filtersqp.c.

◆ mxiwk

fint SCIP_NlpiProblem::mxiwk

size of integer workspace

Definition at line 127 of file nlpi_filtersqp.c.

◆ evalbuffer

real* SCIP_NlpiProblem::evalbuffer

buffer to cache evaluation results before passing it to FilterSQP, size evalbufsize

Definition at line 128 of file nlpi_filtersqp.c.

Referenced by F77_FUNC(), and setupStart().

◆ evalbufsize

int SCIP_NlpiProblem::evalbufsize

size of evaluation buffer

Definition at line 129 of file nlpi_filtersqp.c.

Referenced by F77_FUNC().

◆ ipopt

SmartPtr<IpoptApplication> SCIP_NlpiProblem::ipopt

Ipopt application

Definition at line 140 of file nlpi_ipopt.cpp.

Referenced by SCIPgetIpoptApplicationPointerIpopt(), setFeastol(), and setOpttol().

◆ nlp

SmartPtr<ScipNLP> SCIP_NlpiProblem::nlp

NLP in Ipopt form

Definition at line 141 of file nlpi_ipopt.cpp.

◆ optfile

std::string SCIP_NlpiProblem::optfile

name of options file

Definition at line 142 of file nlpi_ipopt.cpp.

◆ storeintermediate

bool SCIP_NlpiProblem::storeintermediate

whether to store intermediate solutions

Definition at line 143 of file nlpi_ipopt.cpp.

◆ fastfail [1/2]

bool SCIP_NlpiProblem::fastfail

whether to stop Ipopt if convergence seems slow

Definition at line 144 of file nlpi_ipopt.cpp.

◆ firstrun

SCIP_Bool SCIP_NlpiProblem::firstrun

whether the next NLP solve will be the first one (with the current problem structure)

Definition at line 146 of file nlpi_ipopt.cpp.

Referenced by initWorhp().

◆ lastsolstat

SCIP_NLPSOLSTAT SCIP_NlpiProblem::lastsolstat

solution status from last run

Definition at line 149 of file nlpi_ipopt.cpp.

Referenced by evaluateWorhpRun(), and invalidateSolution().

◆ lasttermstat

SCIP_NLPTERMSTAT SCIP_NlpiProblem::lasttermstat

termination status from last run

Definition at line 150 of file nlpi_ipopt.cpp.

Referenced by evaluateWorhpRun(), and invalidateSolution().

◆ lastsolprimals

SCIP_Real* SCIP_NlpiProblem::lastsolprimals

primal solution values from last run, if available

Definition at line 151 of file nlpi_ipopt.cpp.

Referenced by invalidateSolution().

◆ lastsoldualcons

SCIP_Real* SCIP_NlpiProblem::lastsoldualcons

dual solution values of constraints from last run, if available

Definition at line 152 of file nlpi_ipopt.cpp.

Referenced by invalidateSolution().

◆ lastsoldualvarlb

SCIP_Real* SCIP_NlpiProblem::lastsoldualvarlb

dual solution values of variable lower bounds from last run, if available

Definition at line 153 of file nlpi_ipopt.cpp.

Referenced by invalidateSolution().

◆ lastsoldualvarub

SCIP_Real* SCIP_NlpiProblem::lastsoldualvarub

dual solution values of variable upper bounds from last run, if available

Definition at line 154 of file nlpi_ipopt.cpp.

Referenced by invalidateSolution().

◆ lastsolinfeas

SCIP_Real SCIP_NlpiProblem::lastsolinfeas

infeasibility (constraint violation) of solution stored in lastsolprimals

Definition at line 155 of file nlpi_ipopt.cpp.

Referenced by invalidateSolution().

◆ lastniter

int SCIP_NlpiProblem::lastniter

number of iterations in last run

Definition at line 156 of file nlpi_ipopt.cpp.

◆ lasttime

SCIP_Real SCIP_NlpiProblem::lasttime

time spend in last run

Definition at line 157 of file nlpi_ipopt.cpp.

◆ blkmem

BMS_BLKMEM* SCIP_NlpiProblem::blkmem

block memory

Definition at line 71 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), invalidateSolution(), userDF(), userDG(), userF(), userG(), and userHM().

◆ randnumgen

SCIP_RANDNUMGEN* SCIP_NlpiProblem::randnumgen

random number generator

Definition at line 72 of file nlpi_worhp.c.

◆ lastprimal

SCIP_Real* SCIP_NlpiProblem::lastprimal

primal solution from last run, if available

Definition at line 79 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), and invalidateSolution().

◆ lastdualcons

SCIP_Real* SCIP_NlpiProblem::lastdualcons

dual solution from last run, if available

Definition at line 80 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), and invalidateSolution().

◆ lastduallb

SCIP_Real* SCIP_NlpiProblem::lastduallb

dual solution for lower bounds from last run, if available

Definition at line 81 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), and invalidateSolution().

◆ lastdualub

SCIP_Real* SCIP_NlpiProblem::lastdualub

dual solution for upper bounds from last run, if available

Definition at line 82 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), and invalidateSolution().

◆ lastprimalsize

int SCIP_NlpiProblem::lastprimalsize

size of lastprimal array

Definition at line 83 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), and invalidateSolution().

◆ lastdualconssize

int SCIP_NlpiProblem::lastdualconssize

size of lastdualcons array

Definition at line 84 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), and invalidateSolution().

◆ lastduallbsize

int SCIP_NlpiProblem::lastduallbsize

size of lastduallb array

Definition at line 85 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), and invalidateSolution().

◆ lastdualubsize

int SCIP_NlpiProblem::lastdualubsize

size of lastdualub array

Definition at line 86 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), and invalidateSolution().

◆ opt

OptVar* SCIP_NlpiProblem::opt

Worhp variables

Definition at line 92 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), freeWorhp(), initWorhp(), updateWorhp(), userDF(), userDG(), userF(), userG(), and userHM().

◆ wsp

Workspace* SCIP_NlpiProblem::wsp

Worhp working space

Definition at line 93 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), freeWorhp(), initWorhp(), updateWorhp(), userDF(), userDG(), userF(), userG(), and userHM().

◆ par

Params* SCIP_NlpiProblem::par

Worhp parameters

Definition at line 94 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), freeWorhp(), initWorhp(), and updateWorhp().

◆ cnt

Control* SCIP_NlpiProblem::cnt

Worhp control

Definition at line 95 of file nlpi_worhp.c.

Referenced by evaluateWorhpRun(), freeWorhp(), initWorhp(), and updateWorhp().

◆ feastol [2/2]

SCIP_Real SCIP_NlpiProblem::feastol

feasibility tolerance for primal variables and slacks

Definition at line 98 of file nlpi_worhp.c.

◆ relobjtol

SCIP_Real SCIP_NlpiProblem::relobjtol

relative objective tolerance

Definition at line 99 of file nlpi_worhp.c.

◆ lobjlim

SCIP_Real SCIP_NlpiProblem::lobjlim

lower objective limit (cutoff)

Definition at line 100 of file nlpi_worhp.c.

◆ timelim

SCIP_Real SCIP_NlpiProblem::timelim

NLP time limit

Definition at line 101 of file nlpi_worhp.c.

◆ fromscratch [2/2]

int SCIP_NlpiProblem::fromscratch

solver should start from scratch at next call?: 0 no, 1 yes

Definition at line 102 of file nlpi_worhp.c.

◆ verblevel

int SCIP_NlpiProblem::verblevel

verbosity level of output of NLP solver to the screen: 0 off, 1 normal, 2 debug, > 2 more debug

Definition at line 103 of file nlpi_worhp.c.

◆ itlim

int SCIP_NlpiProblem::itlim

NLP iteration limit

Definition at line 104 of file nlpi_worhp.c.

◆ fastfail [2/2]

int SCIP_NlpiProblem::fastfail

should the NLP solver stop early if convergence is slow?: 0 no, 1 yes

Definition at line 105 of file nlpi_worhp.c.