Loading...
Searching...
No Matches
SPxSimplifier< R > Class Template Referenceabstract LP simplification abstract base class. More...
Inheritance diagram for SPxSimplifier< R >:
![]()
Detailed Descriptiontemplate<class R> class soplex::SPxSimplifier< R > LP simplification abstract base class. Instances of classes derived from SPxSimplifier may be loaded to SoPlex in order to simplify LPs before solving them. SoPlex will call simplify() on itself. Generally any SPxLP can be given to a SPxSimplifier for simplify()ing it. The simplification cannot be undone, but given an primal/dual solution for the simplified SPxLP, the simplifier can reconstruct the primal/dual solution of the unsimplified LP. Definition at line 51 of file spxsimplifier.h. Member Enumeration Documentation◆ Result
template<class R >
Result of the simplification. Definition at line 92 of file spxsimplifier.h. Constructor & Destructor Documentation◆ SPxSimplifier() [1/2]
template<class R >
constructor Definition at line 106 of file spxsimplifier.h. References TimerFactory::createTimer(), SPxSimplifier< R >::isConsistent(), and SPxSimplifier< R >::m_timeUsed. ◆ SPxSimplifier() [2/2]
template<class R >
copy constructor Definition at line 126 of file spxsimplifier.h. References TimerFactory::createTimer(), SPxSimplifier< R >::isConsistent(), SPxSimplifier< R >::m_timerType, and SPxSimplifier< R >::m_timeUsed. ◆ ~SPxSimplifier()
template<class R >
destructor. Definition at line 168 of file spxsimplifier.h. References SPxSimplifier< R >::m_name, SPxSimplifier< R >::m_timeUsed, soplex::spx_free(), and Timer::~Timer(). Member Function Documentation◆ addObjoffset()
template<class R >
add objective offset. Definition at line 239 of file spxsimplifier.h. References SPxSimplifier< R >::m_objoffset. Referenced by SPxMainSM< R >::FixVariablePS::FixVariablePS(), SPxMainSM< R >::FreeColSingletonPS::FreeColSingletonPS(), and SPxMainSM< R >::MultiAggregationPS::MultiAggregationPS(). ◆ clone()
template<class R >
clone function for polymorphism Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. ◆ getBasis()
template<class R >
get optimal basis. Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. ◆ getBasisColStatus()
template<class R >
gets basis status for a single column. Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. ◆ getBasisRowStatus()
template<class R >
gets basis status for a single row. Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. ◆ getName()
template<class R >
get name of simplifier. Definition at line 182 of file spxsimplifier.h. References SPxSimplifier< R >::m_name. ◆ getObjoffset()
template<class R >
get objective offset. Definition at line 233 of file spxsimplifier.h. References SPxSimplifier< R >::m_objoffset. ◆ isConsistent()
template<class R >
consistency check Definition at line 256 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(), SPxSimplifier< R >::SPxSimplifier(), and SPxSimplifier< R >::SPxSimplifier(). ◆ isUnsimplified()
template<class R >
specifies whether an optimal solution has already been unsimplified. Reimplemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. Definition at line 206 of file spxsimplifier.h. ◆ operator=()
template<class R >
assignment operator Definition at line 144 of file spxsimplifier.h. References SPxSimplifier< R >::isConsistent(), SPxSimplifier< R >::m_chgBnds, SPxSimplifier< R >::m_chgLRhs, SPxSimplifier< R >::m_keptBnds, SPxSimplifier< R >::m_keptLRhs, SPxSimplifier< R >::m_minReduction, SPxSimplifier< R >::m_name, SPxSimplifier< R >::m_objoffset, SPxSimplifier< R >::m_remCols, SPxSimplifier< R >::m_remNzos, SPxSimplifier< R >::m_remRows, SPxSimplifier< R >::m_timerType, SPxSimplifier< R >::m_timeUsed, and SPxSimplifier< R >::spxout. Referenced by SPxMainSM< R >::operator=(). ◆ result()
template<class R >
returns result status of the simplification Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. ◆ setMinReduction()
template<class R >
set minimal reduction threshold to continue simplification Definition at line 245 of file spxsimplifier.h. References SPxSimplifier< R >::m_minReduction. ◆ setOutstream()
template<class R >
Definition at line 262 of file spxsimplifier.h. References SPxSimplifier< R >::spxout. ◆ setTolerances()
template<class R >
set the _tolerances member variable Definition at line 268 of file spxsimplifier.h. ◆ simplify()
template<class R >
simplify SPxLP Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. ◆ timeUsed()
template<class R >
Definition at line 186 of file spxsimplifier.h. References SPxSimplifier< R >::m_timeUsed, and Timer::time(). ◆ tolerances()
template<class R >
get the _tolerances member variable Definition at line 273 of file spxsimplifier.h. References SPxSimplifier< R >::_tolerances. Referenced by SPxMainSM< R >::epsZero(), SPxMainSM< R >::feastol(), and SPxMainSM< R >::opttol(). ◆ unsimplifiedDual()
template<class R >
returns a reference to the unsimplified dual solution. Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. ◆ unsimplifiedPrimal()
template<class R >
returns a reference to the unsimplified primal solution. Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. ◆ unsimplifiedRedCost()
template<class R >
returns a reference to the unsimplified reduced costs. Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. ◆ unsimplifiedSlacks()
template<class R >
returns a reference to the unsimplified slack values. Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. ◆ unsimplify()
template<class R >
reconstructs an optimal solution for the unsimplified LP. Implemented in Presol< R >, Presol< BP >, SPxMainSM< R >, and SPxMainSM< BP >. Member Data Documentation◆ _tolerances
template<class R >
Definition at line 83 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::tolerances(). ◆ m_chgBnds
template<class R >
number of changed bounds Definition at line 69 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(). ◆ m_chgLRhs
template<class R >
number of change right-hand sides Definition at line 71 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(). ◆ m_keptBnds
template<class R >
number of kept bounds Definition at line 73 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(). ◆ m_keptLRhs
template<class R >
number of kept left- and right-hand sides Definition at line 75 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(). ◆ m_minReduction
template<class R >
minimal reduction (sum of removed rows/cols) to continue simplification Definition at line 79 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(), and SPxSimplifier< R >::setMinReduction(). ◆ m_name
template<class R >
name of the simplifier Definition at line 58 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::getName(), SPxSimplifier< R >::operator=(), and SPxSimplifier< R >::~SPxSimplifier(). ◆ m_objoffset
template<class R >
objective offset Definition at line 77 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::addObjoffset(), SPxSimplifier< R >::getObjoffset(), and SPxSimplifier< R >::operator=(). ◆ m_remCols
template<class R >
number of removed columns Definition at line 65 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(). ◆ m_remNzos
template<class R >
number of removed nonzero coefficients Definition at line 67 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(). ◆ m_remRows
template<class R >
number of removed rows Definition at line 63 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(). ◆ m_timerType
template<class R >
Definition at line 61 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(), and SPxSimplifier< R >::SPxSimplifier(). ◆ m_timeUsed
template<class R >
user time used for simplification Definition at line 60 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(), SPxSimplifier< R >::SPxSimplifier(), SPxSimplifier< R >::SPxSimplifier(), SPxSimplifier< R >::timeUsed(), and SPxSimplifier< R >::~SPxSimplifier(). ◆ spxout
template<class R >
message handler tolerances used by the solver Definition at line 81 of file spxsimplifier.h. Referenced by SPxSimplifier< R >::operator=(), and SPxSimplifier< R >::setOutstream().
|