main LP solver class More...
#include <assert.h>
#include <iostream>
#include <iomanip>
#include <sstream>
#include "soplex/spxdefines.h"
#include "soplex/timer.h"
#include "soplex/timerfactory.h"
#include "soplex/spxlp.h"
#include "soplex/spxbasis.h"
#include "soplex/array.h"
#include "soplex/random.h"
#include "soplex/unitvector.h"
#include "soplex/updatevector.h"
#include "soplex/stablesum.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 41 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 39 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 38 of file spxsolver.h.
Referenced by SoPlex::_solveRealLPAndRecordStatistics().
#define MAXNCLCKSKIPS 32 |
maximum number of clock skips (iterations without time measuring)
Definition at line 47 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 49 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 48 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 42 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 40 of file spxsolver.h.