Blis
0.94
src
BlisBranchStrategyBilevel.h
Go to the documentation of this file.
1
/*===========================================================================*
2
* This file is part of the BiCePS Linear Integer Solver (BLIS). *
3
* *
4
* ALPS is distributed under the Eclipse Public License as part of the *
5
* COIN-OR repository (http://www.coin-or.org). *
6
* *
7
* Authors: *
8
* *
9
* Yan Xu, Lehigh University *
10
* Ted Ralphs, Lehigh University *
11
* *
12
* Conceptual Design: *
13
* *
14
* Yan Xu, Lehigh University *
15
* Ted Ralphs, Lehigh University *
16
* Laszlo Ladanyi, IBM T.J. Watson Research Center *
17
* Matthew Saltzman, Clemson University *
18
* *
19
* *
20
* Copyright (C) 2001-2019, Lehigh University, Yan Xu, and Ted Ralphs. *
21
* All Rights Reserved. *
22
*===========================================================================*/
23
24
#ifndef BlisBranchStrategyBilevel_h_
25
#define BlisBranchStrategyBilevel_h_
26
27
#include "
BcpsBranchObject.h
"
28
#include "
BcpsBranchStrategy.h
"
29
#include "
BlisModel.h
"
30
32
class
BlisBranchStrategyBilevel
:
public
BcpsBranchStrategy
{
33
34
private
:
35
37
BlisBranchStrategyBilevel
& operator=(
const
BlisBranchStrategyBilevel
& rhs);
38
39
public
:
40
42
BlisBranchStrategyBilevel
(){
43
type_
=
static_cast<
int
>
(
BlisBranchingStrategyBilevel
);
44
}
45
47
BlisBranchStrategyBilevel
(
BlisModel
*model) :
BcpsBranchStrategy
(model) {
48
type_
=
static_cast<
int
>
(
BlisBranchingStrategyBilevel
);
49
}
50
52
virtual
~BlisBranchStrategyBilevel
() {}
53
55
BlisBranchStrategyBilevel
(
const
BlisBranchStrategyBilevel
&);
56
58
virtual
BcpsBranchStrategy
*
clone
()
const
{
59
return
new
BlisBranchStrategyBilevel
(*
this
);
60
}
61
63
virtual
int
createCandBranchObjects
(
int
numPassesLeft,
double
ub);
64
70
virtual
int
betterBranchObject
(
BcpsBranchObject
* thisOne,
71
BcpsBranchObject
* bestSoFar);
72
};
73
74
#endif
BlisBranchStrategyBilevel::~BlisBranchStrategyBilevel
virtual ~BlisBranchStrategyBilevel()
Destructor.
Definition:
BlisBranchStrategyBilevel.h:52
BcpsBranchStrategy::type_
int type_
BlisBranchStrategyBilevel::createCandBranchObjects
virtual int createCandBranchObjects(int numPassesLeft, double ub)
Create a set of candidate branching objects.
BlisModel
Definition:
BlisModel.h:69
BlisBranchStrategyBilevel
This class implements maximum infeasibility branching.
Definition:
BlisBranchStrategyBilevel.h:32
BcpsBranchStrategy.h
BlisBranchStrategyBilevel::betterBranchObject
virtual int betterBranchObject(BcpsBranchObject *thisOne, BcpsBranchObject *bestSoFar)
Compare branching object thisOne to bestSoFar.
BcpsBranchObject
BlisModel.h
BlisBranchingStrategyBilevel
@ BlisBranchingStrategyBilevel
Definition:
Blis.h:107
BlisBranchStrategyBilevel::clone
virtual BcpsBranchStrategy * clone() const
Clone a brancing strategy.
Definition:
BlisBranchStrategyBilevel.h:58
BcpsBranchObject.h
BcpsBranchStrategy
BlisBranchStrategyBilevel::BlisBranchStrategyBilevel
BlisBranchStrategyBilevel(BlisModel *model)
Bilevel Constructor.
Definition:
BlisBranchStrategyBilevel.h:47
BlisBranchStrategyBilevel::BlisBranchStrategyBilevel
BlisBranchStrategyBilevel()
Bilevel Constructor.
Definition:
BlisBranchStrategyBilevel.h:42
Generated by
1.8.17