coin-or / Clp.old

This a mirror of the subversion repository on COIN-OR.
https://projects.coin-or.org/Clp
Other
36 stars 20 forks source link

[TRAC] Infeasibility Ray not found #41

Open bernalde opened 5 years ago

bernalde commented 5 years ago

Moved from TRAC as part of COIN fORgery: https://projects.coin-or.org/Clp/ticket/79

https://projects.coin-or.org/Clp/attachment/ticket/79/clpfail.lp

Dear Clp maintainers,

I am using Clp v1.16.1 through the Julia wrapper for doing SDDP (​https://github.com/blegat/StochasticDualDynamicProgramming.jl). For that algorithm, when a problem is infeasible, it important to retrieve an infeasibility ray. When I use Clp, it often happens that no infeasibility ray are returned by Clp.

I have tried to create the simplest possible example of problem for which Clp detects the infeasibility of the problem but does not find infeasibility ray and I have attached it to this ticket. I hope that this example will help you detect the issue in Clp and fix it !

The example is the following:

Minimize 0

Subject To

x0 + x3 + x6 == 2
x1 + x4 + x7 == 2
x2 + x5 + x8 == 2
x0 + x1 + x2 <= 1
x3 + x4 + x5 <= 1
x6 + x7 + x8 <= 1
xi >= 0

Bounds

xi free

End

End As you can see, there are 6 + 9 constraints but no bounds on the variables. If the last 9 constraints are used as bounds or are removed, the infeasibility ray is found by Clp. The Infeasibility Ray is [1,1,1,-1,-1,-1,0,0,0,0,0,0,0,0,0]. Indeed, the sum of the 3 first constraints give "sum xi = 6" while the sum of the 3 following constraints give "sum xi <= 3".

Thanks in advance for your time ! Attachments: https://projects.coin-or.org/Clp/attachment/ticket/79/clpfail.mps https://projects.coin-or.org/Clp/attachment/ticket/79/clpfail.lp

jjhforrest commented 5 years ago

Unable to reproduce (trunk)