Blis 0.94
BlisHelp.h
Go to the documentation of this file.
1/*===========================================================================*
2 * This file is part of the BiCePS Linear Integer Solver (BLIS). *
3 * *
4 * BLIS 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//#############################################################################
25
26#ifndef BlisHelp_h_
27#define BlisHelp_h_
28
29#include "AlpsEncoded.h"
30
31#include "Blis.h"
32
34class OsiRowCut;
35class BlisConstraint;
36class BlisModel;
37
38//#############################################################################
39
42
44BlisReturnStatus BlisStrongBranch(BlisModel *model, double objValue, int colInd, double x,
45 const double *saveLower, const double *saveUpper,
46 bool &downKeep, bool &downFinished, double &downDeg,
47 bool &upKeep, bool &upFinished, double &upDeg);
48
51
55
57double BlisHashingOsiRowCut(const OsiRowCut *rowCut,
58 const BlisModel *model);
59
62 OsiRowCut * rowCut2,
63 double threshold = 1.0);
64
67 BlisConstraint * con,
68 double threshold = 1.0);
69
72 BlisConstraint * con2,
73 double threshold = 1.0);
74
75
76#endif
AlpsReturnStatus
BlisConstraint * BlisOsiCutToConstraint(const OsiRowCut *rowCut)
Convert a OsiRowCut to a Blis Contraint.
bool BlisParallelCutCut(OsiRowCut *rowCut1, OsiRowCut *rowCut2, double threshold=1.0)
Check if a row cut parallel with another row cut.
bool BlisParallelCutCon(OsiRowCut *rowCut, BlisConstraint *con, double threshold=1.0)
Check if a row cut parallel with a constraint.
CoinWarmStartBasis * BlisDecodeWarmStart(AlpsEncoded &encoded, AlpsReturnStatus *rc)
Unpack coin warm start from an encoded object.
BlisReturnStatus BlisStrongBranch(BlisModel *model, double objValue, int colInd, double x, const double *saveLower, const double *saveUpper, bool &downKeep, bool &downFinished, double &downDeg, bool &upKeep, bool &upFinished, double &upDeg)
Strong branching on a variable colInd.
double BlisHashingOsiRowCut(const OsiRowCut *rowCut, const BlisModel *model)
Compute and return a hash value of an Osi row cut.
int BlisEncodeWarmStart(AlpsEncoded *encoded, const CoinWarmStartBasis *ws)
Pack coin warm start into an encoded object.
bool BlisParallelConCon(BlisConstraint *con1, BlisConstraint *con2, double threshold=1.0)
Check if a row cut parallel with a constraint.
BlisReturnStatus
Definition: Blis.h:48