Couenne  0.5.8
CouenneComplObject.hpp
Go to the documentation of this file.
1 /* $Id: CouenneComplObject.hpp 615 2011-06-08 20:36:24Z pbelotti $
2  *
3  * Name: CouenneComplObject.hpp
4  * Authors: Pietro Belotti, Lehigh University
5  * Purpose: Branching object for complementarity constraints
6  *
7  * (C) Carnegie-Mellon University, 2008-10.
8  * This file is licensed under the Eclipse Public License (EPL)
9  */
10 
11 #ifndef COUENNECOMPLOBJECT_HPP
12 #define COUENNECOMPLOBJECT_HPP
13 
14 #include "CouenneObject.hpp"
15 
16 namespace Couenne {
17 
21 
23 
24 public:
25 
28  CouenneProblem *p,
29  exprVar *ref, Bonmin::BabSetupBase *base, JnlstPtr jnlst,
30  int sign);
31 
34  int sign);
35 
38 
41 
43  virtual CouenneObject * clone () const
44  {return new CouenneComplObject (*this);}
45 
48  virtual double infeasibility (const OsiBranchingInformation *info, int &way) const;
49 
52  virtual double checkInfeasibility (const OsiBranchingInformation * info) const;
53 
58  int way) const;
59 private:
60 
64  int sign_;
65 
66 };
67 
68 }
69 
70 #endif
Couenne::CouenneComplObject::checkInfeasibility
virtual double checkInfeasibility(const OsiBranchingInformation *info) const
compute infeasibility of this variable, |w - f(x)|, where w is the auxiliary variable defined as w = ...
Couenne::CouenneComplObject::clone
virtual CouenneObject * clone() const
Cloning method.
Definition: CouenneComplObject.hpp:43
Couenne::CouenneComplObject::createBranch
virtual OsiBranchingObject * createBranch(OsiSolverInterface *, const OsiBranchingInformation *, int way) const
create CouenneBranchingObject or CouenneThreeWayBranchObj based on this object
Couenne::CouenneCutGenerator
Cut Generator for linear convexifications.
Definition: CouenneCutGenerator.hpp:49
Couenne
general include file for different compilers
Definition: CouenneAggrProbing.hpp:24
Bonmin::BabSetupBase
Couenne::CouenneObject
OsiObject for auxiliary variables $w=f(x)$.
Definition: CouenneObject.hpp:57
Couenne::CouenneComplObject
OsiObject for complementarity constraints .
Definition: CouenneComplObject.hpp:22
Ipopt::SmartPtr< Ipopt::Journalist >
Couenne::exprVar
variable-type operator
Definition: CouenneExprVar.hpp:45
OsiSolverInterface
Couenne::CouenneComplObject::~CouenneComplObject
~CouenneComplObject()
Destructor.
Definition: CouenneComplObject.hpp:37
OsiBranchingInformation
Couenne::CouenneComplObject::CouenneComplObject
CouenneComplObject(CouenneCutGenerator *c, CouenneProblem *p, exprVar *ref, Bonmin::BabSetupBase *base, JnlstPtr jnlst, int sign)
Constructor with information for branching point selection strategy.
CouenneObject.hpp
OsiBranchingObject
OsiObject::infeasibility
double infeasibility() const
Couenne::CouenneProblem
Class for MINLP problems with symbolic information.
Definition: CouenneProblem.hpp:169