Bonmin
1.8.9
Toggle main menu visibility
Loading...
Searching...
No Matches
src
Algorithms
Branching
BonLpBranchingSolver.hpp
Go to the documentation of this file.
1
// Copyright (C) 2006, 2007 International Business Machines
2
// Corporation and others. All Rights Reserved.
3
#ifndef BonLpBranchingSolver_H
4
#define BonLpBranchingSolver_H
5
6
#include "
BonStrongBranchingSolver.hpp
"
7
#include "
BonEcpCuts.hpp
"
8
9
namespace
Bonmin
10
{
11
14
15
class
LpBranchingSolver
:
public
StrongBranchingSolver
16
{
17
18
public
:
19
21
LpBranchingSolver
(
BabSetupBase
*b);
23
LpBranchingSolver
(
const
LpBranchingSolver
&);
24
26
LpBranchingSolver
&
operator=
(
const
LpBranchingSolver
& rhs);
27
29
virtual
~LpBranchingSolver
();
30
33
virtual
void
markHotStart
(
OsiTMINLPInterface
* tminlp_interface);
34
36
virtual
TNLPSolver::ReturnStatus
solveFromHotStart
(
OsiTMINLPInterface
* tminlp_interface);
37
39
virtual
void
unmarkHotStart
(
OsiTMINLPInterface
* tminlp_interface);
40
41
void
setMaxCuttingPlaneIter
(
int
num)
42
{
43
maxCuttingPlaneIterations_ = num;
44
}
45
46
static
void
registerOptions
(
Ipopt::SmartPtr<Bonmin::RegisteredOptions>
roptions);
47
48
private
:
50
LpBranchingSolver
();
51
53
OsiSolverInterface
* lin_;
54
56
CoinWarmStart
* warm_;
57
59
EcpCuts
* ecp_;
60
62
int
maxCuttingPlaneIterations_;
63
65
double
abs_ecp_tol_;
66
68
double
rel_ecp_tol_;
69
70
71
enum
WarmStartMethod {
72
Basis=0 ,
73
Clone
74
};
76
WarmStartMethod warm_start_mode_;
77
};
78
79
}
80
#endif
BonEcpCuts.hpp
BonStrongBranchingSolver.hpp
Bonmin::BabSetupBase
A class to have all elements necessary to setup a branch-and-bound.
Definition
BonBabSetupBase.hpp:26
Bonmin::EcpCuts
Definition
BonEcpCuts.hpp:18
Bonmin::LpBranchingSolver::markHotStart
virtual void markHotStart(OsiTMINLPInterface *tminlp_interface)
Called to initialize solver before a bunch of strong branching solves.
Bonmin::LpBranchingSolver::LpBranchingSolver
LpBranchingSolver(const LpBranchingSolver &)
Copy constructor.
Bonmin::LpBranchingSolver::solveFromHotStart
virtual TNLPSolver::ReturnStatus solveFromHotStart(OsiTMINLPInterface *tminlp_interface)
Called to solve the current TMINLP (with changed bound information).
Bonmin::LpBranchingSolver::unmarkHotStart
virtual void unmarkHotStart(OsiTMINLPInterface *tminlp_interface)
Called after all strong branching solves in a node.
Bonmin::LpBranchingSolver::operator=
LpBranchingSolver & operator=(const LpBranchingSolver &rhs)
Assignment operator.
Bonmin::LpBranchingSolver::registerOptions
static void registerOptions(Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
Bonmin::LpBranchingSolver::~LpBranchingSolver
virtual ~LpBranchingSolver()
Destructor.
Bonmin::LpBranchingSolver::LpBranchingSolver
LpBranchingSolver(BabSetupBase *b)
Constructor from setup.
Bonmin::LpBranchingSolver::setMaxCuttingPlaneIter
void setMaxCuttingPlaneIter(int num)
Definition
BonLpBranchingSolver.hpp:41
Bonmin::OsiTMINLPInterface
This is class provides an Osi interface for a Mixed Integer Linear Program expressed as a TMINLP (so ...
Definition
BonOsiTMINLPInterface.hpp:49
Bonmin::StrongBranchingSolver::StrongBranchingSolver
StrongBranchingSolver(OsiTMINLPInterface *solver)
Constructor from solver.
Bonmin::TNLPSolver::ReturnStatus
ReturnStatus
Standard return statuses for a solver.
Definition
BonTNLPSolver.hpp:29
CoinWarmStart
Ipopt::SmartPtr
OsiSolverInterface
Bonmin
(C) Copyright International Business Machines Corporation 2007
Definition
BonAmplSetup.hpp:16
Generated by
1.17.0