lingo求不出可行解
来源:学生作业帮 编辑:百度作业网作业帮 分类:数学作业 时间:2024/08/20 04:48:38
lingo求不出可行解
![](http://img.wesiedu.com/upload/9/64/964f001abf7a6f8a9a41c132c09c7f32.jpg)
程序对应的方程组如上所示,
lingo程序如下:
model:
sets:
plan/1..36/;
分配方法(堆数)有36种;
raw/1..14/:l,total;
第二档原料有14种,l是原料长度,total是各个原料的根数;
require(plan,raw):q;
第i种分配方案用到的第j种原料的根数用qij表示;
endsets
data:
l=7 7.5 8 8.5 9 9.5 10 10.5 11 11.5 12 12.5 13 13.5;
total=25 22 18 23 20 25 20 17 30 25 20 60 20 25;
enddata
@for(raw(j):@sum(plan(i):q(i,j))<=total(j));
36捆成品使用的原料数量不超过各种原料的供应量;
@for(plan(i):@sum(raw(j):q(i,j))=20);
每一捆成品要使用20根原料;
@for(plan(i):@sum(raw(j):q(i,j)*l(j))=89);
每一捆成品使用的原料总长89米;
@for(require:@gin(q));
end
运行之后提示我没有可行解,请问是程序哪里有问题么?应该怎么改?
![](http://img.wesiedu.com/upload/9/64/964f001abf7a6f8a9a41c132c09c7f32.jpg)
程序对应的方程组如上所示,
lingo程序如下:
model:
sets:
plan/1..36/;
分配方法(堆数)有36种;
raw/1..14/:l,total;
第二档原料有14种,l是原料长度,total是各个原料的根数;
require(plan,raw):q;
第i种分配方案用到的第j种原料的根数用qij表示;
endsets
data:
l=7 7.5 8 8.5 9 9.5 10 10.5 11 11.5 12 12.5 13 13.5;
total=25 22 18 23 20 25 20 17 30 25 20 60 20 25;
enddata
@for(raw(j):@sum(plan(i):q(i,j))<=total(j));
36捆成品使用的原料数量不超过各种原料的供应量;
@for(plan(i):@sum(raw(j):q(i,j))=20);
每一捆成品要使用20根原料;
@for(plan(i):@sum(raw(j):q(i,j)*l(j))=89);
每一捆成品使用的原料总长89米;
@for(require:@gin(q));
end
运行之后提示我没有可行解,请问是程序哪里有问题么?应该怎么改?
![lingo求不出可行解](/uploads/image/z/16945154-26-4.jpg?t=lingo%E6%B1%82%E4%B8%8D%E5%87%BA%E5%8F%AF%E8%A1%8C%E8%A7%A3)
跟你说了 这两句矛盾 你把所有q加起来看看不就知道了吗? 你写的时候就应该能发现
@for(raw(j):@sum(plan(i):q(i,j))
再问: 是的,解决了,多谢~
@for(raw(j):@sum(plan(i):q(i,j))
再问: 是的,解决了,多谢~