Go to the source code of this file.
Enumerations | |
enum | BCP_slack_cut_discarding { BCP_DiscardSlackCutsAtNewNode, BCP_DiscardSlackCutsAtNewIteration } |
This enumerative constant describes when to purge the slack cut pool (in the LP process). More... | |
enum | BCP_CutViolationNorm { BCP_CutViolationNorm_Plain, BCP_CutViolationNorm_Distance, BCP_CutViolationNorm_Directional } |
This enumerative constant describes how to compute the "violation" of a generated cut. More... | |
enum | BCP_object_t { BCP_CoreObj, BCP_IndexedObj, BCP_AlgoObj, BCP_NoObj } |
This enumerative constant describes the possible types of objects (variables and cuts). More... | |
enum | BCP_column_generation { BCP_DoNotGenerateColumns_Fathom, BCP_DoNotGenerateColumns_Send, BCP_GenerateColumns } |
This enumerative constant describes what to do when a search tree node becomes fathomable for the current set of columns. More... | |
enum | BCP_storage_t { BCP_Storage_NoData, BCP_Storage_Explicit, BCP_Storage_WrtParent, BCP_Storage_WrtCore } |
This enumerative constant describes how to store certain data for a search tree node. More... | |
enum | BCP_obj_status { BCP_ObjNoInfo = 0x00, BCP_ObjDoNotSendToPool = 0x01, BCP_ObjCannotBeBranchedOn = 0x02, BCP_ObjNotRemovable = 0x04, BCP_ObjToBeRemoved = 0x08, BCP_ObjInactive = 0x10 } |
This enumerative constant gives the status of an object (variable or cut). More... | |
enum | BCP_primal_solution_description { BCP_PrimalSolution_Nonzeros, BCP_PrimalSolution_Fractions, BCP_PrimalSolution_Full } |
This enumerative constant describes how the primal solution should be packed into a buffer if the default packing routine is used. More... | |
enum | BCP_dual_solution_description { BCP_DualSolution_Nonzeros, BCP_DualSolution_Full } |
This enumerative constant describes how the dual solution should be packed into a buffer if the default packing routine is used. More... | |
enum | BCP_var_t { BCP_BinaryVar, BCP_IntegerVar, BCP_ContinuousVar } |
This enumerative constant describes the integrality type of a variable. More... | |
enum | BCP_IneffectiveConstraints { BCP_IneffConstr_None, BCP_IneffConstr_NonzeroSlack, BCP_IneffConstr_ZeroDualValue } |
This enumerative constant describes which constraints should be considered ineffective after solving an LP relaxation. More... | |
enum | BCP_feasibility { BCP_NotFeasible, BCP_Feasible, BCP_HeuristicFeasible } |
This enumerative constant describes the possible return codes of the function that tests MIP feasibility of a solution to an LP relaxation. More... | |
enum | BCP_feasibility_test { BCP_Binary_Feasible, BCP_Integral_Feasible, BCP_FullTest_Feasible } |
This enumerative constant describes which built-in feasibility-testing routine should be invoked. More... | |
enum | BCP_dual_status { BCP_TotalDualFeasible = 1, BCP_TotalDualFeasible_HasAllIndexed = 1, BCP_TotalDualFeasible_NotAllIndexed = 2, BCP_NotTotalDualFeasible = 0 } |
enum | BCP_pricing_status { BCP_PriceNothing = 0x00, BCP_PriceAlgoVars = 0x01, BCP_PriceUntilLastIndexedToPrice = 0x02, BCP_PriceAfterLastIndexedToPrice = 0x04, BCP_PriceIndexedVars } |
This enumerative constant describes what sort of columns to generate in case column generation is requested. More... | |
enum | BCP_object_origin { BCP_Object_Leftover, BCP_Object_Branching, BCP_Object_FromGenerator, BCP_Object_FromPool, BCP_Object_FromTreeManager } |
This enumerative constant describes the origin (originating process) of an object (variable or cut). More... | |
enum | BCP_object_compare_result { BCP_ObjsAreSame, BCP_FirstObjIsBetter, BCP_SecondObjIsBetter, BCP_DifferentObjs } |
This enumerative constant describes the possible outcomes when comparing two objects (variables or cuts). More... |
This enumerative constant describes when to purge the slack cut pool (in the LP process).
Possible values are:
BCP_DiscardSlackCutsAtNewNode |
Purge the slack cuts when the LP starts processing a new search tree node. |
BCP_DiscardSlackCutsAtNewIteration |
Purge the slack cuts at every iteration while processing search tree nodes. (Note that purging will be performed more often in this case.) |
Definition at line 15 of file BCP_enum.hpp.
enum BCP_CutViolationNorm |
This enumerative constant describes how to compute the "violation" of a generated cut.
Possible values are:
Definition at line 31 of file BCP_enum.hpp.
enum BCP_object_t |
This enumerative constant describes the possible types of objects (variables and cuts).
BCP_CoreObj |
Base object. |
BCP_IndexedObj |
Indexed object. |
BCP_AlgoObj |
Algorithmic object. |
BCP_NoObj |
No object type is given. |
Definition at line 49 of file BCP_enum.hpp.
This enumerative constant describes what to do when a search tree node becomes fathomable for the current set of columns.
BCP_DoNotGenerateColumns_Fathom |
Do fathom the node. |
BCP_DoNotGenerateColumns_Send |
Do not generate columns, but send back the node to the Tree Manager for processing in the next phase. |
BCP_GenerateColumns |
Attempt column generation. If new columns are found, continue processing this search tree node, otherwise fathom it. |
Definition at line 67 of file BCP_enum.hpp.
enum BCP_storage_t |
This enumerative constant describes how to store certain data for a search tree node.
Examples for such data include warmstart information, current lower and upper bounds.
BCP_Storage_NoData |
No data is stored. |
BCP_Storage_Explicit |
The data stored is an explicit listing of values. |
BCP_Storage_WrtParent |
The data stored is with respect to the same kind of data in the parent of the search tree node. (In this case only the changes are stored.) |
BCP_Storage_WrtCore |
The data stored is with respect to the original description of the base problem (as was given by the user). |
Definition at line 86 of file BCP_enum.hpp.
enum BCP_obj_status |
This enumerative constant gives the status of an object (variable or cut).
It is comprised of some constants representing different properties; the actual status is the OR of these constants.
Definition at line 107 of file BCP_enum.hpp.
This enumerative constant describes how the primal solution should be packed into a buffer if the default packing routine is used.
Definition at line 135 of file BCP_enum.hpp.
This enumerative constant describes how the dual solution should be packed into a buffer if the default packing routine is used.
BCP_DualSolution_Nonzeros |
Pack only those variables that are currently at nonzero levels. |
BCP_DualSolution_Full |
Pack all dual variables. |
Definition at line 150 of file BCP_enum.hpp.
enum BCP_var_t |
This enumerative constant describes the integrality type of a variable.
BCP_BinaryVar |
Binary (0-1) variable. |
BCP_IntegerVar |
General integer variable. |
BCP_ContinuousVar |
Continuous variable. |
Definition at line 163 of file BCP_enum.hpp.
This enumerative constant describes which constraints should be considered ineffective after solving an LP relaxation.
BCP_IneffConstr_None |
None of the constraints are ever considered ineffective. That is, once a constraint is added to the formulation it will remain there. |
BCP_IneffConstr_NonzeroSlack |
Constraints with nonzero (primal) slack value are considered ineffective. |
BCP_IneffConstr_ZeroDualValue |
Constraints with dual variables at level zero are considered ineffective. Note that for any primal-dual solution pair that is optimal for the LP relaxation, this set of constraints is a superset of the previous set. |
Definition at line 179 of file BCP_enum.hpp.
enum BCP_feasibility |
This enumerative constant describes the possible return codes of the function that tests MIP feasibility of a solution to an LP relaxation.
Definition at line 200 of file BCP_enum.hpp.
enum BCP_feasibility_test |
This enumerative constant describes which built-in feasibility-testing routine should be invoked.
This assumes the user does not override the feasibility-testing method. Note that the last option could be used for any problem. However, if we do know the integrality types of the variables then specifying the corresponding option leads to a more efficient code.
Definition at line 219 of file BCP_enum.hpp.
enum BCP_dual_status |
BCP_TotalDualFeasible | |
BCP_TotalDualFeasible_HasAllIndexed | |
BCP_TotalDualFeasible_NotAllIndexed | |
BCP_NotTotalDualFeasible |
Definition at line 234 of file BCP_enum.hpp.
enum BCP_pricing_status |
This enumerative constant describes what sort of columns to generate in case column generation is requested.
This is a bitmap, various bits indicating whether to generate that type.
Definition at line 249 of file BCP_enum.hpp.
enum BCP_object_origin |
This enumerative constant describes the origin (originating process) of an object (variable or cut).
Definition at line 274 of file BCP_enum.hpp.
This enumerative constant describes the possible outcomes when comparing two objects (variables or cuts).
Two objects are comparable if they expand to the same column/row with the possible exception of their objective coefficient/bounds.
A cut is "better" than another (comparable) cut if its bounds define a subinterval of the interval defined by the bounds of the comparable cut.
THINK*: How to compare variables?
Definition at line 301 of file BCP_enum.hpp.