首页 > 数学 > 题目详情
lingo11 解线性规划代码的问题 min z=3*x2+x4 s.t.2*x1-x3+x4=2 -x1+x2+x3=
题目内容:
lingo11 解线性规划代码的问题 min z=3*x2+x4 s.t.2*x1-x3+x4=2 -x1+x2+x3=4 x1+x3+x5=6
lingo11代码如下
model:
sets:
SI/1..5/:c,x;
SJ/1..3/:xl;
SIJ(SI,SJ):cij;
endsets
data:
c=0 3 0 4 0;
xl=2 4 6;
cij=2 0 -1 1 0
-1 1 1 0 0
1 0 1 0 1;
enddata
[obj]min=@sum(SI:x*c)
[eq1]@sum (SIJ(i,j):x(i)*cij(i,j)=xl(j));
为什么无法编译过去?
那三个等式。我觉得是用矩阵乘法表示的。麻烦问下应该怎么写。优质解答
min那句最后要有分号
最后那个约束你写的不对 我不知道你要表达什么 你最好把你要表达的东西写出来 - 追答:
- @for(sj(j):[equ1]@sum(si(i):x(i)*cij(i,j))=xl(j)); cij的数据写错了 行列对应好 看看哪个是行哪个是列
- 追答:
- @for(sj(j):[equ1]@sum(si(i):x(i)*cij(i,j))=xl(j)); cij的数据写错了 行列对应好 看看哪个是行哪个
lingo11代码如下
model:
sets:
SI/1..5/:c,x;
SJ/1..3/:xl;
SIJ(SI,SJ):cij;
endsets
data:
c=0 3 0 4 0;
xl=2 4 6;
cij=2 0 -1 1 0
-1 1 1 0 0
1 0 1 0 1;
enddata
[obj]min=@sum(SI:x*c)
[eq1]@sum (SIJ(i,j):x(i)*cij(i,j)=xl(j));
为什么无法编译过去?
那三个等式。我觉得是用矩阵乘法表示的。麻烦问下应该怎么写。
优质解答
最后那个约束你写的不对 我不知道你要表达什么 你最好把你要表达的东西写出来
- 追答:
- @for(sj(j):[equ1]@sum(si(i):x(i)*cij(i,j))=xl(j)); cij的数据写错了 行列对应好 看看哪个是行哪个是列
- 追答:
- @for(sj(j):[equ1]@sum(si(i):x(i)*cij(i,j))=xl(j)); cij的数据写错了 行列对应好 看看哪个是行哪个
本题链接: