[Scip] use of SCIPgetDualsolLinear(scip, cons)

Gerald Gamrath gamrath at zib.de
Wed Mar 4 19:18:21 CET 2015


Dear Veronica,

sorry for the late reply, but we were quite busy in the last weeks.

Your understanding of the dual variables is correct, they should lead to 
the same objective value as the primal LP solution (at least of the LP 
was solved to optimality). Actually, the dual LP solution should even be 
dual feasible.

Could you please check:
1) that the LP was solved to optimality (SCIPgetLPSolstat() == 
SCIP_LPSOLSTAT_OPTIMAL)
2) check that you have only linear constraints and that those have only 
one side (SCIPgetRhsLinear() is infinity or SCIPgetLhsLinear() is -infinity)
3) make sure that there are no additional rows (SCIPgetNConss(scip) == 
SCIPgetNLPRows())

How big is the difference between the primal and the dual LP objective 
that you computed?

Best,
Gerald

Am 19.02.2015 um 11:13 schrieb Veronica Dal Sasso:
> Good morning,
> thank you for your reply but no, my variables are simply non-negative.
> Best regards,
> Veronica Dal Sasso
>
> 2015-02-18 16:49 GMT+01:00 Ambros Gleixner <gleixner at zib.de 
> <mailto:gleixner at zib.de>>:
>
>     Hi Veronica,
>
>     If you have nonzero bounds on your variables then you need to
>     consider their reduced costs.  Might that be the case?
>
>     Best regards,
>     Ambros
>
>
>     Am 18.02.2015 um 16:25 schrieb Veronica Dal Sasso:
>
>         Hello everyone.
>         I'm not sure about the use of the function
>         SCIPgetDualsolLinear().  I'm
>         trying to solve a linear program using column generation, and
>         at each
>         iteration I get the values of the dual variables using
>         SCIPgetDualsolLinear(scip, cons). I expect these dual
>         variables to be
>         the ones that satisfy the complementary slackness conditions
>         and that,
>         if I compute the dual objective function, give the same value
>         as for the
>         primal objective function but gives an unfeasible solution to
>         the dual
>         problem. Instead, I find that the dual optimal objective
>         function has
>         not the same value. Is it possible that I misunderstood the
>         meaning of
>         SCIPgetDualsolLinear() or simply I'm making some sort of error
>         that I
>         haven't found yet in the computing of the dual objective
>         function's value?
>         Thank you in advance,
>         Veronica Dal Sasso
>
>
>         _______________________________________________
>         Scip mailing list
>         Scip at zib.de <mailto:Scip at zib.de>
>         http://listserv.zib.de/mailman/listinfo/scip
>
>
>     -- 
>     ______________________________________________________________
>     Ambros M. Gleixner
>     Zuse Institute Berlin - TU Berlin - Berlin Mathematical School
>     http://www.zib.de/gleixner
>     _______________________________________________
>     Scip mailing list
>     Scip at zib.de <mailto:Scip at zib.de>
>     http://listserv.zib.de/mailman/listinfo/scip
>
>
>
>
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> http://listserv.zib.de/mailman/listinfo/scip

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listserv.zib.de/pipermail/scip/attachments/20150304/37b097e8/attachment.html>


More information about the Scip mailing list