internal methods for storing primal CIP solutions
Definition in file sol.h.
#include <stdio.h>#include "scip/def.h"#include "blockmemshell/memory.h"#include "scip/type_retcode.h"#include "scip/type_set.h"#include "scip/type_stat.h"#include "scip/type_lp.h"#include "scip/type_lpexact.h"#include "scip/type_nlp.h"#include "scip/type_var.h"#include "scip/type_prob.h"#include "scip/type_sol.h"#include "scip/type_primal.h"#include "scip/type_tree.h"#include "scip/type_heur.h"#include "scip/pub_sol.h"Go to the source code of this file.
| SCIP_RETCODE SCIPsolCreate | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution, initialized to zero
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| primal | primal data |
| tree | branch and bound tree |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 428 of file sol.c.
References assert(), BMSallocBlockMemory, FALSE, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_ZERO, SCIPboolarrayCreate(), SCIPprimalSolCreated(), SCIPrealarrayCreate(), SCIPsolResetViolations(), SCIPsolSetHeur(), sol, SCIP_Stat::solindex, solStamp(), and TRUE.
Referenced by SCIPcreateSol(), SCIPprimalTransformSol(), SCIPsolCreateExact(), SCIPsolCreateLPSol(), SCIPsolCreateNLPSol(), SCIPsolCreatePseudoSol(), SCIPsolCreateRelaxSol(), and updatePrimalRay().
| SCIP_RETCODE SCIPsolCreateExact | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution with exact rational values, initialized to zero
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| primal | primal data |
| tree | branch and bound tree |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 470 of file sol.c.
References assert(), BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIPboolarrayCreate(), SCIPrationalarrayCreate(), SCIPrationalCreateBlock(), SCIPsolCreate(), SCIPsolIsExact(), and sol.
Referenced by SCIPcreateSolExact(), SCIPsolCreateLPSolExact(), and SCIPsolCreatePseudoSolExact().
| SCIP_RETCODE SCIPsolCreateOriginal | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | origprob, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution in original problem space, initialized to the offset in the original problem
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| origprob | original problem data |
| primal | primal data |
| tree | branch and bound tree |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 514 of file sol.c.
References assert(), BMSallocBlockMemory, FALSE, NULL, SCIP_Prob::objoffset, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_ORIGINAL, SCIPboolarrayCreate(), SCIPprimalSolCreated(), SCIPrealarrayCreate(), SCIPsolResetViolations(), SCIPsolSetHeur(), sol, SCIP_Stat::solindex, solStamp(), and TRUE.
Referenced by SCIPcreateOrigSol(), SCIPcreateSol(), and SCIPsolCreateOriginalExact().
| SCIP_RETCODE SCIPsolCreateOriginalExact | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | origprob, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_HEUR * | heur ) |
creates exact primal CIP solution in original problem space, initialized to the offset in the original problem
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| origprob | original problem data |
| primal | primal data |
| tree | branch and bound tree |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 555 of file sol.c.
References assert(), BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIPboolarrayCreate(), SCIPrationalarrayCreate(), SCIPrationalCreateBlock(), SCIPsolCreateOriginal(), SCIPsolIsExact(), and sol.
Referenced by SCIPcreateSolExact().
| SCIP_RETCODE SCIPsolCopy | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_SOL * | sourcesol ) |
creates a copy of a primal CIP solution
| sol | pointer to store the copy of the primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| primal | primal data |
| sourcesol | primal CIP solution to copy |
Definition at line 583 of file sol.c.
References SCIP_Viol::absviolbounds, SCIP_Viol::absviolcons, SCIP_Viol::absviolintegrality, SCIP_Viol::absviollprows, assert(), BMSallocBlockMemory, SCIP_Sol::depth, SCIP_Sol::hasinfval, SCIP_Sol::lpcount, SCIP_Sol::nodenum, NULL, SCIP_Sol::obj, SCIP_Viol::relviolbounds, SCIP_Viol::relviolcons, SCIP_Viol::relviollprows, SCIP_Sol::runnum, SCIP_ALLOC, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIP_SOLTYPE_HEUR, SCIP_SOLTYPE_LPRELAX, SCIP_SOLTYPE_PSEUDO, SCIP_SOLTYPE_RELAX, SCIP_SOLTYPE_STRONGBRANCH, SCIP_SOLTYPE_UNKNOWN, SCIPboolarrayCopy(), SCIPerrorMessage, SCIPprimalSolCreated(), SCIPrealarrayCopy(), SCIPsolGetHeur(), SCIPsolGetRelax(), SCIPsolIsExact(), SCIPsolSetHeur(), SCIPsolSetRelax(), SCIPvalsExactCopy(), sol, SCIP_Stat::solindex, SCIP_Sol::solorigin, SCIP_Sol::time, SCIP_Sol::type, SCIP_Sol::valid, SCIP_Sol::vals, SCIP_Sol::valsexact, and SCIP_Sol::viol.
Referenced by SCIPcreateSolCopy(), SCIPcreateSolCopyOrig(), SCIPprimalAddOrigSol(), SCIPprimalAddSol(), SCIPprimalTrySol(), SCIPprimalUpdateRay(), SCIPreoptAddOptSol(), and soltreeAddSol().
| SCIP_RETCODE SCIPsolTransform | ( | SCIP_SOL * | sol, |
| SCIP_SOL ** | transsol, | ||
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_PRIMAL * | primal ) |
transformes given original solution to the transformed space; a corresponding transformed solution has to be given which is copied into the existing solution and freed afterwards
| sol | primal CIP solution to change, living in original space |
| transsol | pointer to corresponding transformed primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| primal | primal data |
Definition at line 658 of file sol.c.
References assert(), NULL, SCIP_Sol::obj, SCIP_CALL, SCIP_OKAY, SCIPsolFree(), SCIPsolIsExact(), SCIPsolIsOriginal(), sol, SCIP_Sol::solorigin, SCIP_Sol::valid, SCIP_Sol::vals, and SCIP_Sol::valsexact.
Referenced by primalAddSol().
| SCIP_RETCODE SCIPsolAdjustImplicitSolVals | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_TREE * | tree, | ||
| SCIP_Bool | uselprows ) |
adjusts solution values of implied integral variables in handed solution, solution objective value is not deteriorated by this method
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | either original or transformed problem, depending on sol origin |
| tree | branch and bound tree |
| uselprows | should LP row information be considered for none-objective variables |
Definition at line 712 of file sol.c.
References assert(), FALSE, NULL, obj, r, roundup, SCIP_Bool, SCIP_CALL, SCIP_LOCKTYPE_MODEL, SCIP_OKAY, SCIP_Real, SCIP_VARSTATUS_COLUMN, SCIPcolGetNNonz(), SCIPcolGetRows(), SCIPcolGetVals(), SCIPprobGetNBinVars(), SCIPprobGetNImplVars(), SCIPprobGetNIntVars(), SCIPprobGetVars(), SCIProwGetLhs(), SCIProwGetRhs(), SCIProwGetSolActivity(), SCIProwIsInLP(), SCIProwIsLocal(), SCIPsetCeil(), SCIPsetFloor(), SCIPsetIsFeasGE(), SCIPsetIsFeasGT(), SCIPsetIsFeasIntegral(), SCIPsetIsFeasLE(), SCIPsetIsFeasLT(), SCIPsetIsFeasNegative(), SCIPsetIsFeasPositive(), SCIPsetIsInfinity(), SCIPsetIsNegative(), SCIPsetIsPositive(), SCIPsetIsZero(), SCIPsolGetVal(), SCIPsolSetVal(), SCIPvarGetCol(), SCIPvarGetLbGlobal(), SCIPvarGetNLocksDownType(), SCIPvarGetNLocksUpType(), SCIPvarGetStatus(), SCIPvarGetUbGlobal(), SCIPvarGetUnchangedObj(), SCIPvarIsImpliedIntegral(), sol, TRUE, var, and vars.
Referenced by SCIPadjustImplicitSolVals().
| SCIP_RETCODE SCIPsolCreateLPSol | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_LP * | lp, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution, initialized to the current LP solution
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | transformed problem data |
| primal | primal data |
| tree | branch and bound tree |
| lp | current LP data |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 846 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPlpIsSolved(), SCIPsolCreate(), SCIPsolLinkLPSol(), and sol.
Referenced by addCurrentSolution(), SCIPcreateLPSol(), SCIPsolCreateCurrentSol(), SCIPsolveCIP(), and solveNodeLP().
| SCIP_RETCODE SCIPsolCreateLPSolExact | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_LPEXACT * | lp, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution with exact rational values, initialized to the current LP solution
creates primal CIP solution with exact rational values, initialized to the current exact LP solution (will use exact safe dual solution if lp was not solved exactly)
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| primal | primal data |
| tree | branch and bound tree |
| lp | current LP data |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 871 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPsolCreateExact(), SCIPsolLinkLPSolExact(), sol, and SCIP_LpExact::solved.
Referenced by addCurrentSolution(), SCIPcreateLPSolExact(), SCIPsolCreateCurrentSolExact(), and solveNodeLP().
| SCIP_RETCODE SCIPsolCreateNLPSol | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_NLP * | nlp, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution, initialized to the current NLP solution
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| primal | primal data |
| tree | branch and bound tree |
| nlp | current NLP data |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 893 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPsolCreate(), SCIPsolLinkNLPSol(), and sol.
Referenced by SCIPcreateNLPSol(), and SCIPnlrowRecalcNLPActivity().
| SCIP_RETCODE SCIPsolCreateRelaxSol | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_RELAXATION * | relaxation, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution, initialized to the current relaxation solution
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| primal | primal data |
| tree | branch and bound tree |
| relaxation | global relaxation data |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 914 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPrelaxationGetSolRelax(), SCIPrelaxationIsSolValid(), SCIPsolCreate(), SCIPsolLinkRelaxSol(), SCIPsolSetRelax(), and sol.
Referenced by addCurrentSolution(), enforceConstraints(), SCIPcreateRelaxSol(), SCIPsolveCIP(), and solveNode().
| SCIP_RETCODE SCIPsolCreatePseudoSol | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_LP * | lp, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution, initialized to the current pseudo solution
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | transformed problem data |
| primal | primal data |
| tree | branch and bound tree, or NULL |
| lp | current LP data |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 940 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPsolCreate(), SCIPsolLinkPseudoSol(), SCIPsolSetPseudo(), and sol.
Referenced by addCurrentSolution(), SCIPcreatePseudoSol(), SCIPnlrowRecalcPseudoActivity(), SCIPsolCreateCurrentSol(), and SCIPsolveCIP().
| SCIP_RETCODE SCIPsolCreatePseudoSolExact | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_LPEXACT * | lp, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution, initialized to the current exact pseudo solution
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| primal | primal data |
| tree | branch and bound tree, or NULL |
| lp | current LP data |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 965 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPsolCreateExact(), SCIPsolLinkPseudoSolExact(), and sol.
Referenced by SCIPsolCreateCurrentSolExact().
| SCIP_RETCODE SCIPsolCreateCurrentSol | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_LP * | lp, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution, initialized to the current solution
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | transformed problem data |
| primal | primal data |
| tree | branch and bound tree |
| lp | current LP data |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 985 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPsolCreateLPSol(), SCIPsolCreatePseudoSol(), SCIPtreeHasCurrentNodeLP(), and sol.
Referenced by primalLinkCurrentSol(), SCIPcreateCurrentSol(), SCIPprintSol(), SCIPprintTransSol(), and solveNode().
| SCIP_RETCODE SCIPsolCreateCurrentSolExact | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_LPEXACT * | lp, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution with exact rational values, initialized to the current solution
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| primal | primal data |
| tree | branch and bound tree |
| lp | current LP data |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 1012 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPsolCreateLPSolExact(), SCIPsolCreatePseudoSolExact(), SCIPtreeHasCurrentNodeLP(), sol, and SCIP_LpExact::solved.
Referenced by SCIPprintSolExact().
| SCIP_RETCODE SCIPsolCreatePartial | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_HEUR * | heur ) |
creates partial primal CIP solution, initialized to unknown values
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| primal | primal data |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 1039 of file sol.c.
References assert(), BMSallocBlockMemory, FALSE, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_PARTIAL, SCIP_UNKNOWN, SCIPboolarrayCreate(), SCIPprimalSolCreated(), SCIPrealarrayCreate(), SCIPsolResetViolations(), SCIPsolSetHeur(), sol, SCIP_Stat::solindex, solStamp(), and TRUE.
Referenced by SCIPcreatePartialSol().
| SCIP_RETCODE SCIPsolCreateUnknown | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_TREE * | tree, | ||
| SCIP_HEUR * | heur ) |
creates primal CIP solution, initialized to unknown values
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| primal | primal data |
| tree | branch and bound tree |
| heur | heuristic that found the solution (or NULL if it's from the tree) |
Definition at line 1079 of file sol.c.
References assert(), BMSallocBlockMemory, FALSE, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_UNKNOWN, SCIPboolarrayCreate(), SCIPprimalSolCreated(), SCIPrealarrayCreate(), SCIPsolResetViolations(), SCIPsolSetHeur(), sol, SCIP_Stat::solindex, solStamp(), and TRUE.
Referenced by SCIPcreateUnknownSol().
| SCIP_RETCODE SCIPsolFree | ( | SCIP_SOL ** | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_PRIMAL * | primal ) |
frees primal CIP solution
| sol | pointer to primal CIP solution |
| blkmem | block memory |
| primal | primal data |
Definition at line 1133 of file sol.c.
References assert(), BMSfreeBlockMemory, NULL, SCIP_CALL, SCIP_OKAY, SCIPboolarrayFree(), SCIPprimalSolFreed(), SCIPrealarrayFree(), SCIPsolIsExact(), sol, and valsExactFree().
Referenced by enforceConstraints(), freeTransform(), primalAddOrigSol(), primalAddSol(), SCIPfreeSol(), SCIPnlrowRecalcNLPActivity(), SCIPnlrowRecalcPseudoActivity(), SCIPprimalAddOrigSolFree(), SCIPprimalAddSolFree(), SCIPprimalAddSolFreeExact(), SCIPprimalClear(), SCIPprimalTrySolFree(), SCIPprimalTrySolFreeExact(), SCIPprimalUpdateRay(), SCIPprintSol(), SCIPprintSolExact(), SCIPprintTransSol(), SCIPreoptFree(), SCIPsolTransform(), SCIPsolveCIP(), SCIPtransformProb(), SCIPtrySolFree(), SCIPtrySolFreeExact(), soltreefreeNode(), solveNode(), solveNodeLP(), and updatePrimalRay().
| SCIP_RETCODE SCIPsolLinkLPSol | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_TREE * | tree, | ||
| SCIP_LP * | lp ) |
copies current LP solution into CIP solution by linking
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | transformed problem data |
| tree | branch and bound tree |
| lp | current LP data |
Definition at line 1156 of file sol.c.
References assert(), c, NULL, SCIP_Col::primsol, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_LPSOL, SCIPcolGetVar(), SCIPlpDiving(), SCIPlpDivingObjChanged(), SCIPlpGetCols(), SCIPlpGetLooseObjval(), SCIPlpGetNCols(), SCIPlpGetObjval(), SCIPsetDebugMsg, SCIPsetIsInfinity(), SCIPtreeProbing(), SCIPvarGetUnchangedObj(), sol, solClearArrays(), solStamp(), SCIP_Lp::solved, TRUE, and var.
Referenced by SCIPlinkLPSol(), SCIPsolCreateLPSol(), and SCIPsolLinkCurrentSol().
| SCIP_RETCODE SCIPsolLinkLPSolExact | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_LPEXACT * | lp ) |
copies current exact LP solution into CIP solution by linking
copies current exact LP solution into exact CIP solution by linking
Definition at line 1214 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_R_ROUND_UPWARDS, SCIP_SOLORIGIN_LPSOL, SCIPlpExactGetObjval(), SCIPrationalRoundReal(), SCIPsolIsExact(), sol, solClearArrays(), and SCIP_LpExact::solved.
Referenced by SCIPlinkLPSolExact(), and SCIPsolCreateLPSolExact().
| SCIP_RETCODE SCIPsolLinkNLPSol | ( | SCIP_SOL * | sol, |
| SCIP_STAT * | stat, | ||
| SCIP_TREE * | tree, | ||
| SCIP_NLP * | nlp ) |
copies current NLP solution into CIP solution by linking
| sol | primal CIP solution |
| stat | problem statistics data |
| tree | branch and bound tree |
| nlp | current NLP data |
Definition at line 1237 of file sol.c.
References assert(), NULL, nvars, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_NLPSOL, SCIPnlpGetNVars(), SCIPnlpGetObjval(), SCIPnlpGetVars(), SCIPnlpHasSolution(), SCIPnlpIsDivingObjChanged(), SCIPstatDebugMsg, SCIPvarGetNLPSol(), SCIPvarGetUnchangedObj(), SCIPvarIsActive(), sol, solClearArrays(), solStamp(), TRUE, and vars.
Referenced by SCIPlinkNLPSol(), and SCIPsolCreateNLPSol().
| SCIP_RETCODE SCIPsolLinkRelaxSol | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_TREE * | tree, | ||
| SCIP_RELAXATION * | relaxation ) |
copies current relaxation solution into CIP solution by linking
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| tree | branch and bound tree |
| relaxation | global relaxation data |
Definition at line 1288 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_RELAXSOL, SCIPrelaxationGetSolObj(), SCIPrelaxationIsSolValid(), SCIPsetDebugMsg, sol, solClearArrays(), solStamp(), and TRUE.
Referenced by SCIPlinkRelaxSol(), and SCIPsolCreateRelaxSol().
| SCIP_RETCODE SCIPsolLinkPseudoSol | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_TREE * | tree, | ||
| SCIP_LP * | lp ) |
copies current pseudo solution into CIP solution by linking
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | transformed problem data |
| tree | branch and bound tree, or NULL |
| lp | current LP data |
Definition at line 1318 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_PSEUDOSOL, SCIPlpGetPseudoObjval(), SCIPsetDebugMsg, sol, solClearArrays(), solStamp(), and TRUE.
Referenced by SCIPlinkPseudoSol(), SCIPsolCreatePseudoSol(), and SCIPsolLinkCurrentSol().
| SCIP_RETCODE SCIPsolLinkPseudoSolExact | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_LPEXACT * | lp ) |
copies current pseudo solution into CIP solution by linking
copies current exact pseudo solution into exact CIP solution by linking
Definition at line 1347 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPlpExactGetPseudoObjval(), SCIPsetDebugMsg, SCIPsolIsExact(), sol, and solClearArrays().
Referenced by SCIPsolCreatePseudoSolExact().
| SCIP_RETCODE SCIPsolLinkCurrentSol | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_TREE * | tree, | ||
| SCIP_LP * | lp ) |
copies current solution (LP or pseudo solution) into CIP solution by linking
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | transformed problem data |
| tree | branch and bound tree |
| lp | current LP data |
Definition at line 1368 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPlpIsSolved(), SCIPsetDebugMsg, SCIPsolLinkLPSol(), SCIPsolLinkPseudoSol(), SCIPtreeHasCurrentNodeLP(), and sol.
Referenced by primalLinkCurrentSol(), and SCIPlinkCurrentSol().
| SCIP_RETCODE SCIPsolClear | ( | SCIP_SOL * | sol, |
| SCIP_STAT * | stat, | ||
| SCIP_TREE * | tree ) |
clears primal CIP solution
| sol | primal CIP solution |
| stat | problem statistics data |
| tree | branch and bound tree |
Definition at line 1394 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_ZERO, SCIPrationalSetReal(), SCIPsolIsExact(), sol, solClearArrays(), solStamp(), and TRUE.
Referenced by SCIPclearSol().
| SCIP_RETCODE SCIPsolSetUnknown | ( | SCIP_SOL * | sol, |
| SCIP_STAT * | stat, | ||
| SCIP_TREE * | tree ) |
declares all entries in the primal CIP solution to be unknown
| sol | primal CIP solution |
| stat | problem statistics data |
| tree | branch and bound tree |
Definition at line 1414 of file sol.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_UNKNOWN, sol, solClearArrays(), solStamp(), and TRUE.
| SCIP_RETCODE SCIPsolUnlink | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_PROB * | prob ) |
stores solution values of variables in solution's own array
Definition at line 1431 of file sol.c.
References assert(), NULL, SCIP_Prob::nvars, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_UNKNOWN, SCIP_SOLORIGIN_ZERO, SCIPsetDebugMsg, SCIPsolIsOriginal(), sol, solUnlinkVar(), and SCIP_Prob::vars.
Referenced by primalAddSol(), SCIPsolMakeExact(), SCIPsolUnlinkExact(), SCIPtrySolFreeExact(), and SCIPunlinkSol().
| SCIP_RETCODE SCIPsolUnlinkExact | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_PROB * | prob ) |
stores solution values of variables in solution's own array
stores solution values of variables in exact solution's own array
Definition at line 1460 of file sol.c.
References assert(), NULL, SCIP_Prob::nvars, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_ORIGINAL, SCIP_SOLORIGIN_UNKNOWN, SCIP_SOLORIGIN_ZERO, SCIPsetDebugMsg, SCIPsolIsExact(), SCIPsolUnlink(), sol, solUnlinkVarExact(), and SCIP_Prob::vars.
Referenced by primalAddSolExact(), SCIPsolMakeReal(), and SCIPunlinkSolExact().
| SCIP_RETCODE SCIPsolSetVal | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_TREE * | tree, | ||
| SCIP_VAR * | var, | ||
| SCIP_Real | val ) |
sets value of variable in primal CIP solution
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| tree | branch and bound tree, or NULL |
| var | variable to add to solution |
| val | solution value of variable |
Definition at line 1490 of file sol.c.
References ABS, assert(), FALSE, SCIP_Stat::lpcount, MAX, SCIP_Stat::nnodes, SCIP_Stat::nruns, NULL, obj, SCIP_CALL, SCIP_INVALID, SCIP_INVALIDDATA, SCIP_OKAY, SCIP_Real, SCIP_SOLORIGIN_LPSOL, SCIP_SOLORIGIN_ORIGINAL, SCIP_SOLORIGIN_PARTIAL, SCIP_SOLORIGIN_UNKNOWN, SCIP_SOLORIGIN_ZERO, SCIP_UNKNOWN, SCIP_VARSTATUS_AGGREGATED, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_LOOSE, SCIP_VARSTATUS_MULTAGGR, SCIP_VARSTATUS_NEGATED, SCIP_VARSTATUS_ORIGINAL, SCIPboolarrayGetVal(), SCIPerrorMessage, SCIPisFinite, SCIPsetDebugMsg, SCIPsetInfinity(), SCIPsetIsInfinity(), SCIPsetIsZero(), SCIPsolIsOriginal(), SCIPsolIsPartial(), SCIPsolSetVal(), SCIPvarGetAggrConstant(), SCIPvarGetAggrScalar(), SCIPvarGetAggrVar(), SCIPvarGetIndex(), SCIPvarGetLbGlobal(), SCIPvarGetMultaggrConstant(), SCIPvarGetMultaggrNVars(), SCIPvarGetMultaggrScalars(), SCIPvarGetMultaggrVars(), SCIPvarGetName(), SCIPvarGetNegationConstant(), SCIPvarGetNegationVar(), SCIPvarGetStatus(), SCIPvarGetTransVar(), SCIPvarGetUnchangedObj(), sol, solGetArrayVal(), solSetArrayVal(), solStamp(), and var.
Referenced by SCIPprimalTransformSol(), SCIPsetSolVal(), SCIPsetSolVals(), SCIPsolAdjustImplicitSolVals(), SCIPsolOverwriteFPSolWithExact(), SCIPsolRound(), SCIPsolSetVal(), SCIPsolSetValExact(), separateAlternativeProofs(), and updatePrimalRay().
| SCIP_RETCODE SCIPsolSetValExact | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_TREE * | tree, | ||
| SCIP_VAR * | var, | ||
| SCIP_RATIONAL * | val ) |
sets value of variable in primal CIP solution
sets value of variable in exact primal CIP solution
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| tree | branch and bound tree, or NULL |
| var | variable to add to solution |
| val | solution value of variable |
Definition at line 1711 of file sol.c.
References assert(), NULL, obj, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIP_SOLORIGIN_ORIGINAL, SCIP_SOLORIGIN_PARTIAL, SCIP_SOLORIGIN_UNKNOWN, SCIP_SOLORIGIN_ZERO, SCIP_VARSTATUS_AGGREGATED, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_LOOSE, SCIP_VARSTATUS_MULTAGGR, SCIP_VARSTATUS_NEGATED, SCIP_VARSTATUS_ORIGINAL, SCIPABORT, SCIPerrorMessage, SCIPrationalAddProd(), SCIPrationalCreateBuffer(), SCIPrationalDiff(), SCIPrationalDiffProd(), SCIPrationalDiv(), SCIPrationalFreeBuffer(), SCIPrationalGetReal(), SCIPrationalIsAbsInfinity(), SCIPrationalIsEQ(), SCIPrationalIsPositive(), SCIPrationalIsZero(), SCIPrationalNegate(), SCIPsetDebugMsg, SCIPsetIsInfinity(), SCIPsolIsExact(), SCIPsolSetVal(), SCIPsolSetValExact(), SCIPvarGetAggrConstantExact(), SCIPvarGetAggrScalarExact(), SCIPvarGetAggrVar(), SCIPvarGetLbGlobalExact(), SCIPvarGetName(), SCIPvarGetNegationConstant(), SCIPvarGetNegationVar(), SCIPvarGetObjExact(), SCIPvarGetStatusExact(), SCIPvarGetTransVar(), sol, solGetArrayValExact(), solSetArrayValExact(), and var.
Referenced by SCIPsetSolValExact(), and SCIPsolSetValExact().
| SCIP_RETCODE SCIPsolIncVal | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_TREE * | tree, | ||
| SCIP_VAR * | var, | ||
| SCIP_Real | incval ) |
increases value of variable in primal CIP solution
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| tree | branch and bound tree |
| var | variable to increase solution value for |
| incval | increment for solution value of variable |
Definition at line 1836 of file sol.c.
References assert(), FALSE, SCIP_Stat::lpcount, SCIP_Stat::nnodes, SCIP_Stat::nruns, NULL, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIP_Real, SCIP_SOLORIGIN_LPSOL, SCIP_SOLORIGIN_ORIGINAL, SCIP_SOLORIGIN_ZERO, SCIP_VARSTATUS_AGGREGATED, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_LOOSE, SCIP_VARSTATUS_MULTAGGR, SCIP_VARSTATUS_NEGATED, SCIP_VARSTATUS_ORIGINAL, SCIPboolarrayGetVal(), SCIPerrorMessage, SCIPsetDebugMsg, SCIPsetIsInfinity(), SCIPsetIsZero(), SCIPsolIncVal(), SCIPsolIsOriginal(), SCIPvarGetAggrScalar(), SCIPvarGetAggrVar(), SCIPvarGetIndex(), SCIPvarGetName(), SCIPvarGetNegationVar(), SCIPvarGetStatus(), SCIPvarGetTransVar(), SCIPvarGetUnchangedObj(), sol, solGetArrayVal(), solIncArrayVal(), solStamp(), and var.
Referenced by SCIPincSolVal(), and SCIPsolIncVal().
returns value of variable in primal CIP solution
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| var | variable to get value for |
Definition at line 1912 of file sol.c.
References assert(), i, SCIP_Stat::lpcount, SCIP_Stat::nnodes, SCIP_Stat::nruns, NULL, nvars, scalars, SCIP_INVALID, SCIP_OKAY, SCIP_Real, SCIP_SOLORIGIN_LPSOL, SCIP_SOLORIGIN_ORIGINAL, SCIP_SOLORIGIN_PARTIAL, SCIP_SOLORIGIN_UNKNOWN, SCIP_SOLORIGIN_ZERO, SCIP_UNKNOWN, SCIP_VARSTATUS_AGGREGATED, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_LOOSE, SCIP_VARSTATUS_MULTAGGR, SCIP_VARSTATUS_NEGATED, SCIP_VARSTATUS_ORIGINAL, SCIPABORT, SCIPboolarrayGetVal(), SCIPerrorMessage, SCIPrationalIsEQ(), SCIPsetInfinity(), SCIPsetIsInfinity(), SCIPsolGetVal(), SCIPsolIsOriginal(), SCIPvarGetAggrConstant(), SCIPvarGetAggrScalar(), SCIPvarGetAggrVar(), SCIPvarGetIndex(), SCIPvarGetLbGlobal(), SCIPvarGetLbGlobalExact(), SCIPvarGetLbLocal(), SCIPvarGetLbLocalExact(), SCIPvarGetMultaggrConstant(), SCIPvarGetMultaggrNVars(), SCIPvarGetMultaggrScalars(), SCIPvarGetMultaggrVars(), SCIPvarGetNegationConstant(), SCIPvarGetNegationVar(), SCIPvarGetOrigvarSum(), SCIPvarGetStatus(), SCIPvarGetTransVar(), SCIPvarGetUbGlobal(), SCIPvarGetUbGlobalExact(), SCIPvarGetUbLocal(), SCIPvarGetUbLocalExact(), SCIPvarIsTransformed(), sol, solGetArrayVal(), var, and vars.
Referenced by checkSolOrig(), checkSolOrigExact(), SCIPgetSolVal(), SCIPgetSolVals(), SCIPnlrowGetSolActivity(), SCIPprimalTransformSol(), SCIProwExactGetSolActivity(), SCIProwExactGetSolActivityWithErrorbound(), SCIProwGetLPSolCutoffDistance(), SCIProwGetSolActivity(), SCIPsolAdjustImplicitSolVals(), SCIPsolCheck(), SCIPsolCheckOrig(), SCIPsolGetVal(), SCIPsolMarkPartial(), SCIPsolOverwriteFPSolWithExact(), SCIPsolPrint(), SCIPsolRecomputeObj(), SCIPsolRetransform(), SCIPsolsAreEqual(), SCIPsolUpdateVarsum(), SCIPvarGetClosestVlb(), SCIPvarGetClosestVub(), separateSolution(), solCheckExact(), solsAreEqualExact(), and soltreeAddSol().
| void SCIPsolGetValExact | ( | SCIP_RATIONAL * | res, |
| SCIP_SOL * | sol, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_VAR * | var ) |
returns value of variable in primal CIP solution
returns value of variable in exact primal CIP solution
| res | resulting rational |
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| var | variable to get value for |
Definition at line 2043 of file sol.c.
References assert(), i, SCIP_Stat::lpcount, NULL, nvars, scalars, SCIP_OKAY, SCIP_SOLORIGIN_LPSOL, SCIP_SOLORIGIN_ORIGINAL, SCIP_SOLORIGIN_PARTIAL, SCIP_SOLORIGIN_UNKNOWN, SCIP_SOLORIGIN_ZERO, SCIP_VARSTATUS_AGGREGATED, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_LOOSE, SCIP_VARSTATUS_MULTAGGR, SCIP_VARSTATUS_NEGATED, SCIP_VARSTATUS_ORIGINAL, SCIPABORT, SCIPboolarrayGetVal(), SCIPerrorMessage, SCIPrationalAdd(), SCIPrationalAddProd(), SCIPrationalCreateBuffer(), SCIPrationalDiffReal(), SCIPrationalFreeBuffer(), SCIPrationalGetSign(), SCIPrationalIsAbsInfinity(), SCIPrationalIsEQ(), SCIPrationalIsZero(), SCIPrationalMult(), SCIPrationalNegate(), SCIPrationalSetFraction(), SCIPrationalSetInfinity(), SCIPrationalSetNegInfinity(), SCIPrationalSetRational(), SCIPrationalSetReal(), SCIPsolGetValExact(), SCIPsolIsExact(), SCIPvarGetAggrConstantExact(), SCIPvarGetAggrScalarExact(), SCIPvarGetAggrVar(), SCIPvarGetIndex(), SCIPvarGetLbGlobalExact(), SCIPvarGetLbLocalExact(), SCIPvarGetMultaggrConstantExact(), SCIPvarGetMultaggrNVars(), SCIPvarGetMultaggrScalarsExact(), SCIPvarGetMultaggrVars(), SCIPvarGetNegationConstant(), SCIPvarGetNegationVar(), SCIPvarGetOrigvarSumExact(), SCIPvarGetStatusExact(), SCIPvarGetTransVar(), SCIPvarGetUbGlobalExact(), SCIPvarGetUbLocalExact(), SCIPvarIsTransformed(), sol, solGetArrayValExact(), var, and vars.
Referenced by certificatePrintSol(), checkSolOrigExact(), SCIPgetSolValExact(), SCIProwExactGetSolActivity(), SCIPsolGetValExact(), SCIPsolOverwriteFPSolWithExact(), SCIPsolPrintExact(), SCIPsolRecomputeInternObjExact(), SCIPsolRetransformExact(), solCheckExact(), and solsAreEqualExact().
returns value of variable in primal ray represented by primal CIP solution
| sol | primal CIP solution, representing a primal ray |
| set | global SCIP settings |
| stat | problem statistics data |
| var | variable to get value for |
Definition at line 2192 of file sol.c.
References assert(), i, NULL, nvars, REALABS, scalars, SCIP_Real, SCIP_SOLORIGIN_ZERO, SCIP_UNKNOWN, SCIP_VARSTATUS_AGGREGATED, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_LOOSE, SCIP_VARSTATUS_MULTAGGR, SCIP_VARSTATUS_NEGATED, SCIP_VARSTATUS_ORIGINAL, SCIPABORT, SCIPerrorMessage, SCIPsetIsInfinity(), SCIPsolGetRayVal(), SCIPsolIsOriginal(), SCIPvarGetAggrScalar(), SCIPvarGetAggrVar(), SCIPvarGetLbGlobal(), SCIPvarGetLbLocal(), SCIPvarGetMultaggrNVars(), SCIPvarGetMultaggrScalars(), SCIPvarGetMultaggrVars(), SCIPvarGetNegationVar(), SCIPvarGetStatus(), SCIPvarGetTransVar(), SCIPvarGetUbGlobal(), SCIPvarGetUbLocal(), sol, solGetArrayVal(), var, and vars.
Referenced by SCIPgetPrimalRayVal(), SCIPsolGetRayVal(), and SCIPsolPrintRay().
| SCIP_Real SCIPsolGetObj | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_PROB * | transprob, | ||
| SCIP_PROB * | origprob ) |
gets objective value of primal CIP solution in transformed problem
| sol | primal CIP solution |
| set | global SCIP settings |
| transprob | tranformed problem data |
| origprob | original problem data |
Definition at line 2261 of file sol.c.
References assert(), NULL, SCIP_Real, SCIPprobInternObjval(), SCIPsolIsOriginal(), and sol.
Referenced by addCurrentSolution(), primalAddSol(), primalExistsSol(), primalSearchSolPos(), SCIPgetSolOrigObj(), SCIPgetSolTransObj(), SCIPprimalAddSol(), SCIPprimalRetransformSolutions(), SCIPprimalUpdateObjoffset(), SCIPprimalUpdateObjoffsetExact(), SCIPprimalUpperboundIsSol(), SCIPprintMIPStart(), SCIPprintSol(), SCIPprintSolutionStatistics(), SCIPprintTransSol(), SCIPsetRelaxSolValsSol(), SCIPsolsAreEqual(), SCIPsolveCIP(), solOfInterest(), solsAreEqualExact(), and sortPrimalSols().
| void SCIPsolGetObjExact | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_PROB * | transprob, | ||
| SCIP_PROB * | origprob, | ||
| SCIP_RATIONAL * | objval ) |
gets objective value of primal CIP solution in transformed problem
gets objective value of exact primal CIP solution in transformed problem
| sol | primal CIP solution |
| set | global SCIP settings |
| transprob | tranformed problem data |
| origprob | original problem data |
| objval | store the result here |
Definition at line 2278 of file sol.c.
References assert(), NULL, objval, SCIPprobInternObjvalExact(), SCIPrationalSetRational(), SCIPsolIsExact(), SCIPsolIsOriginal(), and sol.
Referenced by primalAddSol(), primalAddSolExact(), SCIPgetSolOrigObjExact(), SCIPgetSolTransObjExact(), SCIPprimalUpdateObjoffsetExact(), SCIPprintSolExact(), SCIPsolOverwriteFPSolWithExact(), solOfInterest(), and solsAreEqualExact().
updates primal solutions after a change in a variable's objective value
| sol | primal CIP solution |
| var | problem variable |
| oldobj | old objective value |
| newobj | new objective value |
Definition at line 2297 of file sol.c.
References assert(), newobj, NULL, oldobj, SCIP_Real, SCIP_UNKNOWN, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_LOOSE, SCIPsolIsOriginal(), SCIPvarGetStatus(), sol, solGetArrayVal(), and var.
Referenced by SCIPprimalUpdateVarObj().
| SCIP_RETCODE SCIPsolMarkPartial | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_VAR ** | vars, | ||
| int | nvars ) |
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics |
| vars | problem variables |
| nvars | number of problem variables |
Definition at line 2316 of file sol.c.
References assert(), FALSE, NULL, nvars, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_SOLORIGIN_ORIGINAL, SCIP_SOLORIGIN_PARTIAL, SCIP_UNKNOWN, SCIPboolarraySetVal(), SCIPrealarraySetVal(), SCIPsetAllocBufferArray, SCIPsetFreeBufferArray, SCIPsolGetVal(), SCIPvarGetIndex(), SCIPvarIsTransformed(), SCIPvarMarkNotDeletable(), sol, TRUE, and vars.
Referenced by readSolFile(), and readXmlSolFile().
| SCIP_RETCODE SCIPsolCheckOrig | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_MESSAGEHDLR * | messagehdlr, | ||
| BMS_BLKMEM * | blkmem, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_PRIMAL * | primal, | ||
| SCIP_Bool | printreason, | ||
| SCIP_Bool | completely, | ||
| SCIP_Bool | checkbounds, | ||
| SCIP_Bool | checkintegrality, | ||
| SCIP_Bool | checklprows, | ||
| SCIP_Bool | checkmodifiable, | ||
| SCIP_Bool * | feasible ) |
checks solution for feasibility in original problem without adding it to the solution store
We first check the variable bounds. Then we loop over all constraint handlers and constraints, checking each in the order of their check priority.
| sol | primal CIP solution |
| set | global SCIP settings |
| messagehdlr | message handler |
| blkmem | block memory |
| stat | problem statistics |
| prob | transformed problem data |
| primal | primal data |
| printreason | Should the reason for the violation be printed? |
| completely | Should all violations be checked if printreason is true? |
| checkbounds | Should the bounds of the variables be checked? |
| checkintegrality | Has integrality to be checked? |
| checklprows | Do constraints represented by rows in the current LP have to be checked? |
| checkmodifiable | have modifiable constraint to be checked? |
| feasible | stores whether given solution is feasible |
Definition at line 2505 of file sol.c.
References assert(), c, FALSE, h, SCIP_Prob::nconss, NULL, SCIP_Prob::nvars, SCIP_Prob::origcheckconss, result, SCIP_Bool, SCIP_CALL, SCIP_FEASIBLE, SCIP_OKAY, SCIP_Real, SCIPconsCheck(), SCIPconsGetHdlr(), SCIPconshdlrCheck(), SCIPconshdlrGetCheckPriority(), SCIPconshdlrNeedsCons(), SCIPconsIsChecked(), SCIPconsIsModifiable(), SCIPmessagePrintInfo(), SCIPprimalUpdateViolations(), SCIPprobSortConssCheck(), SCIPrelDiff(), SCIPsetIsFeasGT(), SCIPsetIsFeasLT(), SCIPsolGetVal(), SCIPsolResetViolations(), SCIPsolUpdateBoundViolation(), SCIPvarGetLbOriginal(), SCIPvarGetName(), SCIPvarGetUbOriginal(), sol, solCheckExact(), SCIP_Prob::transformed, TRUE, var, and SCIP_Prob::vars.
Referenced by SCIPcheckSol(), SCIPcheckSolOrig(), SCIPtransformProb(), SCIPtryCurrentSol(), SCIPtrySol(), and SCIPtrySolFree().
| SCIP_RETCODE SCIPsolCheck | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_MESSAGEHDLR * | messagehdlr, | ||
| BMS_BLKMEM * | blkmem, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_Bool | printreason, | ||
| SCIP_Bool | completely, | ||
| SCIP_Bool | checkbounds, | ||
| SCIP_Bool | checkintegrality, | ||
| SCIP_Bool | checklprows, | ||
| SCIP_Bool * | feasible ) |
checks primal CIP solution for feasibility
| sol | primal CIP solution |
| set | global SCIP settings |
| messagehdlr | message handler |
| blkmem | block memory |
| stat | problem statistics |
| prob | transformed problem data |
| printreason | Should all reasons of violations be printed? |
| completely | Should all violations be checked? |
| checkbounds | Should the bounds of the variables be checked? |
| checkintegrality | Has integrality to be checked? |
| checklprows | Do constraints represented by rows in the current LP have to be checked? |
| feasible | stores whether solution is feasible |
Definition at line 2681 of file sol.c.
References assert(), FALSE, h, MAX, NULL, SCIP_Prob::nvars, result, SCIP_Bool, SCIP_CALL, SCIP_FEASIBLE, SCIP_LONGINT_FORMAT, SCIP_OKAY, SCIP_Real, SCIP_UNKNOWN, SCIPconshdlrCheck(), SCIPconshdlrGetName(), SCIPdebugPrintf, SCIPmessagePrintInfo(), SCIPsetDebugMsg, SCIPsetDebugMsgPrint, SCIPsetIsFeasGT(), SCIPsetIsFeasLT(), SCIPsetIsGE(), SCIPsetIsGT(), SCIPsetIsInfinity(), SCIPsetIsLE(), SCIPsetIsLT(), SCIPsolGetVal(), SCIPsolIsOriginal(), SCIPsolResetViolations(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetUbGlobal(), SCIPvarGetUnchangedObj(), sol, solCheckExact(), TRUE, var, and SCIP_Prob::vars.
Referenced by primalAddSol(), SCIPcheckSol(), SCIPprimalTrySol(), SCIPprimalTrySolFree(), SCIPprimalTrySolFreeExact(), and solveNodeLP().
| SCIP_RETCODE SCIPsolRound | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_TREE * | tree, | ||
| SCIP_Bool * | success ) |
try to round given solution
| sol | primal solution |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | transformed problem data |
| tree | branch and bound tree |
| success | pointer to store whether rounding was successful |
Definition at line 2811 of file sol.c.
References assert(), SCIP_Stat::lpcount, mayrounddown, mayroundup, SCIP_Prob::ncontimplvars, SCIP_Prob::ncontvars, NULL, nvars, SCIP_Prob::nvars, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_SOLORIGIN_LPSOL, SCIP_UNKNOWN, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_LOOSE, SCIPboolarrayGetVal(), SCIPsetFeasCeil(), SCIPsetFeasFloor(), SCIPsetIsFeasIntegral(), SCIPsolIsOriginal(), SCIPsolSetVal(), SCIPvarGetIndex(), SCIPvarGetStatus(), SCIPvarGetUnchangedObj(), SCIPvarMayRoundDown(), SCIPvarMayRoundUp(), sol, solGetArrayVal(), SCIP_Prob::transformed, var, and SCIP_Prob::vars.
Referenced by SCIProundSol().
| SCIP_RETCODE SCIPsolMakeExact | ( | SCIP_SOL * | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob ) |
copies the real values to the exact arrays of the solution
| sol | primal solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | transformed problem data |
Definition at line 2884 of file sol.c.
References BMSallocBlockMemory, SCIP_Prob::nvars, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIPboolarrayCreate(), SCIPrationalarrayCreate(), SCIPrationalCreateBlock(), SCIPrationalCreateBuffer(), SCIPrationalFreeBuffer(), SCIPrationalSetReal(), SCIPsolIsExact(), SCIPsolRecomputeInternObjExact(), SCIPsolUnlink(), sol, solGetArrayVal(), solSetArrayValExact(), and SCIP_Prob::vars.
Referenced by checkSolOrig(), checkSolOrigExact(), primalAddSol(), and SCIPmakeSolExact().
| SCIP_RETCODE SCIPsolMakeReal | ( | SCIP_SOL * | sol, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob ) |
approximates and copies the exact values to the real arrays of the solution and frees the exact data
| sol | primal solution |
| blkmem | block memory |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | transformed problem data |
Definition at line 2920 of file sol.c.
References BMSfreeBlockMemory, SCIP_Prob::nvars, SCIP_CALL, SCIP_OKAY, SCIPboolarrayFree(), SCIPrationalarrayFree(), SCIPrationalCreateBuffer(), SCIPrationalFreeBlock(), SCIPrationalFreeBuffer(), SCIPrationalGetReal(), SCIPsolIsExact(), SCIPsolRecomputeObj(), SCIPsolUnlinkExact(), sol, solGetArrayValExact(), solSetArrayVal(), and SCIP_Prob::vars.
Referenced by readSolFile(), and readXmlSolFile().
| void SCIPsolUpdateVarsum | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_Real | weight ) |
updates the solution value sums in variables by adding the value in the given solution
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | transformed problem data |
| weight | weight of solution in weighted average |
Definition at line 2956 of file sol.c.
References assert(), NULL, SCIP_Prob::nvars, SCIP_Var::primsolavg, SCIP_Real, SCIP_UNKNOWN, SCIPsolGetVal(), SCIPsolIsOriginal(), sol, and SCIP_Prob::vars.
Referenced by primalAddSol().
| SCIP_RETCODE SCIPsolRetransform | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | origprob, | ||
| SCIP_PROB * | transprob, | ||
| SCIP_Bool * | hasinfval ) |
retransforms solution to original problem space
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| origprob | original problem |
| transprob | transformed problem |
| hasinfval | pointer to store whether the solution has infinite values |
Definition at line 2984 of file sol.c.
References assert(), FALSE, i, NULL, nvars, SCIP_Prob::nvars, SCIP_Prob::objoffset, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_SOLORIGIN_ORIGINAL, SCIP_SOLORIGIN_ZERO, SCIP_UNKNOWN, SCIPsetAllocBufferArray, SCIPsetFreeBufferArray, SCIPsetInfinity(), SCIPsetIsInfinity(), SCIPsolGetVal(), SCIPsolIsExact(), SCIPsolOverwriteFPSolWithExact(), SCIPsolRetransformExact(), SCIPvarGetActiveRepresentatives(), SCIPvarGetObj(), SCIPvarGetProbindex(), SCIPvarGetUnchangedObj(), sol, solClearArrays(), solSetArrayVal(), SCIP_Prob::transformed, TRUE, SCIP_Prob::vars, and vars.
Referenced by freeTransform(), primalAddSol(), SCIPprimalRetransformSolutions(), SCIPretransformSol(), SCIPsolve(), and SCIPtrySolFreeExact().
| SCIP_RETCODE SCIPsolRetransformExact | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | origprob, | ||
| SCIP_PROB * | transprob, | ||
| SCIP_Bool * | hasinfval ) |
retransforms exact part of solution to original problem space
retransforms exact solution to original problem space
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| origprob | original problem |
| transprob | transformed problem |
| hasinfval | pointer to store whether the solution has infinite values |
Definition at line 3117 of file sol.c.
References assert(), FALSE, i, NULL, nvars, SCIP_Prob::nvars, SCIP_Prob::objoffset, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_SOLORIGIN_ORIGINAL, SCIP_SOLORIGIN_ZERO, SCIPrationalAddProd(), SCIPrationalCreateBuffer(), SCIPrationalCreateBufferArray(), SCIPrationalFreeBuffer(), SCIPrationalFreeBufferArray(), SCIPrationalIsAbsInfinity(), SCIPrationalIsZero(), SCIPrationalSetRational(), SCIPrationalSetReal(), SCIPsetAllocBufferArray, SCIPsetFreeBufferArray, SCIPsolGetValExact(), SCIPsolIsExact(), SCIPvarGetActiveRepresentativesExact(), SCIPvarGetObj(), SCIPvarGetObjExact(), SCIPvarGetProbindex(), SCIPvarGetUnchangedObj(), sol, solClearArrays(), solSetArrayValExact(), SCIP_Prob::transformed, TRUE, SCIP_Prob::vars, and vars.
Referenced by SCIPretransformSolExact(), and SCIPsolRetransform().
recomputes the objective value of an original solution, e.g., when transferring solutions from the solution pool (objective coefficients might have changed in the meantime)
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| origprob | original problem |
Definition at line 3235 of file sol.c.
References assert(), NULL, nvars, SCIP_Prob::nvars, SCIP_Real, SCIP_UNKNOWN, SCIPprobGetObjoffset(), SCIPsetInfinity(), SCIPsetIsInfinity(), SCIPsolGetVal(), SCIPsolIsExact(), SCIPsolIsOriginal(), SCIPvarGetUnchangedObj(), sol, SCIP_Prob::vars, and vars.
Referenced by SCIPrecomputeSolObj(), and SCIPsolMakeReal().
| void SCIPsolRecomputeInternObjExact | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob ) |
recomputes the objective value of an exact solution, e.g., when initialized from a real solution
| sol | primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| prob | scip problem |
Definition at line 3271 of file sol.c.
References assert(), NULL, nvars, SCIP_Prob::nvars, SCIPrationalAddProd(), SCIPrationalCreateBuffer(), SCIPrationalFreeBuffer(), SCIPrationalIsZero(), SCIPrationalSetFraction(), SCIPsolGetValExact(), SCIPsolIsExact(), SCIPvarGetObjExact(), sol, SCIP_Prob::vars, and vars.
Referenced by SCIPrecomputeSolObj(), and SCIPsolMakeExact().
| SCIP_Bool SCIPsolsAreEqual | ( | SCIP_SOL * | sol1, |
| SCIP_SOL * | sol2, | ||
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | origprob, | ||
| SCIP_PROB * | transprob ) |
returns whether the given solutions in transformed space are equal
returns whether the given solutions are equal
| sol1 | first primal CIP solution |
| sol2 | second primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| origprob | original problem |
| transprob | transformed problem after presolve, or NULL if both solution are defined in the original problem space |
Definition at line 3385 of file sol.c.
References assert(), FALSE, NULL, SCIP_Prob::nvars, SCIP_Sol::obj, SCIP_Bool, SCIP_Real, SCIPsetIsEQ(), SCIPsetIsInfinity(), SCIPsolGetObj(), SCIPsolGetVal(), SCIPsolIsOriginal(), solsAreEqualExact(), TRUE, and SCIP_Prob::vars.
Referenced by primalExistsOrigSol(), primalExistsSol(), and SCIPareSolsEqual().
| SCIP_RETCODE SCIPsolPrint | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_MESSAGEHDLR * | messagehdlr, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_PROB * | transprob, | ||
| FILE * | file, | ||
| SCIP_Bool | mipstart, | ||
| SCIP_Bool | printzeros ) |
outputs non-zero elements of solution to file stream
| sol | primal CIP solution |
| set | global SCIP settings |
| messagehdlr | message handler |
| stat | problem statistics data |
| prob | problem data (original or transformed) |
| transprob | transformed problem data or NULL (to display priced variables) |
| file | output file (or NULL for standard output) |
| mipstart | should only discrete variables be printed? |
| printzeros | should variables set to zero be printed? |
Definition at line 3456 of file sol.c.
References assert(), SCIP_Prob::fixedvars, SCIP_Prob::nfixedvars, NULL, SCIP_Prob::nvars, SCIP_Bool, SCIP_OKAY, SCIP_Real, SCIP_SOLORIGIN_PARTIAL, SCIP_UNKNOWN, SCIPmessageFPrintInfo(), SCIPsetIsInfinity(), SCIPsetIsZero(), SCIPsolGetVal(), SCIPsolIsOriginal(), SCIPsolIsPartial(), SCIPvarGetName(), SCIPvarGetUnchangedObj(), SCIPvarIsIntegral(), SCIPvarIsTransformedOrigvar(), sol, SCIP_Prob::transformed, and SCIP_Prob::vars.
Referenced by primalAddSol(), SCIPprintMIPStart(), SCIPprintSol(), SCIPprintTransSol(), and SCIPsolve().
| SCIP_RETCODE SCIPsolPrintExact | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_MESSAGEHDLR * | messagehdlr, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_PROB * | transprob, | ||
| FILE * | file, | ||
| SCIP_Bool | mipstart, | ||
| SCIP_Bool | printzeros ) |
outputs non-zero elements of solution to file stream
outputs non-zero elements of exact solution to file stream
| sol | primal CIP solution |
| set | global SCIP settings |
| messagehdlr | message handler |
| stat | problem statistics data |
| prob | problem data (original or transformed) |
| transprob | transformed problem data or NULL (to display priced variables) |
| file | output file (or NULL for standard output) |
| mipstart | should only discrete variables be printed? |
| printzeros | should variables set to zero be printed? |
Definition at line 3592 of file sol.c.
References assert(), SCIP_Prob::fixedvars, SCIP_Prob::nfixedvars, NULL, SCIP_Prob::nvars, SCIP_Bool, SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIP_SOLORIGIN_ORIGINAL, SCIP_SOLORIGIN_PARTIAL, SCIPmessageFPrintInfo(), SCIPrationalCreateBuffer(), SCIPrationalFreeBuffer(), SCIPrationalIsZero(), SCIPrationalStrLen(), SCIPrationalToString(), SCIPsetAllocBufferArray, SCIPsetFreeBufferArray, SCIPsetReallocBufferArray, SCIPsolGetValExact(), SCIPsolIsExact(), SCIPvarGetName(), SCIPvarGetObjExact(), SCIPvarIsIntegral(), SCIPvarIsTransformedOrigvar(), sol, SCIP_Prob::transformed, and SCIP_Prob::vars.
Referenced by primalAddSolExact(), and SCIPprintSolExact().
| SCIP_RETCODE SCIPsolPrintRay | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_MESSAGEHDLR * | messagehdlr, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | prob, | ||
| SCIP_PROB * | transprob, | ||
| FILE * | file, | ||
| SCIP_Bool | printzeros ) |
outputs non-zero elements of solution representing a ray to file stream
| sol | primal CIP solution |
| set | global SCIP settings |
| messagehdlr | message handler |
| stat | problem statistics data |
| prob | problem data (original or transformed) |
| transprob | transformed problem data or NULL (to display priced variables) |
| file | output file (or NULL for standard output) |
| printzeros | should variables set to zero be printed? |
Definition at line 3781 of file sol.c.
References assert(), SCIP_Prob::fixedvars, SCIP_Prob::nfixedvars, NULL, SCIP_Prob::nvars, SCIP_Bool, SCIP_OKAY, SCIP_Real, SCIP_UNKNOWN, SCIPmessageFPrintInfo(), SCIPsetIsInfinity(), SCIPsetIsZero(), SCIPsolGetRayVal(), SCIPsolIsOriginal(), SCIPvarGetName(), SCIPvarGetUnchangedObj(), SCIPvarIsTransformedOrigvar(), sol, SCIP_Prob::transformed, and SCIP_Prob::vars.
Referenced by SCIPprintRay().
| void SCIPsolSetOrigin | ( | SCIP_SOL * | sol, |
| SCIP_SOLORIGIN | origin ) |
| void SCIPsolResetViolations | ( | SCIP_SOL * | sol | ) |
reset violations of a solution
| sol | primal CIP solution |
Definition at line 3903 of file sol.c.
References assert(), NULL, and sol.
Referenced by checkSolOrig(), checkSolOrigExact(), SCIPsolCheck(), SCIPsolCheckOrig(), SCIPsolCreate(), SCIPsolCreateOriginal(), SCIPsolCreatePartial(), and SCIPsolCreateUnknown().
| void SCIPsolUpdateBoundViolation | ( | SCIP_SOL * | sol, |
| SCIP_Real | absviolbounds, | ||
| SCIP_Real | relviolbounds ) |
update bound violation of a solution
| sol | primal CIP solution |
| absviolbounds | absolute violation of bounds |
| relviolbounds | relative violation of bounds |
Definition at line 3930 of file sol.c.
References assert(), MAX, NULL, SCIP_Real, and sol.
Referenced by SCIPsolCheckOrig(), and SCIPupdateSolBoundViolation().
| void SCIPsolUpdateLPRowViolation | ( | SCIP_SOL * | sol, |
| SCIP_Real | absviollprows, | ||
| SCIP_Real | relviollprows ) |
update LP row violation of a solution
| sol | primal CIP solution |
| absviollprows | absolute violation of LP rows |
| relviollprows | relative violation of LP rows |
Definition at line 3943 of file sol.c.
References assert(), MAX, NULL, SCIP_Real, and sol.
Referenced by SCIPsolUpdateLPConsViolation(), and SCIPupdateSolLPRowViolation().
update constraint violation of a solution
| sol | primal CIP solution |
| absviolcons | absolute violation of constraint |
| relviolcons | relative violation of constraint |
Definition at line 3956 of file sol.c.
References assert(), MAX, NULL, SCIP_Real, and sol.
Referenced by SCIPsolUpdateLPConsViolation(), and SCIPupdateSolConsViolation().
update violation of a constraint that is represented in the LP
| sol | primal CIP solution |
| absviol | absolute violation of constraint |
| relviol | relative violation of constraint |
Definition at line 3969 of file sol.c.
References assert(), NULL, SCIP_Real, SCIPsolUpdateConsViolation(), SCIPsolUpdateLPRowViolation(), and sol.
Referenced by SCIPupdateSolLPConsViolation().
| SCIP_RATIONAL * SCIPsolGetOrigObjExact | ( | SCIP_SOL * | sol | ) |
gets objective value of primal CIP solution which lives in the original problem space
| sol | primal CIP solution |
Definition at line 4196 of file sol.c.
References assert(), NULL, SCIPsolIsExact(), SCIPsolIsOriginal(), and sol.
Referenced by SCIPgetSolOrigObjExact(), SCIPprintSolExact(), and SCIPsolOverwriteFPSolWithExact().
| SCIP_RETCODE SCIPsolOverwriteFPSolWithExact | ( | SCIP_SOL * | sol, |
| SCIP_SET * | set, | ||
| SCIP_STAT * | stat, | ||
| SCIP_PROB * | origprob, | ||
| SCIP_PROB * | transprob, | ||
| SCIP_TREE * | tree ) |
overwrite FP solution with exact values
| sol | exact primal CIP solution |
| set | global SCIP settings |
| stat | problem statistics data |
| origprob | problem data |
| transprob | problem data |
| tree | branch and bound tree, or NULL |
Definition at line 4052 of file sol.c.
References assert(), i, NULL, nvars, SCIP_CALL, SCIP_OKAY, SCIP_R_ROUND_DOWNWARDS, SCIP_R_ROUND_UPWARDS, SCIPprobGetNVars(), SCIPprobGetVars(), SCIPrationalCreateBuffer(), SCIPrationalDebugMessage, SCIPrationalFreeBuffer(), SCIPrationalRoundReal(), SCIPrationalSetRational(), SCIPsolGetObjExact(), SCIPsolGetOrigObjExact(), SCIPsolGetVal(), SCIPsolGetValExact(), SCIPsolIsExact(), SCIPsolIsOriginal(), SCIPsolSetVal(), sol, and vars.
Referenced by primalAddSolExact(), SCIPoverwriteFPsol(), and SCIPsolRetransform().
| SCIP_RETCODE SCIPvalsExactCopy | ( | SCIP_VALSEXACT ** | valsexact, |
| BMS_BLKMEM * | blkmem, | ||
| SCIP_VALSEXACT * | sourcevals ) |
creates a copy of a primal CIP solution
creates a copy of exact solution data
| valsexact | pointer to store the copy of the primal CIP solution |
| blkmem | block memory |
| sourcevals | primal CIP solution to copy |
Definition at line 497 of file sol.c.
References assert(), BMSallocBlockMemory, NULL, SCIP_ValsExact::obj, SCIP_ALLOC, SCIP_CALL, SCIP_OKAY, SCIPboolarrayCopy(), SCIPrationalarrayCopy(), SCIPrationalCopyBlock(), SCIP_ValsExact::valid, and SCIP_ValsExact::vals.
Referenced by SCIPsolCopy().
adds value to the objective value of a given original primal CIP solution
| sol | primal CIP solution |
| addval | offset value to add |
Definition at line 4208 of file sol.c.
References assert(), NULL, SCIP_Real, SCIP_SOLORIGIN_ORIGINAL, and sol.
Referenced by SCIPprimalAddOrigObjoffset().
| int SCIPsolGetPrimalIndex | ( | SCIP_SOL * | sol | ) |
gets current position of solution in array of existing solutions of primal data
| sol | primal CIP solution |
Definition at line 4284 of file sol.c.
References assert(), NULL, and sol.
Referenced by SCIPprimalSolCreated(), and SCIPprimalSolFreed().
| void SCIPsolSetPrimalIndex | ( | SCIP_SOL * | sol, |
| int | primalindex ) |
sets current position of solution in array of existing solutions of primal data
| sol | primal CIP solution |
| primalindex | new primal index of solution |
Definition at line 4294 of file sol.c.
References assert(), NULL, and sol.
Referenced by SCIPprimalSolCreated(), and SCIPprimalSolFreed().