ConicBundle
PSCModelParameters.hxx
Go to the documentation of this file.
1 
2 
3 #ifndef CONICBUNDLE_PSCMODELPARAMETERS_HXX
4 #define CONICBUNDLE_PSCMODELPARAMETERS_HXX
5 
6 
16 
17 namespace ConicBundle {
18 
23 
24 
34 {
35 private:
40 
41 public:
43  PSCModelParameters(const CBout* cb=0,int incr=-1):
45  {cutoffval=CH_Matrix_Classes::max_Real;gapsz=0.; Ritz_skipval=CH_Matrix_Classes::max_Real;n_nullsteps=0;}
46 
48  PSCModelParameters(int modelsize,int bundlesize=10,int updaterule=0,const CBout* cb=0,int incr=-1):
49  PSCModelParametersObject(BundleParameters(modelsize,bundlesize,updaterule),cb,incr)
50  {cutoffval=CH_Matrix_Classes::min_Real;gapsz=0.; Ritz_skipval=CH_Matrix_Classes::max_Real;n_nullsteps=0;}
51 
53  PSCModelParameters(const BundleParameters& bp,const CBout* cb=0,int incr=-1):
54  PSCModelParametersObject(bp,cb,incr)
55  {cutoffval=CH_Matrix_Classes::max_Real;gapsz=0.; Ritz_skipval=CH_Matrix_Classes::max_Real;n_nullsteps=0;}
56 
60  {cutoffval=sms.cutoffval;gapsz=sms.gapsz; Ritz_skipval=sms.Ritz_skipval;n_nullsteps=sms.n_nullsteps;}
61 
63  virtual ~PSCModelParameters();
64 
67  { return new PSCModelParameters(*this); }
68 
187  virtual int select_model(CH_Matrix_Classes::Matrix& modelvecs,
188  MinorantPointer& model_aggregate,
189  CH_Matrix_Classes::Matrix& topvecs,
190  CH_Matrix_Classes::Matrix& Ritz_values,
191  CH_Matrix_Classes::Integer& activedim,
192  CH_Matrix_Classes::Integer& keepsize,
193  CH_Matrix_Classes::Integer& skippedsize,
194  const CH_Matrix_Classes::Real primal_Ritzval,
195  const CH_Matrix_Classes::Matrix& primaleigs,
196  const CH_Matrix_Classes::Matrix& primalvecs,
197  const MinorantPointer& primal_aggregate,
198  CH_Matrix_Classes::Real primal_aggregate_coeff,
199  CH_Matrix_Classes::Real growthrate,
200  const CH_Matrix_Classes::Matrix& primalgrowth,
201  const CH_Matrix_Classes::Matrix& dualgrowth,
202  const CH_Matrix_Classes::Matrix& cand_Ritzvec,
203  const CH_Matrix_Classes::Matrix& cand_Ritzval,
204  PSCOracle* oracle,
205  CH_Matrix_Classes::Integer modification_id,
206  FunctionTask function_task,
207  CH_Matrix_Classes::Real function_factor,
208  BundleModel::ModelUpdate model_update,
209  CH_Matrix_Classes::Integer center_id,
210  const CH_Matrix_Classes::Matrix& center_y,
212  const CH_Matrix_Classes::Matrix& cand_y,
213  CH_Matrix_Classes::Real model_maxviol,
214  CH_Matrix_Classes::Real diffval_center_aggregate,
215  BundleProxObject& H);
216 
217 
218 
219 };
220 
222 
223 }
224 
225 #endif
226 
int Integer
all integer numbers in calculations and indexing are of this type
Definition: matop.hxx:40
abstract interface that allows to use different -norms with a positive definite matrix in the proxi...
Definition: BundleProxObject.hxx:88
CH_Matrix_Classes::Real gapsz
a weighted average of the gaps between maximum Ritz_value and the Ritz_value of the largest active in...
Definition: PSCModelParameters.hxx:37
double Real
all real numbers in calculations are of this type
Definition: matop.hxx:50
PSCModelParameters(const BundleParameters &bp, const CBout *cb=0, int incr=-1)
copy constructor for BundleParameters
Definition: PSCModelParameters.hxx:53
CH_Matrix_Classes::Real cutoffval
an averaged bound on Ritzvalues for being included in the model
Definition: PSCModelParameters.hxx:36
Header declaring the class ConicBundle::PSCModelParametersObject.
conic bundle method solver for sum of convex functions. See the ConicBundle_Manual for a quick introd...
Definition: CBSolver.hxx:22
Oracle interface for minimization of the maximum eigenvalue of an affine matrix function or...
Definition: PSCOracle.hxx:233
base class for uniform use of WARNINGS and ERRORS (at some point in time)
Definition: CBout.hxx:30
abstract interface for PSCModel for the model selection routine select_model()
Definition: PSCModelParametersObject.hxx:93
ModelUpdate
for informing update_model() at what stage it is called to update the bundle so that the amount of in...
Definition: BundleModel.hxx:149
BundleParameters * clone_BundleParameters() const
clone
Definition: PSCModelParameters.hxx:66
CH_Matrix_Classes::Real Ritz_skipval
a weighted average for Ritz_values to be discarded
Definition: PSCModelParameters.hxx:38
PSCModelParameters(int modelsize, int bundlesize=10, int updaterule=0, const CBout *cb=0, int incr=-1)
constructor for size parameters
Definition: PSCModelParameters.hxx:48
Serves for specifying parameters regarding the construction of cutting models.
Definition: CBSolver.hxx:891
virtual ~PSCModelParameters()
destructor
const Real min_Real
minimal attainable value by a Real
Definition: matop.hxx:56
default model selection routine for PSCModel
Definition: PSCModelParameters.hxx:33
Matrix class for real values of type Real
Definition: matrix.hxx:74
const Real max_Real
maximal attainable value by a Real
Definition: matop.hxx:53
FunctionTask
Each function represented by a FunctionModel is equipped with a function_factor (it defaults to 1...
Definition: CBSolver.hxx:221
PSCModelParameters(const PSCModelParameters &sms)
copy constructor
Definition: PSCModelParameters.hxx:58
PSCModelParameters(const CBout *cb=0, int incr=-1)
default constructor with the possibility to set the output
Definition: PSCModelParameters.hxx:43
virtual int select_model(CH_Matrix_Classes::Matrix &modelvecs, MinorantPointer &model_aggregate, CH_Matrix_Classes::Matrix &topvecs, CH_Matrix_Classes::Matrix &Ritz_values, CH_Matrix_Classes::Integer &activedim, CH_Matrix_Classes::Integer &keepsize, CH_Matrix_Classes::Integer &skippedsize, const CH_Matrix_Classes::Real primal_Ritzval, const CH_Matrix_Classes::Matrix &primaleigs, const CH_Matrix_Classes::Matrix &primalvecs, const MinorantPointer &primal_aggregate, CH_Matrix_Classes::Real primal_aggregate_coeff, CH_Matrix_Classes::Real growthrate, const CH_Matrix_Classes::Matrix &primalgrowth, const CH_Matrix_Classes::Matrix &dualgrowth, const CH_Matrix_Classes::Matrix &cand_Ritzvec, const CH_Matrix_Classes::Matrix &cand_Ritzval, PSCOracle *oracle, CH_Matrix_Classes::Integer modification_id, FunctionTask function_task, CH_Matrix_Classes::Real function_factor, BundleModel::ModelUpdate model_update, CH_Matrix_Classes::Integer center_id, const CH_Matrix_Classes::Matrix &center_y, CH_Matrix_Classes::Integer cand_id, const CH_Matrix_Classes::Matrix &cand_y, CH_Matrix_Classes::Real model_maxviol, CH_Matrix_Classes::Real diffval_center_aggregate, BundleProxObject &H)
PSCModel calls this for selecting the next positive semidefinite model.
CH_Matrix_Classes::Integer n_nullsteps
counts the number of null steps since last descent step
Definition: PSCModelParameters.hxx:39
points to MinorantUseData that may be shared by many and allows computations with Minorants ...
Definition: MinorantPointer.hxx:34