Blis 0.95.0
Loading...
Searching...
No Matches
BlisBranchStrategyPseudo.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-2023, Lehigh University, Yan Xu, and Ted Ralphs. *
21 * All Rights Reserved. *
22 *===========================================================================*/
23
24
25//#############################################################################
26// NOTE: Borrow ideas from COIN/Cbc
27//#############################################################################
28
29
30#ifndef BlisBranchStrategyPseudo_h_
31#define BlisBranchStrategyPseudo_h_
32
33#include "BcpsBranchObject.h"
34#include "BcpsBranchStrategy.h"
35#include "BlisConfig.h"
36#include "BlisModel.h"
37
38
41class BLISLIB_EXPORT BlisBranchStrategyPseudo : public BcpsBranchStrategy {
42
43 private:
46
47 int relibility_;
48
49 public:
50
52 BlisBranchStrategyPseudo() : relibility_(1) {
53 relibility_ = 1;
54 type_ = static_cast<int>(BlisBranchingStrategyPseudoCost);
55 }
56
59 : BcpsBranchStrategy(model) {
60 relibility_ = rel;
61 type_ = static_cast<int>(BlisBranchingStrategyPseudoCost);
62 }
63
66
69
71 void setRelibility(int rel) { relibility_ = rel; }
72
74 virtual BcpsBranchStrategy * clone() const {
75 return new BlisBranchStrategyPseudo(*this);
76 }
77
83 virtual int betterBranchObject(BcpsBranchObject * thisOne,
84 BcpsBranchObject * bestSoFar);
85
87 virtual int createCandBranchObjects(int numPassesLeft, double ub);
88};
89
90#endif
@ BlisBranchingStrategyPseudoCost
Definition Blis.h:104
virtual ~BlisBranchStrategyPseudo()
Destructor.
BlisBranchStrategyPseudo(BlisModel *model, int rel)
Useful Constructor.
BlisBranchStrategyPseudo()
Default Constructor.
virtual int createCandBranchObjects(int numPassesLeft, double ub)
Create a set of candidate branching objects.
BlisBranchStrategyPseudo(const BlisBranchStrategyPseudo &)
Copy constructor.
virtual BcpsBranchStrategy * clone() const
Clone a brancing strategy.
virtual int betterBranchObject(BcpsBranchObject *thisOne, BcpsBranchObject *bestSoFar)
Compare branching object thisOne to bestSoFar.
void setRelibility(int rel)
Set relibility.
#define BLISLIB_EXPORT
Definition config.h:5