Clp
1.17.8
Clp
src
ClpPEPrimalColumnDantzig.hpp
Go to the documentation of this file.
1
/*
2
Authors
3
4
Jeremy Omer, Mehdi Towhidi
5
6
Last update: april 10, 2015
7
8
*/
9
10
#ifndef ClpPEPrimalColumnDantzig_H
11
#define ClpPEPrimalColumnDantzig_H
12
13
#include "
ClpPrimalColumnDantzig.hpp
"
14
#include "
ClpPrimalColumnPivot.hpp
"
15
#include "
ClpSimplex.hpp
"
16
#include "CoinIndexedVector.hpp"
17
#include "
ClpFactorization.hpp
"
18
#include "
ClpNonLinearCost.hpp
"
19
#include "
ClpSimplexPrimal.hpp
"
20
#include "
ClpPackedMatrix.hpp
"
21
#include "
ClpPESimplex.hpp
"
22
23
class
ClpPEPrimalColumnDantzig
:
public
ClpPrimalColumnDantzig
{
24
25
public
:
27
ClpPEPrimalColumnDantzig
(
double
psi = 0.5);
28
ClpPEPrimalColumnDantzig
(
const
ClpPEPrimalColumnDantzig
&);
//copy constructor
29
31
~ClpPEPrimalColumnDantzig
();
32
34
ClpPEPrimalColumnDantzig
&
operator=
(
const
ClpPEPrimalColumnDantzig
&rhs);
35
37
ClpPrimalColumnPivot
*
clone
(
bool
copyData =
true
)
const
;
38
39
virtual
int
pivotColumn
(CoinIndexedVector *updates,
40
CoinIndexedVector *spareRow1,
41
CoinIndexedVector *spareRow2,
42
CoinIndexedVector *spareColumn1,
43
CoinIndexedVector *spareColumn2);
44
46
49
virtual
void
saveWeights
(
ClpSimplex
*
model
,
int
mode);
50
//---------------------------------------------------------------------------
51
private
:
52
/* this PESimplex object is used to identify the compatible variables */
53
ClpPESimplex
*
modelPE_
;
54
55
/* psi is the factor used in the bi-dimensional pricing, it is < 1 and
56
1/psi grows with the priority given to compatible variables */
57
double
psi_
;
58
59
/* useful counters for the update of the set of compatible variables */
60
int
iCurrent_
;
61
int
iInterval_
;
62
63
/* record if previous iterations concluded that compatibles should not be checked */
64
int
coDegenCompatibles_
;
65
int
coConsecutiveCompatibles_
;
66
bool
updateCompatibles_
;
67
};
68
#endif
69
70
/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
71
*/
ClpSimplex
This solves LPs using the simplex method.
Definition:
ClpSimplex.hpp:106
ClpPEPrimalColumnDantzig::updateCompatibles_
bool updateCompatibles_
Definition:
ClpPEPrimalColumnDantzig.hpp:66
ClpPEPrimalColumnDantzig::~ClpPEPrimalColumnDantzig
~ClpPEPrimalColumnDantzig()
destructor
ClpNonLinearCost.hpp
ClpPrimalColumnPivot.hpp
ClpPEPrimalColumnDantzig
Definition:
ClpPEPrimalColumnDantzig.hpp:23
ClpPEPrimalColumnDantzig::pivotColumn
virtual int pivotColumn(CoinIndexedVector *updates, CoinIndexedVector *spareRow1, CoinIndexedVector *spareRow2, CoinIndexedVector *spareColumn1, CoinIndexedVector *spareColumn2)
Returns pivot column, -1 if none.
ClpFactorization.hpp
ClpPEPrimalColumnDantzig::iCurrent_
int iCurrent_
Definition:
ClpPEPrimalColumnDantzig.hpp:60
ClpPEPrimalColumnDantzig::clone
ClpPrimalColumnPivot * clone(bool copyData=true) const
clone
ClpSimplexPrimal.hpp
ClpPrimalColumnDantzig
Primal Column Pivot Dantzig Algorithm Class.
Definition:
ClpPrimalColumnDantzig.hpp:19
ClpPEPrimalColumnDantzig::ClpPEPrimalColumnDantzig
ClpPEPrimalColumnDantzig(double psi=0.5)
constructors
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::coDegenCompatibles_
int coDegenCompatibles_
Definition:
ClpPEPrimalColumnDantzig.hpp:64
ClpSimplex.hpp
ClpPrimalColumnPivot
Primal Column Pivot Abstract Base Class.
Definition:
ClpPrimalColumnPivot.hpp:25
ClpPESimplex
BASE CLASS FOR THE IMPROVED SIMPLEX.
Definition:
ClpPESimplex.hpp:42
ClpPEPrimalColumnDantzig::iInterval_
int iInterval_
Definition:
ClpPEPrimalColumnDantzig.hpp:61
ClpPrimalColumnPivot::model
ClpSimplex * model()
Returns model.
Definition:
ClpPrimalColumnPivot.hpp:117
ClpPEPrimalColumnDantzig::modelPE_
ClpPESimplex * modelPE_
Definition:
ClpPEPrimalColumnDantzig.hpp:53
ClpPEPrimalColumnDantzig::psi_
double psi_
Definition:
ClpPEPrimalColumnDantzig.hpp:57
ClpPESimplex.hpp
ClpPEPrimalColumnDantzig::coConsecutiveCompatibles_
int coConsecutiveCompatibles_
Definition:
ClpPEPrimalColumnDantzig.hpp:65
ClpPackedMatrix.hpp
ClpPrimalColumnDantzig.hpp
ClpPEPrimalColumnDantzig::operator=
ClpPEPrimalColumnDantzig & operator=(const ClpPEPrimalColumnDantzig &rhs)
assignment operator
Generated by
1.8.17