A class to select a variable for branching using maximum-inference branching.
More...
#include <MaxInfBrancher.h>
|
|
| MaxInfBrancher (EnvPtr env, HandlerVector &handlers) |
| | Construct using an environment pointer and initialize.
|
| |
|
| ~MaxInfBrancher () |
| | Destroy.
|
| |
| Branches | findBranches (RelaxationPtr rel, NodePtr node, ConstSolutionPtr sol, SolutionPoolPtr s_pool, BrancherStatus &br_status, ModVector &mods) |
| | Find a branching candidate.
|
| |
| void | updateAfterSolve (NodePtr node, ConstSolutionPtr sol) |
| | Update pseudo-costs after LP is solved.
|
| |
| void | writeStats (std::ostream &out) const |
| | Write statistics to the given out stream.
|
| |
|
bool | getTrustCutoff () |
| | Return value of trustCutoff parameter.
|
| |
|
UInt | getIterLim () |
| | Get iteration limit of engine.
|
| |
| std::string | getName () const |
| | Return the name of this brancher.
|
| |
|
UInt | getThresh () const |
| | Return the threshhold value.
|
| |
| void | initialize (RelaxationPtr rel) |
| | Initialize data structures.
|
| |
|
void | setTrustCutoff (bool val) |
| | Set value of trustCutoff parameter.
|
| |
| void | setEngine (EnginePtr engine) |
| | Set engine.
|
| |
| void | setIterLim (UInt k) |
| | Set iteration limit of engine.
|
| |
| void | setMaxDepth (UInt k) |
| | Set the depth at which we stop strong branching.
|
| |
| void | setMinNodeDist (UInt k) |
| | Don't do strong branching on a cand if we did it 'k' nodes or less ago.
|
| |
| void | setThresh (UInt k) |
| | Set reliability threshhold.
|
| |
|
void | printMaxInferenceScores () const |
| |
|
void | infScore () |
| |
|
void | statsTable () const |
| |
|
double | gFunction (double x) const |
| |
|
| Brancher () |
| | Default constructor.
|
| |
|
virtual | ~Brancher () |
| | Destroy.
|
| |
|
|
std::vector< double > | upScores_ |
| |
|
std::vector< double > | downScores_ |
| |
A class to select a variable for branching using maximum-inference branching.
◆ findBranches()
Find a branching candidate.
- Returns
- NULL if x does not have any fractional values for integer constrained variables or if no branching candidates are found (e.g. when we realize that problem is infeasible).
- Parameters
-
| [in] | rel | Relaxation at the current node. |
| [in] | node | The current node. |
| [in] | sol | The solution at the current node. |
| [in] | s_pool | Solution pool containing known feasible solutions. |
| [out] | br_status | Status returned by this brancher. |
| [out] | mods | Modification returned by this brancher. NULL if none found. |
Implements Minotaur::Brancher.
◆ getName()
| std::string MaxInfBrancher::getName |
( |
| ) |
const |
|
virtual |
◆ initialize()
Initialize data structures.
- Parameters
-
| [in] | rel | Relaxation for which this brancher is used. |
◆ setEngine()
| void MaxInfBrancher::setEngine |
( |
EnginePtr |
engine | ) |
|
Set engine.
- Parameters
-
| [in] | engine | Pointer to the engine used in strong branching. |
◆ setIterLim()
| void MaxInfBrancher::setIterLim |
( |
UInt |
k | ) |
|
Set iteration limit of engine.
- Parameters
-
| [in] | k | The new iteration limit. |
◆ setMaxDepth()
| void MaxInfBrancher::setMaxDepth |
( |
UInt |
k | ) |
|
Set the depth at which we stop strong branching.
- Parameters
-
| [in] | k | The new depth value. |
◆ setMinNodeDist()
| void MaxInfBrancher::setMinNodeDist |
( |
UInt |
k | ) |
|
Don't do strong branching on a cand if we did it 'k' nodes or less ago.
- Parameters
-
| [in] | k | The new minimum value. |
◆ setThresh()
| void MaxInfBrancher::setThresh |
( |
UInt |
k | ) |
|
Set reliability threshhold.
The pseudo cost is considered reliable if it has been updated k times.
- Parameters
-
| [in] | k | The new threshhold value. |
◆ updateAfterSolve()
Update pseudo-costs after LP is solved.
- Parameters
-
| [in] | node | The node for which relaxation is solved. The pseudo cost of branching candidate used in node->parent is updated. |
| [in] | sol | The solution of the relaxation at this node (not the parent). |
Reimplemented from Minotaur::Brancher.
◆ writeStats()
| void MaxInfBrancher::writeStats |
( |
std::ostream & |
| ) |
const |
|
virtual |
The documentation for this class was generated from the following files: