Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::HighsInterface Class Reference

Detailed Description

Definition at line 35 of file highs_interface.cc.

Inheritance diagram for operations_research::HighsInterface:
operations_research::MPSolverInterface

Public Member Functions

 HighsInterface (MPSolver *solver, bool solve_as_a_mip)
 ~HighsInterface () override
MPSolver::ResultStatus Solve (const MPSolverParameters &param) override
bool SupportsDirectlySolveProto (std::atomic< bool > *interrupt) const override
MPSolutionResponse DirectlySolveProto (LazyMutableCopy< MPModelRequest > request, std::atomic< bool > *interrupt) override
void Reset () override
void SetOptimizationDirection (bool maximize) override
void SetVariableBounds (int index, double lb, double ub) override
void SetVariableInteger (int index, bool integer) override
void SetConstraintBounds (int index, double lb, double ub) override
void AddRowConstraint (MPConstraint *ct) override
void AddVariable (MPVariable *var) override
void SetCoefficient (MPConstraint *constraint, const MPVariable *variable, double new_value, double old_value) override
void ClearConstraint (MPConstraint *constraint) override
void SetObjectiveCoefficient (const MPVariable *variable, double coefficient) override
void SetObjectiveOffset (double value) override
void ClearObjective () override
int64_t iterations () const override
int64_t nodes () const override
MPSolver::BasisStatus row_status (int constraint_index) const override
MPSolver::BasisStatus column_status (int variable_index) const override
bool IsContinuous () const override
bool IsLP () const override
bool IsMIP () const override
std::string SolverVersion () const override
void * underlying_solver () override
void ExtractNewVariables () override
void ExtractNewConstraints () override
void ExtractObjective () override
void SetParameters (const MPSolverParameters &param) override
void SetRelativeMipGap (double value) override
void SetPrimalTolerance (double value) override
void SetDualTolerance (double value) override
void SetPresolveMode (int value) override
void SetScalingMode (int value) override
void SetLpAlgorithm (int value) override
bool SetSolverSpecificParametersAsString (const std::string &parameters) override
absl::Status SetNumThreads (int num_threads) override
Public Member Functions inherited from operations_research::MPSolverInterface
 MPSolverInterface (MPSolver *solver)
virtual ~MPSolverInterface ()
virtual void Write (const std::string &filename)
virtual bool AddIndicatorConstraint (MPConstraint *const)
virtual void BranchingPriorityChangedForVariable (int)
double best_objective_bound () const
double objective_value () const
bool CheckSolutionIsSynchronized () const
virtual bool CheckSolutionExists () const
bool CheckSolutionIsSynchronizedAndExists () const
int last_variable_index () const
bool variable_is_extracted (int var_index) const
void set_variable_as_extracted (int var_index, bool extracted)
bool constraint_is_extracted (int ct_index) const
void set_constraint_as_extracted (int ct_index, bool extracted)
bool quiet () const
void set_quiet (bool quiet_value)
MPSolver::ResultStatus result_status () const
virtual double ComputeExactConditionNumber () const
virtual void SetStartingLpBasis (const std::vector< MPSolver::BasisStatus > &, const std::vector< MPSolver::BasisStatus > &)
virtual double infinity ()
virtual bool InterruptSolve ()
virtual bool NextSolution ()
virtual void SetCallback (MPCallback *)
virtual bool SupportsCallbacks () const

Additional Inherited Members

Public Types inherited from operations_research::MPSolverInterface
enum  SynchronizationStatus { MUST_RELOAD , MODEL_SYNCHRONIZED , SOLUTION_SYNCHRONIZED }
Static Public Attributes inherited from operations_research::MPSolverInterface
static constexpr int64_t kUnknownNumberOfIterations = -1
static constexpr int64_t kUnknownNumberOfNodes = -1
Protected Member Functions inherited from operations_research::MPSolverInterface
void ExtractModel ()
void ResetExtractionInformation ()
void InvalidateSolutionSynchronization ()
void SetCommonParameters (const MPSolverParameters &param)
void SetMIPParameters (const MPSolverParameters &param)
void SetUnsupportedDoubleParam (MPSolverParameters::DoubleParam param)
virtual void SetUnsupportedIntegerParam (MPSolverParameters::IntegerParam param)
void SetDoubleParamToUnsupportedValue (MPSolverParameters::DoubleParam param, double value)
virtual void SetIntegerParamToUnsupportedValue (MPSolverParameters::IntegerParam param, int value)
Protected Attributes inherited from operations_research::MPSolverInterface
MPSolver *const solver_
SynchronizationStatus sync_status_
MPSolver::ResultStatus result_status_
bool maximize_
int last_constraint_index_
int last_variable_index_
double objective_value_
double best_objective_bound_
bool quiet_
Static Protected Attributes inherited from operations_research::MPSolverInterface
static const int kDummyVariableIndex = 0

Constructor & Destructor Documentation

◆ HighsInterface()

operations_research::HighsInterface::HighsInterface ( MPSolver * solver,
bool solve_as_a_mip )
explicit

Definition at line 107 of file highs_interface.cc.

◆ ~HighsInterface()

operations_research::HighsInterface::~HighsInterface ( )
override

Definition at line 110 of file highs_interface.cc.

Member Function Documentation

◆ AddRowConstraint()

void operations_research::HighsInterface::AddRowConstraint ( MPConstraint * ct)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 188 of file highs_interface.cc.

◆ AddVariable()

void operations_research::HighsInterface::AddVariable ( MPVariable * var)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 192 of file highs_interface.cc.

◆ ClearConstraint()

void operations_research::HighsInterface::ClearConstraint ( MPConstraint * constraint)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 202 of file highs_interface.cc.

◆ ClearObjective()

void operations_research::HighsInterface::ClearObjective ( )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 215 of file highs_interface.cc.

◆ column_status()

MPSolver::BasisStatus operations_research::HighsInterface::column_status ( int variable_index) const
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 233 of file highs_interface.cc.

◆ DirectlySolveProto()

MPSolutionResponse operations_research::HighsInterface::DirectlySolveProto ( LazyMutableCopy< MPModelRequest > request,
std::atomic< bool > * interrupt )
inlineoverridevirtual

Reimplemented from operations_research::MPSolverInterface.

Definition at line 47 of file highs_interface.cc.

◆ ExtractNewConstraints()

void operations_research::HighsInterface::ExtractNewConstraints ( )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 253 of file highs_interface.cc.

◆ ExtractNewVariables()

void operations_research::HighsInterface::ExtractNewVariables ( )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 251 of file highs_interface.cc.

◆ ExtractObjective()

void operations_research::HighsInterface::ExtractObjective ( )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 255 of file highs_interface.cc.

◆ IsContinuous()

bool operations_research::HighsInterface::IsContinuous ( ) const
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 239 of file highs_interface.cc.

◆ IsLP()

bool operations_research::HighsInterface::IsLP ( ) const
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 241 of file highs_interface.cc.

◆ IsMIP()

bool operations_research::HighsInterface::IsMIP ( ) const
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 243 of file highs_interface.cc.

◆ iterations()

int64_t operations_research::HighsInterface::iterations ( ) const
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 217 of file highs_interface.cc.

◆ nodes()

int64_t operations_research::HighsInterface::nodes ( ) const
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 221 of file highs_interface.cc.

◆ Reset()

void operations_research::HighsInterface::Reset ( )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 167 of file highs_interface.cc.

◆ row_status()

MPSolver::BasisStatus operations_research::HighsInterface::row_status ( int constraint_index) const
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 227 of file highs_interface.cc.

◆ SetCoefficient()

void operations_research::HighsInterface::SetCoefficient ( MPConstraint * constraint,
const MPVariable * variable,
double new_value,
double old_value )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 196 of file highs_interface.cc.

◆ SetConstraintBounds()

void operations_research::HighsInterface::SetConstraintBounds ( int index,
double lb,
double ub )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 184 of file highs_interface.cc.

◆ SetDualTolerance()

void operations_research::HighsInterface::SetDualTolerance ( double value)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 272 of file highs_interface.cc.

◆ SetLpAlgorithm()

void operations_research::HighsInterface::SetLpAlgorithm ( int value)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 274 of file highs_interface.cc.

◆ SetNumThreads()

absl::Status operations_research::HighsInterface::SetNumThreads ( int num_threads)
overridevirtual

Reimplemented from operations_research::MPSolverInterface.

Definition at line 261 of file highs_interface.cc.

◆ SetObjectiveCoefficient()

void operations_research::HighsInterface::SetObjectiveCoefficient ( const MPVariable * variable,
double coefficient )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 206 of file highs_interface.cc.

◆ SetObjectiveOffset()

void operations_research::HighsInterface::SetObjectiveOffset ( double value)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 211 of file highs_interface.cc.

◆ SetOptimizationDirection()

void operations_research::HighsInterface::SetOptimizationDirection ( bool maximize)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 172 of file highs_interface.cc.

◆ SetParameters()

void operations_research::HighsInterface::SetParameters ( const MPSolverParameters & param)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 257 of file highs_interface.cc.

◆ SetPresolveMode()

void operations_research::HighsInterface::SetPresolveMode ( int value)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 276 of file highs_interface.cc.

◆ SetPrimalTolerance()

void operations_research::HighsInterface::SetPrimalTolerance ( double value)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 271 of file highs_interface.cc.

◆ SetRelativeMipGap()

void operations_research::HighsInterface::SetRelativeMipGap ( double value)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 275 of file highs_interface.cc.

◆ SetScalingMode()

void operations_research::HighsInterface::SetScalingMode ( int value)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 273 of file highs_interface.cc.

◆ SetSolverSpecificParametersAsString()

bool operations_research::HighsInterface::SetSolverSpecificParametersAsString ( const std::string & parameters)
overridevirtual

Reimplemented from operations_research::MPSolverInterface.

Definition at line 278 of file highs_interface.cc.

◆ SetVariableBounds()

void operations_research::HighsInterface::SetVariableBounds ( int index,
double lb,
double ub )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 176 of file highs_interface.cc.

◆ SetVariableInteger()

void operations_research::HighsInterface::SetVariableInteger ( int index,
bool integer )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 180 of file highs_interface.cc.

◆ Solve()

MPSolver::ResultStatus operations_research::HighsInterface::Solve ( const MPSolverParameters & param)
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 112 of file highs_interface.cc.

◆ SolverVersion()

std::string operations_research::HighsInterface::SolverVersion ( ) const
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 245 of file highs_interface.cc.

◆ SupportsDirectlySolveProto()

bool operations_research::HighsInterface::SupportsDirectlySolveProto ( std::atomic< bool > * interrupt) const
inlineoverridevirtual

Reimplemented from operations_research::MPSolverInterface.

Definition at line 44 of file highs_interface.cc.

◆ underlying_solver()

void * operations_research::HighsInterface::underlying_solver ( )
overridevirtual

Implements operations_research::MPSolverInterface.

Definition at line 249 of file highs_interface.cc.


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