Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
|
#include <preprocessor.h>
Public Member Functions | |
AddSlackVariablesPreprocessor (const GlopParameters *parameters) | |
AddSlackVariablesPreprocessor (const AddSlackVariablesPreprocessor &)=delete | |
AddSlackVariablesPreprocessor & | operator= (const AddSlackVariablesPreprocessor &)=delete |
~AddSlackVariablesPreprocessor () final=default | |
bool | Run (LinearProgram *lp) final |
void | RecoverSolution (ProblemSolution *solution) const final |
Public Member Functions inherited from operations_research::glop::Preprocessor | |
Preprocessor (const GlopParameters *parameters) | |
Preprocessor (const Preprocessor &)=delete | |
Preprocessor & | operator= (const Preprocessor &)=delete |
virtual | ~Preprocessor () |
ProblemStatus | status () const |
virtual void | UseInMipContext () |
void | SetTimeLimit (TimeLimit *time_limit) |
Additional Inherited Members | |
Protected Member Functions inherited from operations_research::glop::Preprocessor | |
bool | IsSmallerWithinFeasibilityTolerance (Fractional a, Fractional b) const |
bool | IsSmallerWithinPreprocessorZeroTolerance (Fractional a, Fractional b) const |
Protected Attributes inherited from operations_research::glop::Preprocessor | |
ProblemStatus | status_ |
const GlopParameters & | parameters_ |
bool | in_mip_context_ |
std::unique_ptr< TimeLimit > | infinite_time_limit_ |
TimeLimit * | time_limit_ |
AddSlackVariablesPreprocessor Transforms the linear program to the equation form min c.x, s.t. A.x = 0. This is done by:
As a consequence, the matrix of the linear program always has full row rank after this preprocessor. Note that the slack variables are always added last, so that the rightmost square sub-matrix is always the identity matrix.
Definition at line 1093 of file preprocessor.h.
|
inlineexplicit |
Definition at line 1095 of file preprocessor.h.
|
delete |
|
finaldefault |
|
delete |
|
finalvirtual |
Stores the optimal solution of the linear program that was passed to Run(). The given solution needs to be set to the optimal solution of the linear program "modified" by Run().
Compute constraint statuses from statuses of slack variables.
The slack variables have reversed bounds - if the value of the variable is at one bound, the value of the constraint is at the opposite bound.
Drop the primal values and variable statuses for slack variables.
Implements operations_research::glop::Preprocessor.
Definition at line 3908 of file preprocessor.cc.
|
finalvirtual |
Implements operations_research::glop::Preprocessor.
Definition at line 3899 of file preprocessor.cc.