数学建模社区-数学中国

标题: 如何用matlab求下面的线性规划? [打印本页]

作者: 国国国    时间: 2014-8-21 20:27
标题: 如何用matlab求下面的线性规划?
已知16*16的权重矩阵w和16*16的决策变量矩阵x,x(i,j)=0或1
目标函数为:sum(w(i,j)*x(i,j))
约束条件为: 1、对x矩阵每行每列求和均为1
2、x是对角矩阵
用matlab怎么做?。。
下面是我用lingo做的,但是不出结果。。
MODEL:
sets:
ll/1..16/;
ss/1..16/;
lj(ll,ss):w,x;
endsets
min=@sum(lj(i,j):w(i,j)*k(i,j));
@for(lj(i,j):@gin(x(i,j)));
@for(lj(i,j):@sum(ll(i):x(i,j))=1);
@for(lj(i,j):@sum(ss(j):x(i,j))=1);
@for(lj(i,j):x(i,j)=x(j,i));
data:
w=@ole('d:/4.xlsx','w');
@ole('d:/4.xlsx','x');
enddata
end


作者: 国国国    时间: 2014-8-21 20:28
是: @ 。。。。。。。。。。
作者: 国国国    时间: 2014-8-21 20:34
倒数第三行 @ole('d:/4.xlsx','x')改成@ole('d:/4.xlsx','x')=x
作者: madio    时间: 2014-8-22 10:40
matlab做,你把线性规划写成矩阵形式,然后定义几个矩阵,调用函数就可以了




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5