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 ActiveNodeStore.h:20
BrancherStatus
What can a brancher do to a node in branch-and-bound.
Definition Types.h:193