|
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Detailed Descriptionconstraint handler for second order cone constraints Definition in file cons_soc.c. #include <assert.h>#include <string.h>#include <math.h>#include <ctype.h>#include "scip/cons_soc.h"#include "scip/cons_quadratic.h"#include "scip/cons_linear.h"#include "scip/heur_subnlp.h"#include "scip/heur_trysol.h"#include "scip/intervalarith.h"#include "nlpi/nlpi.h"#include "nlpi/exprinterpret.h"Go to the source code of this file.
Macro Definition Documentation
Definition at line 43 of file cons_soc.c. Referenced by SCIP_DECL_CONSCHECK(), SCIP_DECL_CONSDELETE(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSEXITSOL(), SCIP_DECL_CONSFREE(), SCIP_DECL_CONSHDLRCOPY(), SCIP_DECL_CONSINITSOL(), SCIP_DECL_CONSLOCK(), SCIP_DECL_CONSPRINT(), SCIP_DECL_CONSTRANS(), SCIPcreateConsSOC(), and SCIPincludeConshdlrSOC().
Definition at line 44 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
priority of the constraint handler for separation Definition at line 45 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
priority of the constraint handler for constraint enforcing Definition at line 46 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
priority of the constraint handler for checking feasibility Definition at line 47 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
frequency for separating cuts; zero means to separate only in the root node Definition at line 48 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
frequency for propagating domains; zero means only preprocessing propagation Definition at line 49 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
frequency for using all instead of only the useful constraints in separation, propagation and enforcement, -1 for no eager evaluations, 0 for first only Definition at line 50 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
maximal number of presolving rounds the constraint handler participates in (-1: no limit) Definition at line 53 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
should separation method be delayed, if other separators found cuts? Definition at line 54 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
should propagation method be delayed, if other propagators found reductions? Definition at line 55 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
should presolving method be delayed, if other presolvers found reductions? Definition at line 56 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
should the constraint handler be skipped, if no constraints are available? Definition at line 57 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
Definition at line 59 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
priority of the constraint handler for upgrading of quadratic constraints Definition at line 61 of file cons_soc.c. Referenced by SCIPincludeConshdlrSOC().
Definition at line 64 of file cons_soc.c. Referenced by presolveCreateBenTalNemirovskiApproxDim3(), and presolveCreateGlineurApproxDim3(). Typedef Documentation
Definition at line 78 of file cons_soc.c. Function Documentation
catch left hand side variable events
Definition at line 138 of file cons_soc.c. References FALSE, NULL, SCIP_CALL, SCIP_EVENTTYPE_BOUNDTIGHTENED, SCIP_OKAY, SCIPcatchVarEvent(), and SCIPconsGetData(). Referenced by catchVarEvents(), and presolveRemoveFixedVariables().
catch right hand side variable events
Definition at line 168 of file cons_soc.c. References FALSE, NULL, SCIP_CALL, SCIP_EVENTTYPE_UBTIGHTENED, SCIP_OKAY, SCIPcatchVarEvent(), and SCIPconsGetData(). Referenced by catchVarEvents(), and presolveRemoveFixedVariables().
catch variables events
Definition at line 194 of file cons_soc.c. References catchLhsVarEvents(), catchRhsVarEvents(), NULL, SCIP_CALL, SCIP_OKAY, SCIPallocBlockMemoryArray, and SCIPconsGetData(). Referenced by presolveRemoveFixedVariables(), SCIP_DECL_CONSTRANS(), and SCIPcreateConsSOC().
drop left hand side variable events
Definition at line 231 of file cons_soc.c. References NULL, SCIP_CALL, SCIP_EVENTTYPE_BOUNDTIGHTENED, SCIP_OKAY, SCIPconsGetData(), and SCIPdropVarEvent(). Referenced by dropVarEvents(), and presolveRemoveFixedVariables().
drop right hand side variable events
Definition at line 258 of file cons_soc.c. References NULL, SCIP_CALL, SCIP_EVENTTYPE_UBTIGHTENED, SCIP_OKAY, SCIPconsGetData(), and SCIPdropVarEvent(). Referenced by dropVarEvents(), and presolveRemoveFixedVariables().
drop variable events
Definition at line 281 of file cons_soc.c. References dropLhsVarEvents(), dropRhsVarEvents(), NULL, SCIP_CALL, SCIP_OKAY, SCIPconsGetData(), and SCIPfreeBlockMemoryArray. Referenced by presolveRemoveFixedVariables(), and SCIP_DECL_CONSDELETE().
process variable bound tightening event Definition at line 317 of file cons_soc.c.
create a nonlinear row representation of the constraint and stores them in consdata
Definition at line 337 of file cons_soc.c. References SCIP_QuadElement::coef, FALSE, SCIP_QuadElement::idx1, SCIP_QuadElement::idx2, NULL, SCIP_ExprTree::nvars, SCIP_CALL, SCIP_ERROR, SCIP_EXPR_CONST, SCIP_EXPR_DIV, SCIP_EXPR_EXP, SCIP_EXPR_MINUS, SCIP_EXPR_MUL, SCIP_EXPR_PLUS, SCIP_EXPR_SQRT, SCIP_EXPR_SQUARE, SCIP_EXPR_VARIDX, SCIP_OKAY, SCIP_Real, SCIPaddLinearCoefToNlRow(), SCIPaddQuadElementToNlRow(), SCIPaddQuadVarToNlRow(), SCIPallocBufferArray, SCIPblkmem(), SCIPchgNlRowRhs(), SCIPconsGetData(), SCIPconsGetName(), SCIPconshdlrGetData(), SCIPcreateNlRow(), SCIPdebug, SCIPdebugMessage, SCIPdebugPrintCons, SCIPerrorMessage, SCIPexprCreate(), SCIPexprCreateLinear(), SCIPexprCreateMonomial(), SCIPexprCreatePolynomial(), SCIPexprtreeAddVars(), SCIPexprtreeCreate(), SCIPexprtreeFree(), SCIPexprtreeSetVars(), SCIPfreeBufferArray, SCIPinfinity(), SCIPisNegative(), SCIPisPositive(), SCIPnlrowSearchQuadVar(), SCIPprintNlRow(), SCIPreleaseNlRow(), SCIPvarGetLbGlobal(), and SCIPvarGetUbGlobal(). Referenced by SCIP_DECL_CONSINITSOL(), and SCIPgetNlRowSOC().
evaluates the left hand side of a SOC constraint
Definition at line 670 of file cons_soc.c. References MAX, MIN, NULL, SCIP_OKAY, SCIP_Real, SCIPconsGetData(), SCIPgetSolVal(), SCIPinfinity(), SCIPisFeasGE(), SCIPisFeasLE(), SCIPisInfinity(), SCIPvarGetLbLocal(), SCIPvarGetUbLocal(), and sqrt(). Referenced by addLinearizationCuts(), and computeViolation().
Definition at line 723 of file cons_soc.c. References NULL, SCIP_Real, SCIPconsGetData(), SCIPgetSolVal(), SCIPisInfinity(), and sqrt(). Referenced by computeViolation().
computes violation of a SOC constraint
Definition at line 756 of file cons_soc.c. References evalLhs(), getGradientNorm(), MAX, MIN, NULL, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIP_Real, SCIPABORT, SCIPconsGetData(), SCIPconshdlrGetData(), SCIPerrorMessage, SCIPgetSolVal(), SCIPinfinity(), SCIPisFeasGE(), SCIPisFeasLE(), SCIPisInfinity(), SCIPvarGetLbLocal(), and SCIPvarGetUbLocal(). Referenced by computeViolations(), and SCIP_DECL_CONSCHECK().
computes violations for a set of constraints
Definition at line 869 of file cons_soc.c. References computeViolation(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPconsGetData(), SCIPfeastol(), and SCIPisGT(). Referenced by SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSENFOPS(), SCIP_DECL_CONSSEPALP(), and SCIP_DECL_CONSSEPASOL().
generate supporting hyperplane in a given solution
Definition at line 908 of file cons_soc.c. References FALSE, NULL, SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIP_Real, SCIPaddVarsToRow(), SCIPaddVarToRow(), SCIPallocBufferArray, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconsGetName(), SCIPconsIsLocal(), SCIPcreateEmptyRowCons(), SCIPfreeBufferArray, SCIPgetNLPs(), SCIPgetSolVal(), SCIPinfinity(), SCIPisInfinity(), SCIPisPositive(), SCIPsnprintf(), and TRUE. Referenced by addLinearizationCuts(), generateCutProjectedPoint(), generateSparseCut(), and separatePoint().
generate supporting hyperplane in a given point
Definition at line 960 of file cons_soc.c. References FALSE, NULL, SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIP_Real, SCIPaddVarsToRow(), SCIPaddVarToRow(), SCIPallocBufferArray, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconsGetName(), SCIPconsIsLocal(), SCIPcreateEmptyRowCons(), SCIPfreeBufferArray, SCIPgetNLPs(), SCIPinfinity(), SCIPisInfinity(), SCIPisZero(), SCIPsnprintf(), sqrt(), and TRUE. Referenced by generateSparseCut().
generate supporting hyperplane w.r.t. solution projected on feasible set Instead of linearizing the SOC constraint in the given solution point, this function projects the point first onto the feasible set of the SOC constraint (w.r.t. euclidean norm (scaled by alpha)) and linearizes the SOC constraint there. The hope is that this produces somewhat tighter cuts. The projection has only be computed for the case gamma = 0. If gamma > 0, generateCut is called. Let
where
If lambda is very close to 1, generateCut is called. The generated cut is very similar to the unprojected form. The only difference is in the right hand side, which is (in the case beta = 0) multiplied by 1/(1-lambda).
Definition at line 1056 of file cons_soc.c. References FALSE, generateCutSol(), NULL, SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIP_Real, SCIPaddVarsToRow(), SCIPaddVarToRow(), SCIPallocBufferArray, SCIPconsGetData(), SCIPconsGetHdlr(), SCIPconsGetName(), SCIPconsIsLocal(), SCIPcreateEmptyRowCons(), SCIPdebugMessage, SCIPfreeBufferArray, SCIPgetNLPs(), SCIPgetSolVal(), SCIPinfinity(), SCIPisFeasEQ(), SCIPisInfinity(), SCIPisNegative(), SCIPisPositive(), SCIPisZero(), SCIPsnprintf(), and TRUE. Referenced by separatePoint().
generates sparsified supporting hyperplane
Definition at line 1132 of file cons_soc.c. References generateCutPoint(), generateCutSol(), MAX, MIN, NULL, REALABS, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIP_Real, SCIPABORT, SCIPallocBufferArray, SCIPconsGetData(), SCIPconshdlrGetData(), SCIPdebugMessage, SCIPerrorMessage, SCIPgetRowMaxCoef(), SCIPgetRowSolFeasibility(), SCIPgetSolVal(), SCIPgetSolVals(), SCIPisGT(), SCIPisInfinity(), SCIPisPositive(), SCIPreleaseRow(), SCIProwGetLhs(), SCIProwGetRhs(), and SCIPsortRealInt(). Referenced by separatePoint().
separates a point, if possible
Definition at line 1271 of file cons_soc.c. References FALSE, generateCutProjectedPoint(), generateCutSol(), generateSparseCut(), MAX, MIN, NULL, REALABS, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIP_Real, SCIPABORT, SCIPaddCut(), SCIPconsGetData(), SCIPconshdlrGetData(), SCIPdebugMessage, SCIPepsilon(), SCIPerrorMessage, SCIPfeastol(), SCIPgetCutEfficacy(), SCIPgetRelaxFeastolFactor(), SCIPgetRowMaxCoef(), SCIPgetRowSolFeasibility(), SCIPisCutApplicable(), SCIPisGT(), SCIPisInfinity(), SCIPisLE(), SCIPmarkRowNotRemovableLocal(), SCIPreleaseRow(), SCIPresetConsAge(), SCIProwGetLhs(), SCIProwGetRhs(), and TRUE. Referenced by SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSSEPALP(), and SCIP_DECL_CONSSEPASOL().
adds linearizations cuts for convex constraints w.r.t. a given reference point to cutpool and sepastore if separatedlpsol is not NULL, then a cut that separates the LP solution is added to the sepastore and is forced to enter the LP if separatedlpsol is not NULL, but cut does not separate the LP solution, then it is added to the cutpool only if separatedlpsol is NULL, then cut is added to cutpool only
Definition at line 1411 of file cons_soc.c. References evalLhs(), FALSE, generateCutSol(), MAX, MIN, NULL, REALABS, SCIP_Bool, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIP_Real, SCIPABORT, SCIPaddCut(), SCIPaddPoolCut(), SCIPconsGetData(), SCIPconsGetName(), SCIPconshdlrGetData(), SCIPconsIsLocal(), SCIPdebugMessage, SCIPerrorMessage, SCIPgetRowLPFeasibility(), SCIPgetRowMaxCoef(), SCIPisInfinity(), SCIPisPositive(), SCIPreleaseRow(), SCIProwGetLhs(), SCIProwGetRhs(), SCIProwIsLocal(), and TRUE. Referenced by SCIP_DECL_CONSSEPALP(), and SCIP_DECL_EVENTEXEC().
processes the event that a new primal solution has been found Definition at line 1524 of file cons_soc.c. References addLinearizationCuts(), NULL, SCIP_Bool, SCIP_CALL, SCIP_EVENTTYPE_SOLFOUND, SCIP_OKAY, SCIPconshdlrGetConss(), SCIPconshdlrGetData(), SCIPconshdlrGetNConss(), SCIPdebugMessage, SCIPeventGetSol(), SCIPeventGetType(), SCIPheurGetName(), and SCIPsolGetHeur().
removes fixed variables, replace aggregated and negated variables repeats replacements until no further change is found; takes care of capture/release and locks, but not of variable events (assumes that var events are not caught yet)
Definition at line 1577 of file cons_soc.c. References BMSclearMemoryArray, catchLhsVarEvents(), catchRhsVarEvents(), catchVarEvents(), dropLhsVarEvents(), dropRhsVarEvents(), dropVarEvents(), FALSE, SCIP_QuadVarTerm::lincoef, NULL, REALABS, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VARSTATUS_MULTAGGR, SCIP_VARSTATUS_ORIGINAL, SCIPaddCons(), SCIPallocBufferArray, SCIPcaptureVar(), SCIPconsGetData(), SCIPconsGetName(), SCIPconshdlrGetData(), SCIPconsIsChecked(), SCIPconsIsDynamic(), SCIPconsIsEnforced(), SCIPconsIsInitial(), SCIPconsIsLocal(), SCIPconsIsModifiable(), SCIPconsIsPropagated(), SCIPconsIsRemovable(), SCIPconsIsSeparated(), SCIPconsIsStickingAtNode(), SCIPcreateConsLinear(), SCIPcreateConsQuadratic2(), SCIPdebugMessage, SCIPdebugPrintCons, SCIPdelCons(), SCIPfixVar(), SCIPfreeBufferArray, SCIPgetProbvarSum(), SCIPinfinity(), SCIPisFeasLE(), SCIPisNegative(), SCIPisZero(), SCIPlockVarCons(), SCIPreallocBlockMemoryArray, SCIPreleaseCons(), SCIPreleaseNlRow(), SCIPreleaseVar(), SCIPtightenVarLb(), SCIPtightenVarUb(), SCIPunlockVarCons(), SCIPvarGetName(), SCIPvarGetStatus(), SCIPvarIsActive(), SCIP_QuadVarTerm::sqrcoef, sqrt(), TRUE, and SCIP_QuadVarTerm::var. Referenced by SCIP_DECL_CONSPRESOL().
adds the linear outer-approximation of Glineur et.al. for a SOC constraint of dimension 3 Input is the data for a constraint
Definition at line 2014 of file cons_soc.c. References cos(), FALSE, M_PI, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VARTYPE_CONTINUOUS, SCIPaddCons(), SCIPaddVar(), SCIPallocBufferArray, SCIPconsIsChecked(), SCIPconsIsDynamic(), SCIPconsIsEnforced(), SCIPconsIsInitial(), SCIPconsIsLocal(), SCIPconsIsModifiable(), SCIPconsIsPropagated(), SCIPconsIsRemovable(), SCIPconsIsSeparated(), SCIPconsIsStickingAtNode(), SCIPcreateConsLinear(), SCIPcreateVar(), SCIPdebugMessage, SCIPdebugPrintCons, SCIPfreeBufferArray, SCIPinfinity(), SCIPisGE(), SCIPisPositive(), SCIPisZero(), SCIPreleaseCons(), SCIPreleaseVar(), SCIPsnprintf(), SCIPtightenVarLb(), SCIPvarGetLbGlobal(), SCIPvarGetLbLocal(), SCIPvarGetName(), SCIPwarningMessage(), sin(), and TRUE. Referenced by presolveCreateOuterApproxDim3().
adds the linear outer-approximation of Ben-Tal and Nemirovski for a SOC constraint of dimension 3 Input is the data for a constraint
Definition at line 2248 of file cons_soc.c. References cos(), M_PI, NULL, pow(), SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VARTYPE_CONTINUOUS, SCIPaddCons(), SCIPaddVar(), SCIPallocBufferArray, SCIPchgVarLbGlobal(), SCIPchgVarLbNode(), SCIPconsIsChecked(), SCIPconsIsDynamic(), SCIPconsIsEnforced(), SCIPconsIsInitial(), SCIPconsIsLocal(), SCIPconsIsModifiable(), SCIPconsIsPropagated(), SCIPconsIsRemovable(), SCIPconsIsSeparated(), SCIPconsIsStickingAtNode(), SCIPcreateConsLinear(), SCIPcreateVar(), SCIPdebugMessage, SCIPfreeBufferArray, SCIPinfinity(), SCIPisGE(), SCIPisPositive(), SCIPisZero(), SCIPreleaseCons(), SCIPreleaseVar(), SCIPsnprintf(), SCIPvarGetLbGlobal(), SCIPvarGetLbLocal(), sin(), and TRUE. Referenced by presolveCreateOuterApproxDim3().
adds a linear outer approx for a three dimensional SOC constraint chooses between Ben-Tan/Nemirovski and Glineur and calls the corresponding function
Definition at line 2494 of file cons_soc.c. References presolveCreateBenTalNemirovskiApproxDim3(), presolveCreateGlineurApproxDim3(), SCIP_CALL, and SCIP_OKAY. Referenced by presolveCreateOuterApprox().
adds linear outer approximation of Ben-Tal and Nemirovski for a constraint if n>2, calls same function recursively; if n=2, calls presolveCreateBenTalNemirovskiApproxDim3
Definition at line 2530 of file cons_soc.c. References FALSE, NULL, presolveCreateOuterApproxDim3(), SCIP_CALL, SCIP_OKAY, SCIP_VARTYPE_CONTINUOUS, SCIPaddVar(), SCIPcreateVar(), SCIPinfinity(), SCIPisNegative(), SCIPisPositive(), SCIPisZero(), SCIPreleaseVar(), SCIPsnprintf(), sqrt(), and TRUE. Referenced by SCIP_DECL_CONSPRESOL().
propagates variable bounds
Definition at line 2666 of file cons_soc.c. References FALSE, SCIP_Interval::inf, MAX, MIN, NULL, SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_OKAY, SCIP_Real, SCIP_REDUCEDDOM, SCIP_VARSTATUS_MULTAGGR, SCIPallocBufferArray, SCIPcomputeVarLbLocal(), SCIPcomputeVarUbLocal(), SCIPconsGetData(), SCIPconsGetName(), SCIPdebugMessage, SCIPepsilon(), SCIPfreeBufferArray, SCIPinfinity(), SCIPintervalAdd(), SCIPintervalAddScalar(), SCIPintervalDivScalar(), SCIPintervalGetInf(), SCIPintervalGetRoundingMode(), SCIPintervalGetSup(), SCIPintervalMulScalar(), SCIPintervalSetBounds(), SCIPintervalSetRoundingMode(), SCIPintervalSetRoundingModeDownwards(), SCIPintervalSetRoundingModeUpwards(), SCIPintervalSquare(), SCIPintervalSquareRoot(), SCIPintervalSub(), SCIPintervalSubScalar(), SCIPisInfinity(), SCIPresetConsAge(), SCIPtightenVarLb(), SCIPtightenVarUb(), SCIPvarGetName(), SCIPvarGetStatus(), SCIP_Interval::sup, and TRUE. Referenced by SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSPRESOL(), and SCIP_DECL_CONSPROP().
tries to adjust a solution such that it satisfies a given constraint by increasing the value for the constraints right hand side variable
Definition at line 2849 of file cons_soc.c. References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPceil(), SCIPconsGetData(), SCIPconsGetName(), SCIPdebugMessage, SCIPfloor(), SCIPgetSolVal(), SCIPinfinity(), SCIPisGT(), SCIPisInfinity(), SCIPisLT(), SCIPisZero(), SCIPsetSolVal(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetUbGlobal(), SCIPvarIsIntegral(), SCIPvarMayRoundDown(), SCIPvarMayRoundUp(), and TRUE. Referenced by SCIP_DECL_CONSCHECK().
tries to upgrade a quadratic constraint to a SOC constraint Definition at line 2940 of file cons_soc.c. References SCIP_QuadVarTerm::lincoef, MAX, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPcomputeVarLbGlobal(), SCIPconsGetName(), SCIPconsIsChecked(), SCIPconsIsDynamic(), SCIPconsIsEnforced(), SCIPconsIsInitial(), SCIPconsIsLocal(), SCIPconsIsModifiable(), SCIPconsIsPropagated(), SCIPconsIsRemovable(), SCIPconsIsSeparated(), SCIPcreateConsQuadratic2(), SCIPcreateConsSOC(), SCIPdebugMessage, SCIPdebugPrintCons, SCIPfreeBufferArray, SCIPgetBilinTermsQuadratic(), SCIPgetCoefsLinearVarsQuadratic(), SCIPgetLhsQuadratic(), SCIPgetLinearVarsQuadratic(), SCIPgetNBilinTermsQuadratic(), SCIPgetNLinearVarsQuadratic(), SCIPgetNQuadVarTermsQuadratic(), SCIPgetQuadVarTermsQuadratic(), SCIPgetRhsQuadratic(), SCIPinfinity(), SCIPisInfinity(), SCIPisLT(), SCIPisNegative(), SCIP_QuadVarTerm::sqrcoef, sqrt(), and SCIP_QuadVarTerm::var.
copy method for constraint handler plugins (called when SCIP copies plugins) Definition at line 3179 of file cons_soc.c. References CONSHDLR_NAME, NULL, SCIP_CALL, SCIP_OKAY, SCIPconshdlrGetName(), SCIPincludeConshdlrSOC(), and TRUE.
destructor of constraint handler to free constraint handler data (called when SCIP is exiting) Definition at line 3195 of file cons_soc.c. References CONSHDLR_NAME, NULL, SCIP_OKAY, SCIPconshdlrGetData(), SCIPconshdlrGetName(), and SCIPfreeBlockMemory.
initialization method of constraint handler (called after problem was transformed) Definition at line 3214 of file cons_soc.c. References NULL, SCIP_OKAY, SCIPconshdlrGetData(), SCIPexprintGetName(), and SCIPfindHeur().
deinitialization method of constraint handler (called before transformed problem is freed) Definition at line 3234 of file cons_soc.c. References FALSE, NULL, SCIP_OKAY, and SCIPconshdlrGetData().
presolving deinitialization method of constraint handler (called after presolving has been finished) Definition at line 3253 of file cons_soc.c. References NULL, SCIP_OKAY, SCIPconsIsAdded(), and SCIPenableNLP().
solving process initialization method of constraint handler (called when branch and bound process is about to begin) Definition at line 3277 of file cons_soc.c. References CONSHDLR_NAME, createNlRow(), FALSE, NULL, SCIP_CALL, SCIP_EVENTTYPE_SOLFOUND, SCIP_OKAY, SCIPaddNlRow(), SCIPcatchEvent(), SCIPconsGetData(), SCIPconshdlrGetData(), SCIPconsIsEnabled(), SCIPfindEventhdlr(), and SCIPisNLPConstructed().
solving process deinitialization method of constraint handler (called before branch and bound process data is freed) Definition at line 3332 of file cons_soc.c. References CONSHDLR_NAME, NULL, SCIP_CALL, SCIP_EVENTTYPE_SOLFOUND, SCIP_OKAY, SCIPconsGetData(), SCIPconshdlrGetData(), SCIPdropEvent(), SCIPfindEventhdlr(), and SCIPreleaseNlRow().
frees specific constraint data Definition at line 3374 of file cons_soc.c. References CONSHDLR_NAME, dropVarEvents(), NULL, SCIP_CALL, SCIP_OKAY, SCIPconsGetName(), SCIPconshdlrGetData(), SCIPconshdlrGetName(), SCIPconsIsTransformed(), SCIPdebugMessage, SCIPfreeBlockMemory, SCIPfreeBlockMemoryArray, and SCIPreleaseVar().
transforms constraint data into data belonging to the transformed problem Definition at line 3421 of file cons_soc.c. References catchVarEvents(), CONSHDLR_NAME, FALSE, NULL, SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPallocBlockMemory, SCIPallocBlockMemoryArray, SCIPcaptureVar(), SCIPconsGetData(), SCIPconsGetName(), SCIPconshdlrGetData(), SCIPconshdlrGetName(), SCIPconsIsChecked(), SCIPconsIsDynamic(), SCIPconsIsEnforced(), SCIPconsIsInitial(), SCIPconsIsLocal(), SCIPconsIsModifiable(), SCIPconsIsPropagated(), SCIPconsIsRemovable(), SCIPconsIsSeparated(), SCIPconsIsStickingAtNode(), SCIPcreateCons(), SCIPdebugMessage, SCIPduplicateBlockMemoryArray, SCIPgetTransformedVar(), SCIPgetTransformedVars(), and SCIPsnprintf().
separation method of constraint handler for LP solutions Definition at line 3490 of file cons_soc.c. References addLinearizationCuts(), computeViolations(), FALSE, NULL, SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_LPSOLSTAT_OPTIMAL, SCIP_LPSOLSTAT_UNBOUNDEDRAY, SCIP_NLPSOLSTAT_FEASIBLE, SCIP_NLPSOLSTAT_GLOBINFEASIBLE, SCIP_NLPSOLSTAT_UNKNOWN, SCIP_OKAY, SCIP_SEPARATED, SCIPaddLinearConsToNlpHeurSubNlp(), SCIPconshdlrGetData(), SCIPcreateNLPSol(), SCIPdebugMessage, SCIPfreeSol(), SCIPgetDepth(), SCIPgetLPSolstat(), SCIPgetNBinVars(), SCIPgetNContVars(), SCIPgetNIntVars(), SCIPgetNLPFracVars(), SCIPgetNLPSolstat(), SCIPgetNNlpis(), SCIPgetNVars(), SCIPheurPassSolTrySol(), SCIPisNLPConstructed(), SCIPsetNLPInitialGuessSol(), SCIPsolveNLP(), separatePoint(), and TRUE.
separation method of constraint handler for arbitrary primal solutions Definition at line 3620 of file cons_soc.c. References computeViolations(), FALSE, NULL, SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_OKAY, SCIP_SEPARATED, and separatePoint().
constraint enforcing method of constraint handler for LP solutions Definition at line 3649 of file cons_soc.c. References computeViolations(), CONSHDLR_NAME, NULL, propagateBounds(), SCIP_Bool, SCIP_BRANCHED, SCIP_CALL, SCIP_CUTOFF, SCIP_FEASIBLE, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPconsGetData(), SCIPconshdlrGetData(), SCIPconshdlrGetName(), SCIPcreateChild(), SCIPdebugMessage, SCIPfeastol(), SCIPgetCurrentNode(), SCIPisGT(), SCIPisStopped(), SCIPnodeGetEstimate(), SCIPwarningMessage(), separatePoint(), and TRUE.
constraint enforcing method of constraint handler for pseudo solutions Definition at line 3745 of file cons_soc.c. References computeViolations(), NULL, SCIP_CALL, SCIP_FEASIBLE, SCIP_INFEASIBLE, and SCIP_OKAY.
feasibility check method of constraint handler for integral solutions Definition at line 3766 of file cons_soc.c. References computeViolation(), CONSHDLR_NAME, FALSE, NULL, polishSolution(), REALABS, SCIP_Bool, SCIP_CALL, SCIP_FEASIBLE, SCIP_INFEASIBLE, SCIP_OKAY, SCIP_Real, SCIP_VARSTATUS_MULTAGGR, SCIPconsGetData(), SCIPconshdlrGetData(), SCIPconshdlrGetName(), SCIPcreateLPSol(), SCIPcreateSolCopy(), SCIPfeastol(), SCIPfreeSol(), SCIPgetSolVal(), SCIPheurPassSolTrySol(), SCIPinfoMessage(), SCIPisGT(), SCIPisInfinity(), SCIPprintCons(), SCIPunlinkSol(), SCIPupdateStartpointHeurSubNlp(), SCIPvarGetStatus(), SCIPvarMayRoundDown(), and SCIPvarMayRoundUp().
domain propagation method of constraint handler Definition at line 3880 of file cons_soc.c. References NULL, propagateBounds(), SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, and SCIP_OKAY.
presolving method of constraint handler Definition at line 3906 of file cons_soc.c. References NULL, presolveCreateOuterApprox(), presolveRemoveFixedVariables(), propagateBounds(), SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_ERROR, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SUCCESS, SCIPconsGetData(), SCIPconsGetName(), SCIPconshdlrGetData(), SCIPconshdlrWasPresolvingDelayed(), SCIPdebugMessage, SCIPerrorMessage, SCIPisPresolveFinished(), and TRUE.
variable rounding lock method of constraint handler Definition at line 3978 of file cons_soc.c. References CONSHDLR_NAME, NULL, SCIP_CALL, SCIP_OKAY, SCIPaddVarLocks(), SCIPconsGetData(), SCIPconsGetName(), SCIPconshdlrGetName(), and SCIPdebugMessage.
constraint display method of constraint handler Definition at line 4009 of file cons_soc.c. References CONSHDLR_NAME, NULL, SCIP_CALL, SCIP_OKAY, SCIPconsGetData(), SCIPconshdlrGetName(), SCIPinfoMessage(), SCIPwriteVarName(), and TRUE.
constraint copying method of constraint handler Definition at line 4052 of file cons_soc.c. References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPallocBufferArray, SCIPconsGetData(), SCIPconsGetName(), SCIPcreateConsSOC(), SCIPfreeBufferArray, SCIPgetVarCopy(), and TRUE.
constraint parsing method of constraint handler Definition at line 4106 of file cons_soc.c. References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_VERBLEVEL_MINIMAL, SCIPallocBufferArray, SCIPcalcMemGrowSize(), SCIPcreateConsSOC(), SCIPfreeBufferArray, SCIPparseVarName(), SCIPreallocBufferArray, SCIPstrToRealValue(), SCIPverbMessage(), and TRUE.
constraint method of constraint handler which returns the variables (if possible) Definition at line 4327 of file cons_soc.c. References BMScopyMemoryArray, FALSE, NULL, SCIP_OKAY, SCIPconsGetData(), and TRUE.
constraint method of constraint handler which returns the number of variable (if possible) Definition at line 4348 of file cons_soc.c. References NULL, SCIP_OKAY, SCIPconsGetData(), and TRUE.
creates the handler for second order cone constraints and includes it in SCIP
Definition at line 4368 of file cons_soc.c. References CONSHDLR_CHECKPRIORITY, CONSHDLR_DELAYPRESOL, CONSHDLR_DELAYPROP, CONSHDLR_DELAYSEPA, CONSHDLR_DESC, CONSHDLR_EAGERFREQ, CONSHDLR_ENFOPRIORITY, CONSHDLR_MAXPREROUNDS, CONSHDLR_NAME, CONSHDLR_NEEDSCONS, CONSHDLR_PROP_TIMING, CONSHDLR_PROPFREQ, CONSHDLR_SEPAFREQ, CONSHDLR_SEPAPRIORITY, FALSE, NULL, QUADCONSUPGD_PRIORITY, SCIP_CALL, SCIP_OKAY, SCIPaddBoolParam(), SCIPaddCharParam(), SCIPaddIntParam(), SCIPaddRealParam(), SCIPallocBlockMemory, SCIPfindConshdlr(), SCIPincludeConshdlrBasic(), SCIPincludeEventhdlrBasic(), SCIPincludeQuadconsUpgrade(), SCIPinfinity(), SCIPsetConshdlrCopy(), SCIPsetConshdlrDelete(), SCIPsetConshdlrExit(), SCIPsetConshdlrExitpre(), SCIPsetConshdlrExitsol(), SCIPsetConshdlrFree(), SCIPsetConshdlrGetNVars(), SCIPsetConshdlrGetVars(), SCIPsetConshdlrInit(), SCIPsetConshdlrInitsol(), SCIPsetConshdlrParse(), SCIPsetConshdlrPresol(), SCIPsetConshdlrPrint(), SCIPsetConshdlrProp(), SCIPsetConshdlrSepa(), SCIPsetConshdlrTrans(), and TRUE. Referenced by SCIP_DECL_CONSHDLRCOPY(), and SCIPincludeDefaultPlugins().
creates and captures a second order cone constraint
Definition at line 4478 of file cons_soc.c. References BMSclearMemoryArray, catchVarEvents(), CONSHDLR_NAME, FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIPallocBlockMemory, SCIPallocBlockMemoryArray, SCIPcaptureVar(), SCIPcomputeVarLbGlobal(), SCIPcomputeVarLbLocal(), SCIPcomputeVarUbGlobal(), SCIPcomputeVarUbLocal(), SCIPconshdlrGetData(), SCIPcreateCons(), SCIPduplicateBlockMemoryArray, SCIPerrorMessage, SCIPfindConshdlr(), SCIPisGE(), SCIPisInfinity(), SCIPisLE(), and SCIPisTransformed(). Referenced by SCIP_DECL_CONSCOPY(), SCIP_DECL_CONSPARSE(), SCIP_DECL_QUADCONSUPGD(), and SCIPcreateConsBasicSOC().
creates and captures a second order cone constraint with all its constraint flags set to their default values
Definition at line 4606 of file cons_soc.c. References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcreateConsSOC(), and TRUE.
Gets the SOC constraint as a nonlinear row representation.
Definition at line 4629 of file cons_soc.c. References createNlRow(), NULL, SCIP_CALL, SCIP_OKAY, SCIPconsGetData(), and SCIPconsGetHdlr(). Referenced by createCoveringProblem(). Gets the number of variables on the left hand side of a SOC constraint.
Definition at line 4655 of file cons_soc.c. References NULL, and SCIPconsGetData(). Referenced by createCoveringProblem(), printSOCCons(), SCIP_DECL_READERWRITE(), SCIPwriteGms(), and SCIPwriteLp(). Gets the variables on the left hand side of a SOC constraint.
Definition at line 4668 of file cons_soc.c. References NULL, and SCIPconsGetData(). Referenced by createCoveringProblem(), printSOCCons(), SCIP_DECL_READERWRITE(), SCIPwriteGms(), and SCIPwriteLp(). Gets the coefficients of the variables on the left hand side of a SOC constraint, or NULL if all are equal to 1.0.
Definition at line 4681 of file cons_soc.c. References NULL, and SCIPconsGetData(). Referenced by createCoveringProblem(), printSOCCons(), SCIP_DECL_READERWRITE(), and SCIPwriteGms(). Gets the offsets of the variables on the left hand side of a SOC constraint, or NULL if all are equal to 0.0.
Definition at line 4694 of file cons_soc.c. References NULL, and SCIPconsGetData(). Referenced by printSOCCons(), SCIP_DECL_READERWRITE(), and SCIPwriteGms(). Gets the constant on the left hand side of a SOC constraint.
Definition at line 4707 of file cons_soc.c. References NULL, and SCIPconsGetData(). Referenced by printSOCCons(), SCIP_DECL_READERWRITE(), and SCIPwriteGms(). Gets the variable on the right hand side of a SOC constraint.
Definition at line 4720 of file cons_soc.c. References NULL, and SCIPconsGetData(). Referenced by createCoveringProblem(), printSOCCons(), SCIP_DECL_READERWRITE(), SCIPwriteGms(), and SCIPwriteLp(). Gets the coefficient of the variable on the right hand side of a SOC constraint.
Definition at line 4733 of file cons_soc.c. References NULL, and SCIPconsGetData(). Referenced by createCoveringProblem(), printSOCCons(), SCIP_DECL_READERWRITE(), and SCIPwriteGms(). Gets the offset of the variables on the right hand side of a SOC constraint.
Definition at line 4746 of file cons_soc.c. References NULL, and SCIPconsGetData(). Referenced by printSOCCons(), SCIP_DECL_READERWRITE(), and SCIPwriteGms().
Adds the constraint to an NLPI problem. Uses nonconvex formulation as quadratic function.
Definition at line 4760 of file cons_soc.c. References SCIP_QuadElement::coef, SCIP_QuadElement::idx1, SCIP_QuadElement::idx2, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPconsGetData(), SCIPconsGetName(), SCIPfreeBufferArray, SCIPfreeBufferArrayNull, SCIPhashmapGetImage(), SCIPinfinity(), and SCIPnlpiAddConstraints(). |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||