model:
!问题三:无网络安全约束的电力市场分配模型;
sets:
jizhu/jz1..jz8/:u,PG0,PGMIN,PGMAX,PG,MCP;
duan/d1..d10/:;
links(jizhu,duan):duanjia,drl,drll,MCPG;
endsets
data:
u=2.2 1 3.2 1.3 1.8 2 1.4 1.8;
PG0=120 73 180 80 125 125 81.1 90;
duanjia=-505 0 124 168 210 252 312 330 363 489
-560 0 182 203 245 300 320 360 410 495
-610 0 152 189 233 258 308 356 415 500
-500 150 170 200 255 302 325 380 435 800
-590 0 116 146 188 215 250 310 396 510
-607 0 159 173 205 252 305 380 405 520
-500 120 180 251 260 306 315 335 348 548
-800 153 183 233 253 283 303 318 400 800;
drl=70 0 50 0 0 30 0 0 0 40
30 0 20 8 15 6 2 0 0 8
110 0 40 0 30 0 20 40 0 40
55 5 10 10 10 10 15 0 0 1
75 5 15 0 15 15 0 10 10 10
95 0 10 20 0 15 10 20 0 10
50 15 5 15 10 10 5 10 3 2
70 0 20 0 20 0 20 10 15 5;
drll=70 70 120 120 120 150 150 150 150 190
30 30 50 58 73 79 81 81 81 89
110 110 150 150 180 180 200 240 240 280
55 60 70 80 90 100 115 115 115 116
75 80 95 95 110 125 125 135 145 155
95 95 105 125 125 140 150 170 170 180
50 65 70 85 95 105 110 120 123 125
70 70 90 90 110 110 130 140 155 160;
enddata
!目标函数;
min=@max(jizhu(i):MCP(i))*982.4;
!PGMAX;
@for(jizhu(k):PGMAX(k)=@smin(PG(k)+15*u(k),@sum(links:drl)));
!PGMIN;
@for(jizhu(k):PGMIN(k)=@smin(PG(k)-15*u(k),0));
!PGMIN<PG<PGMAX;
@for(jizhu(i):PGMIN(i)<PG(i);PG(i)<PGMAX(i));
!p;
@sum(jizhu(i):PG(i))=982.4;
!MCP;
@for(jizhu(i):@for(duan(j)|j#lt#10:b(i)=@if(drll(i,j)#gt#PG(i)#le#drll(i,j+1),j+1)));
!获取PG的段位,即在集合;
@for(jizhu(i):MCP(i)=@min(duanjia(i,b(i)));
你回答的不是我的问题吧。。。
lingo程序运行不出来出现错误,请高手帮忙!谢谢
1. 由于缺乏数据段,可能导致程序难以运行。错误可能源于数据段的处理。2. 在最后一句中,"n"似乎是一个无关的变量,并未在其他约束条件中出现。这可能是需要修改的另一处错误。3. 楼主需要注意的一个问题是,目标函数是非线性的,而且处理的数据是一个1000*100的矩阵。使用Lingo软件解这个问题可能会...
lingo代码运行有问题,错误代码为69,但我自认为程序没有问题啊?(只要把...
3、.000000你改下看能否运行,如果不能我这有通过的源码给你。最后给你点下建议:从代码上看的出你对lingo以有了比较好的基础个人觉得书写lingo代码不要通篇都大写字母,这样看的不是很舒服(反正我是这样觉得)。
lingo程序出错asyntaxerrorhasoccurred
1. 语法错误已经修正,现在该段代码是正确的。2. 修正后的代码如下:```model:min = 1000000 * (205 * x1 + 207 * x2 + 2041 * x3) + 154854.8 * @sqrt(294.35 * (x1)^2 + 250.83 * (x2)^2 + 314 * (x3)^2);x1 + x2 + x3 = 1;x1 <= 0.51;x2 <= 0.67;...
lingo语句问题,不知道错在哪里,求助
你好,答案如下所示。lingo程序必须复制粘贴出完整的程序 才能看出问题在哪 希望你能够详细查看。如果你有不会的,你可以提问 我有时间就会帮你解答。希望你好好学习。每一天都过得充实。
lingo程序问题 求助
错误有下:1,max后面要跟=,正确的为max=2,乘号*不能省略,如目标函数应写为:max=10*x1+9*x2+30*x3+20*x4-15*x5-4*x6-3*x7;3,每行结束时一定要用分号;来结束,如上行,4,约束的标号不能写,如2)15x5+12x6+10x7=0.2*(x1+x2+x3+x4);(x1+x6)\/2+(x2+x7)\/3=x5;x6=...
求助各位LINGO高手,为什么每次运行程序时都会出现问题,在线等待帮助...
应该是没有定义“集”,或者是定义的“集”没放对位置。要看了程序才知问题具体所在。从Error Text看来,楼主在另一处循环或求和语句中也使用可变量 " i ",这在lingo中不允许,也就是说,各处循环(包括求和)等需用不同的循环变量。
Lingo程序有问题,请高手帮忙!!!急!!!
倒数第二行改成@for(fenpei:kai=@IF(((@sum(mianshi:p*p)#eq#2)#or#(@sum(mianshi:p*p)#eq#3)),1, 0));应该是程序有问题 你应该注意程序的可读性,现在这样的很不规范
新手第一次用lingo做数模,不知道错在哪里,求大神改错
1.变量间相乘一定要以"*"连接。比如程序开头的“r(”,这之间应当加上一个“*”字符;2.LINGO自带函数的使用。比如你程序中用到的指数函数@EXP(),余弦函数@COS(),正切函数@TAN();3.LINGO集合的运用。这个你的程序按这么写可能没什么错,但是当问题规模比较大时,比如我的X有10万个,就不太...
在lingo中求解优化问题后怎么利用结果计算别的式子
1、题目:求minz=2*x1+3*x2+x3;s.t.[x1+4*x2+2*x3=8;3*x1+2*x2=6;xj=0,j=1,2,3,]。打开Lingo软件,进入下面编程状态。2、根据实际问题,建立数学模型,即使用数学建模的方法建立优化模型;根据优化模型,利用LINGO来求解模型。主要是根据LINGO软件,把数学模型转译成计算机...
怎么用lingo求解整数规划
1,打开lingo。2,输入程序框架。3,输入问题,只需要按照图中的格式去写。可以看到,lingo的编程语言与我们所学到的运筹学公式基本一致。4,添加整数约束,希望哪一个变量是整数,就在末尾加一行“@gin(变量);”就可以了。5,得出结果,点击图中的“solve”按钮,即可。6,查看结果,解决后,会弹出一个...