[Cbc] Very different results with CBC/CLP 2.7.7
John Forrest
john.forrest at fastercoin.com
Tue Mar 19 10:20:09 EDT 2013
Hervé,
The changed results are due to some slight way in which coefficients are
calculated. Part way through presolve we get two constraints -
x = 1.0029681327 * y
and
x = 1.002968133 * y
presolve finds it can substitute for x but this gives
1.0e-10 * y == 0.0
This happens for sixty or so variables which change the objective as now
all y must be zero.
I think this may also explain why a suboptimal basis i.e. with y==0
looks optimal as code does not think it can increase y from zero on
postsolved problem.
I have put an option in so small elements are cancelled on such
substitutions. Not wishing to change default behaviour I have made it
an obscure option - so now you would need to set preoptions 1036 (i.e.
the 12 you needed before + 1024). At present this is only in trunk but
should migrate to new version of stable soon.
John Forrest
On 12/03/13 17:21, John Forrest wrote:
> Hervé
>
> Your matrix does give Clp some problems. I am not sure what changes
> to Clp (or Coin presolve) have affected runs. With my latest trunk
> (not in svn) it solves with
> -preoption 12 -primaltol 1.0e-5 -primals
> but fails with latest stable.
>
> stable works with
> -presolve off -scaling off -primaltol 1.0e-5 -primals but takes 5-6
> minutes.
>
> Leaving aside the primal feasibility issues, it seems to be a scaling
> issue with objective. I can give the unpresolved version a suboptimal
> basis and it declares it optimal.
>
> I will carry on looking.
>
> John Forrest
> _______________________________________________
> Cbc mailing list
> Cbc at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/cbc
>
>
More information about the Cbc
mailing list