|
Osi
0.108.1
|
#include <CoinPresolveUseless.hpp>
Inheritance diagram for useless_constraint_action:
Collaboration diagram for useless_constraint_action:Classes | |
| struct | action |
Public Member Functions | |
| const char * | name () const |
| A name for debug printing. More... | |
| void | postsolve (CoinPostsolveMatrix *prob) const |
| Apply the postsolve transformation for this particular presolve action. More... | |
| virtual | ~useless_constraint_action () |
Public Member Functions inherited from CoinPresolveAction | |
| CoinPresolveAction (const CoinPresolveAction *next) | |
| Construct a postsolve object and add it to the transformation list. More... | |
| void | setNext (const CoinPresolveAction *nextAction) |
| modify next (when building rather than passing) More... | |
| virtual | ~CoinPresolveAction () |
| Virtual destructor. More... | |
Static Public Member Functions | |
| static const CoinPresolveAction * | presolve (CoinPresolveMatrix *prob, const int *useless_rows, int nuseless_rows, const CoinPresolveAction *next) |
Static Public Member Functions inherited from CoinPresolveAction | |
| static void | throwCoinError (const char *error, const char *ps_routine) |
| Stub routine to throw exceptions. More... | |
Private Member Functions | |
| useless_constraint_action (int nactions, const action *actions, const CoinPresolveAction *next) | |
Private Attributes | |
| const int | nactions_ |
| const action *const | actions_ |
Related Functions | |
(Note that these are not member functions.) | |
| const CoinPresolveAction * | testRedundant (CoinPresolveMatrix *prob, const CoinPresolveAction *next) |
| Scan constraints looking for useless constraints. More... | |
Additional Inherited Members | |
Public Attributes inherited from CoinPresolveAction | |
| const CoinPresolveAction * | next |
| The next presolve transformation. More... | |
Definition at line 10 of file CoinPresolveUseless.hpp.
|
private |
|
virtual |
|
virtual |
A name for debug printing.
It is expected that the name is not stored in the transform itself.
Implements CoinPresolveAction.
|
static |
|
virtual |
Apply the postsolve transformation for this particular presolve action.
Implements CoinPresolveAction.
|
related |
Scan constraints looking for useless constraints.
A front end to identify useless constraints and hand them to useless_constraint_action::presolve() for processing.
In a bit more detail, the routine implements a greedy algorithm that identifies a set of necessary constraints. A constraint is necessary if it implies a tighter bound on a variable than the original column bound. These tighter column bounds are then used to calculate row activity and identify constraints that are useless given the presence of the necessary constraints.
|
private |
Definition at line 20 of file CoinPresolveUseless.hpp.
|
private |
Definition at line 21 of file CoinPresolveUseless.hpp.
1.8.5