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 
7 #include "BonEcpCuts.hpp"
8 
9 namespace Bonmin
10 {
11 
16  {
17 
18  public:
19 
24 
27 
29  virtual ~LpBranchingSolver ();
30 
33  virtual void markHotStart(OsiTMINLPInterface* tminlp_interface);
34 
37 
39  virtual void unmarkHotStart(OsiTMINLPInterface* tminlp_interface);
40 
41  void setMaxCuttingPlaneIter(int num)
42  {
44  }
45 
47 
48  private:
51 
53  OsiSolverInterface* lin_;
54 
56  CoinWarmStart* warm_;
57 
60 
63 
65  double abs_ecp_tol_;
66 
68  double rel_ecp_tol_;
69 
70 
72  Basis=0 ,
74  };
77  };
78 
79 }
80 #endif
WarmStartMethod warm_start_mode_
Way problems are warm started.
This class is the base class for a solver that can be used in BonOsiSolverInterface to perform the st...
This is class provides an Osi interface for a Mixed Integer Linear Program expressed as a TMINLP (so ...
LpBranchingSolver & operator=(const LpBranchingSolver &rhs)
Assignment operator.
CoinWarmStart * warm_
Warm start object for linear solver.
LpBranchingSolver()
Default Constructor.
double abs_ecp_tol_
absolute tolerance for ECP cuts
int maxCuttingPlaneIterations_
Number of maximal ECP cuts.
A class to have all elements necessary to setup a branch-and-bound.
virtual ~LpBranchingSolver()
Destructor.
Implementation of BonChooseVariable for curvature-based braching.
ReturnStatus
Standard return statuses for a solver.
OsiSolverInterface * lin_
Linear solver.
EcpCuts * ecp_
Ecp cut generate.
virtual void unmarkHotStart(OsiTMINLPInterface *tminlp_interface)
Called after all strong branching solves in a node.
static void registerOptions(Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
return b
Definition: OSdtoa.cpp:1719
double rel_ecp_tol_
relative tolerance for ECP cuts
virtual void markHotStart(OsiTMINLPInterface *tminlp_interface)
Called to initialize solver before a bunch of strong branching solves.
virtual TNLPSolver::ReturnStatus solveFromHotStart(OsiTMINLPInterface *tminlp_interface)
Called to solve the current TMINLP (with changed bound information)