spxsteeppr.cpp
Go to the documentation of this file.
148 MSG_INFO1( (*thesolver->spxout), (*thesolver->spxout) << " --- initializing steepest edge multipliers" << std::endl; ) 382 MSG_INFO3( (*thesolver->spxout), (*thesolver->spxout) << "WSTEEP03 trying refinement step..\n"; ) 465 MSG_WARNING( spxout, spxout << "WSTEEP02 SPxSteepPR::selectLeaveSparse(): coWeights too small (" 482 assert(thesolver->isInfeasible[idx] == VIOLATED || thesolver->isInfeasible[idx] == VIOLATED_AND_CHECKED); 510 assert(thesolver->isInfeasible[idx] == VIOLATED || thesolver->isInfeasible[idx] == VIOLATED_AND_CHECKED); 514 MSG_WARNING( spxout, spxout << "WSTEEP02 SPxSteepPR::selectLeaveSparse(): coWeights too small (" 556 MSG_WARNING( spxout, spxout << "WSTEEP02 SPxSteepPR::selectLeaveSparse(): coWeights too small (" 666 assert(thesolver->isInfeasible[idx] == VIOLATED || thesolver->isInfeasible[idx] == VIOLATED_AND_CHECKED); 720 assert(thesolver->isInfeasibleCo[idx] == VIOLATED || thesolver->isInfeasibleCo[idx] == VIOLATED_AND_CHECKED); 764 MSG_INFO3( (*thesolver->spxout), (*thesolver->spxout) << "WSTEEP05 trying refinement step..\n"; ) 797 enterCoId = (thesolver->sparsePricingEnter) ? buildBestPriceVectorEnterDim(best, tol) : selectEnterDenseDim(best, tol); 799 enterCoId = (thesolver->sparsePricingEnter) ? selectEnterHyperDim(best, tol) : selectEnterDenseDim(best, tol); 802 enterId = (thesolver->sparsePricingEnterCo) ? buildBestPriceVectorEnterCoDim(bestCo, tol) : selectEnterDenseCoDim(bestCo, tol); 804 enterId = (thesolver->sparsePricingEnterCo) ? selectEnterHyperCoDim(bestCo, tol) : selectEnterDenseCoDim(bestCo, tol); 808 enterCoId = (thesolver->sparsePricingEnter && !refined) ? selectEnterSparseDim(best, tol) : selectEnterDenseDim(best, tol); 809 enterId = (thesolver->sparsePricingEnterCo && !refined) ? selectEnterSparseCoDim(bestCo, tol) : selectEnterDenseCoDim(bestCo, tol);
Random numbers. void reDim(int newdim, const bool setZero=true) Resets DVectorBase's dimension to newdim. Definition: dvectorbase.h:249 void coSolve(Vector &x, const Vector &rhs) Cosolves linear system with basis matrix. Definition: spxbasis.h:678 SPxId selectEnterHyperCoDim(Real &best, Real feastol) implementation of hyper sparse pricing in the entering Simplex Definition: spxsteeppr.cpp:900 int buildBestPriceVectorLeave(Real feastol) prepare data structures for hyper sparse pricing Definition: spxsteeppr.cpp:311 DIdxSet updateViols store indices that were changed in the previous iteration and must be checked in hyper pricing ... Definition: spxsolver.h:363 bool isValid() const returns TRUE iff the id is a valid column or row identifier. Definition: spxid.h:150 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 DataArray< int > isInfeasible 0: index not violated, 1: index violated, 2: index violated and among candidate list ... Definition: spxsolver.h:370 DataArray< IdxElement > prices temporary array of precomputed pricing values Definition: spxsteeppr.h:71 void setup4solve(SSVector *p_y, SSVector *p_rhs) Setup vectors to be solved within Simplex loop. Definition: spxsolver.h:1549 virtual void addedCoVecs(int n) n covectors have been added to loaded LP. Definition: spxsteeppr.cpp:1128 Steepest edge pricer. Generic Ids for LP rows or columns.Both SPxColIds and SPxRowIds may be treated uniformly as SPxIds: ... Definition: spxid.h:85 SPxId selectEnterX(Real tol) choose the best entering index among columns and rows but prefer sparsity Definition: spxsteeppr.cpp:784 virtual void setRep(SPxSolver::Representation rep) set row/column representation Definition: spxsteeppr.cpp:248 virtual void addedVecs(int n) n vectors have been added to loaded LP. Definition: spxsteeppr.cpp:1113 #define MSG_ERROR(x) Prints out message x if the verbosity level is at least SPxOut::ERROR. Definition: spxdefines.h:109 DataArray< IdxElement > pricesCo temporary array of precomputed pricing values Definition: spxsteeppr.h:73 void setEpsilon(R eps) Changes the non-zero epsilon, invalidating the setup. */. Definition: ssvectorbase.h:110 #define MSG_INFO1(spxout, x) Prints out message x if the verbosity level is at least SPxOut::INFO1. Definition: spxdefines.h:113 bool sparsePricingEnter true if sparsePricing is turned on in the entering Simplex for slack variables Definition: spxsolver.h:375 void setup4coSolve(SSVector *p_y, SSVector *p_rhs) Setup vectors to be cosolved within Simplex loop. Definition: spxsolver.h:1577 SPxId selectEnterSparseCoDim(Real &best, Real tol) implementation of sparse pricing for the entering Simplex Definition: spxsteeppr.cpp:1019 SPxId selectEnterHyperDim(Real &best, Real feastol) implementation of hyper sparse pricing in the entering Simplex Definition: spxsteeppr.cpp:820 Debugging, floating point type and parameter definitions. Sequential object-oriented SimPlex.SPxSolver is an LP solver class using the revised Simplex algorith... Definition: spxsolver.h:84 int selectLeaveHyper(Real tol) implementation of hyper sparse pricing in the leaving Simplex Definition: spxsteeppr.cpp:490 void setup_and_assign(SSVectorBase< S > &rhs) Sets up rhs vector, and assigns it. Definition: ssvectorbase.h:690 Everything should be within this namespace. int lastUpdate() const returns number of basis changes since last refactorization. Definition: spxbasis.h:533 void solve4update(SSVector &x, const SVector &rhs) solves linear system with basis matrix. Definition: spxbasis.h:628 Definition: spxpricer.h:100 #define MSG_WARNING(spxout, x) Prints out message x if the verbosity level is at least SPxOut::WARNING. Definition: spxdefines.h:111 int selectLeaveSparse(Real tol) implementation of sparse pricing in the leaving Simplex Definition: spxsteeppr.cpp:445 SPxId buildBestPriceVectorEnterDim(Real &best, Real feastol) build up vector of pricing values for later use Definition: spxsteeppr.cpp:646 int SPxQuicksortPart(T *keys, COMPARATOR &compare, int start, int end, int size, int start2=0, int end2=0, bool type=true) Generic implementation of Partial QuickSort. Definition: sorter.h:219 void setupPrefsX(Real mult, Real, Real, Real shift, Real coshift) Definition: spxsteeppr.cpp:178 DataArray< int > isInfeasibleCo 0: index not violated, 1: index violated, 2: index violated and among candidate list ... Definition: spxsolver.h:371 virtual void removedVec(int i) the i'th vector has been removed from the loaded LP. Definition: spxsteeppr.cpp:1143 bool hyperPricingEnter true if hyper sparse pricing is turned on in the entering Simplex Definition: spxsolver.h:378 virtual void removedCoVec(int i) the i'th covector has been removed from the loaded LP. Definition: spxsteeppr.cpp:1166 Definition: spxpricer.h:101 SPxId selectEnterDenseCoDim(Real &best, Real tol) implementation of selectEnter() in dense case Definition: spxsteeppr.cpp:1085 #define MSG_INFO3(spxout, x) Prints out message x if the verbosity level is at least SPxOut::INFO3. Definition: spxdefines.h:117 void reMax(int newMax=1, int newSize=-1) reset maximum number of elements. Definition: dataarray.h:254 SPxId buildBestPriceVectorEnterCoDim(Real &best, Real feastol) Definition: spxsteeppr.cpp:700 virtual void removedCoVecs(const int perm[]) n covectors have been removed from loaded LP. Definition: spxsteeppr.cpp:1174 bool hyperPricingLeave true if hyper sparse pricing is turned on in the leaving Simplex Definition: spxsolver.h:377 SPxId selectEnterDenseDim(Real &best, Real tol) implementation of selectEnter() in dense case (slack variables) Definition: spxsteeppr.cpp:1058 Real leavetol() const feasibility tolerance maintained by ratio test during LEAVE algorithm. Definition: spxsolver.h:682 Set of indices.Class IdxSet provides a set of indices. At construction it must be given an array of i... Definition: idxset.h:56 SPxId selectEnterSparseDim(Real &best, Real tol) implementation of sparse pricing for the entering Simplex (slack variables) Definition: spxsteeppr.cpp:980 virtual void removedVecs(const int perm[]) n vectors have been removed from loaded LP. Definition: spxsteeppr.cpp:1151 |