For saving extra information to see if looping. More...
#include <ClpSolve.hpp>
Public Member Functions | |
Constructors and destructor and copy | |
ClpSimplexProgress () | |
Default constructor. | |
ClpSimplexProgress (ClpSimplex *model) | |
Constructor from model. | |
ClpSimplexProgress (const ClpSimplexProgress &) | |
Copy constructor. | |
ClpSimplexProgress & | operator= (const ClpSimplexProgress &rhs) |
Assignment operator. This copies the data. | |
~ClpSimplexProgress () | |
Destructor. | |
void | reset () |
Resets as much as possible. | |
void | fillFromModel (ClpSimplex *model) |
Fill from model. | |
Check progress | |
int | looping () |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status. | |
void | startCheck () |
Start check at beginning of whileIterating. | |
int | cycle (int in, int out, int wayIn, int wayOut) |
Returns cycle length in whileIterating. | |
double | lastObjective (int back=1) const |
Returns previous objective (if -1) - current if (0) | |
void | setInfeasibility (double value) |
Set real primal infeasibility and move back. | |
double | lastInfeasibility (int back=1) const |
Returns real primal infeasibility (if -1) - current if (0) | |
void | modifyObjective (double value) |
Modify objective e.g. if dual infeasible in dual. | |
int | lastIterationNumber (int back=1) const |
Returns previous iteration number (if -1) - current if (0) | |
void | clearIterationNumbers () |
clears all iteration numbers (to switch off panic) | |
void | newOddState () |
Odd state. | |
void | endOddState () |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status. | |
void | clearOddState () |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status. | |
int | oddState () const |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status. | |
int | badTimes () const |
number of bad times | |
void | clearBadTimes () |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status. | |
int | reallyBadTimes () const |
number of really bad times | |
void | incrementReallyBadTimes () |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status. | |
int | timesFlagged () const |
number of times flagged | |
void | clearTimesFlagged () |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status. | |
void | incrementTimesFlagged () |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status. | |
Public Attributes | |
Data | |
double | objective_ [CLP_PROGRESS] |
Objective values. | |
double | infeasibility_ [CLP_PROGRESS] |
Sum of infeasibilities for algorithm. | |
double | realInfeasibility_ [CLP_PROGRESS] |
Sum of real primal infeasibilities for primal. | |
double | initialWeight_ |
Initial weight for weights. | |
int | in_ [CLP_CYCLE] |
For cycle checking. | |
int | out_ [CLP_CYCLE] |
Objective values. | |
char | way_ [CLP_CYCLE] |
Objective values. | |
ClpSimplex * | model_ |
Pointer back to model so we can get information. | |
int | numberInfeasibilities_ [CLP_PROGRESS] |
Number of infeasibilities. | |
int | iterationNumber_ [CLP_PROGRESS] |
Iteration number at which occurred. | |
int | numberTimes_ |
Number of times checked (so won't stop too early) | |
int | numberBadTimes_ |
Number of times it looked like loop. | |
int | numberReallyBadTimes_ |
Number really bad times. | |
int | numberTimesFlagged_ |
Number of times no iterations as flagged. | |
int | oddState_ |
If things are in an odd state. |
For saving extra information to see if looping.
Definition at line 244 of file ClpSolve.hpp.
Default constructor.
ClpSimplexProgress::ClpSimplexProgress | ( | ClpSimplex * | model | ) |
Constructor from model.
Copy constructor.
Destructor.
ClpSimplexProgress& ClpSimplexProgress::operator= | ( | const ClpSimplexProgress & | rhs | ) |
Assignment operator. This copies the data.
void ClpSimplexProgress::reset | ( | ) |
Resets as much as possible.
void ClpSimplexProgress::fillFromModel | ( | ClpSimplex * | model | ) |
Fill from model.
int ClpSimplexProgress::looping | ( | ) |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
void ClpSimplexProgress::startCheck | ( | ) |
Start check at beginning of whileIterating.
int ClpSimplexProgress::cycle | ( | int | in, |
int | out, | ||
int | wayIn, | ||
int | wayOut | ||
) |
Returns cycle length in whileIterating.
double ClpSimplexProgress::lastObjective | ( | int | back = 1 | ) | const |
Returns previous objective (if -1) - current if (0)
void ClpSimplexProgress::setInfeasibility | ( | double | value | ) |
Set real primal infeasibility and move back.
double ClpSimplexProgress::lastInfeasibility | ( | int | back = 1 | ) | const |
Returns real primal infeasibility (if -1) - current if (0)
void ClpSimplexProgress::modifyObjective | ( | double | value | ) |
Modify objective e.g. if dual infeasible in dual.
int ClpSimplexProgress::lastIterationNumber | ( | int | back = 1 | ) | const |
Returns previous iteration number (if -1) - current if (0)
clears all iteration numbers (to switch off panic)
void ClpSimplexProgress::newOddState | ( | ) | [inline] |
Odd state.
Definition at line 295 of file ClpSolve.hpp.
void ClpSimplexProgress::endOddState | ( | ) | [inline] |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
Definition at line 298 of file ClpSolve.hpp.
void ClpSimplexProgress::clearOddState | ( | ) | [inline] |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
Definition at line 301 of file ClpSolve.hpp.
int ClpSimplexProgress::oddState | ( | ) | const [inline] |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
Definition at line 304 of file ClpSolve.hpp.
int ClpSimplexProgress::badTimes | ( | ) | const [inline] |
number of bad times
Definition at line 308 of file ClpSolve.hpp.
void ClpSimplexProgress::clearBadTimes | ( | ) | [inline] |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
Definition at line 311 of file ClpSolve.hpp.
int ClpSimplexProgress::reallyBadTimes | ( | ) | const [inline] |
number of really bad times
Definition at line 315 of file ClpSolve.hpp.
void ClpSimplexProgress::incrementReallyBadTimes | ( | ) | [inline] |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
Definition at line 318 of file ClpSolve.hpp.
int ClpSimplexProgress::timesFlagged | ( | ) | const [inline] |
number of times flagged
Definition at line 322 of file ClpSolve.hpp.
void ClpSimplexProgress::clearTimesFlagged | ( | ) | [inline] |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
Definition at line 325 of file ClpSolve.hpp.
void ClpSimplexProgress::incrementTimesFlagged | ( | ) | [inline] |
Returns -1 if okay, -n+1 (n number of times bad) if bad but action taken, >=0 if give up and use as problem status.
Definition at line 328 of file ClpSolve.hpp.
Objective values.
Definition at line 338 of file ClpSolve.hpp.
Sum of infeasibilities for algorithm.
Definition at line 340 of file ClpSolve.hpp.
Sum of real primal infeasibilities for primal.
Definition at line 342 of file ClpSolve.hpp.
Initial weight for weights.
Definition at line 356 of file ClpSolve.hpp.
For cycle checking.
Definition at line 360 of file ClpSolve.hpp.
Objective values.
Definition at line 361 of file ClpSolve.hpp.
Objective values.
Definition at line 362 of file ClpSolve.hpp.
Pointer back to model so we can get information.
Definition at line 364 of file ClpSolve.hpp.
Number of infeasibilities.
Definition at line 366 of file ClpSolve.hpp.
Iteration number at which occurred.
Definition at line 368 of file ClpSolve.hpp.
Number of times checked (so won't stop too early)
Definition at line 376 of file ClpSolve.hpp.
Number of times it looked like loop.
Definition at line 378 of file ClpSolve.hpp.
Number really bad times.
Definition at line 380 of file ClpSolve.hpp.
Number of times no iterations as flagged.
Definition at line 382 of file ClpSolve.hpp.
If things are in an odd state.
Definition at line 384 of file ClpSolve.hpp.