Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::glop::EmptyColumnPreprocessor Class Referencefinal

Removes the empty columns from the problem. More...

#include <preprocessor.h>

Inheritance diagram for operations_research::glop::EmptyColumnPreprocessor:
operations_research::glop::Preprocessor

Public Member Functions

 EmptyColumnPreprocessor (const GlopParameters *parameters)
 
 EmptyColumnPreprocessor (const EmptyColumnPreprocessor &)=delete
 
EmptyColumnPreprocessoroperator= (const EmptyColumnPreprocessor &)=delete
 
 ~EmptyColumnPreprocessor () 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
 
Preprocessoroperator= (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< TimeLimitinfinite_time_limit_
 
TimeLimittime_limit_
 

Detailed Description

Removes the empty columns from the problem.

EmptyColumnPreprocessor

Definition at line 281 of file preprocessor.h.

Constructor & Destructor Documentation

◆ EmptyColumnPreprocessor() [1/2]

operations_research::glop::EmptyColumnPreprocessor::EmptyColumnPreprocessor ( const GlopParameters * parameters)
inlineexplicit

Definition at line 283 of file preprocessor.h.

◆ EmptyColumnPreprocessor() [2/2]

operations_research::glop::EmptyColumnPreprocessor::EmptyColumnPreprocessor ( const EmptyColumnPreprocessor & )
delete

◆ ~EmptyColumnPreprocessor()

operations_research::glop::EmptyColumnPreprocessor::~EmptyColumnPreprocessor ( )
finaldefault

Member Function Documentation

◆ operator=()

EmptyColumnPreprocessor & operations_research::glop::EmptyColumnPreprocessor::operator= ( const EmptyColumnPreprocessor & )
delete

◆ RecoverSolution()

void operations_research::glop::EmptyColumnPreprocessor::RecoverSolution ( ProblemSolution * solution) const
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().

Implements operations_research::glop::Preprocessor.

Definition at line 451 of file preprocessor.cc.

◆ Run()

bool operations_research::glop::EmptyColumnPreprocessor::Run ( LinearProgram * lp)
finalvirtual

Runs the preprocessor by modifying the given linear program. Returns true if a postsolve step will be needed (i.e. RecoverSolution() is not the identity function). Also updates status_ to something different from ProblemStatus::INIT if the problem was solved (including bad statuses like ProblemStatus::ABNORMAL, ProblemStatus::INFEASIBLE, etc.).

Any feasible value will do.

Implements operations_research::glop::Preprocessor.

Definition at line 407 of file preprocessor.cc.


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