Minotaur 0.4.1
Docs for developers
Public Member Functions | List of all members
Minotaur::QPDProcessor Class Reference

#include <QPDProcessor.h>

Inheritance diagram for Minotaur::QPDProcessor:
Inheritance graph
[legend]
Collaboration diagram for Minotaur::QPDProcessor:
Collaboration graph
[legend]

Public Member Functions

 QPDProcessor ()
 Default constructor.
 
 QPDProcessor (EnvPtr env, ProblemPtr p, EnginePtr e, EnginePtr qe, HandlerVector &handlers)
 Create the processor using options from an environment.
 
 ~QPDProcessor ()
 Destroy.
 
void addHeur (HeurPtr h)
 
bool foundNewSolution ()
 
Branches getBranches ()
 Find branches that will be used to branch at this node. More...
 
WarmStartPtr getWarmStart ()
 
void process (NodePtr node, RelaxationPtr rel, SolutionPoolPtr s_pool)
 
void processRootNode (NodePtr node, RelaxationPtr rel, SolutionPoolPtr s_pool)
 Process the root node. More...
 
void writeStats (std::ostream &out) const
 Write statistics to a given output stream. More...
 
void writeStats () const
 Write statistics to our own logger. More...
 
- Public Member Functions inherited from Minotaur::NodeProcessor
 NodeProcessor ()
 Default constructor.
 
virtual ~NodeProcessor ()
 Destroy.
 
virtual void setBrancher (BrancherPtr brancher)
 Set the brancher that will be used with this node processor.
 
virtual void processRootNode (NodePtr node, RelaxationPtr rel, SolutionPoolPtr s_pool)
 Process the root node. More...
 
virtual void process (NodePtr node, RelaxationPtr rel, SolutionPoolPtr s_pool)=0
 
virtual Branches getBranches ()=0
 Find branches that will be used to branch at this node. More...
 
virtual bool foundNewSolution ()=0
 
virtual WarmStartPtr getWarmStart ()=0
 
virtual BrancherPtr getBrancher ()
 Return brancher.
 
virtual void writeStats (std::ostream &) const
 Write statistics to a given output stream. More...
 
virtual void writeStats () const
 Write statistics to our own logger. More...
 
virtual void setCutManager (CutManager *)
 

Additional Inherited Members

- Protected Attributes inherited from Minotaur::NodeProcessor
BrancherPtr brancher_
 What brancher is used for this processor.
 

Detailed Description

QPDProcessor is a derived class of NodeProcessor. It is meant to solve QPs at each node. Sometimes it also solves NLPs.

Member Function Documentation

◆ foundNewSolution()

bool QPDProcessor::foundNewSolution ( )
virtual

True if the node processor found at least one feasible solution while processing this node.

Implements Minotaur::NodeProcessor.

◆ getBranches()

Branches QPDProcessor::getBranches ( )
virtual

Find branches that will be used to branch at this node.

Implements Minotaur::NodeProcessor.

◆ getWarmStart()

WarmStartPtr QPDProcessor::getWarmStart ( )
virtual

Return the warm start information that will be used to start processing children.

Implements Minotaur::NodeProcessor.

◆ process()

void QPDProcessor::process ( NodePtr  node,
RelaxationPtr  rel,
SolutionPoolPtr  s_pool 
)
virtual

Process relaxation at the given node. If a solution is found, it must be added to the solution pool.

Implements Minotaur::NodeProcessor.

◆ processRootNode()

void QPDProcessor::processRootNode ( NodePtr  node,
RelaxationPtr  rel,
SolutionPoolPtr  s_pool 
)
virtual

Process the root node.

Reimplemented from Minotaur::NodeProcessor.

◆ writeStats() [1/2]

void Minotaur::QPDProcessor::writeStats ( ) const
inlinevirtual

Write statistics to our own logger.

Reimplemented from Minotaur::NodeProcessor.

◆ writeStats() [2/2]

void QPDProcessor::writeStats ( std::ostream &  ) const
virtual

Write statistics to a given output stream.

Reimplemented from Minotaur::NodeProcessor.


The documentation for this class was generated from the following files:

Minotaur source code documented by Doxygen 1.9.4 on Thu Apr 24 2025