spxsolver.h
Go to the documentation of this file.
37 #define HYPERPRICINGTHRESHOLD 5000 /**< do (auto) hyper pricing only if problem size (cols+rows) is larger than HYPERPRICINGTHRESHOLD */ 41 #define SPARSITY_TRADEOFF 0.8 /**< threshold to decide whether Ids or coIds are preferred to enter the basis; 44 #define MAXNCLCKSKIPS 32 /**< maximum number of clock skips (iterations without time measuring) */ 45 #define SAFETYFACTOR 1e-2 /**< the probability to skip the clock when the time limit has been reached */ 46 #define NINITCALLS 200 /**< the number of clock updates in isTimelimitReached() before clock skipping starts */ 48 { 107 }; 182 UNDEFINED ///< nothing known about basis status (possibly due to a singular basis in transformed problem) 183 }; 208 }; 246 SSVector* solveVector2; ///< when 2 systems are to be solved at a time; typically for speepest edge weights 247 SSVector* solveVector2rhs; ///< when 2 systems are to be solved at a time; typically for speepest edge weights 248 SSVector* solveVector3; ///< when 3 systems are to be solved at a time; typically reserved for bound flipping ratio test (basic solution will be modified!) 249 SSVector* solveVector3rhs; ///< when 3 systems are to be solved at a time; typically reserved for bound flipping ratio test (basic solution will be modified!) 250 SSVector* coSolveVector2; ///< when 2 systems are to be solved at a time; typically for speepest edge weights 251 SSVector* coSolveVector2rhs; ///< when 2 systems are to be solved at a time; typically for speepest edge weights 252 SSVector* coSolveVector3; ///< when 3 systems are to be solved at a time; typically reserved for bound flipping ratio test (basic solution will be modified!) 253 SSVector* coSolveVector3rhs; ///< when 3 systems are to be solved at a time; typically reserved for bound flipping ratio test (basic solution will be modified!) 352 /** For the leaving Simplex algorithm this vector contains the indices of infeasible basic variables; 353 * for the entering Simplex algorithm this vector contains the indices of infeasible slack variables. 356 /**For the entering Simplex algorithm these vectors contains the indices of infeasible basic variables. 360 /// store indices that were changed in the previous iteration and must be checked in hyper pricing 368 DataArray<int> isInfeasible; ///< 0: index not violated, 1: index violated, 2: index violated and among candidate list 369 DataArray<int> isInfeasibleCo; ///< 0: index not violated, 1: index violated, 2: index violated and among candidate list 373 bool sparsePricingEnter; ///< true if sparsePricing is turned on in the entering Simplex for slack variables 378 int remainingRoundsLeave; ///< number of dense rounds/refactorizations until sparsePricing is enabled again 387 spxout = &newOutstream; 466 /// setup linear solver to use. If \p destroy is true, \p slusolver will be freed in destructor. 472 /// setup starting basis generator to use. If \p destroy is true, \p starter will be freed in destructor. 481 /// set \ref soplex::SPxSolver::LEAVE "LEAVE" or \ref soplex::SPxSolver::ENTER "ENTER" algorithm. 483 /// set \ref soplex::SPxSolver::FULL "FULL" or \ref soplex::SPxSolver::PARTIAL "PARTIAL" pricing. 507 * LP is written in MPS format to "\p filename".mps, basis is written in "\p filename".bas, and parameters 508 * are written to "\p filename".set. If \p rowNames and \p colNames are \c NULL, default names are used for 512 const NameSet* rowNames = NULL, const NameSet* colNames = NULL, const bool cpxFormat = false) const; 545 m_nonbasicValue = 0.0; 675 assert(m_entertol > 0.0); 682 assert(m_leavetol > 0.0); 689 assert(m_entertol > 0.0); 697 assert(m_entertol > 0.0); 702 /// guaranteed primal and dual bound violation for optimal solution, returning the maximum of feastol() and opttol(), i.e., the less tight tolerance. 705 assert(m_entertol > 0.0); 732 displayFreq = freq; 737 sparsePricingFactor = fac; 869 { 901 { 923 { 1400 /// compute and return \ref soplex::SPxSolver::test() "test()"[i] in \ref soplex::SPxSolver::ENTER "ENTER"ing Simplex. 1603 /// check for violations above tol and immediately return false w/o checking the remaining values 1604 /** This method is useful for verifying whether an objective limit can be used as termination criterion 1888 Status getBasis(VarStatus rows[], VarStatus cols[], const int rowsSize = -1, const int colsSize = -1) const; 1922 theCumulativeTime = 0.0; 1956 /// returns whether current time limit is reached; call to time() may be skipped unless \p forceCheck is true 2009 std::stringstream s; 2011 << "Solution time : " << std::setw(10) << std::fixed << std::setprecision(2) << time() << std::endl
Random numbers. virtual void changeRow(SPxRowId p_id, const LPRow &p_newRow) Definition: spxsolver.h:909 virtual Status getPrimal(Vector &vector) const get solution vector for primal variables. Definition: spxsolve.cpp:1219 Bound flipping ratio test ("long step dual") for SoPlex.Class SPxBoundFlippingRT provides an implemen... Definition: spxboundflippingrt.h:51 virtual void changeMaxObj(const Vector &newObj) Definition: changesoplex.cpp:685 virtual void rejectLeave(int leaveNum, SPxId leaveId, SPxBasis::Desc::Status leaveStat, const SVector *newVec=0) Definition: leave.cpp:581 int nClckSkipsLeft remaining number of times the clock can be safely skipped Definition: spxsolver.h:227 virtual void changeRhs(SPxRowId p_id, const Real &p_newRhs) Definition: spxsolver.h:892 DIdxSet updateViols store indices that were changed in the previous iteration and must be checked in hyper pricing ... Definition: spxsolver.h:363 virtual void changeCol(int i, const LPCol &newCol) Definition: changesoplex.cpp:1204 virtual void qualRedCostViolation(Real &maxviol, Real &sumviol) const get violation of optimality criterion. Definition: spxquality.cpp:118 SPxBasis::Desc::Status varStatus(int i) const Status of i 'th variable. Definition: spxsolver.h:1112 const LPRowSetBase< Real > * lprowset() const Returns the LP as an LPRowSetBase. Definition: spxlpbase.h:1848 void setBasis(const VarStatus rows[], const VarStatus cols[]) set the lp solver's basis. Definition: spxsolver.cpp:1795 int dualIterations() return number of iterations done with primal algorithm Definition: spxsolver.h:1947 virtual void rejectEnter(SPxId enterId, Real enterTest, SPxBasis::Desc::Status enterStat) Definition: enter.cpp:1033 bool isValid() const returns TRUE iff the id is a valid column or row identifier. Definition: spxid.h:150 SSVector * solveVector3 when 3 systems are to be solved at a time; typically reserved for bound flipping ratio test (basic so... Definition: spxsolver.h:250 virtual void changeRowObj(SPxRowId p_id, const Real &p_newVal) Definition: spxsolver.h:832 virtual void changeMaxObj(SPxColId p_id, const Real &p_newVal) Definition: spxsolver.h:823 virtual void setStarter(SPxStarter *starter, const bool destroy=false) setup starting basis generator to use. If destroy is true, starter will be freed in destructor... Definition: spxsolver.cpp:154 virtual void reDim() reset dimensions of vectors according to loaded LP. Definition: spxsolver.cpp:446 virtual Status getRedCost(Vector &vector) const get vector of reduced costs. Definition: spxsolve.cpp:1299 void computePrimalray4Row(Real direction) Definition: leave.cpp:622 virtual Real time() const =0 bool sparsePricingEnterCo true if sparsePricing is turned on in the entering Simplex Definition: spxsolver.h:376 int number(const SPxRowId &id) const Returns the row number of the row with identifier id. Definition: spxlpbase.h:450 void localAddCols(int start) void computePrimalray4Col(Real direction, SPxId enterId) Definition: enter.cpp:1053 SPxBasis::Desc::Status varStatusToBasisStatusRow(int row, VarStatus stat) const converts VarStatus to basis status for rows Definition: spxsolver.cpp:1587 DataArray< int > isInfeasible 0: index not violated, 1: index violated, 2: index violated and among candidate list ... Definition: spxsolver.h:370 Safe arrays of arbitrary types.Class Array provides safe arrays of arbitrary type. Array elements are accessed just like ordinary C++ array elements by means of the index operator[](). Safety is provided by. Definition: array.h:62 void getNdualNorms(int &nnormsRow, int &nnormsCol) const get number of dual norms Definition: spxsolver.cpp:1814 virtual void qualSlackViolation(Real &maxviol, Real &sumviol) const get the residuum |Ax-b|. Definition: spxquality.cpp:89 Abstract ratio test base class.Class SPxRatioTester is the virtual base class for computing the ratio... Definition: spxratiotester.h:40 virtual void changeRhs(const Vector &newRhs) Definition: changesoplex.cpp:1129 SoPlex start basis generation base class.SPxStarter is the virtual base class for classes generating ... Definition: spxstarter.h:41 void setup4solve(SSVector *p_y, SSVector *p_rhs) Setup vectors to be solved within Simplex loop. Definition: spxsolver.h:1549 Real sparsePricingFactor enable sparse pricing when viols < factor * dim() Definition: spxsolver.h:277 LP has been proven to be primal infeasible. Definition: spxsolver.h:208 void setLeaveBound4Col(int i, int n) Definition: spxbounds.cpp:260 SSVector * solveVector2rhs when 2 systems are to be solved at a time; typically for speepest edge weights Definition: spxsolver.h:249 bool isTimeLimitReached(const bool forceCheck=false) returns whether current time limit is reached; call to time() may be skipped unless forceCheck is tru... Definition: spxsolver.cpp:1503 Ids for LP columns.Class SPxColId provides DataKeys for the column indices of an SPxLP. Definition: spxid.h:36 void setSparsePricingFactor(Real fac) Definition: spxsolver.h:737 virtual void changeElement(int i, int j, const Real &val) Definition: changesoplex.cpp:1217 virtual void changeRowObj(const Vector &newObj) Definition: changesoplex.cpp:709 bool freeRatioTester true iff theratiotester should be freed inside of object Definition: spxsolver.h:258 Sparse Linear Solver virtual base class.Class SLinSolver provides a class for solving sparse linear s... Definition: slinsolver.h:43 virtual bool readBasisFile(const char *filename, const NameSet *rowNames, const NameSet *colNames) Definition: spxfileio.cpp:24 bool setDualNorms(int nnormsRow, int nnormsCol, Real *norms) set dual norms Definition: spxsolver.cpp:1826 Real opttol() const allowed optimality, i.e., dual feasibility tolerance. Definition: spxsolver.h:697 TimerFactory class. SPxSolver(Type type=LEAVE, Representation rep=ROW, Timer::TYPE ttype=Timer::USER_TIME) default constructor. Definition: spxsolver.cpp:949 std::string statistics() const returns statistical information in form of a string. Definition: spxbasis.h:859 virtual void setSolver(SLinSolver *slu, const bool destroy=false) setup linear solver to use. If destroy is true, slusolver will be freed in destructor. Definition: spxsolver.cpp:83 Real delta() const guaranteed primal and dual bound violation for optimal solution, returning the maximum of feastol() a... Definition: spxsolver.h:705 virtual void changeLower(const Vector &newLower) Definition: changesoplex.cpp:805 virtual void changeObj(SPxColId p_id, const Real &p_newVal) Definition: spxsolver.h:814 Generic Ids for LP rows or columns.Both SPxColIds and SPxRowIds may be treated uniformly as SPxIds: ... Definition: spxid.h:85 int remainingRoundsLeave number of dense rounds/refactorizations until sparsePricing is enabled again Definition: spxsolver.h:380 const SPxRatioTester * ratiotester() const return loaded SPxRatioTester. Definition: spxsolver.h:1636 Fast shifting ratio test.Class SPxFastRT is an implementation class of SPxRatioTester providing fast ... Definition: spxfastrt.h:41 virtual void printDisplayLine(const bool force=false) print display line of flying table Definition: spxsolve.cpp:1077 Real m_entertol feasibility tolerance maintained during entering algorithm Definition: spxsolver.h:240 virtual void changeLhsStatus(int i, Real newLhs, Real oldLhs=0.0) Definition: changesoplex.cpp:956 void clearDualBounds(SPxBasis::Desc::Status, Real &, Real &) const Definition: spxbounds.cpp:76 nothing known about basis status (possibly due to a singular basis in transformed problem) ... Definition: spxsolver.h:184 SSVector * solveVector3rhs when 3 systems are to be solved at a time; typically reserved for bound flipping ratio test (basic so... Definition: spxsolver.h:251 bool m_pricingViolCoUpToDate true, if the stored violation in coDim is up to date Definition: spxsolver.h:238 virtual void changeRange(const Vector &newLhs, const Vector &newRhs) Definition: changesoplex.cpp:1160 VarStatus getBasisRowStatus(int row) const gets basis status for a single row Definition: spxsolver.cpp:1710 SSVector * coSolveVector3 when 3 systems are to be solved at a time; typically reserved for bound flipping ratio test (basic so... Definition: spxsolver.h:254 virtual Status getDual(Vector &vector) const get current solution vector for dual variables. Definition: spxsolve.cpp:1268 void localAddRows(int start) virtual void doRemoveCols(int perm[]) Definition: changesoplex.cpp:595 int subversion() const return the internal subversion of SPxSolver as number Definition: spxsolver.h:401 virtual const SVector * enterVector(const SPxId &p_id) Get pointer to the id 'th vector. Definition: spxsolver.h:1751 Dense vector with semi-sparse vector for updates. std::ostream & operator<<(std::ostream &s, const VectorBase< R > &vec) Output operator. Definition: basevectors.h:1087 Status getBasis(VarStatus rows[], VarStatus cols[], const int rowsSize=-1, const int colsSize=-1) const get current basis, and return solver status. Definition: spxsolver.cpp:1722 Real cumulativeTime() const cumulative time spent in all calls to method solve(). Definition: spxsolver.h:1963 virtual Status getPrimalray(Vector &vector) const get primal ray in case of unboundedness. Definition: spxsolve.cpp:1342 virtual void setPricer(SPxPricer *pricer, const bool destroy=false) setup pricer to use. If destroy is true, pricer will be freed in destructor. Definition: spxsolver.cpp:101 VarStatus getBasisColStatus(int col) const gets basis status for a single column Definition: spxsolver.cpp:1716 virtual void changeSense(SPxSense sns) Definition: changesoplex.cpp:1230 void computeEnterCoPrhs4Col(int i, int n) Definition: spxvecs.cpp:367 Wrapper for several output streams. A verbosity level is used to decide which stream to use and wheth... Definition: spxout.h:63 virtual void changeLhs(const Vector &newLhs) Definition: changesoplex.cpp:1026 static Timer * switchTimer(Timer *timer, Timer::TYPE ttype) Definition: timerfactory.h:66 Abstract pricer base class.Class SPxPricer is a pure virtual class defining the interface for pricer ... Definition: spxpricer.h:46 void shiftPvec() Perform initial shifting to optain an feasible or pricable basis. Definition: spxshift.cpp:78 Dense vector with semi-sparse vector for updatesIn many algorithms vectors are updated in every itera... Definition: updatevector.h:53 SSVector * coSolveVector3rhs when 3 systems are to be solved at a time; typically reserved for bound flipping ratio test (basic so... Definition: spxsolver.h:255 virtual void qualBoundViolation(Real &maxviol, Real &sumviol) const get violations of bounds. Definition: spxquality.cpp:60 bool updateNonbasicValue(Real objChange) Definition: spxsolver.cpp:886 Dynamic index set.Class DIdxSet provides dynamic IdxSet in the sense, that no restrictions are posed ... Definition: didxset.h:42 virtual void ungetEnterVal(SPxId enterId, SPxBasis::Desc::Status enterStat, Real leaveVal, const SVector &vec, Real &objChange) Definition: enter.cpp:978 bool sparsePricingEnter true if sparsePricing is turned on in the entering Simplex for slack variables Definition: spxsolver.h:375 virtual void getLeaveVals2(Real leaveMax, SPxId enterId, Real &enterBound, Real &newUBbound, Real &newLBbound, Real &newCoPrhs, Real &objChange) Definition: leave.cpp:364 SPxBasis::Desc::Status covarStatus(int i) const Status of i 'th covariable. Definition: spxsolver.h:1118 Real entertol() const feasibility tolerance maintained by ratio test during ENTER algorithm. Definition: spxsolver.h:675 void setup4coSolve(SSVector *p_y, SSVector *p_rhs) Setup vectors to be cosolved within Simplex loop. Definition: spxsolver.h:1577 virtual void changeLowerStatus(int i, Real newLower, Real oldLower=0.0) Definition: changesoplex.cpp:733 virtual bool writeBasisFile(const char *filename, const NameSet *rowNames, const NameSet *colNames, const bool cpxFormat=false) const Definition: spxfileio.cpp:39 Real m_leavetol feasibility tolerance maintained during leaving algorithm Definition: spxsolver.h:241 (In)equality for LPs.Class LPRowBase provides constraints for linear programs in the form where a is... Definition: lprowbase.h:45 Real m_pricingViolCo maximal feasibility violation of current solution in coDim Definition: spxsolver.h:237 virtual void changeRhsStatus(int i, Real newRhs, Real oldRhs=0.0) Definition: changesoplex.cpp:1058 void computeDualfarkas4Col(Real direction) Definition: leave.cpp:633 Debugging, floating point type and parameter definitions. Simplex basis.Consider the linear program as provided from class SPxLP: where , and ... Definition: spxbasis.h:82 Set of strings.Class NameSet implements a symbol or name table. It allows to store or remove names (i... Definition: nameset.h:61 Simplex basis. Status getResult(Real *value=0, Vector *primal=0, Vector *slacks=0, Vector *dual=0, Vector *reduCost=0) get all results of last solve. Definition: spxsolve.cpp:1582 Sequential object-oriented SimPlex.SPxSolver is an LP solver class using the revised Simplex algorith... Definition: spxsolver.h:84 virtual void getLeaveVals(int i, SPxBasis::Desc::Status &leaveStat, SPxId &leaveId, Real &leaveMax, Real &leavebound, int &leaveNum, Real &objChange) Definition: leave.cpp:184 SSVector * solveVector2 when 2 systems are to be solved at a time; typically for speepest edge weights Definition: spxsolver.h:248 SPxBasis::Desc::Status varStatusToBasisStatusCol(int col, VarStatus stat) const converts VarStatus to basis status for columns Definition: spxsolver.cpp:1646 void perturbMin(const UpdateVector &vec, Vector &low, Vector &up, Real eps, Real delta, int start=0, int incr=1) Definition: spxshift.cpp:148 virtual void setTerminationIter(int iteration=-1) set iteration limit. Definition: spxsolver.cpp:1490 virtual bool precisionReached(Real &newpricertol) const is the solution precise enough, or should we increase delta() ? Definition: spxsolve.cpp:37 void computeLeaveCoPrhs4Col(int i, int n) Definition: spxvecs.cpp:448 virtual bool read(std::istream &in, NameSet *rowNames=0, NameSet *colNames=0, DIdxSet *intVars=0) read LP from input stream. Definition: spxsolver.cpp:31 void computeEnterCoPrhs4Row(int i, int n) Definition: spxvecs.cpp:336 Everything should be within this namespace. Timer class. bool isBasisValid(DataArray< VarStatus > rows, DataArray< VarStatus > cols) check a given basis for validity. Definition: spxsolver.cpp:1741 void computeLeaveCoPrhs4Row(int i, int n) Definition: spxvecs.cpp:419 Real theCumulativeTime cumulative time spent in all calls to method solve() Definition: spxsolver.h:224 virtual void setTester(SPxRatioTester *tester, const bool destroy=false) setup ratio-tester to use. If destroy is true, tester will be freed in destructor. Definition: spxsolver.cpp:128 SSVector * coSolveVector2rhs when 2 systems are to be solved at a time; typically for speepest edge weights Definition: spxsolver.h:253 virtual void changeRow(int i, const LPRow &newRow) Definition: changesoplex.cpp:1194 virtual void changeLower(SPxColId p_id, const Real &p_newLower) Definition: spxsolver.h:849 solve() aborted due to detection of cycling. Definition: spxsolver.h:197 virtual void changeBounds(const Vector &newLower, const Vector &newUpper) Definition: changesoplex.cpp:942 virtual void clearRowObjs() Clears row objective function values for all rows. Definition: spxlpbase.h:1450 int maxCycle() const maximum number of degenerate simplex steps before we detect cycling. Definition: spxsolver.h:755 Save arrays of arbitrary types. VarStatus basisStatusToVarStatus(SPxBasis::Desc::Status stat) const converts basis status to VarStatus Definition: spxsolver.cpp:1553 bool isBasic(const SPxRowId &rid) const is the rid 'th vector basic ? Definition: spxsolver.h:1139 Sparse vector . Saving LPs in a form suitable for SoPlex. virtual void changeCol(SPxColId p_id, const LPCol &p_newCol) Definition: spxsolver.h:916 virtual Status getSlacks(Vector &vector) const get vector of slack variables. Definition: spxsolve.cpp:1378 virtual void changeUpperStatus(int i, Real newUpper, Real oldLower=0.0) Definition: changesoplex.cpp:839 void shiftFvec() Perform initial shifting to optain an feasible or pricable basis. Definition: spxshift.cpp:25 virtual bool noViols(Real tol) const check for violations above tol and immediately return false w/o checking the remaining values ... Definition: spxsolver.cpp:675 int version() const return the version of SPxSolver as number like 123 for 1.2.3 Definition: spxsolver.h:396 DataArray< int > isInfeasibleCo 0: index not violated, 1: index violated, 2: index violated and among candidate list ... Definition: spxsolver.h:371 virtual void getEnterVals(SPxId id, Real &enterTest, Real &enterUB, Real &enterLB, Real &enterVal, Real &enterMax, Real &enterPric, SPxBasis::Desc::Status &enterStat, Real &enterRO, Real &objChange) Definition: enter.cpp:412 bool hyperPricingEnter true if hyper sparse pricing is turned on in the entering Simplex Definition: spxsolver.h:378 const LPColSetBase< Real > * lpcolset() const Returns the LP as an LPColSetBase. Definition: spxlpbase.h:1854 bool isBasic(SPxBasis::Desc::Status stat) const does stat describe a basic index ? Definition: spxsolver.h:1124 virtual void changeUpper(SPxColId p_id, const Real &p_newUpper) Definition: spxsolver.h:860 void perturbMax(const UpdateVector &vec, Vector &low, Vector &up, Real eps, Real delta, int start=0, int incr=1) Definition: spxshift.cpp:221 virtual Status getDualfarkas(Vector &vector) const get dual farkas proof of infeasibility. Definition: spxsolve.cpp:1360 Ids for LP rows.Class SPxRowId provides DataKeys for the row indices of an SPxLP. ... Definition: spxid.h:55 virtual void doRemoveRows(int perm[]) Definition: changesoplex.cpp:483 virtual bool writeState(const char *filename, const NameSet *rowNames=NULL, const NameSet *colNames=NULL, const bool cpxFormat=false) const Definition: spxwritestate.cpp:31 virtual void computeEnterCoPrhs() compute theCoPrhs for entering Simplex. Definition: spxvecs.cpp:405 void forceRecompNonbasicValue() Definition: spxsolver.h:545 void initRep(Representation p_rep) initialize ROW or COLUMN representation. Definition: spxsolver.cpp:198 Definition: timer.h:102 std::string statistics() const returns statistical information in form of a string. Definition: spxsolver.h:2009 virtual void setTerminationValue(Real value=infinity) set objective limit. Definition: spxsolver.cpp:1542 void computeDualfarkas4Row(Real direction, SPxId enterId) Definition: enter.cpp:1072 void setup4solve2(SSVector *p_y2, SSVector *p_rhs2) Setup vectors to be solved within Simplex loop. Definition: spxsolver.h:1563 void setLeaveBound4Row(int i, int n) Definition: spxbounds.cpp:229 SSVector * coSolveVector2 when 2 systems are to be solved at a time; typically for speepest edge weights Definition: spxsolver.h:252 bool getDualNorms(int &nnormsRow, int &nnormsCol, Real *norms) const get dual norms Definition: spxsolver.cpp:1820 virtual void qualConstraintViolation(Real &maxviol, Real &sumviol) const get violation of constraints. Definition: spxquality.cpp:25 int numCycle() const actual number of degenerate simplex steps encountered so far. Definition: spxsolver.h:760 bool hyperPricingLeave true if hyper sparse pricing is turned on in the leaving Simplex Definition: spxsolver.h:377 Real leavetol() const feasibility tolerance maintained by ratio test during LEAVE algorithm. Definition: spxsolver.h:682 virtual void computeFrhs1(const Vector &, const Vector &) Definition: spxvecs.cpp:198 LP column.Class LPColBase provides a datatype for storing the column of an LP a the form similar to ... Definition: lpcolbase.h:45 virtual void changeUpper(const Vector &newUpper) Definition: changesoplex.cpp:910 int primalIterations() return number of iterations done with primal algorithm Definition: spxsolver.h:1940 bool isBasic(const SPxColId &cid) const is the cid 'th vector basic ? Definition: spxsolver.h:1145 void setBasisStatus(SPxBasis::SPxStatus stat) set the lp solver's basis status. Definition: spxsolver.h:1905 void setup4coSolve2(SSVector *p_z, SSVector *p_rhs) Setup vectors to be cosolved within Simplex loop. Definition: spxsolver.h:1589 virtual void changeLhs(SPxRowId p_id, const Real &p_newLhs) Definition: spxsolver.h:881 virtual void getEnterVals2(int leaveIdx, Real enterMax, Real &leaveBound, Real &objChange) Definition: enter.cpp:710 void setDelta(Real d) set parameter delta, i.e., set feastol and opttol to same value. Definition: spxsolver.cpp:928 virtual void changeObj(const Vector &newObj) Definition: changesoplex.cpp:660 |