Bcp  1.4.4
BCP_enum_branch.hpp
Go to the documentation of this file.
1 // Copyright (C) 2000, International Business Machines
2 // Corporation and others. All Rights Reserved.
3 #ifndef _BCP_ENUM_BRANCH_H
4 #define _BCP_ENUM_BRANCH_H
5 
6 // This file is fully docified.
7 
8 //-----------------------------------------------------------------------------
9 
31 };
32 
33 //-----------------------------------------------------------------------------
34 
50 };
51 
52 //-----------------------------------------------------------------------------
53 
66 };
67 
68 //-----------------------------------------------------------------------------
69 
88 };
89 
90 //-----------------------------------------------------------------------------
91 
102  // We have info about objval branching on the last four bits.
103  // Of those, the last shows that this is objval branching, the three
104  // before that show the various types.
112  // We have info about fracnum_branching on the second to last four bits.
113  // Of those, the last shows that this is fracnum branching, the three
114  // before that show the various types.
115  // BCP_Comparison_FracNum = 0x10,
116  // BCP_LowestLowFracNum = 0x00 | BCP_Comparison_FracNum,
117  // BCP_HighestLowFracNum = 0x20 | BCP_Comparison_FracNum,
118  // BCP_HighestLowFracNum = 0x40 | BCP_Comparison_FracNum,
119  // BCP_HighestHighFracNum = 0x60 | BCP_Comparison_FracNum,
120 
121 };
122 
123 //-----------------------------------------------------------------------------
124 
139 };
140 
141 //-----------------------------------------------------------------------------
142 
158 };
159 
160 #endif
BCP_PreferChild_LowBound
@ BCP_PreferChild_LowBound
Keep the child that has the lowest presolved objective value.
Definition: BCP_enum_branch.hpp:18
BCP_DoNotDive
@ BCP_DoNotDive
After branching all children must be returned to the Tree Manager and the LP process should wait for ...
Definition: BCP_enum_branch.hpp:151
BCP_TestBeforeDive
@ BCP_TestBeforeDive
After branching the LP process must inquire of the Tree Manager whether it can dive into one of the c...
Definition: BCP_enum_branch.hpp:157
BCP_DoNotBranch
@ BCP_DoNotBranch
BCP should continue to work on this node.
Definition: BCP_enum_branch.hpp:62
BCP_Comparison_Objval
@ BCP_Comparison_Objval
Definition: BCP_enum_branch.hpp:105
BCP_FathomChild
@ BCP_FathomChild
This child should be fathomed.
Definition: BCP_enum_branch.hpp:131
BCP_PreferChild_LessFractional
@ BCP_PreferChild_LessFractional
Keep the child that has the least to-be-integer variables at fractional level after presolving.
Definition: BCP_enum_branch.hpp:26
BCP_child_action
BCP_child_action
This enumerative constant describes the possible values the set_actions_for_children() method of \URL...
Definition: BCP_enum_branch.hpp:129
BCP_DoBranch
@ BCP_DoBranch
Branching must be done.
Definition: BCP_enum_branch.hpp:65
BCP_branching_result
BCP_branching_result
This enumerative constant describes the possible outcomes of a branching attempt.
Definition: BCP_enum_branch.hpp:38
BCP_DoDive
@ BCP_DoDive
After branching the LP process is free to decide whether it keeps a child to dive into.
Definition: BCP_enum_branch.hpp:154
BCP_DoNotBranch_Fathomed
@ BCP_DoNotBranch_Fathomed
The node should be fathomed without even trying to branch.
Definition: BCP_enum_branch.hpp:60
BCP_NewPresolvedIsBetter
@ BCP_NewPresolvedIsBetter
"new" is better, discard "old".
Definition: BCP_enum_branch.hpp:84
BCP_NewPresolvedIsBetter_BranchOnIt
@ BCP_NewPresolvedIsBetter_BranchOnIt
"new" is better and it's so good that even if there are more candidates forget them and use "new" as ...
Definition: BCP_enum_branch.hpp:87
BCP_BranchingContinueThisNode
@ BCP_BranchingContinueThisNode
No branching happend, continue to work on the same node.
Definition: BCP_enum_branch.hpp:49
BCP_diving_status
BCP_diving_status
This enumerative constant describes the diving status of the search tree node processed by the LP pro...
Definition: BCP_enum_branch.hpp:145
BCP_branching_object_relation
BCP_branching_object_relation
This enumerative constant is the return value of the compare_presolved_branching_objects() method in ...
Definition: BCP_enum_branch.hpp:80
BCP_PreferChild_HighBound
@ BCP_PreferChild_HighBound
Keep the child that has the highest presolved objective value.
Definition: BCP_enum_branch.hpp:20
BCP_HighestLowObjval
@ BCP_HighestLowObjval
Definition: BCP_enum_branch.hpp:107
BCP_HighestAverageObjval
@ BCP_HighestAverageObjval
Definition: BCP_enum_branch.hpp:111
BCP_PreferDiveUp
@ BCP_PreferDiveUp
Mainly for binary choices: take the up branch unconditionally.
Definition: BCP_enum_branch.hpp:30
BCP_UnknownDivingStatus
@ BCP_UnknownDivingStatus
Nonexistent diving status.
Definition: BCP_enum_branch.hpp:148
BCP_KeepChild
@ BCP_KeepChild
This child should be kept and dived into (provided diving is decided on.
Definition: BCP_enum_branch.hpp:138
BCP_HighestHighObjval
@ BCP_HighestHighObjval
Definition: BCP_enum_branch.hpp:109
BCP_PreferDiveDown
@ BCP_PreferDiveDown
Mainly for binary choices: take the down branch unconditionally.
Definition: BCP_enum_branch.hpp:28
BCP_BranchingDivedIntoNewNode
@ BCP_BranchingDivedIntoNewNode
Branching happened, one of the children is kept and that's what the LP process will continue to work ...
Definition: BCP_enum_branch.hpp:47
BCP_ReturnChild
@ BCP_ReturnChild
This child should be returned to the Tree Manager for later processing.
Definition: BCP_enum_branch.hpp:134
BCP_LowestHighObjval
@ BCP_LowestHighObjval
Definition: BCP_enum_branch.hpp:108
BCP_OldPresolvedIsBetter
@ BCP_OldPresolvedIsBetter
"old" is better, discard "new".
Definition: BCP_enum_branch.hpp:82
BCP_BranchingFathomedThisNode
@ BCP_BranchingFathomedThisNode
The node is fathomed, the LP process should wait for a new node.
Definition: BCP_enum_branch.hpp:44
BCP_branching_object_comparison
BCP_branching_object_comparison
This enumerative constant is used in the built-in method for comparing presolved branching object can...
Definition: BCP_enum_branch.hpp:101
BCP_branching_decision
BCP_branching_decision
This enumerative constant is the return value of the select_branching_candidates() method in \URL[BCP...
Definition: BCP_enum_branch.hpp:58
BCP_LowestLowObjval
@ BCP_LowestLowObjval
Definition: BCP_enum_branch.hpp:106
BCP_LowestAverageObjval
@ BCP_LowestAverageObjval
Definition: BCP_enum_branch.hpp:110
BCP_PreferChild_MoreFractional
@ BCP_PreferChild_MoreFractional
Keep the child that has the most to-be-integer variables at fractional level after presolving.
Definition: BCP_enum_branch.hpp:23
BCP_child_preference
BCP_child_preference
This enumerative constant describes which child should be kept after the branching object is selected...
Definition: BCP_enum_branch.hpp:16