发电机组的优化配置问题数学建模论文.docx
《发电机组的优化配置问题数学建模论文.docx》由会员分享,可在线阅读,更多相关《发电机组的优化配置问题数学建模论文.docx(13页珍藏版)》请在冰豆网上搜索。
发电机组的优化配置问题数学建模论文
A题
院系
______________
参赛队员
______
______
______
联系电话
______________
题目发电机组的优化配置
摘要
本文针对不同种类发电机,不同时段的实际用电情况,建立了如何合理安排发电机使用的模型。
对于问题
(一),该模型灵活运用二次规划,整体考虑一天中的各个阶段,并利用lingo求得一天中最小费用为997790(元)。
在问题
(二)中,应用经济学模型和统计学中线性回归分析的原理,并利用excel中丰富的统计函数和lingo软件求得结果。
问题(三),仿照问题
(一)的方法,但发现最小费用没变。
正文
一、问题重述
电是我们生活中不可缺少的一部分,现考虑发电机组优化配置问题。
某发电厂负责某地区的供电任务,已知该地区夏季一天的电力需求如下:
段(时)
0---6
6--9
9--15
15--18
18--24
需求(兆瓦)
15000
30000
25000
40000
27000
类型
输出最低水平(兆瓦)
输出最高水平(兆瓦)
输出最低水平费用(元)
每台机组开动准备费用(元)
(每小时)
(每兆瓦)
1
850
2000
1000
2
2000
2
1250
1750
2600
1000
3
1500
4000
3000
3
500
现电厂有三种类型发电机可投入运转:
一型12台;二型6台;三型5台;各个型号机组相关数据如下:
正常情况下,在满足估计的负荷要求之外,每一时刻运转的发电机组应足够多,使得当负荷增加不超过15%时,能够通过调高运转的发电机组的输出来满足增载的要求。
请你建立该问题的数学模型,通过求解模型回答以下问题:
(1)在一天中各个时间段应安排使用那些发电机组运转可以使得在满足负荷要求的情况下总的费用最低?
总的费用为多少?
(2)在一天中每段时间,电力生产的边际费用是多少?
即应为用电定什么价格?
(3)将后备输出保障的15%降低为10%,运转费用节省的情况如何?
可以降为多少?
二、问题的基本假设
1.假设每个阶段不会变更设备。
2.不考虑设备需要维护与修理。
3.假设用电需求相对稳定,不会发生突变。
4.关闭和启动发电机时均是瞬时完成,不计相应使用的时间。
5.发电机输出过程其功率始终保持不变。
三、符号说明
名称
符号
阶段
i
种类
j
发电机的台数
n(i,j)
每台每小时实际的电量
p(i,j)
第j台单位时间最低电量
minpj
第j台单位时间最高电量
maxpj
名称
符号
第i阶段用时
ti
第i阶段用电需求
wi
第j种启动费
bj
第j种输出最低水平费用
aj
第j种每小时超出的费用
fj
第j种最多台数
nj
一天总费用
Q
第j阶段边际费用
cj
边际成本
MC
四、模型建立与求解
问题
(一)
模型分析
此题研究的是每天在第j个阶段如何合理分配各种类型的发电机,使每日的成本Q最低的数学模型,建立如下二次规划模型[3]。
发电机组运转的费用可以分成两部分:
第一部分与其输出功率和运行时间紧密相连,
即:
;
第二部分与其输出功率和运行时间无关,即开机时费用
其中
,
还有当i=1时,
。
模型的建立
确定目标函数
在满足需求量的情况下,为了使每天发电成本最低,我们建立如下目标函数
其中
约束条件
模型的求解
通过lingo编程[2](见附录)得到结果Q为元
在不同时间段对各类型发电机所需求的数量,功率如下表所示:
阶段
一
二
三
四
五
种类
台数
实际功率
台数
实际功率
台数
实际功率
台数
实际功率
台数
实际功率
一
12
850
12
1625
12
12
12
1375
二
3
1600
6
1750
6
1750
6
1750
6
1750
三
0
0
1500
0
1500
4
1500
0
结果分析
由上述表格可知,第一种机型在所有阶段里全部使用;第二种机型在各阶段几乎全部使用;第三种机型则几乎没用。
经分析,考虑到需求量与使用成本的关系,第三种机型不适合用来在该地区供电。
问题
(二)
模型的分析
此题要求一天中每段时间电力生产的边际费用(即边际成本)。
首先给出边际成本[1]的定义:
MC是厂商在短期内增加一单位产量是所增加的成本。
经过lingo试验,Q30时,发电机组的类型和数量都保持不变。
所以启动费不变,不予考虑。
模型的建立
由问题
(一)可知不能直接求出各阶段用电价格与需求电量之间的关系,所以不能直接求导。
只能通过
逐渐逼近才能求出边际成本。
并用线性回归分析MC与Q的关系。
MC=β0+β1Q
模型的求解
本题分别设Q=
兆瓦;通过运行lingo(程序见附录)和excel中的INTERCEPT函数求解拟合直线的截距和LINEST函数求解拟合直线的斜率可获得各阶段边际成本价格MC(Q)(表格见附录)
β0
β1
y1
7.
y2
y3
y4
y5
模型的结果
由上表格β1相对于β0为零,每个阶段边际成本逼近于一个常数,且阶段三与阶段五的拟合曲线相近,阶段二与阶段四相近。
结果见下表:
阶段
一
二
三
四
五
边际费用(元/MW)
单位时间边际费用
(元/(MWh)
结果分析用影子价格【5】的方法对上述结果进行检验,可以看出结果正确。
问题(三)模型分析
这里的目标函数同问题一相同,建立单目标最优模型。
只需在约束条件中将后备输出保障的15%降低为10%。
目标函数
其中
约束条件
模型的结果
通过lingo编程(见附录)得到结果Q为元
在不同时间段对各类型发电机所需求的数量,功率如下表所示:
阶段
一
二
三
四
五
种类
台数
实际功率
台数
实际功率
台数
实际功率
台数
实际功率
台数
实际功率
一
12
850
12
1625
12
12
12
1375
二
3
1600
6
1750
6
1750
6
1750
6
1750
三
0
0
1500
0
1500
4
1500
0
结果分析
由上表可知将后备输出保障的15%降低为10%后,总费用Q不变,且各阶段每种机型的使用台数也不变。
五、误差分析
发电机输出过程其功率始终保持不变是在理想情况下才存在的,有一定的误差,还有在开启以及关闭发电机时不仅有功率损耗方面的误差,而且还有时间方面的误差,这些都会对模型的建立有一定程度上的影响。
此外lingo的运算结果只保留小数点后3位数字,所以也存在无误差。
六、模型评价
模型的优点:
(1)模型的结构简洁明了,可移植性好;
(2)问题
(一)的模型可操作性强,适用范围广;
(3)本模型中使用了lingo和excel软件,大大减少了计算量。
模型的缺点:
(1)由于软件等原因,存在误差;
(2)问题
(二)模型的操作较为复杂。
七、参考文献
【1】高鸿业.西方经济学.中国人民大学出版社.
【2】宋来忠.数学建模与实验.科学出版社.
【3】姜启源,谢金星,叶俊.数学建模.高等教育出版社.
【4】茆诗松,程依明,濮晓龙.概率论与数理统计教程.高等教育出版社.
【5】胡运权.运筹学基础及应用.高等教育出版社.
附录
程序(问题一)
model:
sets:
Time_slot/1..5/:
t,w;
Generator_type/1..3/:
a,f,b,minp,maxp;
Link(Time_slot,Generator_type):
n,p;
endsets
data:
t=6,3,6,3,6;
w=15000,30000,25000,40000,27000;
minp=850,1250,1500;
maxp=2000,1750,4000;
a=1000,2600,3000;
f=2,,3;
b=2000,1000,500;
enddata
min=@sum(Link(i,j):
n(i,j)*a(j)*t(i)+n(i,j)*(p(i,j)-minp(j))*t(i)*f(j)+@if(n(@if(i#eq#5,1,i+1),j)#gt#n(i,j),n(@if(i#eq#5,1,i+1),j)-n(i,j),0)*b(j));
@for(Time_slot(i):
@sum(Generator_type(j):
n(i,j)*p(i,j))>=w(i););
@for(Time_slot(i):
@sum(Generator_type(j):
n(i,j)*p(i,j))<=w(i)*;);
@for(Time_slot(i):
@bnd(0,n(i,1),12););
@for(Time_slot(i):
@bnd(0,n(i,2),6););
@for(Time_slot(i):
@bnd(0,n(i,3),5););
@for(Link(i,j):
@bnd(minp(j),p(i,j),maxp(j)););
@for(Link(i,j):
@gin(n(i,j)););
end
程序(问题二):
以Q=7为例:
model:
sets:
Time_slot/1..5/:
t,w,q;
Generator_type/1..3/:
a,f,b,minp,maxp;
Link(Time_slot,Generator_type):
n,p;
endsets
data:
t=6,3,6,3,6;
q=7 ;
w=15000,30000,25000,40000,27000;
minp=850,1250,1500;
maxp=2000,1750,4000;
a=1000,2600,3000;
f=2,,3;
b=2000,1000,500;
enddata
min=@sum(Link(i,j):
n(i,j)*a(j)*t(i)+n(i,j)*(p(i,j)-minp(j))*t(i)*f(j)+@if(n(@if(i#eq#5,1,i+1),j)#gt#n(i,j),n(@if(i#eq#5,1,i+1),j)-n(i,j),0)*b(j));
@for(Time_slot(i):
@sum(Generator_type(j):
n(i,j)*p(i,j))>=w(i)+q;);
@for(Time_slot(i):
@sum(Generator_type(j):
n(i,j)*p(i,j))<=(w(i)+q)*;);
@for(Time_slot(i):
@bnd(0,n(i,1),12););
@for(Time_slot(i):
@bnd(0,n(i,2),6););
@for(Time_slot(i):
@bnd(0,n(i,3),5););
@for(Link(i,j):
@bnd(minp(j),p(i,j),maxp(j)););
@for(Link(i,j):
@gin(n(i,j)););
end
程序(问题三)
model:
sets:
Time_slot/1..5/:
t,w;
Generator_type/1..3/:
a,f,b,minp,maxp;
Link(Time_slot,Generator_type):
n,p;
endsets
data:
t=6,3,6,3,6;
w=15000,30000,25000,40000,27000;
minp=850,1250,1500;
maxp=2000,1750,4000;
a=1000,2600,3000;
f=2,,3;
b=2000,1000,500;
enddata
min=@sum(Link(i,j):
n(i,j)*a(j)*t(i)+n(i,j)*(p(i,j)-minp(j))*t(i)*f(j)+@if(n(@if(i#eq#5,1,i+1),j)#gt#n(i,j),n(@if(i#eq#5,1,i+1),j)-n(i,j),0)*b(j));
@for(Time_slot(i):
@sum(Generator_type(j):
n(i,j)*p(i,j))>=w(i););
@for(Time_slot(i):
@sum(Generator_type(j):
n(i,j)*p(i,j))<=w(i)*;);
@for(Time_slot(i):
@bnd(0,n(i,1),12););
@for(Time_slot(i):
@bnd(0,n(i,2),6););
@for(Time_slot(i):
@bnd(0,n(i,3),5););
@for(Link(i,j):
@bnd(minp(j),p(i,j),maxp(j)););
@for(Link(i,j):
@gin(n(i,j)););
end
表格(问题二)
阶段
-27
-16
-10
-7
7
10
16
21
27
一
二
6
三
四
五
12