Diagnose infeasibility of linear programming
4 次查看(过去 30 天)
显示 更早的评论
Greetings,
I use linprog function with different method to solve a linear programming problem. But I got exitflag=-2, which means that there is no feasible solution. It seems the current problem may have conflicts in real world. I need to check which constraints can be relaxed to well-define the problem.
However, I have more thant 100 constraints in this linear programming problem. I don't know how can I diagnose the infeasibility. Can anyone give me some hints on how to diagnose the infeasibility of constraints?
By the way, I also use cplexlp function which is linear programming function of Cplex by IBM. It seems there are some ways to diagnose the infeasibility in Cplex. But I just started to use cplex and don't have idea where to start to diagnose.
Thank you very much! :)
0 个评论
回答(1 个)
Bruno Luong
2018-12-14
编辑:Bruno Luong
2018-12-14
"I need to check which constraints can be relaxed to well-define the problem."
It likes asking: when a glass of water spills out which of the water molecule is a culpite. The answer is all of them.
For example if you take as simple case in R^2:
z=exp(2i*pi*[0:2]/3);
A=[real(z); imag(z)]'
b=[-1; -1; -1]
Values
A =
1.0000 0
-0.5000 0.8660
-0.5000 -0.8660
>> b
b =
-1
-1
-1
you'll get no feasible point x such that three constraints
A*x <= b
are satisisfied.
But if you remove any row of A, at let the number of constraints is 2, then it becomes well defined. Which one is a bad one? Answer: all of them.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Linear Least Squares 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!