Changeset 1717


Ignore:
Timestamp:
Mar 30, 2011 4:48:54 AM (9 years ago)
Author:
forrest
Message:

changes to try and make more stable

Location:
trunk/Clp/src
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Clp/src/ClpFactorization.cpp

    r1665 r1717  
    28202820                                     double pivotValue)
    28212821{
     2822     double newValue;
    28222823     // better to have small tolerance even if slower
     2824     if (zeroValue > 0.0)
     2825          newValue = zeroValue;
     2826     else
     2827          newValue = -zeroTolerance() * zeroValue;
    28232828     zeroTolerance(CoinMin(zeroTolerance(), zeroValue));
    28242829     // better to have large tolerance even if slower
    2825      double newValue;
    28262830     if (pivotValue > 0.0)
    28272831          newValue = pivotValue;
  • trunk/Clp/src/ClpSimplexDual.cpp

    r1710 r1717  
    535535          // Do iterations
    536536          int returnCode = whileIterating(saveDuals, ifValuesPass);
     537          if (problemStatus_ == 1 && (progressFlag_&8) != 0 &&
     538              fabs(objectiveValue_) > 1.0e10 )
     539            problemStatus_ = 10; // infeasible - but has looked feasible
    537540#ifdef CLP_INVESTIGATE_SERIAL
    538541          nPivots = factorization_->pivots();
     
    13661369                                   printf("flag a %g %g\n", btranAlpha, alpha_);
    13671370#endif
    1368                                    //#define FEB_TRY
    1369 #ifdef FEB_TRY
     1371                                   //#define FEB_TRY
     1372#if 1 //def FEB_TRY
    13701373                                   // Make safer?
    1371                                    factorization_->saferTolerances (1.0e-15, -1.03);
     1374                                   factorization_->saferTolerances (-0.99, -1.03);
    13721375#endif
    13731376                                   setFlagged(sequenceOut_);
     
    49764979                      CoinMemcpyN(savedSolution_ ,
    49774980                                  numberColumns_, columnActivityWork_);
    4978                       //numberDualInfeasibilities_=1;
    49794981                      problemStatus_ = 10;
    49804982                      situationChanged = 0;
    4981                       //numberPrimalInfeasibilities_=1;
    49824983                    }
    49834984                    //assert(numberDualInfeasibilitiesWithoutFree_==0);
    49844985                    if (numberDualInfeasibilities_) {
    4985                          if (numberPrimalInfeasibilities_ || numberPivots) {
     4986                        if ((numberPrimalInfeasibilities_ || numberPivots)
     4987                            && problemStatus_!=10) {
    49864988                              problemStatus_ = -1; // carry on as normal
    49874989                         } else {
  • trunk/Clp/src/ClpSimplexPrimal.cpp

    r1707 r1717  
    28922892                                        << CoinMessageEol;
    28932893                              setFlagged(sequenceIn_);
    2894 #ifdef FEB_TRY
     2894#if 1 //def FEB_TRY
    28952895                              // Make safer?
    2896                               factorization_->saferTolerances (1.0e-15, -1.03);
     2896                              factorization_->saferTolerances (-0.99, -1.03);
    28972897#endif
    28982898                              progress_.clearBadTimes();
Note: See TracChangeset for help on using the changeset viewer.