14#ifndef MINOTAURBRANCHER_H
15#define MINOTAURBRANCHER_H
25 typedef Relaxation* RelaxationPtr;
26 typedef const Solution* ConstSolutionPtr;
27 typedef SolutionPool* SolutionPoolPtr;
Declare important 'types' used in Minotaur.
A brancher is used to find suitable branches for a given node. e.g. LexicoBrancher....
Definition: Brancher.h:33
virtual void updateAfterSolve(NodePtr node, ConstSolutionPtr sol)
Update pseudo-costs after LP is solved.
Definition: Brancher.cpp:30
virtual void writeStats(std::ostream &) const
Write statistics to the given out stream.
Definition: Brancher.h:76
Brancher()
Default constructor.
Definition: Brancher.cpp:19
virtual ~Brancher()
Destroy.
Definition: Brancher.cpp:25
virtual std::string getName() const =0
Return the name of this brancher.
virtual Branches findBranches(RelaxationPtr rel, NodePtr node, ConstSolutionPtr sol, SolutionPoolPtr s_pool, BrancherStatus &br_status, ModVector &mods)=0
Find a branching candidate.
LoggerPtr logger_
Log manager.
Definition: Brancher.h:80
Definition: Relaxation.h:53
Definition: SolutionPool.h:28
Definition: Solution.h:30
Definition: ActiveNodeStore.h:20
BrancherStatus
What can a brancher do to a node in branch-and-bound.
Definition: Types.h:193