9 #ifndef CMR_ABC_NODESEL_H 10 #define CMR_ABC_NODESEL_H 62 static constexpr
int BestFreq = 10;
74 static void heap_push(std::vector<BranchHistory::iterator> &target_q,
75 BranchHistory::iterator itr);
77 static void heap_make(std::vector<BranchHistory::iterator> &target_q);
79 static void heap_pop(std::vector<BranchHistory::iterator> &target_q);
84 const BranchHistory::iterator &B)
85 {
return A->estimate < B->estimate; }
89 std::vector<BranchHistory::iterator> prob_q;
BranchHistory::iterator next_prob()
Return the next subproblem to be examined.
Definition: dfs_brancher.cpp:63
Information about the current best tour.
Definition: datagroups.hpp:154
Depth-first search branching.
Definition: abc_nodesel.hpp:26
Graph structures for the edges currently in a CoreLP::Relaxation.
Definition: datagroups.hpp:100
Storing TSP instance data.
Definition: datagroups.hpp:36
static bool better_bound(const BranchHistory::iterator &A, const BranchHistory::iterator &B)
returns true iff A has a better (i.e., lower )estimate than B.
Definition: abc_nodesel.hpp:83
Abstract base class for implementing a branching node selection rule.
Definition: base_brancher.hpp:20
void fetch_next()
Set next_itr to the next subproblem to be examined.
Definition: dfs_brancher.cpp:81
std::array< BranchNode, 2 > Split
Alias declaration for returning two split child problems.
Definition: branch_node.hpp:50
Class template for branching with priority queue via some preference rule.
Definition: qpref_brancher.hpp:28
The namespace for this project.
Definition: abc_nodesel.hpp:20
void enqueue_split(BranchNode::Split prob_array)
If applicable, this method will swap the position of nodes in prob_array to ensure that the node agre...
Definition: dfs_brancher.cpp:36
Interleaved best-estimate and best-first search branching.
Definition: abc_nodesel.hpp:50
Class for storing the core lp associated to a TSP instance and pivoting.
Definition: core_lp.hpp:33
Abstract branching control.
Monitoring the active tour in the solution process.
Template classes/methods for branching by priority queue.