[Coin-lpsolver] Shouldn't primalPivotResult update reduced costs?

John J Forrest jjforre at us.ibm.com
Mon Jun 12 03:38:35 EDT 2006





Paulo,

Something seems to have gone wrong with my cvs commit of ClpSimplex.cpp.
Can you add

   reducedCost_[ii] = dj_[ii]; at line 6600 of ClpSimplex.cpp (just after
dj_[ii] += element[ii];

and see if that fixes.

John


                                                                           
             "Paulo J. S.                                                  
             Silva"                                                        
             <pjssilva at ime.usp                                          To 
             .br>                      coin-lpsolver at list.coin-or.org      
             Sent by:                                                   cc 
             coin-lpsolver-bou                                             
             nces at list.coin-or                                     Subject 
             .org                      Re: [Coin-lpsolver] Shouldn't       
                                       primalPivotResult update reduced    
                                       costs?                              
             06/09/06 12:42 PM                                             
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           





> I don't see why the time should have increased compared to
> setObjectiveAndRefresh as I was just doing part of that code.

Just to make it clear. I said that primalPivotResult was taking twice as
long (as before). I haven't compared the times with an explicit call to
setObjectiveAndRefresh following primalPivotResult.

> However I was being stupid.  I had put in the dual update but in an
> odd place in the sequence of the code AND with a bug.  So I have taken
> out the extra parameter I put in yesterday and it should be faster.

John, I believe you made some mistake. Now the old code (from my first
e-mail):

  setObjectiveAndRefresh(_originalObjective);
  pivotStatus = primalPivotResult(in, 1, out, outStatus, stepSize,NULL);
  printf("1 - %e\n", getReducedCost()[653]);
  setObjectiveAndRefresh(_originalObjective);
  printf("2 - %e\n", getReducedCost()[653]);

is printing

  1 - 0,000000e+00
  2 - -7,825281e-02

Once again.

Best,

Paulo

_______________________________________________
Coin-lpsolver mailing list
Coin-lpsolver at list.coin-or.org
http://list.coin-or.org/mailman/listinfo/coin-lpsolver





More information about the Clp mailing list