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

#include <QPEngine.h>

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

Public Member Functions

 QPEngine ()
 Constructor. May set default parameters/options here.
 
- Public Member Functions inherited from Minotaur::Engine
 Engine ()
 Default constructor.
 
virtual ~Engine ()
 Destroy.
 
virtual void addConstraint (ConstraintPtr)=0
 Add a new constraint to the engine. More...
 
virtual void changeBound (ConstraintPtr cons, BoundType lu, double new_val)=0
 Change a bound of a constraint. More...
 
virtual void changeBound (VariablePtr var, BoundType lu, double new_val)=0
 Change a bound of a variable. More...
 
virtual void changeBound (VariablePtr var, double new_lb, double new_ub)=0
 Change both bounds of a variable. More...
 
virtual void changeConstraint (ConstraintPtr c, LinearFunctionPtr lf, double lb, double ub)=0
 Change the linear function, and the bounds of a constraint. More...
 
virtual void changeConstraint (ConstraintPtr c, NonlinearFunctionPtr nlf)=0
 Change the nonlinear function, and the bounds of a constraint. More...
 
virtual void changeObj (FunctionPtr f, double cb)=0
 Change objective function. More...
 
virtual void clear ()=0
 Clear the loaded problem, if any, from the engine. More...
 
virtual void disableStrBrSetup ()=0
 Restore settings after strong branching. More...
 
virtual EnginePtr emptyCopy ()
 Get a fresh copy of the engine, without the problem loaded into it. More...
 
virtual void enableStrBrSetup ()=0
 Make settings for strong branching. More...
 
virtual ConstSolutionPtr getSolution ()=0
 Get the solution obtained after solving the problem. More...
 
virtual double getSolutionValue ()=0
 Get the solution value. More...
 
virtual EngineStatus solve ()=0
 Solve the problem that was loaded previously. More...
 
virtual std::string getName () const =0
 Get the name. More...
 
virtual EngineStatus getStatus ()=0
 Get the status of the last solve command. More...
 
virtual std::string getStatusString ()
 Return a string that describes the status in simple words.
 
virtual ConstWarmStartPtr getWarmStart ()=0
 
virtual WarmStartPtr getWarmStartCopy ()=0
 
virtual void load (ProblemPtr problem)=0
 
virtual void loadFromWarmStart (const WarmStartPtr ws)=0
 
virtual void negateObj ()=0
 Negate the objective function. Min f is changed to Min -f. More...
 
virtual LoggerPtr getLogger ()
 Return pointer to the log manager.
 
virtual void removeCons (std::vector< ConstraintPtr > &delcons)=0
 Delete constraints from the engine. More...
 
virtual void resetIterationLimit ()=0
 Reset the iteration limit to maximum possible. More...
 
virtual int setDualObjLimit (double)=0
 Set the dual objective limit. More...
 
virtual void setIterationLimit (int limit)=0
 
virtual void setLogger (LoggerPtr logger)
 Set a new log manager.
 
virtual void setOptionsForSingleSolve ()
 
virtual void setOptionsForRepeatedSolve ()
 Set options to solve the NLP repeatedly, with few changes. More...
 
virtual void writeStats (std::ostream &) const
 
virtual void fillStats (std::vector< double > &)
 Accumulate statistics from different threads in a common data. More...
 

Friends

class Problem
 

Additional Inherited Members

- Protected Attributes inherited from Minotaur::Engine
EngineStatus status_
 Status of the last solve.
 
LoggerPtr logger_
 Keep log.
 

Detailed Description

The QPEengine class is an abstract class for interfacing QP solvers (like bqpd). A derived class must implement calls to the QP solver for the methods described here.

Todo:

add more methods for modifying the problem

add more methods for setting solver options and parameters


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

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