发明名称 基于改进遗传算法的抽汽供热机组热电负荷分配优化方法
摘要 基于改进遗传算法的抽汽供热机组热电负荷分配优化方法,属于发电厂节能监测技术领域。本发明为了实现电厂多台供热机组热电负荷分配优化,使电厂的电负荷、热负荷在满足用户需求的同时能够最优分配,并减少总能耗达到节能的目的。设置机组实际热耗和耗差曲线,得到机组设计热耗曲线;获取各个机组的电负荷和抽汽量;基于改进遗传算法求出满足所有机组的总热耗值<img file="DDA0000156671090000011.GIF" wi="34" he="46" />最小时的各台机组的电负荷和抽汽量值:通过改进遗传编码和适应度函数,遗传算法的选择、交叉、变异操作,使优化过程在满足约束条件的情况下,输出满足所有机组的总热耗值<img file="DDA0000156671090000012.GIF" wi="34" he="46" />最小时的各台机组的电负荷和抽汽量值最优解和相应的最小总热耗。本方法提高了优化过程的速度和优化结果的准确性。
申请公布号 CN102622530B 申请公布日期 2015.07.01
申请号 CN201210121857.X 申请日期 2012.04.24
申请人 华电能源股份有限公司哈尔滨第三发电厂;哈尔滨工业大学 发明人 胡宝权;刘金福;刘娇;宋崇明;张怀鹏;李飞;陈增吉;李涛;徐扬;李树臣;张修君;左世春;于达仁
分类号 G06F19/00(2011.01)I;G06N3/12(2006.01)I 主分类号 G06F19/00(2011.01)I
代理机构 哈尔滨市松花江专利商标事务所 23109 代理人 杨立超
主权项 一种基于改进遗传算法的抽汽供热机组热电负荷分配优化方法,其特征在于:所述方法的具体过程为:步骤一、设置机组实际热耗曲线:根据试验得到每台机组的实际热耗曲线;所述实际热耗曲线是指以电负荷P和抽汽量Q为自变量,热耗值R′为因变量的一族曲线,即第1台机组:R<sub>1</sub>′=f(P<sub>1</sub>,Q<sub>1</sub>);第2台机组:R<sub>2</sub>′=f(P<sub>2</sub>,Q<sub>2</sub>);……第n台机组:R<sub>n</sub>′=f(P<sub>n</sub>,Q<sub>n</sub>);步骤二、设置机组耗差修正曲线,确定机组耗差修正总系数θ<sub>i</sub>,i为机组编号,i=1,2,…,n,n表示机组数目:基于冷凝器背压、主蒸汽压力、主蒸汽温度、再热压力、再热蒸汽温度、给水温度这六个因素偏离设计值时都会对热耗产生影响,然后根据厂家提供或电厂的耗差修正曲线查得每台机组的各个影响因素的热耗修正系数△<sub>1i</sub>,△<sub>2i</sub>,△<sub>3i</sub>,…,△<sub>6i</sub>,△<sub>1i</sub>,△<sub>2i</sub>,△<sub>3i</sub>,…,△<sub>6i</sub>分别为每台机组的冷凝器背压、主蒸汽压力、主蒸汽温度、再热压力、再热蒸汽温度、给水温度的热耗修正系数;令θ<sub>i</sub>=△<sub>1i</sub>△<sub>2i</sub>△<sub>3i</sub>…△<sub>6i</sub>;步骤三、得到机组设计热耗曲线:根据每台机组耗差修正总系数θ<sub>i</sub>对机组实际热耗进行修正得到机组设计热耗曲线,各台机组的设计热耗曲线为:第1台机组:R<sub>1</sub>=θ<sub>1</sub>·f(P<sub>1</sub>,Q<sub>1</sub>);第2台机组:R<sub>2</sub>=θ<sub>2</sub>·f(P<sub>2</sub>,Q<sub>2</sub>);……第n台机组:R<sub>n</sub>=θ<sub>n</sub>·f(P<sub>n</sub>,Q<sub>n</sub>);步骤四、获取各个机组的抽汽量Q<sub>i</sub>和电负荷P<sub>i</sub>:先测得各个机组的抽汽量Q<sub>i</sub>和电负荷P<sub>i</sub>,然后通过步骤三所述的机组设计热耗曲线得到相应的热耗R<sub>i</sub>,i∈[1,n],得到电厂n台机组的电负荷分别为P<sub>1</sub>,P<sub>2</sub>,…,P<sub>n</sub>,抽汽量分别为Q<sub>1</sub>,Q<sub>2</sub>,…,Q<sub>n</sub>,热耗值为R<sub>1</sub>,R<sub>2</sub>,…,R<sub>n</sub>,n为机组数目;优化的目的是得到使所有机组的总热耗值<img file="FDA0000708712190000011.GIF" wi="42" he="70" />最小时的P<sub>1</sub>,P<sub>2</sub>,…,P<sub>n</sub>,Q<sub>1</sub>,Q<sub>2</sub>,…,Q<sub>n</sub>的分配方案,其中目标函数为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mover><mi>R</mi><mo>&OverBar;</mo></mover><mo>=</mo><mfrac><mrow><msub><mi>P</mi><mn>1</mn></msub><mo>&times;</mo><msub><mi>R</mi><mn>1</mn></msub><mo>+</mo><msub><mi>P</mi><mn>2</mn></msub><mo>&times;</mo><msub><mi>R</mi><mn>2</mn></msub><mo>+</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>+</mo><msub><mi>P</mi><mi>n</mi></msub><mo>&times;</mo><msub><mi>R</mi><mi>n</mi></msub></mrow><mrow><msub><mi>P</mi><mn>1</mn></msub><mo>+</mo><msub><mi>P</mi><mn>2</mn></msub><mo>+</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>+</mo><msub><mi>P</mi><mi>n</mi></msub></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000708712190000021.GIF" wi="907" he="151" /></maths>设定约束条件:第一个约束条件为:Q<sub>z</sub>=Q<sub>1</sub>+Q<sub>2</sub>+…+Q<sub>n</sub>=const,P<sub>z</sub>=P<sub>1</sub>+P<sub>2</sub>+…+P<sub>n</sub>=const   (2)即所有机组的总抽汽量Q<sub>z</sub>和总电负荷P<sub>z</sub>分别为常数;第二个约束条件为:Q<sub>i</sub>∈(Q<sub>imin</sub>,Q<sub>imax</sub>),P<sub>i</sub>∈(P<sub>imin</sub>,P<sub>imax</sub>)   (3)即每台机组的最小最大电负荷分别为:P<sub>1min</sub>,P<sub>1max</sub>;P<sub>2min</sub>,P<sub>2max</sub>;…;P<sub>nmin</sub>,P<sub>nmax</sub>;最小最大抽汽量分别为Q<sub>1min</sub>,Q<sub>1max</sub>;Q<sub>2min</sub>,Q<sub>2max</sub>;…;Q<sub>nmin</sub>,Q<sub>nmax</sub>;步骤五、基于改进遗传算法求出满足所有机组的总热耗值R最小时的各台机组的电负荷和抽汽量值:具体过程如下,a、初始种群设定用m×2n的矩阵则能表示初始种群:<maths num="0002" id="cmaths0002"><math><![CDATA[<mfenced open='(' close=')'><mtable><mtr><mtd><msub><mi>P</mi><mn>11</mn></msub><msub><mi>P</mi><mn>12</mn></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>P</mi><mrow><mn>1</mn><mi>n</mi></mrow></msub><msub><mi>Q</mi><mn>11</mn></msub><msub><mi>Q</mi><mn>12</mn></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>Q</mi><mrow><mn>1</mn><mi>n</mi></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>P</mi><mn>21</mn></msub><msub><mi>P</mi><mn>22</mn></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>P</mi><mrow><mn>2</mn><mi>n</mi></mrow></msub><msub><mi>Q</mi><mn>21</mn></msub><msub><mi>Q</mi><mn>22</mn></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>Q</mi><mrow><mn>2</mn><mi>n</mi></mrow></msub></mtd></mtr><mtr><mtd><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo></mtd></mtr><mtr><mtd><msub><mi>P</mi><mrow><mi>m</mi><mn>1</mn></mrow></msub><msub><mi>P</mi><mrow><mi>m</mi><mn>2</mn></mrow></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>P</mi><mi>mn</mi></msub><msub><mi>Q</mi><mrow><mi>m</mi><mn>1</mn></mrow></msub><msub><mi>Q</mi><mrow><mi>m</mi><mn>2</mn></mrow></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>Q</mi><mi>mn</mi></msub></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000708712190000022.GIF" wi="623" he="317" /></maths>m为设定的个体数目,n为机组数量,抽汽量Q<sub>i</sub>和电负荷P<sub>i</sub>均为满足第二个约束条件的随机数;上述初始种群采用满足第二个约束条件的约束编码的形式构造;对上述初始种群中前(n‑1)个机组的电负荷和抽汽量进行满足第二个约束条件的约束编码,而最后一个机组通过下式计算:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mfenced open='{' close=''><mtable><mtr><mtd><msub><mi>P</mi><mi>n</mi></msub><mo>=</mo><msub><mi>P</mi><mi>z</mi></msub><mo>-</mo><msub><mi>P</mi><mn>1</mn></msub><mo>-</mo><msub><mi>P</mi><mn>2</mn></msub><mo>-</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>-</mo><msub><mi>P</mi><mrow><mi>n</mi><mo>-</mo><mn>1</mn></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>Q</mi><mi>n</mi></msub><mo>=</mo><msub><mi>Q</mi><mi>z</mi></msub><mo>-</mo><msub><mi>Q</mi><mn>1</mn></msub><mo>-</mo><msub><mi>Q</mi><mn>2</mn></msub><mo>-</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>-</mo><msub><mi>Q</mi><mrow><mi>n</mi><mo>-</mo><mn>1</mn></mrow></msub></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000708712190000023.GIF" wi="957" he="172" /></maths>这样即可得到所有机组满足第一个约束条件和前(n‑1)个机组满足第二约束条件的约束编码初始种群:<maths num="0004" id="cmaths0004"><math><![CDATA[<mfenced open='(' close=')'><mtable><mtr><mtd><msub><mi>P</mi><mn>11</mn></msub><msub><mi>P</mi><mn>12</mn></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>P</mi><mrow><mn>1</mn><mrow><mo>(</mo><mi>n</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></msub><msub><mi>Q</mi><mn>11</mn></msub><msub><mi>Q</mi><mn>12</mn></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>Q</mi><mrow><mn>1</mn><mrow><mo>(</mo><mi>n</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>P</mi><mn>21</mn></msub><msub><mi>P</mi><mn>22</mn></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>P</mi><mrow><mn>2</mn><mrow><mo>(</mo><mi>n</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></msub><msub><mi>Q</mi><mn>21</mn></msub><msub><mi>Q</mi><mn>22</mn></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>Q</mi><mrow><mn>2</mn><mrow><mo>(</mo><mi>n</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></msub></mtd></mtr><mtr><mtd><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo></mtd></mtr><mtr><mtd><msub><mi>P</mi><mrow><mi>m</mi><mn>1</mn></mrow></msub><msub><mi>P</mi><mrow><mi>m</mi><mn>2</mn></mrow></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>P</mi><mrow><mi>m</mi><mrow><mo>(</mo><mi>n</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></msub><msub><mi>Q</mi><mrow><mi>m</mi><mn>1</mn></mrow></msub><msub><mi>Q</mi><mrow><mi>m</mi><mn>2</mn></mrow></msub><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>Q</mi><mrow><mi>m</mi><mrow><mo>(</mo><mi>n</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></msub></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000708712190000024.GIF" wi="726" he="324" /></maths>上式第n台机组为满足其电负荷最大值与最小值之差最大并且最大抽汽量与最小抽汽量不等的机组,即:P<sub>nmax</sub>‑P<sub>nmin</sub>&gt;P<sub>imax</sub>‑P<sub>imin</sub>Q<sub>nmax</sub>‑Q<sub>nmin</sub>≠0P<sub>nmax</sub>,P<sub>nmin</sub>表示被选出来的第n台机组的最大电负荷与最小电负荷;P<sub>imax</sub>,P<sub>imin</sub>表示剩余的任意机组i的最大电负荷和最小电负荷;Q<sub>nmax</sub>,Q<sub>nmin</sub>表示被选出来的第n台机组的最大抽汽量与最小抽汽量;b、构建适应度函数:通过适应度计算,实现个体的优化选择,同时使优化结果中第n台机组也满足第二个约束条件;不符合条件的个体为:P<sub>n</sub>&lt;P<sub>min</sub>  OR  P<sub>n</sub>&gt;P<sub>max</sub>Q<sub>n</sub>&lt;Q<sub>min</sub>  OR  Q<sub>n</sub>&gt;Q<sub>max</sub>热电负荷分配优化是求目标函数的最小值,遗传算法的优化目标是找到具有最大适应度的个体,故适应度函数ObjV定义如下:1)、对于符合条件的个体:P<sub>min</sub>&lt;P<sub>n</sub>&lt;P<sub>max</sub>&amp;Q<sub>min</sub>&lt;Q<sub>n</sub>&lt;Q<sub>max</sub><maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><mi>ObjV</mi><mo>=</mo><mfrac><mn>1</mn><mover><mi>R</mi><mo>&OverBar;</mo></mover></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000708712190000031.GIF" wi="725" he="155" /></maths>2)、对于不符合条件的个体:P<sub>n</sub>&lt;P<sub>min</sub> OR P<sub>n</sub>&gt;P<sub>max</sub>,Q<sub>n</sub>&lt;Q<sub>min</sub> OR Q<sub>n</sub>&gt;Q<sub>max</sub>,采用指数尺度变换式(1)表示目标函数<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><mi>ObjV</mi><mo>=</mo><mfrac><mn>1</mn><mrow><mover><msub><mi>R</mi><mi>max</mi></msub><mo>&OverBar;</mo></mover><mo>&times;</mo><mi>exp</mi><mrow><mo>(</mo><mi>&alpha;&beta;</mi><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000708712190000032.GIF" wi="680" he="155" /></maths>其中:当P<sub>n</sub>&lt;P<sub>min</sub>时,<maths num="0007" id="cmaths0007"><math><![CDATA[<mrow><mi>&beta;</mi><mo>=</mo><msub><mi>&beta;</mi><mi>p</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>P</mi><mi>min</mi></msub><mo>-</mo><msub><mi>P</mi><mi>n</mi></msub></mrow><msub><mi>P</mi><mi>min</mi></msub></mfrac></mrow>]]></math><img file="FDA0000708712190000033.GIF" wi="377" he="141" /></maths>当P<sub>n</sub>&gt;P<sub>max</sub>时,<maths num="0008" id="cmaths0008"><math><![CDATA[<mrow><mi>&beta;</mi><mo>=</mo><msub><mi>&beta;</mi><mi>p</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>P</mi><mi>n</mi></msub><mo>-</mo><msub><mi>P</mi><mi>max</mi></msub></mrow><msub><mi>P</mi><mi>max</mi></msub></mfrac></mrow>]]></math><img file="FDA0000708712190000034.GIF" wi="391" he="141" /></maths>对于Q<sub>n</sub>同理可得:当Q<sub>n</sub>&lt;Q<sub>min</sub>时,<maths num="0009" id="cmaths0009"><math><![CDATA[<mrow><mi>&beta;</mi><mo>=</mo><msub><mi>&beta;</mi><mi>Q</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>Q</mi><mi>min</mi></msub><mo>-</mo><msub><mi>Q</mi><mi>n</mi></msub></mrow><msub><mi>Q</mi><mi>min</mi></msub></mfrac></mrow>]]></math><img file="FDA0000708712190000035.GIF" wi="392" he="142" /></maths>当Q<sub>n</sub>&gt;Q<sub>max</sub>时,<maths num="0010" id="cmaths0010"><math><![CDATA[<mrow><mi>&beta;</mi><mo>=</mo><msub><mi>&beta;</mi><mi>Q</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>Q</mi><mi>n</mi></msub><mo>-</mo><msub><mi>Q</mi><mi>max</mi></msub></mrow><msub><mi>Q</mi><mi>max</mi></msub></mfrac></mrow>]]></math><img file="FDA0000708712190000036.GIF" wi="410" he="142" /></maths>对于β<sub>P</sub>、β<sub>Q</sub>同时存在时,β=max(β<sub>P</sub>,β<sub>Q</sub>)<img file="FDA0000708712190000037.GIF" wi="103" he="84" />为机组在运行过程中的最大热耗,通过电厂生产和试验数据得到;α为常系数,目标是使得当计算出的P<sub>n</sub>,Q<sub>n</sub>超过设定阈值100%时,其适应度值大于满足条件下适应度值的100倍,即β=1,exp(α)&gt;100;在实验中α取5;这样在选择过程中,适应度小的个体将有很大的概率被淘汰掉,同时不满足第二个约束条件的个体也将有很大的概率被淘汰掉,从而实现个体的优化选择,理想状况下得到最大适应度即总热耗值<img file="FDA0000708712190000041.GIF" wi="44" he="77" />最小的个体;c、完成上步骤后,再进行基于传统的遗传算法的选择、交叉、变异过程;当遗传代数达到终止条件N代时,遗传过程终止,输出满足所有机组的总热耗值<img file="FDA0000708712190000042.GIF" wi="48" he="72" />最小时的各台机组的电负荷和抽汽量值最优解、各台机组的热耗值以及相应的所有机组的最小总热耗。
地址 150024 黑龙江省哈尔滨市松北区三电街1号