main LP solver class More...
#include <assert.h>#include <iostream>#include <iomanip>#include <sstream>#include "spxdefines.h"#include "timer.h"#include "timerfactory.h"#include "spxlp.h"#include "spxbasis.h"#include "array.h"#include "random.h"#include "unitvector.h"#include "updatevector.h"Go to the source code of this file.
Classes | |
| class | SPxSolver |
| Sequential object-oriented SimPlex.SPxSolver is an LP solver class using the revised Simplex algorithm. It provides two basis representations, namely a column basis and a row basis (see Representation). For both representations, a primal and dual algorithm is available (see Type). More... | |
Namespaces | |
| soplex | |
| Everything should be within this namespace. | |
Macros | |
| #define | HYPERPRICINGTHRESHOLD 5000 |
| #define | HYPERPRICINGSIZE 100 |
| #define | SPARSITYFACTOR 0.6 |
| #define | DENSEROUNDS 5 |
| #define | SPARSITY_TRADEOFF 0.8 |
| #define | MAXNCLCKSKIPS 32 |
| #define | SAFETYFACTOR 1e-2 |
| #define | NINITCALLS 200 |
Functions | |
| std::ostream & | operator<< (std::ostream &os, const SPxSolver::VarStatus &status) |
| Pretty-printing of variable status. More... | |
| std::ostream & | operator<< (std::ostream &os, const SPxSolver::Status &status) |
| Pretty-printing of solver status. More... | |
| std::ostream & | operator<< (std::ostream &os, const SPxSolver::Type &status) |
| Pretty-printing of algorithm. More... | |
| std::ostream & | operator<< (std::ostream &os, const SPxSolver::Representation &status) |
| Pretty-printing of representation. More... | |
main LP solver class
Definition in file spxsolver.h.
| #define DENSEROUNDS 5 |
number of refactorizations until sparsity is tested again
Definition at line 40 of file spxsolver.h.
Referenced by SPxSolver::computeCoTest(), SPxSolver::computeFtest(), and SPxSolver::computeTest().
| #define HYPERPRICINGSIZE 100 |
size of initial candidate list for hyper pricing
Definition at line 38 of file spxsolver.h.
Referenced by SPxDevexPR::buildBestPriceVectorEnterCoDim(), SPxSteepPR::buildBestPriceVectorEnterCoDim(), SPxDevexPR::buildBestPriceVectorEnterDim(), SPxSteepPR::buildBestPriceVectorEnterDim(), SPxDevexPR::buildBestPriceVectorLeave(), and SPxSteepPR::buildBestPriceVectorLeave().
| #define HYPERPRICINGTHRESHOLD 5000 |
do (auto) hyper pricing only if problem size (cols+rows) is larger than HYPERPRICINGTHRESHOLD
Definition at line 37 of file spxsolver.h.
Referenced by SoPlex::_solveRealLPAndRecordStatistics().
| #define MAXNCLCKSKIPS 32 |
maximum number of clock skips (iterations without time measuring)
Definition at line 46 of file spxsolver.h.
Referenced by SPxSolver::isTimeLimitReached().
| #define NINITCALLS 200 |
the number of clock updates in isTimelimitReached() before clock skipping starts
Definition at line 48 of file spxsolver.h.
Referenced by SPxSolver::isTimeLimitReached().
| #define SAFETYFACTOR 1e-2 |
the probability to skip the clock when the time limit has been reached
Definition at line 47 of file spxsolver.h.
Referenced by SPxSolver::isTimeLimitReached().
| #define SPARSITY_TRADEOFF 0.8 |
threshold to decide whether Ids or coIds are preferred to enter the basis; coIds are more likely to enter if SPARSITY_TRADEOFF is close to 0
Definition at line 41 of file spxsolver.h.
Referenced by SPxDantzigPR::selectEnterX(), SPxDevexPR::selectEnterX(), and SPxSteepPR::selectEnterX().
| #define SPARSITYFACTOR 0.6 |
percentage of infeasibilities that is considered sparse
Definition at line 39 of file spxsolver.h.