[Coin-lpsolver] updates to [Coin,Osi]Presolve

Lou Hafer lou at cs.sfu.ca
Mon Mar 15 17:08:03 EST 2004


Folks,

	I have pushed up updates for CoinPresolve and OsiPresolve. Changes to
the various .hpp files are almost exclusively documentation.

	For OsiPresolve, the functional change is removal of explicit
dependence on CoinWarmStartBasis, so that OsiPresolve will work with any OSI
solver. I also enhanced the debug code.

	For CoinPresolve, there are two functional changes:
	
  * CoinPresolveFixed and CoinPresolveForcing are modified to properly adjust
    column status during postsolve when a bound change makes the present
    status unviable (e.g., by changing a finite bound to infinity).

  * CoinPresolveSingleton and CoinPresolveDoubleton are modified to properly
    adjust the row solution (activity) during presolve.

Note that this last isn't sufficient to maintain an accurate row solution
during presolve. I stopped once I realised that the code just isn't set up to
do it, even though there are a few other spots where it tries. Nor does it
seem to need an accurate row solution. Which begs the question, ``Should we
back out all the code devoted to incremental update of the row solution, and
just recalculate it at the end?''

							Lou




More information about the Clp mailing list