QuadraticUnderestimator Class Reference

Class to compute a quadratic underestimators of nonconvex functions. More...

#include <quaduest.h>

Collaboration diagram for QuadraticUnderestimator:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 QuadraticUnderestimator (Pointer< Param > param_=NULL)
void quadratic_underestimator (MinlpProblem &prob, MINLPData &minlpdata, ivector &ineq_index, SparseVector< double > &obj_c_add, vector< SparseVector< double > > &con_c_add)
Pointer< SepQcFuncquadratic_underestimator (Pointer< SepQcFunc > f, bool eq, dvector &lower, dvector &upper, dvector &primal)

Public Attributes

SparseVector< double > c_add1
SparseVector< double > c_add2
double U3_time
double locopt_time
double max_abscoeff
int max_locmin
int nr_estimators

Private Member Functions

void new_multiindices (const SparsityInfo &si, int n)
void new_sampleset (const dvector &lower, const dvector &upper)
void check_for_nan (const Func &f)
multimap< double, dvector
>::iterator 
add_point_to_sampleset (const dvector &point)
multimap< double, dvector
>::iterator 
add_minimizer_to_sample (Pointer< Func > f, const dvector &lower, const dvector &upper, dvector &start)
void quadratic_underestimator (SparseMatrix2 &A, SparseVector< double > &b, double &c, const Pointer< Func > &f, ivector &indices, const Pointer< dvector > &lower, const Pointer< dvector > &upper)
 new quadratic underestimator, based on A.
bool do_locmin (BoxLocOpt &locminsolver, const Pointer< Func > &f, dvector &start, double &f_val, double &viol1, double &viol2, double &scale2, dvector &b1)

Private Attributes

Pointer< Paramparam
double eps
int iter_max
double time_max
Sampling sampling
Sampling_Vertices sampling_vertices
Sampling_Minimizer sampling_minimizer
int sampling_initial
multimap< double, dvectorsample_set
multimap< double, dvector
>::iterator 
enforce_tightness
list< MultiIndexmultiindices
list< Monommonoms
Decomposition decomp

Detailed Description

Class to compute a quadratic underestimators of nonconvex functions.

Parameters:
Quadratic Underestimator iteration limit options >0 default 10 level 1 How often (at most) we should refit the underestimator of a function.
Quadratic Underestimator time limit options >=0 default 0 level 1 How long (at most) we should refit the underestimator of a function. 0 means no timelimit.
Quadratic Underestimator epsilon options >=0 default 0.0001 level 0 How big should the buffer in the underestimator for newly computed sample points be.
Quadratic Underestimator sample set Monte Carlo options integer >= 0 default 20 level 1
Quadratic Underestimator sample set mid point options 0, 1 default 0 level 1
Quadratic Underestimator sample set box ends options 0, 1 default 0 level 1
Quadratic Underestimator sample set vertices2 options integer >= 0 default 200 level 1
Quadratic Underestimator sample set minimizer options 0, 1 default 1 level 1
Quadratic Underestimator sample set initial options 0, 1 default 1 level 1

Definition at line 59 of file quaduest.h.


Constructor & Destructor Documentation

QuadraticUnderestimator::QuadraticUnderestimator ( Pointer< Param param_ = NULL  ) 


Member Function Documentation

void QuadraticUnderestimator::new_multiindices ( const SparsityInfo si,
int  n 
) [private]

void QuadraticUnderestimator::new_sampleset ( const dvector lower,
const dvector upper 
) [private]

void QuadraticUnderestimator::check_for_nan ( const Func f  )  [private]

multimap<double, dvector>::iterator QuadraticUnderestimator::add_point_to_sampleset ( const dvector point  )  [private]

multimap<double, dvector>::iterator QuadraticUnderestimator::add_minimizer_to_sample ( Pointer< Func f,
const dvector lower,
const dvector upper,
dvector start 
) [private]

void QuadraticUnderestimator::quadratic_underestimator ( SparseMatrix2 A,
SparseVector< double > &  b,
double &  c,
const Pointer< Func > &  f,
ivector indices,
const Pointer< dvector > &  lower,
const Pointer< dvector > &  upper 
) [private]

new quadratic underestimator, based on A.

Neumaiers idea

bool QuadraticUnderestimator::do_locmin ( BoxLocOpt locminsolver,
const Pointer< Func > &  f,
dvector start,
double &  f_val,
double &  viol1,
double &  viol2,
double &  scale2,
dvector b1 
) [private]

void QuadraticUnderestimator::quadratic_underestimator ( MinlpProblem prob,
MINLPData minlpdata,
ivector ineq_index,
SparseVector< double > &  obj_c_add,
vector< SparseVector< double > > &  con_c_add 
)

Pointer<SepQcFunc> QuadraticUnderestimator::quadratic_underestimator ( Pointer< SepQcFunc f,
bool  eq,
dvector lower,
dvector upper,
dvector primal 
)


Member Data Documentation

Pointer<Param> QuadraticUnderestimator::param [private]

Definition at line 61 of file quaduest.h.

double QuadraticUnderestimator::eps [private]

Definition at line 63 of file quaduest.h.

int QuadraticUnderestimator::iter_max [private]

Definition at line 64 of file quaduest.h.

double QuadraticUnderestimator::time_max [private]

Definition at line 65 of file quaduest.h.

Sampling QuadraticUnderestimator::sampling [private]

Definition at line 67 of file quaduest.h.

Sampling_Vertices QuadraticUnderestimator::sampling_vertices [private]

Definition at line 68 of file quaduest.h.

Sampling_Minimizer QuadraticUnderestimator::sampling_minimizer [private]

Definition at line 69 of file quaduest.h.

int QuadraticUnderestimator::sampling_initial [private]

Definition at line 70 of file quaduest.h.

multimap<double, dvector> QuadraticUnderestimator::sample_set [private]

Definition at line 72 of file quaduest.h.

multimap<double, dvector>::iterator QuadraticUnderestimator::enforce_tightness [private]

Definition at line 73 of file quaduest.h.

list<MultiIndex> QuadraticUnderestimator::multiindices [private]

Definition at line 75 of file quaduest.h.

list<Monom> QuadraticUnderestimator::monoms [private]

Definition at line 76 of file quaduest.h.

Decomposition QuadraticUnderestimator::decomp [private]

Definition at line 78 of file quaduest.h.

SparseVector<double> QuadraticUnderestimator::c_add1

Definition at line 94 of file quaduest.h.

SparseVector<double> QuadraticUnderestimator::c_add2

Definition at line 94 of file quaduest.h.

double QuadraticUnderestimator::U3_time

Definition at line 96 of file quaduest.h.

double QuadraticUnderestimator::locopt_time

Definition at line 96 of file quaduest.h.

double QuadraticUnderestimator::max_abscoeff

Definition at line 96 of file quaduest.h.

int QuadraticUnderestimator::max_locmin

Definition at line 97 of file quaduest.h.

int QuadraticUnderestimator::nr_estimators

Definition at line 97 of file quaduest.h.


The documentation for this class was generated from the following file:
Generated on Mon Oct 20 03:12:47 2008 for LaGO by  doxygen 1.4.7