Cbc
2.10.13
Toggle main menu visibility
Loading...
Searching...
No Matches
Cbc
src
CbcBranchAllDifferent.hpp
Go to the documentation of this file.
1
// $Id$
2
// Copyright (C) 2004, International Business Machines
3
// Corporation and others. All Rights Reserved.
4
// This code is licensed under the terms of the Eclipse Public License (EPL).
5
6
// Edwin 11/13/2009-- carved out of CbcBranchCut
7
8
#ifndef CbcBranchAllDifferent_H
9
#define CbcBranchAllDifferent_H
10
11
#include "
CbcBranchBase.hpp
"
12
#include "OsiRowCut.hpp"
13
#include "CoinPackedMatrix.hpp"
14
#include "
CbcBranchCut.hpp
"
15
20
21
class
CbcBranchAllDifferent
:
public
CbcBranchCut
{
22
23
public
:
24
// Default Constructor
25
CbcBranchAllDifferent
();
26
29
CbcBranchAllDifferent
(
CbcModel
*
model
,
int
number,
const
int
*which);
30
31
// Copy constructor
32
CbcBranchAllDifferent
(
const
CbcBranchAllDifferent
&);
33
35
virtual
CbcObject *
clone
()
const
;
36
37
// Assignment operator
38
CbcBranchAllDifferent
&
operator=
(
const
CbcBranchAllDifferent
&rhs);
39
40
// Destructor
41
~CbcBranchAllDifferent
();
42
44
virtual
double
infeasibility
(
const
OsiBranchingInformation *info,
45
int
&
preferredWay
)
const
;
46
48
virtual
CbcBranchingObject
*
createCbcBranch
(OsiSolverInterface *solver,
const
OsiBranchingInformation *info,
int
way
);
49
50
protected
:
52
54
int
numberInSet_
;
56
int
*
which_
;
57
};
58
#endif
59
60
/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
61
*/
CbcBranchBase.hpp
CbcBranchCut.hpp
way
int way() const
model
CbcModel * model() const
Return model.
Definition
CbcObject.hpp:252
preferredWay
int preferredWay() const
If -1 down always chosen first, +1 up always, 0 normal.
Definition
CbcObject.hpp:258
CbcBranchAllDifferent::CbcBranchAllDifferent
CbcBranchAllDifferent(const CbcBranchAllDifferent &)
CbcBranchAllDifferent::createCbcBranch
virtual CbcBranchingObject * createCbcBranch(OsiSolverInterface *solver, const OsiBranchingInformation *info, int way)
Creates a branching object.
CbcBranchAllDifferent::~CbcBranchAllDifferent
~CbcBranchAllDifferent()
CbcBranchAllDifferent::CbcBranchAllDifferent
CbcBranchAllDifferent(CbcModel *model, int number, const int *which)
Useful constructor - passed set of integer variables which must all be different.
CbcBranchAllDifferent::infeasibility
virtual double infeasibility(const OsiBranchingInformation *info, int &preferredWay) const
Infeasibility - large is 0.5.
CbcBranchAllDifferent::numberInSet_
int numberInSet_
data
Definition
CbcBranchAllDifferent.hpp:54
CbcBranchAllDifferent::operator=
CbcBranchAllDifferent & operator=(const CbcBranchAllDifferent &rhs)
CbcBranchAllDifferent::clone
virtual CbcObject * clone() const
Clone.
CbcBranchAllDifferent::CbcBranchAllDifferent
CbcBranchAllDifferent()
CbcBranchAllDifferent::which_
int * which_
Which variables.
Definition
CbcBranchAllDifferent.hpp:56
CbcBranchCut::CbcBranchCut
CbcBranchCut()
CbcBranchingObject
Abstract branching object base class Now just difference with OsiBranchingObject.
Definition
CbcBranchingObject.hpp:51
CbcModel
Simple Branch and bound class.
Definition
CbcModel.hpp:100
Generated by
1.17.0