Partial multiple pricing. More...
#include <spxparmultpr.h>
Classes | |
struct | SPxParMultPr_Tmp |
Helper structure. More... | |
Public Member Functions | |
Construction / destruction | |
SPxParMultPR () | |
default constructor More... | |
SPxParMultPR (const SPxParMultPR &old) | |
copy constructor More... | |
SPxParMultPR & | operator= (const SPxParMultPR &rhs) |
assignment operator More... | |
virtual | ~SPxParMultPR () |
destructor More... | |
virtual SPxPricer< R > * | clone () const |
clone function for polymorphism More... | |
Interface | |
virtual void | load (SPxSolverBase< R > *solver) |
set the solver More... | |
virtual void | setType (typename SPxSolverBase< R >::Type tp) |
set entering or leaving algorithm More... | |
virtual int | selectLeave () |
virtual SPxId | selectEnter () |
Public Member Functions inherited from SPxPricer< R > | |
virtual const char * | getName () const |
get name of pricer. More... | |
virtual void | clear () |
unloads LP. More... | |
virtual SPxSolverBase< R > * | solver () const |
returns loaded SPxSolverBase object. More... | |
virtual void | setPricingTolerance (R tol) |
sets pricing tolerance. More... | |
virtual R | pricingTolerance () const |
returns the pricing tolerance More... | |
virtual void | setTolerances (std::shared_ptr< Tolerances > newTolerances) |
set the _tolerances member variable More... | |
virtual void | setRep (typename SPxSolverBase< R >::Representation) |
sets basis representation. More... | |
virtual void | left4 (int, SPxId) |
performs leaving pivot. More... | |
virtual void | entered4 (SPxId, int) |
performs entering pivot. More... | |
virtual void | addedVecs (int) |
n vectors have been added to loaded LP. More... | |
virtual void | addedCoVecs (int) |
n covectors have been added to loaded LP. More... | |
virtual void | removedVec (int) |
vector i was removed from loaded LP. More... | |
virtual void | removedVecs (const int *) |
vectors given by perm have been removed from loaded LP. More... | |
virtual void | removedCoVec (int) |
covector i was removed from loaded LP. More... | |
virtual void | removedCoVecs (const int *) |
covectors given by perm have been removed from loaded LP. More... | |
virtual bool | isConsistent () const |
SPxPricer (const char *p_name) | |
constructor More... | |
SPxPricer (const SPxPricer &old) | |
copy constructor More... | |
SPxPricer & | operator= (const SPxPricer &rhs) |
assignment operator More... | |
virtual | ~SPxPricer () |
destructor. More... | |
Private Attributes | |
Helper data | |
Array< SPxParMultPr_Tmp > | pricSet |
int | multiParts |
int | used |
int | min |
int | last |
int | partialSize |
Set size for partial pricing. More... | |
Additional Inherited Members | |
Public Types inherited from SPxPricer< R > | |
enum | ViolationType { NOT_VIOLATED = 0 , VIOLATED = 1 , VIOLATED_AND_CHECKED = 2 } |
Protected Attributes inherited from SPxPricer< R > | |
IdxCompare | compare |
const char * | m_name |
name of the pricer More... | |
SPxSolverBase< R > * | thesolver |
the solver More... | |
R | thetolerance |
violation bound More... | |
std::shared_ptr< Tolerances > | _tolerances |
tolerances used by the solver More... | |
Partial multiple pricing.
Class SPxParMultPr is an implementation class for SPxPricer implementing Dantzig's default pricing strategy with partial multiple pricing. Partial multiple pricing applies to the entering Simplex only. A set of partialSize eligible pivot indices is selected (partial pricing). In the following Simplex iterations pricing is restricted to these indices (multiple pricing) until no more eliiable pivots are available. Partial multiple pricing significantly reduces the computation time for computing the matrix-vector-product in the Simplex algorithm.
See SPxPricer for a class documentation.
Definition at line 57 of file spxparmultpr.h.
SPxParMultPR | ( | ) |
default constructor
Definition at line 97 of file spxparmultpr.h.
Referenced by SPxParMultPR< R >::clone().
SPxParMultPR | ( | const SPxParMultPR< R > & | old | ) |
copy constructor
Definition at line 106 of file spxparmultpr.h.
|
virtual |
destructor
Definition at line 132 of file spxparmultpr.h.
|
virtual |
clone function for polymorphism
Implements SPxPricer< R >.
Definition at line 135 of file spxparmultpr.h.
References SPxParMultPR< R >::SPxParMultPR().
|
virtual |
set the solver
Reimplemented from SPxPricer< R >.
SPxParMultPR & operator= | ( | const SPxParMultPR< R > & | rhs | ) |
assignment operator
Definition at line 116 of file spxparmultpr.h.
References SPxParMultPR< R >::last, SPxParMultPR< R >::min, SPxParMultPR< R >::multiParts, SPxPricer< R >::operator=(), SPxParMultPR< R >::partialSize, SPxParMultPR< R >::pricSet, and SPxParMultPR< R >::used.
|
virtual |
Implements SPxPricer< R >.
|
virtual |
Implements SPxPricer< R >.
|
virtual |
set entering or leaving algorithm
Reimplemented from SPxPricer< R >.
|
private |
Definition at line 86 of file spxparmultpr.h.
Referenced by SPxParMultPR< R >::operator=().
|
private |
Definition at line 84 of file spxparmultpr.h.
Referenced by SPxParMultPR< R >::operator=().
|
private |
Definition at line 80 of file spxparmultpr.h.
Referenced by SPxParMultPR< R >::operator=().
|
private |
Set size for partial pricing.
Definition at line 88 of file spxparmultpr.h.
Referenced by SPxParMultPR< R >::operator=().
|
private |
Definition at line 78 of file spxparmultpr.h.
Referenced by SPxParMultPR< R >::operator=().
|
private |
Definition at line 82 of file spxparmultpr.h.
Referenced by SPxParMultPR< R >::operator=().