Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2009-08-28, 15:41   #1
qinghuazhu
初级会员
 
注册日期: 2009-08-28
帖子: 3
声望力: 0
qinghuazhu 正向着好的方向发展
默认 linprog解线性规划问题无可行解,但lindo能解出来

现在正做一篇论文的模拟实验,需要用到matlab解线性规划,但遇到了下面的问题:

f = [256; 256; 121; 225; 196; 196; 225; 121; 125; 144; 169; 225]
Aeq =
[1 0 0 0 0 0 0 0 0 0 0 0;
0 1 0 0 0 0 0 0 0 0 0 0;
-1 -1 0 0 0 0 0 0 0 0 0 0;
0 0 -1 0 1 0 0 0 0 0 0 0;
0 0 0 -1 0 1 0 0 0 0 0 0;
0 0 0 0 -1 -1 0 0 0 0 0 0;
0 0 1 0 0 0 -1 0 0 0 0 0;
0 0 0 0 0 0 0 -1 0 0 0 1;
0 0 0 0 0 0 1 0 -1 0 0 0;
0 0 0 0 0 0 0 0 0 1 1 0;
0 0 0 0 0 0 0 0 0 -1 0 0;
0 0 0 0 0 0 0 0 0 0 -1 0;
0 0 0 1 0 0 0 0 0 0 0 -1;
0 0 0 0 0 0 0 1 1 0 0 0]
beq = [1;0;-1;0;0;-1;0;0;0;1;0;-1;0;1]
lb=zeros(12,1)
ub=ones(12,1)
A=[]
b=[]
调用[x,fval,exitflag,output,lambda] = linprog(f,[],[],Aeq,beq,lb,ub)
得到结果为:
Exiting: The primal is infeasible; the equality constraints are dependent
but not consistent.

利用lindo解出的结果为:y = [1;0;1;0;1;0;1;0;1;0;1;0]

经验证Aeq * y = beq,说明lindo解出来的结果确实为可行解,但matlab提示不可行。希望大家花点时间看看,谢谢。
qinghuazhu 当前离线   回复时引用此帖
 


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 21:24


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.