- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

# /home/coin/svn-release/Blis-0.94.1/Blis/src/Blis.h

Go to the documentation of this file.

    00001 /*===========================================================================*
    00002  * This file is part of the BiCePS Linear Integer Solver (BLIS).             *
    00003  *                                                                           *
    00004  * BLIS is distributed under the Eclipse Public License as part of the       *
    00005  * COIN-OR repository (http://www.coin-or.org).                              *
    00006  *                                                                           *
    00007  * Authors:                                                                  *
    00008  *                                                                           *
    00009  *          Yan Xu, Lehigh University                                        *
    00010  *          Ted Ralphs, Lehigh University                                    *
    00011  *                                                                           *
    00012  * Conceptual Design:                                                        *
    00013  *                                                                           *
    00014  *          Yan Xu, Lehigh University                                        *
    00015  *          Ted Ralphs, Lehigh University                                    *
    00016  *          Laszlo Ladanyi, IBM T.J. Watson Research Center                  *
    00017  *          Matthew Saltzman, Clemson University                             *
    00018  *                                                                           *
    00019  *                                                                           *
    00020  * Copyright (C) 2001-2013, Lehigh University, Yan Xu, and Ted Ralphs.       *
    00021  * All Rights Reserved.                                                      *
    00022  *===========================================================================*/
    00023
    00024 //#############################################################################
    00025
    00026 #ifndef Blis_h_
    00027 #define Blis_h_
    00028
    00029 #include "AlpsConfig.h"
    00030 #include "BcpsConfig.h"
    00031 #include "BlisConfig.h"
    00032
    00033 //#############################################################################
    00034
    00035 enum BlisLpStatus{
    00036    BlisLpStatusOptimal,
    00037    BlisLpStatusAbandoned,
    00038    BlisLpStatusPrimalInfeasible,
    00039    BlisLpStatusDualInfeasible,
    00040    BlisLpStatusPrimalObjLim,
    00041    BlisLpStatusDualObjLim,
    00042    BlisLpStatusIterLim,
    00043    BlisLpStatusUnknown
    00044 };
    00045
    00046 //#############################################################################
    00047
    00048 enum BlisReturnStatus {
    00049    BlisReturnStatusOk = 0,
    00050    BlisReturnStatusErrLp,
    00051    BlisReturnStatusInfeasible,
    00052    BlisReturnStatusUnbounded,
    00053    BlisReturnStatusOverObjLim,
    00054    BlisReturnStatusFeasible,
    00055    BlisReturnStatusBranch,
    00056    BlisReturnStatusUnknown
    00057 };
    00058
    00059 #if 0
    00060 #define BLIS_ERR_LP         100
    00061 #define BLIS_INF            200
    00062 #define BLIS_UNBOUND        201
    00063 #define BLIS_OPTIMAL          0
    00064 #define BLIS_UNKNOWN        202
    00065 #endif
    00066
    00067 //#############################################################################
    00068
    00069 enum BlisCutStrategy{
    00070    BlisCutStrategyNotSet = -1,
    00071    BlisCutStrategyNone = 0,
    00072    BlisCutStrategyRoot,
    00073    BlisCutStrategyAuto,
    00074    BlisCutStrategyPeriodic
    00075 };
    00076
    00077 enum BlisHeurStrategy{
    00078    BlisHeurStrategyNotSet = -1,
    00079    BlisHeurStrategyNone = 0,
    00080    BlisHeurStrategyRoot,
    00081    BlisHeurStrategyAuto,
    00082    BlisHeurStrategyPeriodic,
    00083    BlisHeurStrategyBeforeRoot // Before solving first relaxation
    00084 };
    00085
    00086 #if 0
    00087 #define BLIS_NOT_SET       -555
    00088 #define BLIS_ROOT            -2
    00089 #define BLIS_AUTO            -1
    00090 #define BLIS_NONE             0
    00091 #endif
    00092
    00093 //#############################################################################
    00094
    00095 enum BlisHotStartStrategy{
    00096    BlisHotStartBranchIncorrect,
    00097    BlisHotStartBranchCorrect
    00098 };
    00099
    00100 //#############################################################################
    00101
    00102 enum BlisBranchingStrategy{
    00103    BlisBranchingStrategyMaxInfeasibility,
    00104    BlisBranchingStrategyPseudoCost,
    00105    BlisBranchingStrategyReliability,
    00106    BlisBranchingStrategyStrong,
    00107    BlisBranchingStrategyBilevel
    00108 };
    00109
    00110 //#############################################################################
    00111
    00112 enum BlisSolutionType {
    00113     BlisSolutionTypeBounding,
    00114     BlisSolutionTypeBranching,
    00115     BlisSolutionTypeDiving,
    00116     BlisSolutionTypeHeuristic,
    00117     BlisSolutionTypeStrong
    00118 };
    00119
    00120 //#############################################################################
    00121
    00123 enum BlisBranchingObjectType {
    00124     BlisBranchingObjectTypeNone = 0,
    00125     BlisBranchingObjectTypeInt,
    00126     BlisBranchingObjectTypeSos,
    00127     BlisBranchingObjectTypeBilevel
    00128 };
    00129
    00130 //#############################################################################
    00131
    00132 #define BLIS_CUT_DISABLE            20
    00133
    00134 #define BLIS_HEUR_ROUND_DISABLE     1000000
    00135
    00136 #define BLIS_PSEUDO                 21
    00137
    00138 //#############################################################################
    00139
    00140 #endif