00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef Blis_h_
00027 #define Blis_h_
00028
00029
00030
00031 enum BlisLpStatus{
00032 BlisLpStatusOptimal,
00033 BlisLpStatusAbandoned,
00034 BlisLpStatusPrimalInfeasible,
00035 BlisLpStatusDualInfeasible,
00036 BlisLpStatusPrimalObjLim,
00037 BlisLpStatusDualObjLim,
00038 BlisLpStatusIterLim,
00039 BlisLpStatusUnknown
00040 };
00041
00042
00043
00044 enum BlisReturnStatus {
00045 BlisReturnStatusOk = 0,
00046 BlisReturnStatusErrLp,
00047 BlisReturnStatusInfeasible,
00048 BlisReturnStatusUnbounded,
00049 BlisReturnStatusOverObjLim,
00050 BlisReturnStatusFeasible,
00051 BlisReturnStatusBranch,
00052 BlisReturnStatusUnknown
00053 };
00054
00055 #if 0
00056 #define BLIS_ERR_LP 100
00057 #define BLIS_INF 200
00058 #define BLIS_UNBOUND 201
00059 #define BLIS_OPTIMAL 0
00060 #define BLIS_UNKNOWN 202
00061 #endif
00062
00063
00064
00065 enum BlisCutStrategy{
00066 BlisCutStrategyNotSet = -1,
00067 BlisCutStrategyNone = 0,
00068 BlisCutStrategyRoot,
00069 BlisCutStrategyAuto,
00070 BlisCutStrategyPeriodic
00071 };
00072
00073 enum BlisHeurStrategy{
00074 BlisHeurStrategyNotSet = -1,
00075 BlisHeurStrategyNone = 0,
00076 BlisHeurStrategyRoot,
00077 BlisHeurStrategyAuto,
00078 BlisHeurStrategyPeriodic,
00079 BlisHeurStrategyBeforeRoot
00080 };
00081
00082 #if 0
00083 #define BLIS_NOT_SET -555
00084 #define BLIS_ROOT -2
00085 #define BLIS_AUTO -1
00086 #define BLIS_NONE 0
00087 #endif
00088
00089
00090
00091 enum BlisHotStartStrategy{
00092 BlisHotStartBranchIncorrect,
00093 BlisHotStartBranchCorrect
00094 };
00095
00096
00097
00098 enum BlisBranchingStrategy{
00099 BlisBranchingStrategyMaxInfeasibility,
00100 BlisBranchingStrategyPseudoCost,
00101 BlisBranchingStrategyReliability,
00102 BlisBranchingStrategyStrong
00103 };
00104
00105
00106
00107
00108 enum BlisSolutionType {
00109 BlisSolutionTypeBounding,
00110 BlisSolutionTypeBranching,
00111 BlisSolutionTypeDiving,
00112 BlisSolutionTypeHeuristic,
00113 BlisSolutionTypeStrong
00114 };
00115
00116
00117
00119 enum BlisBranchingObjectType {
00120 BlisBranchingObjectTypeNone = 0,
00121 BlisBranchingObjectTypeInt,
00122 BlisBranchingObjectTypeSos
00123 };
00124
00125
00126
00127 #define BLIS_CUT_DISABLE 20
00128
00129 #define BLIS_HEUR_ROUND_DISABLE 1000000
00130
00131 #define BLIS_PSEUDO 21
00132
00133
00134
00135 #endif