Couenne
0.5.8
src
bound_tightening
CouenneFixPoint.hpp
Go to the documentation of this file.
1
/* $Id: CouenneFixPoint.hpp 1239 2018-01-11 00:09:39Z pbelotti $
2
*
3
* Name: CouenneFixPoint.hpp
4
* Author: Pietro Belotti
5
* Purpose: A bound tightener based on fixpoint computation
6
*
7
* (C) Pietro Belotti, 2010.
8
* This file is licensed under the Eclipse Public License (EPL)
9
*/
10
11
#ifndef COUENNEFIXPOINT_HPP
12
#define COUENNEFIXPOINT_HPP
13
14
#include "
BonRegisteredOptions.hpp
"
15
16
#include "
BonOaDecBase.hpp
"
17
#include "
CglConfig.h
"
18
#include "
CglCutGenerator.hpp
"
19
#include "
OsiRowCut.hpp
"
20
#include "
OsiSolverInterface.hpp
"
21
22
#include "
CouenneBTPerfIndicator.hpp
"
23
24
namespace
Couenne
{
25
26
class
CouenneProblem;
27
29
30
class
CouenneFixPoint
:
public
CglCutGenerator
{
31
32
public
:
33
35
CouenneFixPoint
(
CouenneProblem
*,
36
const
Ipopt::SmartPtr<Ipopt::OptionsList>
);
37
39
CouenneFixPoint
(
const
CouenneFixPoint
&);
40
42
~CouenneFixPoint
();
43
45
CouenneFixPoint
*
clone
()
const
46
{
return
new
CouenneFixPoint
(*
this
);}
47
49
void
generateCuts
(
const
OsiSolverInterface
&,
50
OsiCuts
&,
51
const
CglTreeInfo
=
CglTreeInfo
())
52
#if CGL_VERSION_MAJOR == 0 && CGL_VERSION_MINOR <= 57
53
const
54
#endif
55
;
56
58
static
void
registerOptions
(
Ipopt::SmartPtr <Bonmin::RegisteredOptions>
roptions);
59
60
protected
:
61
63
bool
extendedModel_
;
64
66
CouenneProblem
*
problem_
;
67
69
mutable
bool
firstCall_
;
70
72
mutable
double
CPUtime_
;
73
75
mutable
int
nTightened_
;
76
78
int
levelStop_
;
79
81
void
createRow
(
int
,
int
,
82
int
,
83
OsiSolverInterface
*,
84
const
int
*,
85
const
double
*,
86
const
double
,
87
const
int
,
88
bool
,
89
int
,
int
)
const
;
90
92
CouenneBTPerfIndicator
perfIndicator_
;
93
};
94
}
95
96
#endif
Couenne::CouenneFixPoint::generateCuts
void generateCuts(const OsiSolverInterface &, OsiCuts &, const CglTreeInfo=CglTreeInfo()) const
the main CglCutGenerator
CglTreeInfo
Couenne::CouenneFixPoint::CouenneFixPoint
CouenneFixPoint(CouenneProblem *, const Ipopt::SmartPtr< Ipopt::OptionsList >)
constructor
OsiSolverInterface.hpp
Couenne::CouenneFixPoint::perfIndicator_
CouenneBTPerfIndicator perfIndicator_
Performance indicator.
Definition:
CouenneFixPoint.hpp:92
Couenne
general include file for different compilers
Definition:
CouenneAggrProbing.hpp:24
Couenne::CouenneFixPoint
Cut Generator for FBBT fixpoint.
Definition:
CouenneFixPoint.hpp:30
BonRegisteredOptions.hpp
Couenne::CouenneFixPoint::createRow
void createRow(int, int, int, OsiSolverInterface *, const int *, const double *, const double, const int, bool, int, int) const
Create a single cut.
Couenne::CouenneFixPoint::firstCall_
bool firstCall_
Is this the first call?
Definition:
CouenneFixPoint.hpp:69
CglCutGenerator
Couenne::CouenneFixPoint::extendedModel_
bool extendedModel_
should we use an extended model or a more compact one?
Definition:
CouenneFixPoint.hpp:63
Ipopt::SmartPtr< Ipopt::OptionsList >
OsiRowCut.hpp
OsiCuts
Couenne::CouenneFixPoint::nTightened_
int nTightened_
Number of bounds tightened.
Definition:
CouenneFixPoint.hpp:75
Couenne::CouenneBTPerfIndicator
Definition:
CouenneBTPerfIndicator.hpp:23
OsiSolverInterface
Couenne::CouenneFixPoint::levelStop_
int levelStop_
Level at which to stop.
Definition:
CouenneFixPoint.hpp:78
Couenne::CouenneFixPoint::~CouenneFixPoint
~CouenneFixPoint()
destructor
Couenne::CouenneFixPoint::CouenneFixPoint
CouenneFixPoint(const CouenneFixPoint &)
copy constructor
CglConfig.h
CglCutGenerator.hpp
Couenne::CouenneFixPoint::problem_
CouenneProblem * problem_
pointer to the CouenneProblem representation
Definition:
CouenneFixPoint.hpp:66
CouenneBTPerfIndicator.hpp
Couenne::CouenneFixPoint::registerOptions
static void registerOptions(Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
Add list of options to be read from file.
BonOaDecBase.hpp
Couenne::CouenneFixPoint::CPUtime_
double CPUtime_
CPU time.
Definition:
CouenneFixPoint.hpp:72
Couenne::CouenneProblem
Class for MINLP problems with symbolic information.
Definition:
CouenneProblem.hpp:169
Couenne::CouenneFixPoint::clone
CouenneFixPoint * clone() const
clone method (necessary for the abstract CglCutGenerator class)
Definition:
CouenneFixPoint.hpp:45
Generated by
1.8.18