作业帮 > 综合 > 作业

LINGO 错误model:求解20个交巡警平台分配到92个节点的方案; sets:AA/1..20/; cross/1

来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/08/13 01:06:52
LINGO 错误
model:
求解20个交巡警平台分配到92个节点的方案;
sets:
AA/1..20/;
cross/1..92/;
links(AA,cross):dis,x;
endsets
数据的定义部分;
data:
dis=@FILE( 'C:\Users\Administrator\Desktop\dis.txt');
enddata
目标函数;
min=@max(links(i,j):x(i,j)*dis(i,j));
@for(cross(i):
@sum(AA(j):x(i,j)=1));
@for(AA(j):
@sum(cross(i):x(i,j)>=1));
整数约束;
@for(links(i,j):@bin(x(i,j)));
end
总是出现error 1070.
LINGO 错误model:求解20个交巡警平台分配到92个节点的方案; sets:AA/1..20/; cross/1
model:
!求解20个交巡警平台分配到92个节点的方案;
sets:
AA/1..20/;
cross/1..92/;
links(AA,cross): dis,x;
endsets
!数据的定义部分;
data:
dis=@FILE( 'C:\Users\Administrator\Desktop\dis.txt');
enddata
!目标函数;
min=@max(links(i,j):x(i,j)*dis(i,j));
@for(cross(i):
@sum(AA(j):x(j,i))=1);
@for(AA(j):
@sum(cross(i):x(j,i))>=1);
!整数约束;
@for(links(i,j):@bin(x(i,j)));
end
再问: 我试过了还是报错。lingo中有办法使矩阵像在matlab中那样相乘吗?那个i,j,我总是分不清
再答: 那给具体错误提示 我改的已经没问题了 除非你的数据输入有错 lingo里面不是矩阵 没有那种现成的乘法
再问: 大侠果然很有自信,我运行lingo的时候,它的报错永远都是error 1017,我的dis数据是20行92列的数据,我把它贴上去了,还是报错,在lingo里没有那种直接的乘法,但是通过i跟j,是可以做到的吧,那我就好好努力了。谢谢。还想请问,那个为什么第一个图显示已经运算了很多次之后还会报错?
再答: 相乘就用集循环函数啊 你上面不也用了吗 报错那是你的lingo版本有问题 换11试试