Antares Simulator
Power System Simulator
Loading...
Searching...
No Matches
Antares::Optimisation::LinearProblemApi::ILinearProblem Class Referenceabstract

#include <linearProblem.h>

Inheritance diagram for Antares::Optimisation::LinearProblemApi::ILinearProblem:
Antares::Optimisation::LinearProblemMpsolverImpl::OrtoolsLinearProblem MockLinearProblem Antares::Optimization::LegacyOrtoolsLinearProblem

Public Member Functions

virtual IMipVariableaddNumVariable (double lb, double ub, const std::string &name)=0
 Create a continuous variable.
 
virtual IMipVariableaddIntVariable (double lb, double ub, const std::string &name)=0
 Create a integer variable.
 
virtual IMipVariableaddVariable (double lb, double ub, bool integer, const std::string &name)=0
 Create a continuous or integer variable.
 
virtual IMipVariablegetVariable (const std::string &name) const =0
 
virtual int variableCount () const =0
 
virtual IMipConstraintaddConstraint (double lb, double ub, const std::string &name)=0
 Add a bounded constraint to the problem.
 
virtual IMipConstraintgetConstraint (const std::string &name) const =0
 
virtual int constraintCount () const =0
 
virtual void setObjectiveCoefficient (IMipVariable *var, double coefficient)=0
 Set the objective coefficient for a given variable.
 
virtual double getObjectiveCoefficient (const IMipVariable *var) const =0
 
virtual void setMinimization ()=0
 Sets the optimization direction to minimize.
 
virtual void setMaximization ()=0
 Sets the optimization direction to maximize.
 
virtual bool isMinimization () const =0
 
virtual bool isMaximization () const =0
 
virtual IMipSolutionsolve (bool verboseSolver)=0
 Solve the problem, returns a IMipSolution.
 
virtual void WriteLP (const std::string &filename)=0
 
virtual double infinity () const =0
 

Detailed Description

Linear Problem This class is aimed at creating and manipulating variables/constraints Also used to control the objective, maximization or minimization, and to solve the problem

Member Function Documentation

◆ addConstraint()

virtual IMipConstraint * Antares::Optimisation::LinearProblemApi::ILinearProblem::addConstraint ( double lb,
double ub,
const std::string & name )
pure virtual

Add a bounded constraint to the problem.

Implemented in Antares::Optimisation::LinearProblemMpsolverImpl::OrtoolsLinearProblem, and MockLinearProblem.

◆ addIntVariable()

virtual IMipVariable * Antares::Optimisation::LinearProblemApi::ILinearProblem::addIntVariable ( double lb,
double ub,
const std::string & name )
pure virtual

◆ addNumVariable()

virtual IMipVariable * Antares::Optimisation::LinearProblemApi::ILinearProblem::addNumVariable ( double lb,
double ub,
const std::string & name )
pure virtual

◆ addVariable()

virtual IMipVariable * Antares::Optimisation::LinearProblemApi::ILinearProblem::addVariable ( double lb,
double ub,
bool integer,
const std::string & name )
pure virtual

Create a continuous or integer variable.

Implemented in Antares::Optimisation::LinearProblemMpsolverImpl::OrtoolsLinearProblem, and MockLinearProblem.

◆ setMaximization()

virtual void Antares::Optimisation::LinearProblemApi::ILinearProblem::setMaximization ( )
pure virtual

Sets the optimization direction to maximize.

Implemented in Antares::Optimisation::LinearProblemMpsolverImpl::OrtoolsLinearProblem, and MockLinearProblem.

◆ setMinimization()

virtual void Antares::Optimisation::LinearProblemApi::ILinearProblem::setMinimization ( )
pure virtual

Sets the optimization direction to minimize.

Implemented in Antares::Optimisation::LinearProblemMpsolverImpl::OrtoolsLinearProblem, and MockLinearProblem.

◆ setObjectiveCoefficient()

virtual void Antares::Optimisation::LinearProblemApi::ILinearProblem::setObjectiveCoefficient ( IMipVariable * var,
double coefficient )
pure virtual

Set the objective coefficient for a given variable.

Implemented in Antares::Optimisation::LinearProblemMpsolverImpl::OrtoolsLinearProblem, and MockLinearProblem.

◆ solve()

virtual IMipSolution * Antares::Optimisation::LinearProblemApi::ILinearProblem::solve ( bool verboseSolver)
pure virtual

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