Couenne  0.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CouenneChooseVariable.hpp
Go to the documentation of this file.
1 /* $Id: CouenneChooseVariable.hpp 792 2012-01-24 17:24:15Z pbelotti $
2  *
3  * Name: CouenneChooseVariable.hpp
4  * Authors: Pierre Bonami, IBM Corp.
5  * Pietro Belotti, Carnegie Mellon University
6  * Purpose: Branching object for choosing branching auxiliary variable
7  *
8  * (C) Carnegie-Mellon University, 2006.
9  * This file is licensed under the Eclipse Public License (EPL)
10  */
11 
12 #ifndef COUENNECHOOSEVARIABLE_HPP
13 #define COUENNECHOOSEVARIABLE_HPP
14 
15 #include "OsiChooseVariable.hpp"
16 #include "BonBabInfos.hpp"
17 #include "CouenneJournalist.hpp"
18 #include "BonRegisteredOptions.hpp"
19 
20 namespace Couenne {
21 
22 class CouenneProblem;
23 
27 class CouenneChooseVariable: public OsiChooseVariable {
28 
29 public:
30 
33 
35  CouenneChooseVariable (const OsiSolverInterface *, CouenneProblem *, JnlstPtr jnlst);
36 
39 
42 
44  virtual OsiChooseVariable *clone() const
45  {return new CouenneChooseVariable (*this);}
46 
48  virtual ~CouenneChooseVariable () {}
49 
53  virtual int setupList (OsiBranchingInformation *, bool);
54 
56  virtual bool feasibleSolution (const OsiBranchingInformation * info,
57  const double * solution,
58  int numberObjects,
59  const OsiObject ** objects);
60 
61  // choose object to branch based on earlier setup
62  // virtual int chooseVariable (OsiSolverInterface * solver,
63  // OsiBranchingInformation *info,
64  // bool fixVariables);
65 
68 
69 protected:
70 
73 
76 };
77 
78 }
79 
80 #endif
CouenneProblem * problem_
Pointer to the associated MINLP problem.
virtual OsiChooseVariable * clone() const
Clone.
CouenneChooseVariable()
Default Constructor.
JnlstPtr jnlst_
journalist for detailed debug information
virtual bool feasibleSolution(const OsiBranchingInformation *info, const double *solution, int numberObjects, const OsiObject **objects)
Returns true if solution looks feasible against given objects.
virtual ~CouenneChooseVariable()
Destructor.
static void registerOptions(Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
Add list of options to be read from file.
Class for MINLP problems with symbolic information.
CouenneChooseVariable & operator=(const CouenneChooseVariable &)
Assignment operator.
Choose a variable for branching.
virtual int setupList(OsiBranchingInformation *, bool)
Sets up strong list and clears all if initialize is true.