LagHeu2 Class Reference

Another lagrange heuristic. More...

#include <lagheu.h>

Inheritance diagram for LagHeu2:
Inheritance graph
[legend]
Collaboration diagram for LagHeu2:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 LagHeu2 (Pointer< MinlpProblem > orig_prob_, Pointer< LinearRelax > linrelax_, bool is_gams_prob=false, double closeval_tol_=0., Pointer< dvector > diam_=NULL, Pointer< Param > param_=NULL, Pointer< ostream > out_solver_p_=out_out_p, Pointer< ostream > out_solver_log_p_=out_log_p)
int solve (Pointer< MinlpNode > node_)
void set_reform (Pointer< Reformulation > reform_)

Private Member Functions

void search (map< pair< double, int >, multimap< double, list< ExtremePoint >::iterator > >::reverse_iterator it_k, double ns)
bool project (dvector &res)
 Tries to make x feasible.
double key (const dvector &x)
 Gives key for x.

Private Attributes

dvector x
map< pair< double, int >
, multimap< double, list
< ExtremePoint >::iterator > > 
W
 { ((key, k), { (z*_kj, w_kj) }_j }_k
Pointer< MinlpPenaltyFuncpenalty
map< double, dvectorcandidates
int max_candidates
int max_ns
double ns_done
double ns_all
int lastprint

Detailed Description

Another lagrange heuristic.

Parameters:
LagHeu2 max locopt options integer $ 0$ default 100 level 0 Number of best candidates to keep for local optimization.
LagHeu2 max combinations options integer $ 0$ default 10000 level 0 Upper bound on the number of combinations of extreme points to explore.

Definition at line 198 of file lagheu.h.


Constructor & Destructor Documentation

LagHeu2::LagHeu2 ( Pointer< MinlpProblem orig_prob_,
Pointer< LinearRelax linrelax_,
bool  is_gams_prob = false,
double  closeval_tol_ = 0.,
Pointer< dvector diam_ = NULL,
Pointer< Param param_ = NULL,
Pointer< ostream >  out_solver_p_ = out_out_p,
Pointer< ostream >  out_solver_log_p_ = out_log_p 
)

Member Function Documentation

void LagHeu2::search ( map< pair< double, int >, multimap< double, list< ExtremePoint >::iterator > >::reverse_iterator  it_k,
double  ns 
) [private]
bool LagHeu2::project ( dvector res  )  [private]

Tries to make x feasible.

Parameters:
res The vector to store the result in.
Returns:
True, if project_LP was feasible, false else.
double LagHeu2::key ( const dvector x  )  [private]

Gives key for x.

int LagHeu2::solve ( Pointer< MinlpNode node_  )  [virtual]

Implements LagHeu.

void LagHeu2::set_reform ( Pointer< Reformulation reform_  )  [virtual]

Reimplemented from RelaxationSolver.


Member Data Documentation

dvector LagHeu2::x [private]

Definition at line 200 of file lagheu.h.

map<pair<double, int>, multimap<double, list<ExtremePoint>::iterator> > LagHeu2::W [private]

{ ((key, k), { (z*_kj, w_kj) }_j }_k

Definition at line 204 of file lagheu.h.

Definition at line 206 of file lagheu.h.

map<double, dvector> LagHeu2::candidates [private]

Definition at line 208 of file lagheu.h.

int LagHeu2::max_candidates [private]

Definition at line 209 of file lagheu.h.

int LagHeu2::max_ns [private]

Definition at line 211 of file lagheu.h.

double LagHeu2::ns_done [private]

Definition at line 213 of file lagheu.h.

double LagHeu2::ns_all [private]

Definition at line 214 of file lagheu.h.

int LagHeu2::lastprint [private]

Definition at line 215 of file lagheu.h.


The documentation for this class was generated from the following file:

Generated on 10 Mar 2013 for LaGO by  doxygen 1.6.1