Blis 0.95.0
Loading...
Searching...
No Matches
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-2023, 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 "BlisConfig.h"
32#include "Blis.h"
33
34class CoinWarmStartBasis;
35class OsiRowCut;
36class BlisConstraint;
37class BlisModel;
38
39//#############################################################################
40
43
45BLISLIB_EXPORT BlisReturnStatus BlisStrongBranch(BlisModel *model, double objValue, int colInd,
46 double x, const double *saveLower,
47 const double *saveUpper, bool &downKeep,
48 bool &downFinished, double &downDeg,
49 bool &upKeep, bool &upFinished, double &upDeg);
50
52BLISLIB_EXPORT int BlisEncodeWarmStart(AlpsEncoded *encoded, const CoinWarmStartBasis *ws);
53
55BLISLIB_EXPORT CoinWarmStartBasis *BlisDecodeWarmStart(AlpsEncoded &encoded,
56 AlpsReturnStatus *rc);
57
59BLISLIB_EXPORT double BlisHashingOsiRowCut(const OsiRowCut *rowCut,
60 const BlisModel *model);
61
63BLISLIB_EXPORT bool BlisParallelCutCut(OsiRowCut * rowCut1,
64 OsiRowCut * rowCut2,
65 double threshold = 1.0);
66
68BLISLIB_EXPORT bool BlisParallelCutCon(OsiRowCut * rowCut,
69 BlisConstraint * con,
70 double threshold = 1.0);
71
74 BlisConstraint * con2,
75 double threshold = 1.0);
76
77
78#endif
BLISLIB_EXPORT bool BlisParallelCutCon(OsiRowCut *rowCut, BlisConstraint *con, double threshold=1.0)
Check if a row cut parallel with a constraint.
BLISLIB_EXPORT bool BlisParallelConCon(BlisConstraint *con1, BlisConstraint *con2, double threshold=1.0)
Check if a row cut parallel with a constraint.
BLISLIB_EXPORT int BlisEncodeWarmStart(AlpsEncoded *encoded, const CoinWarmStartBasis *ws)
Pack coin warm start into an encoded object.
BLISLIB_EXPORT bool BlisParallelCutCut(OsiRowCut *rowCut1, OsiRowCut *rowCut2, double threshold=1.0)
Check if a row cut parallel with another row cut.
BLISLIB_EXPORT double BlisHashingOsiRowCut(const OsiRowCut *rowCut, const BlisModel *model)
Compute and return a hash value of an Osi row cut.
BLISLIB_EXPORT BlisConstraint * BlisOsiCutToConstraint(const OsiRowCut *rowCut)
Convert a OsiRowCut to a Blis Contraint.
BLISLIB_EXPORT 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.
BLISLIB_EXPORT CoinWarmStartBasis * BlisDecodeWarmStart(AlpsEncoded &encoded, AlpsReturnStatus *rc)
Unpack coin warm start from an encoded object.
BlisReturnStatus
Definition Blis.h:48
#define BLISLIB_EXPORT
Definition config.h:5