APP下载

利用计算机软件进行供热机组间的负荷优化分配

2012-08-07王军飞杜之正

山东电力高等专科学校学报 2012年3期
关键词:汽量约束条件供热

王军飞 杜之正

华北电力大学 河北 保定 071003

0 引言

供热机组负荷优化分配是热电厂节能与优化运行的一项重要研究课题, 在特定机组组合情况下,机组间的热电负荷能得到合理的分配可以提高全厂运行的经济性。尤其是实行厂网分开和电价竞争上网之后,负荷优化分配的问题得到了更广泛的重视。热电厂中供热机组间的负荷优化分配的实质是在保证系统安全运行的情况下,根据各机组的煤耗特性曲线或汽耗特性曲线,合理分配机组所带的热负荷和电负荷,以达到降低成本的要求。

1 供热机组的负荷特性

热电厂供热机组有多种类型,通常我们接触的基本类型有背压机组、抽凝机组,这两种机组在运行时,可以同时提供热能和电能。

1.1 背压机组

背压机组特点是供热蒸汽全部通过汽轮发电机做功,使得供热量与发电量相互牵制,热、电耦合性很强,供热量与发电量是一一对应的,采用数学表达式可表示如下:

G0=aP+b

Qd=cP+d

式中:G0为耗汽量,t/h;Qd为供热量,t/h;P为发电量,MW。

1.2 抽凝机组

抽凝机组特点是在一定范围内,热负荷和电负荷均可分别进行调节,并且还能按照纯凝汽工况运行,但能源利用率较差,能量耗费较高。

抽凝机组一般分为单抽机组和双抽机组,单抽机组可等效为一台背压机组和一台凝汽机组的组合体,其机组的特性表达式可表示如下:

G0=aP+bGg+c

双抽机组可等效为两台背压机组和一台凝汽机组的组合体,其机组的特性表达式可表示如下:

G0=aP+bGg+cGd+d

式中:Gg为机组所带的生产用汽量,t/h;Gd为机组所带的采暖用汽量,t/h。

2 供热机组间负荷优化分配的数学模型

供热机组间负荷优化分配的本质就是在一定的热负荷和电负荷下, 使其总的燃料消耗量为最小,本文研究的是使总的耗汽量最小。对n台供热机组进行负荷优化分配计算,我们将其数学模型表述如下:

等式约束条件:

不等式约束条件:

Pi,min≤Pi≤Pi,max; Gdi,min≤Gdi≤Gdi,max;Ggi,min≤Ggi≤Ggi,max。

式中 G:热电厂总耗汽量,t/h;

Pi:第i台机组所带的电负荷,MW;

P: n台机组总调度电负荷,MW;

Ggi:第i台机组所带的生产用汽量,t/h;

Gg:n台机组总调度生产用汽量,t/h;

Gdi:第i台机组所带的采暖用汽量,t/h;

Gd:n台机组总调度采暖用汽量,t/h;

G0i(Pi,Gdi,Ggi):第i台机组所带电负荷及提供的生产用汽量、采暖用汽量与机组耗汽量之间的函数关系。

将上述方程与不同类型机组的特性方程联立,可对供热机组负荷优化分配进行求解。

3 问题的提出

以三台供热机组为例,来研究机组间热电负荷分配,其中:

背压机组型号为B25-90/10, 机组特性方程为:

选取南京体育学院有慢跑和慢跑中听音乐习惯的学生为研究对象,在南京体育学院田径场进行为期一周的调研,调研结果发现,有慢跑习惯、不听音乐的24人,有慢跑并且有听音乐习惯的18人,一共42人。让这42人在慢跑前填写一次问卷,慢跑后再次填写问卷发放问卷,立即回收。慢跑时长不少于20min,速度不限。音乐类型不限,根据自己爱好而定。

G01=33.5993+7.0552P1

Gg1=36.5853+5.9400P15≤P1≤25

单抽机组型号为C50-8.82/0.118,最大进汽量为306 t/h,最小凝汽量为20 t/h。 机组特性方程为:

G02=4.0256P2+0.2156Gd24.6≤P2≤50

双抽机组型号为C50-8.82/1.274/0.118, 最大进汽量为360 t/h,最小凝汽量为12t/h。 机组特性方程为:

G03=4.6367P3+0.6229Gg3+0.1410Gd3

4.3≤P3≤50

求热电厂在电负荷P=100MW、生产热负荷Gg=200t/h、采暖热负荷Gd=180t/h调度下,各机组的负荷分配情况。

即:目标函数minG = minf = G01+G02+G03

Gg=Gg1+Gg3

Gd=Gd2+Gd3

令x1=P1、x2=P2、x3=P3、x4=Gg1、x5=Gd2、x6=Gd3、x7=Gg3。

4 计算机软件求解

当前,求解线性规划问题的软件总体可以分为三类:第一类是大规模软件包,比如MATLAB、Delphi等, 它们都将线性规划问题的求解编制为其中的重要内容,可以解决复杂的、包含数千个决策变量和数千个约束条件的大型线性规划问题; 第二类是小型软件包,如LINGO、LINDO等,这些软件包可以解决包含不超过100个决策变量、 不超过60个约束条件的线性规划问题; 第三类就是Microsoft Excel“线性规划”模块。

4.1 MATLAB求解线性负荷优化分配问题

这里仅介绍用MATLAB 优化工具箱求解线性规划问题。 MATLAB中线性规划问题的标准形式如下:

s.t. A·x≤b

Aeq·x=beq

lb≤x≤ub

这里x、b、beq、lb、ub为向量,A、Aeq为矩阵,f(x)为目标函数,Aeq·x=beq为线性约束,lb≤x≤ub为可行解的区间约束。

在MATLAB 6.0及以上版本中, 求解线性规划问题的调用函数是linprog。

[x,fval,exitflag,output,lambda] =(f,Aeq,beq,lb,ub)

编写.m文件

其中:fval目标函数最优值;exitflag为终止迭代条件,若exitflag>0表示函数收敛于解x,若exitflag=0表示超过函数估值或迭代的最大数值,exitflag<0表示函数不收敛于解x;output返回算法信息;lambda为解的Lagrange乘子。

输出:

利用linprog能求出满足所有约束条件的最优解,但在求解具有相互矛盾的约束条件时会出现无解情况。 使用linprog函数只需编写简单的几行程序代码,便可求解线性规划问题,结果稳定可靠,计算精度高,使得调试变得简单,提高了调试效率。

4.2 Delphi求解线性负荷优化分配问题

Delphi是美国Borland公司研发的基于Windows平台下的快速应用程序开发工具(Rapid Application Development,简称RAD)。 Delphi是集成开发环境(IDE)、核心Object Pascal,以图形用户界面为开发环境,透过IDE、VCL工具与编译器,配合连结数据库的功能,构成一个以面向对象程序设计为中心的应用程序开发工具。

文献[12]提供了在Delphi 6.0中生成的应用程序工程软件和和最后生成的可执行文件,其中对线性规划问题求解提供了原始单纯形法、 两阶段法、大M法、对偶单纯形法等。 原始单纯形法程序只能求解约束条件“《”并且限定全部非负的线性规划问题,两阶段法、大M法对约束条件“《”、“》”、“=”以及混合约束都可以求解, 同时限定向量亦可以取负值。 使用大M法计算时, 由于M值较大容易引起数值计算上的困难,所以几乎所有商业线性规划软件都不使用大M法,而是使用两阶段法。 对偶单纯形法只用于灵敏度分析场合。

打开tydch.exe文件, 就进入了用户操作界面,需要注意的是: 在初始化数据界面输入数据时,文本框中倒数第二列为操作标识,其中-1、0、1依次表示“《”、“=”、“》”;若某一文本框数据输入为空,则程序把其相应的变量赋值为零;最后一列为限定向量的值(即常数列), 最后一行输入目标函数的系数(此处要特别注意最后两格是空的)。在输入数据无误后点击“确定”,程序根据输入数据来判断是否加入人工变量,若需要,程序提示“需要加入人工变量,进入第一段程序求解”;若不需要,则程序给出提示“不许加入人工变量,直接进入第二阶段求解”。

图1 输入设置

在输入目标函数系数时, 只能输入变量的系数,而不能输入常数项,所以遇到这种情况,应在取得运算最优值时应再加上常数项,才能算得最终优化结果。

软件运算结束是528.2479 t/h, 再加上目标函数常数项33.5993 t/h,最优值为561.8472 t/h,最优解不变。

运筹学Delphi求解线性规划问题,在用户界面中,模型的输入简单,易操作,但在标准目标函数后面加上一个常数项,就显得不便捷了。

图2 最终结果

4.3 采LINGO软件求解线性负荷优化分配问题

LINGO软件由美国芝加哥大学的Linus Scharge教授于1980年开发, 是专门用于求解最优化问题的工具软件包。 LINGO 是英文Linear INteractive and General Optimizer字母的缩写形式,即“交互式的线性和通用优化求解器”。 LINGO软件有以下特点:

1)LINGO 软件的程序开头以 “MIN=”或“MAX=”表示目标是求最小值或最大值问题,后面直接写出目标函数的表达式。

2) LINGO的输入格式与数学模型表达式几乎完全一样,系数与变量间的乘号“*”不可省略,目标函数及每个约束条件后面均以“;”结束,LINGO中的字母不区分大小写。

3)LINGO中都已假设所有的变量为非负,对于约束条件中出现的非负约束(比如x,y》0)不必写入程序里。

图3 模型和解报表

对于本文的负荷优化分配的线性规划问题,当模型窗口中程序编写完毕, 通过点击按钮运行程序, 可得到LINGO 主框下的解报表(Solution Report)和解算器状态界面(Solver Status),LINGO软件求得结果如图3、图4所示。

图4 解算器状态界面

利用LINGO 软件求解,输入模型简单,可直观的描述优化模型。 计算结果中包含敏感性报告,使得对影子价格及灵敏度分析的含义有了深刻的认识。

4.4 Excel“线性规划”模块求解线性负荷优化分配问题

Excel“线性规划”模块是Microsoft Excel 2003以后版本自身封装好的一个独立功能模块。初始安装时并没有被激活,使用时应在主菜单下打开“工具”下拉菜单,然后单击“加载宏”,打开“加载宏”对话框,选择“规划求解”旁边的复选框后点“确定”即可。

激活“规划求解”功能模块后,对于任何一个线性规划数学模型, 都可以直接应用此模块进行求解, 但我们可以制作一个Excel线性规划问题求解模板,即根据一些数学模型的规模(决策变量及约束条件的多少), 在主工作表各中划出一个固定的区域, 并明确各区域的用途和所填写的数据的性质,并入录计算公式,根据主工作表格中各单元的对应关系,一次设置好“规划求解参数”和“规划求解选项”, 便制作成为一个可以多次使用的的线性规划求解模板。 以后使用时,只需在线性规划的求解模板中填入变量系数和常数项,并简单修改一下关键参数的设置(比如《、》、=)即可,这样可以减少设置参数时与主工作表单元格地址对照的繁琐过程。

对于本文的负荷优化分配的线性规划问题,通过Excel软件求得结果如图5所示。

图5 Excel操作界面及最终结果显示

在点击“求解”时,界面显示结果不仅有最优解和最优值,同时,还有一个“规划求解结果”对话框,对话框右边报告选项框第二项“敏感性报告”有重要意义, 点击 “确定”,Excel就增加了一个工作薄“敏感性报告1”。打开此工作薄,显示变量单元格及约束的灵敏度分析报告,包括递减成本、允许的增(减)量和影子价格等。

Excel“规划求解”功能模块还可以设置迭代次数、精度、误差值及收敛度等,使得计算精度更高;同时,生成的敏感性报告,使得对计算结果有更全方位的认识。

5 结论

1)通过计算结果比较,四种计算机软件求解的负荷优化分配的线性规划问题的最优解和最优值相同, 说明四种软件在求得结果的数值上是一致的,并且对热电厂解决负荷优化分配问题具有重要指导意义。

2) 分析以上四种方法,LINGO的输入最简单,MATLAB和Delphi次之, 最后是用EXCEL, 但是从计算结果来看,EXCEL 得到的信息最丰富,MATLAB和LINGO得到的信息量相近,Delphi得到信息最少。 综上所述,LINGO作为一个专门求解最优化问题的软件包,优势相对明显一些,不仅操作方便而且又能获得丰富的信息。

3)最终采用哪种计算机软件求解,还应根据实际的具体问题和要求的可操作性、稳定性及精度等因素共同决定,倘若采用的计算机软件能与热电厂现场DCS控制结合起来,那么这项研究更具有工程价值。

[1]吴祈宗,郑志勇.邓伟等.运筹学与最优化MATLA编程[M].北京:机械工业出版社,2009.

[2]刘志真,陈洁.热力发电厂[M].北京:中国电力出版社,2009.

[3]李春明.优化方法[M].南京:东南大学出版社,2009.

[4]李勤道,刘志真.热力发电厂热经济性计算分析[M].北京:中国电力出版社,2008.

[5]王运民.应用线性规划理论分配电厂机组间的负荷[J].动力工程,2002,(6).

[6]唐家裕,付林,狄洪发.不同类型供热机组热电负荷优化分配的研究 [J]. 沈阳工程学院学报 (自然科学版),2007,(7).

[7]陈士成.运筹学—数据、模型与决策[M].兰州:兰州大学出版社,2009.

[8]王正东.数学软件与数学实验[M].北京:科学出版社,2010.

[9]金星,薛毅.优化建模与LINDO/LINGO软件[M].北京:清华大学出版社,2005.

[10]刘建永.运筹学算法与编程实践—Delphi实现[M].北京:清华大学出版社,2004.

[11]闫水保,张营帅,郑立军.采用遗传算法的供热机组间负荷分配[J].发电设备,2008,(1).

猜你喜欢

汽量约束条件供热
基于一种改进AZSVPWM的满调制度死区约束条件分析
近期实施的供热国家标准
蒸汽管网智能监测系统的模拟应用
A literature review of research exploring the experiences of overseas nurses in the United Kingdom (2002–2017)
蒸汽疏水阀无负荷漏汽量试验优化设计
PPP模式应用于城市供热项目分析
海上稠油油藏蒸汽吞吐周期注汽量优化研究
汽轮机供热系统的技改创新
几种供热运行模式的节能分析