Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
Bonmin::OaFeasibilityChecker Class Reference

Class to perform OA in its classical form. More...

#include <BonOaFeasChecker.hpp>

Inheritance diagram for Bonmin::OaFeasibilityChecker:
Inheritance graph
[legend]
Collaboration diagram for Bonmin::OaFeasibilityChecker:
Collaboration graph
[legend]

Public Member Functions

 OaFeasibilityChecker (BabSetupBase &b)
 New usefull constructor. More...
 
 OaFeasibilityChecker (const OaFeasibilityChecker &copy)
 Copy constructor. More...
 
 ~OaFeasibilityChecker ()
 Destructor. More...
 
virtual CglCutGenerator * clone () const
 
- Public Member Functions inherited from Bonmin::OaDecompositionBase
 OaDecompositionBase (BabSetupBase &b, bool leaveSiUnchanged, bool reassignLpsolver)
 New usefull constructor. More...
 
 OaDecompositionBase (const OaDecompositionBase &copy)
 Copy constructor. More...
 
virtual ~OaDecompositionBase ()
 Destructor. More...
 
virtual void generateCuts (const OsiSolverInterface &si, OsiCuts &cs, const CglTreeInfo info=CglTreeInfo())
 Standard cut generation methods. More...
 
void assignNlpInterface (OsiTMINLPInterface *nlp)
 Assign an OsiTMINLPInterface. More...
 
void assignLpInterface (OsiSolverInterface *si)
 Assign an OsiTMINLPInterface. More...
 
bool reassignLpsolver ()
 
void setObjects (OsiObject **objects, int nObjects)
 Set objects. More...
 
void setLeaveSiUnchanged (bool yesno)
 Set whether to leave the solverinterface unchanged. More...
 
Parametersparameter ()
 
const Parametersparameter () const
 
void setLogLevel (int level)
 
void setReassignLpSolver (bool v)
 
void passInMessageHandler (CoinMessageHandler *handler)
 

Static Public Member Functions

static void registerOptions (Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
 Register OA options. More...
 

Protected Types

enum  CutsPolicies { DetectCycles = 0, KeepAll, TreatAsNormal }
 See documentation for feas_check_discard_policy option. More...
 
enum  CutsTypes { OA = 0, Benders }
 See documentation for feas_check_cut_types option. More...
 

Protected Member Functions

virtual double performOa (OsiCuts &cs, solverManip &lpManip, BabInfo *babInfo, double &cutoff, const CglTreeInfo &info) const
 virtual method which performs the OA algorithm by modifying lp and nlp. More...
 
virtual bool doLocalSearch (BabInfo *babInfo) const
 virutal method to decide if local search is performed More...
 
- Protected Member Functions inherited from Bonmin::OaDecompositionBase
void setupMipSolver (BabSetupBase &b, const std::string &prefix)
 
bool post_nlp_solve (BabInfo *babInfo, double cutoff) const
 Solve the nlp and do output. More...
 

Protected Attributes

CutsPolicies pol_
 Policy for keeping cuts. More...
 
CutsTypes type_
 Type of cuts. More...
 
unsigned int cut_count_
 Count the total number of cuts generated. More...
 
unsigned int maximum_oa_cuts_
 maximum number of OA cuts. More...
 
- Protected Attributes inherited from Bonmin::OaDecompositionBase
OsiTMINLPInterfacenlp_
 Pointer to nlp interface. More...
 
BabSetupBases_
 Pointer to setup. More...
 
int nSolve_
 Number of nlp solved done. More...
 
OsiSolverInterface * lp_
 A linear solver. More...
 
OsiObject ** objects_
 Some objects the feasiblitiy of which to verify. More...
 
int nObjects_
 Number of objects.*/. More...
 
int nLocalSearch_
 number of local searches performed More...
 
CoinMessageHandler * handler_
 messages handler. More...
 
CoinMessages messages_
 Messages for OA. More...
 
bool leaveSiUnchanged_
 Wether or not we should remove cuts at the end of the procedure. More...
 
bool reassignLpsolver_
 Do we need to reassign the lp solver with Cbc. More...
 
double timeBegin_
 time of construction More...
 
int numSols_
 number of solutions found by OA_decomposition. More...
 
Parameters parameters_
 Parameters. More...
 
OsiCuts savedCuts_
 Saved cuts: in some cases when using OA to check feasible solution algorithm may loop because Cbc removes inactive cuts. More...
 
int currentNodeNumber_
 Store the current node number. More...
 

Detailed Description

Class to perform OA in its classical form.

Definition at line 18 of file BonOaFeasChecker.hpp.

Member Enumeration Documentation

See documentation for feas_check_discard_policy option.

Enumerator
DetectCycles 
KeepAll 
TreatAsNormal 

Definition at line 53 of file BonOaFeasChecker.hpp.

See documentation for feas_check_cut_types option.

Enumerator
OA 
Benders 

Definition at line 61 of file BonOaFeasChecker.hpp.

Constructor & Destructor Documentation

Bonmin::OaFeasibilityChecker::OaFeasibilityChecker ( BabSetupBase b)

New usefull constructor.

Definition at line 21 of file BonOaFeasChecker.cpp.

Bonmin::OaFeasibilityChecker::OaFeasibilityChecker ( const OaFeasibilityChecker copy)
inline

Copy constructor.

Definition at line 24 of file BonOaFeasChecker.hpp.

Bonmin::OaFeasibilityChecker::~OaFeasibilityChecker ( )

Destructor.

Definition at line 33 of file BonOaFeasChecker.cpp.

Member Function Documentation

void Bonmin::OaFeasibilityChecker::registerOptions ( Ipopt::SmartPtr< Bonmin::RegisteredOptions roptions)
static

Register OA options.

Register OA feasibility checker options.

Definition at line 140 of file BonOaFeasChecker.cpp.

virtual CglCutGenerator* Bonmin::OaFeasibilityChecker::clone ( ) const
inlinevirtual

Definition at line 38 of file BonOaFeasChecker.hpp.

double Bonmin::OaFeasibilityChecker::performOa ( OsiCuts &  cs,
solverManip lpManip,
BabInfo babInfo,
double &  cutoff,
const CglTreeInfo &  info 
) const
protectedvirtual

virtual method which performs the OA algorithm by modifying lp and nlp.

OaDecomposition method.

Implements Bonmin::OaDecompositionBase.

Definition at line 38 of file BonOaFeasChecker.cpp.

virtual bool Bonmin::OaFeasibilityChecker::doLocalSearch ( BabInfo babInfo) const
inlineprotectedvirtual

virutal method to decide if local search is performed

Implements Bonmin::OaDecompositionBase.

Definition at line 47 of file BonOaFeasChecker.hpp.

Member Data Documentation

CutsPolicies Bonmin::OaFeasibilityChecker::pol_
protected

Policy for keeping cuts.

Definition at line 58 of file BonOaFeasChecker.hpp.

CutsTypes Bonmin::OaFeasibilityChecker::type_
protected

Type of cuts.

Definition at line 65 of file BonOaFeasChecker.hpp.

unsigned int Bonmin::OaFeasibilityChecker::cut_count_
mutableprotected

Count the total number of cuts generated.

Definition at line 68 of file BonOaFeasChecker.hpp.

unsigned int Bonmin::OaFeasibilityChecker::maximum_oa_cuts_
protected

maximum number of OA cuts.

Definition at line 70 of file BonOaFeasChecker.hpp.


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