请问这个lingo线性规划算法哪里有问题
首页/题库/392℃/2024-07-01 09:26:50
请问这个lingo线性规划算法哪里有问题
model:
sets:
months/1..12/:prod,a,f,y;
endsets
data:
a=2 3 4 6 8 10 10 6 4 3 2 2;
y=1;
enddata
@for(months(I)| prod(I) #GT# prod(I-1):
f(I)= 10 * @abs(prod(I)-prod(I-1));
);
@for(months(I)| prod(I-1) #GT# prod(I):
f(I)= 5 * @abs(prod(I-1)-prod(I));
);
min = @sum(months:f);
@for(months(i)|i#eq#1:prod(i)+1-a(i)
有了进一步改进(刚学这个,
@for(months(I)|I#ge#2:
f(I)=@if(prod(I)#GE#prod(I-1),10 * @abs(prod(I)-prod(I-1)),5 * @abs(prod(I-1)-prod(I)));
程序运行提示这一行有错,我用的lingo4
谢谢zjpwang的指点。前面那句我已经把gt改为ge。不过按照你说的“不可省略部分”我加了,如下
@for(months(I)|I#ge#2:
f(I)=@if(prod(I)#GT#prod(I-1),10 * @abs(prod(I)-prod(I-1)),@if(prod(I-1) #GT# prod(I),5 * @abs(prod(I-1)-prod(I)),0)));
但还是这一行有错。
请问你用的是哪个版本的,是4.
你运行的结果是多少?
优质解答:
@for(months(I)| prod(I) #GT# prod(I-1):
当I=1时I-1=0出错
语句也有问题
可改成如下形式(因为prod(I)==prod(I-1)时怎么搞不知道,数值用?代替了)
@for(months(I)|I#ge#2:
f(I)=@if(prod(I)#GT#prod(I-1),10 * @abs(prod(I)-prod(I-1)),@if(prod(I-1) #GT# prod(I),5 * @abs(prod(I-1)-prod(I)),)));
处要填入prod(I)==prod(I-1)的情况,不能省略!
少了“)” 注意检查
@for(months(I)|I#ge#2:
f(I)=@if(prod(I)#GT#prod(I-1),10 * @abs(prod(I)-prod(I-1)),@if(prod(I-1) #GT# prod(I),5 * @abs(prod(I-1)-prod(I)),0)));
这个没错误!我这可以运行!
----------------------------------------------
我的是LINGO10.0.网上都有的下,下一个高一点的吧太老了.
程序:
sets:
months/1..12/:prod,a,f,y;
endsets
data:
a=2 3 4 6 8 10 10 6 4 3 2 2;
y=1;
enddata
@for(months(I)|I#ge#2:
f(I)=@if(prod(I)#GT#prod(I-1),10 * @abs(prod(I)-prod(I-1)),@if(prod(I-1) #GT# prod(I),5 * @abs(prod(I-1)-prod(I)),0)));
min = @sum(months:f);
@for(months(i)|i#eq#1:prod(i)+1-a(i)
我来回答修改/报错/举报内容!
猜你喜欢
- 2014新目标八下课本+单词听力
- 阴与阳有几种解释分别是那些?
- 连词成句 I,good,am,sports,at,(.)
- 读《窗边的小豆豆》有感,500字作文
- 一:写比喻句.1、没有风,湖面格外平静,仿佛( ).
- 苏教版五年级下册习作一例文 快有急用
- 对英语一点都不懂,应该从那里学起
- 英语翻译我只是在看见你扬起唇角绽出一个比阳光还要明朗的笑容的时候,觉得整个世界都亮起来了,只是会不自觉地,跟着你笑.我真
- 《逆水行舟不进则退》短文 的迎难而上的上是什么意思向上游的上是什么意思
- 农民工流入最多的省区 A.新疆、山东、北京 B.四川、湖北、福建 C.广东、浙江、上海 D.上海、江苏、浙江
- 书到用时方恨少,事非经过不知难这句格言什么意思
- 最近发现了一些奇怪的石头.