Loading...
Searching...
No Matches
ClpPEPrimalColumnDantzig.hpp
Go to the documentation of this file.
/*
Authors
Jeremy Omer, Mehdi Towhidi
Last update: april 10, 2015
*/
#ifndef ClpPEPrimalColumnDantzig_H
#define ClpPEPrimalColumnDantzig_H
#include "ClpPrimalColumnDantzig.hpp"
#include "ClpPrimalColumnPivot.hpp"
#include "ClpSimplex.hpp"
#include "CoinIndexedVector.hpp"
#include "ClpFactorization.hpp"
#include "ClpNonLinearCost.hpp"
#include "ClpSimplexPrimal.hpp"
#include "ClpPackedMatrix.hpp"
#include "ClpPESimplex.hpp"
class ClpPEPrimalColumnDantzig : public ClpPrimalColumnDantzig {
public:
ClpPEPrimalColumnDantzig(double psi = 0.5);
ClpPEPrimalColumnDantzig(const ClpPEPrimalColumnDantzig &); //copy constructor
~ClpPEPrimalColumnDantzig();
ClpPEPrimalColumnDantzig &operator=(const ClpPEPrimalColumnDantzig &rhs);
ClpPrimalColumnPivot *clone(bool copyData = true) const;
virtual int pivotColumn(CoinIndexedVector *updates,
CoinIndexedVector *spareRow1,
CoinIndexedVector *spareRow2,
CoinIndexedVector *spareColumn1,
CoinIndexedVector *spareColumn2);
virtual void saveWeights(ClpSimplex *model, int mode);
//---------------------------------------------------------------------------
private:
/* this PESimplex object is used to identify the compatible variables */
ClpPESimplex *modelPE_;
/* psi is the factor used in the bi-dimensional pricing, it is < 1 and
1/psi grows with the priority given to compatible variables */
double psi_;
/* useful counters for the update of the set of compatible variables */
int iCurrent_;
int iInterval_;
/* record if previous iterations concluded that compatibles should not be checked */
int coDegenCompatibles_;
int coConsecutiveCompatibles_;
bool updateCompatibles_;
};
#endif
/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
*/
ClpFactorization.hpp
ClpNonLinearCost.hpp
ClpPESimplex.hpp
ClpPackedMatrix.hpp
ClpPrimalColumnDantzig.hpp
ClpPrimalColumnPivot.hpp
ClpSimplexPrimal.hpp
ClpSimplex.hpp
ClpPEPrimalColumnDantzig::~ClpPEPrimalColumnDantzig
~ClpPEPrimalColumnDantzig()
destructor
ClpPEPrimalColumnDantzig::updateCompatibles_
bool updateCompatibles_
Definition ClpPEPrimalColumnDantzig.hpp:66
ClpPEPrimalColumnDantzig::ClpPEPrimalColumnDantzig
ClpPEPrimalColumnDantzig(const ClpPEPrimalColumnDantzig &)
ClpPEPrimalColumnDantzig::operator=
ClpPEPrimalColumnDantzig & operator=(const ClpPEPrimalColumnDantzig &rhs)
assignment operator
ClpPEPrimalColumnDantzig::coDegenCompatibles_
int coDegenCompatibles_
Definition ClpPEPrimalColumnDantzig.hpp:64
ClpPEPrimalColumnDantzig::clone
ClpPrimalColumnPivot * clone(bool copyData=true) const
clone
ClpPEPrimalColumnDantzig::pivotColumn
virtual int pivotColumn(CoinIndexedVector *updates, CoinIndexedVector *spareRow1, CoinIndexedVector *spareRow2, CoinIndexedVector *spareColumn1, CoinIndexedVector *spareColumn2)
Returns pivot column, -1 if none.
ClpPEPrimalColumnDantzig::modelPE_
ClpPESimplex * modelPE_
Definition ClpPEPrimalColumnDantzig.hpp:53
ClpPEPrimalColumnDantzig::psi_
double psi_
Definition ClpPEPrimalColumnDantzig.hpp:57
ClpPEPrimalColumnDantzig::coConsecutiveCompatibles_
int coConsecutiveCompatibles_
Definition ClpPEPrimalColumnDantzig.hpp:65
ClpPEPrimalColumnDantzig::saveWeights
virtual void saveWeights(ClpSimplex *model, int mode)
Save weights - this may initialize weights as well This is as parent but may initialize ClpPESimplex.
ClpPEPrimalColumnDantzig::iInterval_
int iInterval_
Definition ClpPEPrimalColumnDantzig.hpp:61
ClpPEPrimalColumnDantzig::ClpPEPrimalColumnDantzig
ClpPEPrimalColumnDantzig(double psi=0.5)
constructors
ClpPEPrimalColumnDantzig::iCurrent_
int iCurrent_
Definition ClpPEPrimalColumnDantzig.hpp:60
ClpPESimplex
BASE CLASS FOR THE IMPROVED SIMPLEX.
Definition ClpPESimplex.hpp:42
ClpPrimalColumnDantzig::ClpPrimalColumnDantzig
ClpPrimalColumnDantzig()
Default Constructor.
ClpPrimalColumnPivot::model
ClpSimplex * model()
Returns model.
Definition ClpPrimalColumnPivot.hpp:117
ClpPrimalColumnPivot::ClpPrimalColumnPivot
ClpPrimalColumnPivot()
Default Constructor.
ClpSimplex
This solves LPs using the simplex method.
Definition ClpSimplex.hpp:106