SPxHarrisRT Class Reference Harris pricing with shifting.Class SPxHarrisRT is a stable implementation of a SPxRatioTester class along the lines of Harris' two phase algorithm. Additionally it uses shifting of bounds in order to avoid cycling. More...
Inheritance diagram for SPxHarrisRT:
![]()
Detailed DescriptionHarris pricing with shifting. Class SPxHarrisRT is a stable implementation of a SPxRatioTester class along the lines of Harris' two phase algorithm. Additionally it uses shifting of bounds in order to avoid cycling. See SPxRatioTester for a class documentation.
Definition at line 40 of file spxharrisrt.h. Constructor & Destructor Documentation
default constructor Definition at line 83 of file spxharrisrt.h. Referenced by SPxHarrisRT::clone().
copy constructor Definition at line 87 of file spxharrisrt.h.
destructor Definition at line 101 of file spxharrisrt.h. Member Function Documentation
clone function for polymorphism Implements SPxRatioTester. Definition at line 104 of file spxharrisrt.h. References SPxHarrisRT::selectEnter(), SPxHarrisRT::selectLeave(), and SPxHarrisRT::SPxHarrisRT().
numCycle and maxCycle are integers. So degeneps will be exactly delta until numCycle >= maxCycle. Then it will be 0 until numCycle >= 2 * maxCycle, after wich it becomes negative. This does not look ok. Definition at line 33 of file spxharrisrt.cpp. References SPxSolver::delta(), SPxSolver::maxCycle(), SPxSolver::numCycle(), and SPxRatioTester::solver(). Referenced by SPxHarrisRT::selectEnter(), and SPxHarrisRT::selectLeave().
Definition at line 39 of file spxharrisrt.cpp. References SPxRatioTester::delta, and soplex::infinity. Referenced by SPxHarrisRT::selectEnter(), and SPxHarrisRT::selectLeave().
Definition at line 90 of file spxharrisrt.cpp. References SPxRatioTester::delta, and soplex::infinity. Referenced by SPxHarrisRT::selectEnter(), and SPxHarrisRT::selectLeave().
assignment operator Definition at line 91 of file spxharrisrt.h. References SPxRatioTester::operator=(). Implements SPxRatioTester. Definition at line 322 of file spxharrisrt.cpp. References SSVectorBase< R >::clearNum(), SPxSolver::coId(), SPxSolver::coPvec(), SPxHarrisRT::degenerateEps(), SPxRatioTester::delta, UpdateVector::delta(), SPxSolver::epsilon(), VectorBase< R >::get_const_ptr(), SPxSolver::id(), SSVectorBase< R >::index(), SSVectorBase< R >::indexMem(), soplex::infinity, SPxId::INVALID, SPxId::inValidate(), SPxSolver::lcBound(), SPxSolver::lpBound(), SPxHarrisRT::maxDelta(), SPxHarrisRT::minDelta(), MSG_DEBUG, SPxSolver::pVec(), SSVectorBase< R >::setup(), SSVectorBase< R >::setValue(), SPxSolver::shift(), SPxSolver::shiftLCbound(), SPxSolver::shiftLPbound(), SPxSolver::shiftUCbound(), SPxSolver::shiftUPbound(), SSVectorBase< R >::size(), SPxRatioTester::solver(), SPxId::type(), SPxSolver::ucBound(), SPxSolver::upBound(), SSVectorBase< R >::values(), and SPxSolver::vector(). Referenced by SPxHarrisRT::clone(). Here comes our implementation of the Harris procedure improved by shifting bounds. The basic idea is to used the tolerated infeasibility within solver()->entertol() for searching numerically stable pivots. The algorithms operates in two phases. In a first phase, the maximum Implements SPxRatioTester. Definition at line 149 of file spxharrisrt.cpp. References SSVectorBase< R >::clearNum(), SPxHarrisRT::degenerateEps(), SPxRatioTester::delta, UpdateVector::delta(), SPxSolver::epsilon(), SPxSolver::fVec(), VectorBase< R >::get_const_ptr(), SSVectorBase< R >::index(), SSVectorBase< R >::indexMem(), soplex::infinity, SPxSolver::lbBound(), SPxHarrisRT::maxDelta(), SPxHarrisRT::minDelta(), SSVectorBase< R >::setup(), SPxSolver::shift(), SPxSolver::shiftLBbound(), SPxSolver::shiftUBbound(), SSVectorBase< R >::size(), SPxRatioTester::solver(), SPxSolver::ubBound(), and SSVectorBase< R >::values(). Referenced by SPxHarrisRT::clone(). |