管网改扩建项目优化设计计算研究

摘 要

摘要:随着我国燃气事业发展,已有燃气管网的规模满足不了人民生活需要,改建与扩建项目蓬勃发展。而改建扩建项目存在许多问题,在管网变动后如何才能在保证经济效益的情况下,还能满

摘要:随着我国燃气事业发展,已有燃气管网的规模满足不了人民生活需要,改建与扩建项目蓬勃发展。而改建扩建项目存在许多问题,在管网变动后如何才能在保证经济效益的情况下,还能满足压力与流量的要求,对设计与研究者提出了难题。针对这个问题,在保留持原有管网信息的情况下,本文通过对遗传算法中的基本操作进行控制的思路,提出对传统遗传算法改进的方法,然后将其应用于城市燃气管网的水力计算中以解决城市管网改建、扩建工程中存在的问题。
关键词:改建扩建项目;水力计算;遗传算法;改进
1 概述
    随着我国燃气事业发展,已有的城市燃气管网已不能满足人民生活的需要,迫切需要在已有的燃气管网基础上进行改建或扩建项目。因此,如何在保证经济效益的基础上,科学地对我国已有燃气管网的规模进行调整就显得格外重要,直接影响到管网的安全运行及经济效益的获得。对于城市燃气管网系统改扩建项目来说,目前主要存在两个方面的问题:
    一方面,城市燃气管网的规模不断扩大,急需对管网结构进行改造、新建。从节约投资的角度考虑,应尽量在保留原来管网的基础上进行扩建或改造。如何才能保证管网变动后还能满足压力与流量的要求,对设计与研究者提出了难题。
    另一方面,由于我国城市化的发展,城市管网规模也随之不断扩大,特别是大型和特大型管网利用手工计算难度很大,对设计者和工程人员提出了很高的要求,手工计算不仅耗时而且结果也难以满足要求。因此,一种快速、准确的水力计算就变得越来越重要。
    近20年来,应用系统分析方法,特别是优化方法解决燃气输配管网系统设计问题在研究领域和工程中都取得了一定成果。遗传算法的出现令人眼前一亮,它的出现大大简化了管网设计计算工作[1]。本文尝试将遗传算法稍加改进后引入到城市燃气管网的水力计算中以解决城市管网改建、扩建工程中存在的问题。
2 遗传算法
    遗传算法起源于上世纪60年代对自然和人工自适应系统的研究。上世纪70年代De Jong基于遗传算法的思想在计算机上进行了大量的纯数值函数优化计算实验。在一系列研究工作的基础上,上世纪80年代由Goldberg进行归纳总结,形成了遗传算法的基本框架[2]
(1) 传统遗传算法进行水力计算原理
    遗传算法将“优胜劣汰,适者生存”的生物进化原理引入待优化参数形成的编码串群体中,按照一定的适配值函数(与目标函数相关)及一系列遗传操作对各个体进行筛选,从而使适配值高的个体保留下来,组成新的群体,新群体包含上一代的大量信息,并且引入了新的优于上一代的个体[3]。这样周而复始,群体中各个体适应度不断提高直至满足一定的极限条件。此时,群体中适配值最高的个体即为待优化参数的最优解。
(2) 针对改建、扩建项目的遗传算法研究
顾名思义,管网的改建是在已有管网的基础对其中某些管段的管径与走向进行改变,以满足整个管网的管段流量与节点压力。而管网的扩建即是在保留已有管网的基础上,通过增加新的管段的方法,来满足各用气点的需求,同时保证整个环网的安全稳定运行。在进行管网的改建与扩建的过程中,还要考虑管网整改后的经济效益。
① 传统遗传算法的操作
   基本遗传算法(Simple Genetic Algorithms,简称SGA)是一个迭代过程,它模拟生物在自然环境中的遗传和进化机理,反复将选择、交叉、变异操作作用于群体,最终可得到问题的最优解或近似最优解。
    基本遗传算法包含三个操作:
    选择(Reproduction Operator);
    交叉(Crossover Operator);
    变异(Mutation Operator)[4]
② 对传统遗传算法的改进操作
    过去采用遗传算法解决管网优化问题时,一般都用二进制数字串来表达。

    a. 对于燃气管网来说,管网各管段的管径是用一个数字串表达出来,而这个数字串就因此包含了管网的管径信息。例如,一个有7条管段的管网,管径分别为76、76、133、108、89、89、108(mm):如果用二进制编码方法,则该管网管径信息的编码为:
    0000∣0000∣0011∣00101∣0001∣0001∣0011;
    如果采用实数编码方法,则为:
    76∣76∣133∣108∣89∣89∣108
    从上面的例子可以看出二进制编码既不自然又比较麻烦,并且在以后的操作步骤中还需要将二进制数字串解码为真实管径的操作[5]。所以,采用实数编码方法,在实际的计算时相较传统的遗传算法更加简便。
    b. 对原本已有的燃气管网进行改建、扩建时,考虑到施工的情况及全局经济效益的需求,应该在尽量减少对已有管网改变的基础上进行施工作业,并且要保证改建、扩建的管段与整个管网“和谐”运行,整个管网的压力与流量都满足规范要求。在遗传算法时,由于要进行选择、交叉和变异的基本操作,因此,在进行管网的改建与扩建时,就相当于已有的管段管径全部或大部分都是确定的,需要在此基础上增加或改变少量管段,最终使新建的管段与原有的管段形成的管网获得较大的经济效益。为了实现这一目标,就需要保证在使用遗传算法的时候,确定的管段的管径在经历了选择、交叉与变异的过程中,一直保持着原有管段的信息,每次个体适应度的计算都是由这些原有管段与新建管段组合的个体信息来进行量化评价。要实现上述目标,就要对传统的选择运算、交叉运算、变异运算等遗传算子的确定过程进行优化。
③ 遗传算法过程
    a. 编码
    遗传算法通过对个体编码的操作,不断搜索出适应度较高的个体,并在群体中逐渐增加其数量,最终寻求出问题的最优解或近似解。
    b. 产生初始群体
    利用传统的遗传算法产生初始群体时,对于有N条管段的管网系统,需要随机产生N个个体形成初始群体,每个个体就是由所有管段的管径按照一定顺序连接在一起的数字串,这个顺序就是管段的编号顺序。因此不同的个体代表了不同的管段管径选择情况。而个体的产生方法是:调用随机函数产生随机数,每个随机数对应着一种管径;管网由多少管段组成就调用多少次随机函数。要产生N个个体,只需重复N次个体产生操作就可以了。这样就生成了我们所需要的初始群体[6]
    然而,对于改建和扩建项目,由于需要在确定某些管段管径的情况下改变或新建某些管段,最终达到新管段与原有确定管径的管段组成的整个系统运行工况良好,即要求在确定某些管段管径的情况下,使产生的整个个体的适应度较高。因此,需要对传统的遗传算法进行优化。对于有N条管段的管网系统,如果其中有M条管段的管径己确定,因此需要随机产生另外的(N-M)个个体,与已经确定的M条管段的个体合并形成初始群体。
    值得注意的是,在形成初始群体的时候,需要将已定管径的管段个体放在初始群体的最后。这样,每个个体就是由所有管段的管径按照一定顺序连接在一起的数字串,这个顺序就是管段的编号顺序,其中已知管径管段排在后面。因此不同的个体代表了不同的管段管径选择情况。这样形成的初始群体,都满足管网改建与扩建工程中已确定部分管段的情形。起初,这个初始群体中的大多数个体肯定很难满足要求,但是我们从这里出发,通过遗传体编码串中的个别几个点上的值,并且变异发生的概率也比较小,所以其发挥的作用比较慢,作用效果也不明显。
    c. 评价
    评价个体亦即计算个体的适应度。遗传算法中使用适应度这个概念来度量群体中各个个体在优化计算中有可能达到或接近于或有助于找到最优解的优良程度。适应度较高的个体遗传到下一代的概率就较大;而适应度较低的个体遗传到下一代的概率就相对小一些。
    d. 选择
    选择操作是建立在对个体的适应度进行评价的基础之上的。在遗传算法中,应该是更满足目标函数即适应度较高的个体将有更多机会遗传到下一代;而适应度较低的个体遗传到下一代的机会就相对较少。
    由于所形成的每个个体的管段信息都满足改扩建项目的基本要求,因此,经过选择操作,最终的结果是选择出满足改扩建项目管段要求的适应度较高的个体。
    d. 交叉
交叉操作的设计和实现与所研究的问题密切相关,要求它既不要太多的破坏个体编码串中表示优良性的优良模式,又要能够有效的产生出一些较好的新个体模式。示例如下,其中最后两条管段为已确定管径的管段:
 
    可见,经过交叉操作,已经确定管径的管段并没有发生变化,仍然保有原来管段的信息。
    e. 变异
    遗传算法中的基本位变异操作改变的只是个之后,最终选出来的个体是在保证已确定管段管径基础上适应度较高的个体。同时,形成的新群体的个体中代表已确定管径的各管段仍然保持着原有管径的信息,满足改扩建项目的需求。
    在利用遗传算法进行管网水力计算过程中,管径的确定是最主要且复杂的步骤,通过上面的改进,解决了改扩建项目中管径的问题,使改扩建项目的优化过程大大简化。
3 结论
    利用上面的方法对遗传算法的基本操作过程进行改进,即经过了改进的选择、交叉与遗传操作运算,择优汰劣,最后就能选择出优秀的个体,满足目标函数的要求。
 
(本文作者:夏阳1王兴畏21.重庆燃气(集团)有限责任公司 重庆400020;2.重庆大学 城市建设与环境工程学院 重庆400045)