Scippy

SCIP

Solving Constraint Integer Programs

Detailed Description

interface methods for specific exact LP solvers

Author
Daniel Espinoza
Kati Wolter
Marc Pfetsch
Leon Eifler

Definition in file lpiexact.h.

#include "scip/def.h"
#include "blockmemshell/memory.h"
#include "scip/type_retcode.h"
#include "lpiexact/type_lpiexact.h"
#include "scip/rational.h"

Go to the source code of this file.

Functions

Miscellaneous Methods
const char * SCIPlpiExactGetSolverName (void)
 
const char * SCIPlpiExactGetSolverDesc (void)
 
const char * SCIPlpiExactGetExternalCodeName (void)
 
void SCIPlpiExactPrintInfo (SCIP_LPIEXACT *lpi)
 
const char * SCIPlpiExactGetExternalCodeDesc (void)
 
void * SCIPlpiExactGetSolverPointer (SCIP_LPIEXACT *lpi)
 
LPI Creation and Destruction Methods
void SCIPlpiExactStart (void)
 
void SCIPlpiExactEnd (void)
 
SCIP_RETCODE SCIPlpiExactCreate (SCIP_LPIEXACT **lpi, SCIP_MESSAGEHDLR *messagehdlr, const char *name, SCIP_OBJSEN objsen)
 
SCIP_RETCODE SCIPlpiExactFree (SCIP_LPIEXACT **lpi)
 
Modification Methods
SCIP_RETCODE SCIPlpiExactLoadColLP (SCIP_LPIEXACT *lpi, SCIP_OBJSEN objsen, int ncols, SCIP_RATIONAL **obj, SCIP_RATIONAL **lb, SCIP_RATIONAL **ub, char **colnames, int nrows, SCIP_RATIONAL **lhs, SCIP_RATIONAL **rhs, char **rownames, int nnonz, int *beg, int *ind, SCIP_RATIONAL **val)
 
SCIP_RETCODE SCIPlpiExactAddCols (SCIP_LPIEXACT *lpi, int ncols, SCIP_RATIONAL **obj, SCIP_RATIONAL **lb, SCIP_RATIONAL **ub, char **colnames, int nnonz, int *beg, int *ind, SCIP_RATIONAL **val)
 
SCIP_RETCODE SCIPlpiExactDelCols (SCIP_LPIEXACT *lpi, int firstcol, int lastcol)
 
SCIP_RETCODE SCIPlpiExactDelColset (SCIP_LPIEXACT *lpi, int *dstat)
 
SCIP_RETCODE SCIPlpiExactAddRows (SCIP_LPIEXACT *lpi, int nrows, SCIP_RATIONAL **lhs, SCIP_RATIONAL **rhs, char **rownames, int nnonz, int *beg, int *ind, SCIP_RATIONAL **val)
 
SCIP_RETCODE SCIPlpiExactDelRows (SCIP_LPIEXACT *lpi, int firstrow, int lastrow)
 
SCIP_RETCODE SCIPlpiExactDelRowset (SCIP_LPIEXACT *lpi, int *dstat)
 
SCIP_RETCODE SCIPlpiExactClear (SCIP_LPIEXACT *lpi)
 
SCIP_RETCODE SCIPlpiExactChgBounds (SCIP_LPIEXACT *lpi, int ncols, int *ind, SCIP_RATIONAL **lb, SCIP_RATIONAL **ub)
 
SCIP_RETCODE SCIPlpiExactChgSides (SCIP_LPIEXACT *lpi, int nrows, int *ind, SCIP_RATIONAL **lhs, SCIP_RATIONAL **rhs)
 
SCIP_RETCODE SCIPlpiExactChgCoef (SCIP_LPIEXACT *lpi, int row, int col, SCIP_RATIONAL *newval)
 
SCIP_RETCODE SCIPlpiExactChgObjsen (SCIP_LPIEXACT *lpi, SCIP_OBJSEN objsen)
 
SCIP_RETCODE SCIPlpiExactChgObj (SCIP_LPIEXACT *lpi, int ncols, int *ind, SCIP_RATIONAL **obj)
 
SCIP_RETCODE SCIPlpiExactScaleRow (SCIP_LPIEXACT *lpi, int row, SCIP_RATIONAL *scaleval)
 
SCIP_RETCODE SCIPlpiExactScaleCol (SCIP_LPIEXACT *lpi, int col, SCIP_RATIONAL *scaleval)
 
Data Accessing Methods
SCIP_RETCODE SCIPlpiExactGetNRows (SCIP_LPIEXACT *lpi, int *nrows)
 
SCIP_RETCODE SCIPlpiExactGetNCols (SCIP_LPIEXACT *lpi, int *ncols)
 
SCIP_RETCODE SCIPlpiExactGetObjsen (SCIP_LPIEXACT *lpi, SCIP_OBJSEN *objsen)
 
SCIP_RETCODE SCIPlpiExactGetNNonz (SCIP_LPIEXACT *lpi, int *nnonz)
 
SCIP_RETCODE SCIPlpiExactGetCols (SCIP_LPIEXACT *lpi, int firstcol, int lastcol, SCIP_RATIONAL **lb, SCIP_RATIONAL **ub, int *nnonz, int *beg, int *ind, SCIP_RATIONAL **val)
 
SCIP_RETCODE SCIPlpiExactGetRows (SCIP_LPIEXACT *lpi, int firstrow, int lastrow, SCIP_RATIONAL **lhs, SCIP_RATIONAL **rhs, int *nnonz, int *beg, int *ind, SCIP_RATIONAL **val)
 
SCIP_RETCODE SCIPlpiExactGetColNames (SCIP_LPIEXACT *lpi, int firstcol, int lastcol, char **colnames, char *namestorage, int namestoragesize, int *storageleft)
 
SCIP_RETCODE SCIPlpiExactGetRowNames (SCIP_LPIEXACT *lpi, int firstrow, int lastrow, char **rownames, char *namestorage, int namestoragesize, int *storageleft)
 
SCIP_RETCODE SCIPlpiExactGetObj (SCIP_LPIEXACT *lpi, int firstcol, int lastcol, SCIP_RATIONAL **vals)
 
SCIP_RETCODE SCIPlpiExactGetBounds (SCIP_LPIEXACT *lpi, int firstcol, int lastcol, SCIP_RATIONAL **lbs, SCIP_RATIONAL **ubs)
 
SCIP_RETCODE SCIPlpiExactGetSides (SCIP_LPIEXACT *lpi, int firstrow, int lastrow, SCIP_RATIONAL **lhss, SCIP_RATIONAL **rhss)
 
SCIP_RETCODE SCIPlpiExactGetCoef (SCIP_LPIEXACT *lpi, int row, int col, SCIP_RATIONAL *val)
 
Solving Methods
SCIP_RETCODE SCIPlpiExactSolvePrimal (SCIP_LPIEXACT *lpi)
 
SCIP_RETCODE SCIPlpiExactSolveDual (SCIP_LPIEXACT *lpi)
 
SCIP_RETCODE SCIPlpiExactSolveBarrier (SCIP_LPIEXACT *lpi, SCIP_Bool crossover)
 
SCIP_RETCODE SCIPlpiExactStartStrongbranch (SCIP_LPIEXACT *lpi)
 
SCIP_RETCODE SCIPlpiExactEndStrongbranch (SCIP_LPIEXACT *lpi)
 
SCIP_RETCODE SCIPlpiExactStrongbranch (SCIP_LPIEXACT *lpi, int col, const SCIP_RATIONAL *psol, int itlim, SCIP_RATIONAL *down, SCIP_RATIONAL *up, SCIP_Bool *downvalid, SCIP_Bool *upvalid, int *iter)
 
Solution Information Methods
SCIP_Bool SCIPlpiExactWasSolved (SCIP_LPIEXACT *lpi)
 
SCIP_RETCODE SCIPlpiExactGetSolFeasibility (SCIP_LPIEXACT *lpi, SCIP_Bool *primalfeasible, SCIP_Bool *dualfeasible)
 
SCIP_Bool SCIPlpiExactExistsPrimalRay (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactHasPrimalRay (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsPrimalUnbounded (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsPrimalInfeasible (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsPrimalFeasible (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactExistsDualRay (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactHasDualRay (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsDualUnbounded (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsDualInfeasible (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsDualFeasible (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsOptimal (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsStable (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsObjlimExc (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsIterlimExc (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsTimelimExc (SCIP_LPIEXACT *lpi)
 
int SCIPlpiExactGetInternalStatus (SCIP_LPIEXACT *lpi)
 
SCIP_RETCODE SCIPlpiExactIgnoreInstability (SCIP_LPIEXACT *lpi, SCIP_Bool *success)
 
SCIP_RETCODE SCIPlpiExactGetObjval (SCIP_LPIEXACT *lpi, SCIP_RATIONAL *objval)
 
SCIP_RETCODE SCIPlpiExactGetSol (SCIP_LPIEXACT *lpi, SCIP_RATIONAL *objval, SCIP_RATIONAL **primsol, SCIP_RATIONAL **dualsol, SCIP_RATIONAL **activity, SCIP_RATIONAL **redcost)
 
SCIP_RETCODE SCIPlpiExactGetPrimalRay (SCIP_LPIEXACT *lpi, SCIP_RATIONAL **ray)
 
SCIP_RETCODE SCIPlpiExactGetDualfarkas (SCIP_LPIEXACT *lpi, SCIP_RATIONAL **dualfarkas)
 
SCIP_RETCODE SCIPlpiExactGetIterations (SCIP_LPIEXACT *lpi, int *iterations)
 
LP Basis Methods
SCIP_RETCODE SCIPlpiExactGetBase (SCIP_LPIEXACT *lpi, int *cstat, int *rstat)
 
SCIP_RETCODE SCIPlpiExactSetBase (SCIP_LPIEXACT *lpi, int *cstat, int *rstat)
 
SCIP_RETCODE SCIPlpiExactGetBasisInd (SCIP_LPIEXACT *lpi, int *bind)
 
SCIP_RETCODE SCIPlpiExactGetBInvRow (SCIP_LPIEXACT *lpi, int r, SCIP_RATIONAL **coef, int *inds, int *ninds)
 
SCIP_RETCODE SCIPlpiExactGetBInvCol (SCIP_LPIEXACT *lpi, int c, SCIP_RATIONAL **coef, int *inds, int *ninds)
 
SCIP_RETCODE SCIPlpiExactGetBInvARow (SCIP_LPIEXACT *lpi, int r, SCIP_RATIONAL **binvrow, SCIP_RATIONAL **coef, int *inds, int *ninds)
 
SCIP_RETCODE SCIPlpiExactGetBInvACol (SCIP_LPIEXACT *lpi, int c, SCIP_RATIONAL **coef, int *inds, int *ninds)
 
LPi State Methods
SCIP_RETCODE SCIPlpiExactGetState (SCIP_LPIEXACT *lpi, BMS_BLKMEM *blkmem, SCIP_LPISTATE **lpistate)
 
SCIP_RETCODE SCIPlpiExactSetState (SCIP_LPIEXACT *lpi, BMS_BLKMEM *blkmem, SCIP_LPISTATE *lpistate)
 
SCIP_RETCODE SCIPlpiExactClearState (SCIP_LPIEXACT *lpi)
 
SCIP_RETCODE SCIPlpiExactFreeState (SCIP_LPIEXACT *lpi, BMS_BLKMEM *blkmem, SCIP_LPISTATE **lpistate)
 
SCIP_Bool SCIPlpiExactHasStateBasis (SCIP_LPIEXACT *lpi, SCIP_LPISTATE *lpistate)
 
SCIP_RETCODE SCIPlpiExactReadState (SCIP_LPIEXACT *lpi, const char *fname)
 
SCIP_RETCODE SCIPlpiExactWriteState (SCIP_LPIEXACT *lpi, const char *fname)
 
SCIP_RETCODE SCIPlpiExactStateDualFeasible (SCIP_LPIEXACT *lpi, BMS_BLKMEM *blkmem, SCIP_LPISTATE *lpistate, SCIP_Bool useprestep, SCIP_Real *primalsol, SCIP_Real *dualsol, SCIP_Bool *result, SCIP_RATIONAL **dualobjval)
 
LPi Pricing Norms Methods
SCIP_RETCODE SCIPlpiExactGetNorms (SCIP_LPIEXACT *lpi, BMS_BLKMEM *blkmem, SCIP_LPINORMS **lpinorms)
 
SCIP_RETCODE SCIPlpiExactSetNorms (SCIP_LPIEXACT *lpi, BMS_BLKMEM *blkmem, const SCIP_LPINORMS *lpinorms)
 
SCIP_RETCODE SCIPlpiExactFreeNorms (SCIP_LPIEXACT *lpi, BMS_BLKMEM *blkmem, SCIP_LPINORMS **lpinorms)
 
Parameter Methods
SCIP_RETCODE SCIPlpiExactGetIntpar (SCIP_LPIEXACT *lpi, SCIP_LPPARAM type, int *ival)
 
SCIP_RETCODE SCIPlpiExactSetIntpar (SCIP_LPIEXACT *lpi, SCIP_LPPARAM type, int ival)
 
SCIP_RETCODE SCIPlpiExactGetRealpar (SCIP_LPIEXACT *lpi, SCIP_LPPARAM type, SCIP_Real *dval)
 
SCIP_RETCODE SCIPlpiExactSetRealpar (SCIP_LPIEXACT *lpi, SCIP_LPPARAM type, SCIP_Real dval)
 
Numerical Methods
void SCIPlpiExactPosInfinity (SCIP_LPIEXACT *lpi, SCIP_RATIONAL *infval)
 
SCIP_Bool SCIPlpiExactIsPosInfinity (SCIP_LPIEXACT *lpi, SCIP_RATIONAL *val)
 
void SCIPlpiExactNegInfinity (SCIP_LPIEXACT *lpi, SCIP_RATIONAL *infval)
 
SCIP_Bool SCIPlpiExactIsNegInfinity (SCIP_LPIEXACT *lpi, SCIP_RATIONAL *val)
 
SCIP_Real SCIPlpiExactInfinity (SCIP_LPIEXACT *lpi)
 
SCIP_Bool SCIPlpiExactIsInfinity (SCIP_LPIEXACT *lpi, SCIP_Real val)
 
File Interface Methods
SCIP_RETCODE SCIPlpiExactReadLP (SCIP_LPIEXACT *lpi, const char *fname)
 
SCIP_RETCODE SCIPlpiExactWriteLP (SCIP_LPIEXACT *lpi, const char *fname)
 
Exact LU decomposition solver interface
SCIP_RETCODE SCIPlpiExactCreateFactor (SCIP_LPIEXACT *lpi, int dim, int *cbeg, int *clen, int *cindx, SCIP_RATIONAL *ccoef)
 
SCIP_RETCODE SCIPlpiExactFactorSolve (SCIP_LPIEXACT *lpi, int dim, SCIP_RATIONAL *sol, SCIP_RATIONAL *rhs)