基于混合进化算法的渭河流域(宝鸡段)水资源优化配置研究*

2021-01-08 06:17刘淳安
工程技术研究 2020年21期
关键词:宝鸡微分交叉

刘淳安,邢 星

(宝鸡文理学院数学与信息科学学院,陕西 宝鸡 721013)

1 研究背景

“以需定供”和“以供定需”的水资源优化配置理论提出的时间最早,为了求解的便利,不统一考虑需求和供给。但基于宏观经济的水资源配置理论要求区域经济发展水平必须和需求供给达到动态平衡。可持续发展配置理论兴起最晚,它相较于基于宏观经济的水资源配置理论,又有了进一步的发展和进步。它综合了人口、资源、经济和环境各方面的要素,强调这些要素的协调发展,但目前该配置理论仅停留在理论分析上。以上就是水资源配置理论的主要体系[1]。

在某个特定流域(区域)内,针对有限的、不同形式的水资源采取工程和非工程的措施,进行科学合理的分配,是水资源优化配置的主要内容。为此流域(区域)的生产、生活、生态等提供优质可靠的水源,从而获得包括经济、社会、生态利益在内的更好的综合效益,让有限的水资源能够利用得更加充分合理,同时保障经济、社会、生态协调发展,进而实现水资源的可持续利用是水资源优化配置的重要目标。

现代工程越来越庞大、复杂,传统的单一目标的优化已经很难解决同时实现多目标优化的实际工程问题。正因如此,多目标的水资源优化配置需要使用新的智能优化算法。文章利用并行机制、全局优化的微分进化算法的特性,加上全局-局部的思想,将改进的微分进化算法应用到水资源的优化配置中去,结果表明此算法能够较好地解决此类问题。

2 微分进化算法

打破传统进化算法的束缚,寻求新的更好的进化算法是人们不断追求的目标。1995年微分进化算法(differential evolution algorithm,DE)应运而生,这个更加简单、更加有效的进化算法为求解连续变量的全局优化问题而提出。1996年首届IEEE进化算法大赛隆重举办,最终DE被证明为所有参赛算法中最快的进化算法,由此,DE开始被应用到各个领域。

经典微分进化算法与遗传算法一样,都存在交叉、变异和选择的操作,但又不尽相同[2]。微分进化算法选择更优的个体,实现种群进化的思路如下:对种群中每个个体,随机选择3个点出来(在当前种群中),把其中的某1个点作为基础,参照另外2个点进行一个扰动,再将所得到的点与个体交叉,进而实现自然淘汰选择,这就是微分进化算法择优、进化的方法[3]。换言之,遗传算法的变异是个体基因轻微扰动的结果,而微分进化算法的变异则是个体算术组合的结果。微分进化算法的原理非常简单,控制参数也非常少,只有交叉因子、交叉概率和种群大小这三个参数,因此很容易理解掌握,既易于实现,算法收敛速度又快,鲁棒性好,进化结果可靠性高,总而言之,微分进化算法优点众多[4-5]。

3 混合进化算法

尽管微分进化算法优点众多,但也存在一定的局限性,这主要体现在处理约束优化问题环节[6]。接下来对其进行改进。

约束优化问题如下:

式中:k={1,2,…,q};S为搜索空间。

针对经典微分进化算法不能够很好地处理约束条件的问题,定义以下2个函数:

H(w)刻画了个体违反约束条件的程度,函数H(w)的值越大个体越差。如果违反约束程度相同,此时再依据目标函数J(w)值的大小来决定它们的好坏。由此可以定义如下逻辑函数:

通过加入这样一个逻辑函数,便可解决微分进化算法难以处理约束优化的问题。改进后的约束微分进化算法具有全局搜索能力强的良好性能,但是由于它采用的是达尔文进化论的思想,由此依然属于智能优化算法。在进化的后期依然存在收敛速度慢、只能找到一个最优解的问题。受到全局-局部算法[7]的启发,将改进的微分进化算法与自身相结合,采用一种混合进化算法。算法流程如下:

(1)全局进化。①随机产生初始化种群P(0)={X1,X2,…,XN},其中交叉概率Px,交叉因子xf∈(0,1);②令gen=0;③gen>global_gen,则转(1)②,否则进行(1)④;④P(gen)中每个个体Xi随机生成3个互不相同的随机整数r1,r2,r3∈{1,2,…,N}和随 机 整 数jrand∈ {1,2,…,n},如果,。如果优于Xi(gen),则将付给Xi(gen+1),否则将Xi(gen)付给Xi(gen+1);⑤gen+1→gen,转(1)③。

(2)从P(gen)中选取p个不同的个体。①给定ε(一个很小的正数),α(>0)是比例因子;②从P(gen)中选出所有满足下列条件的个体{X1,X2,…,XP}:都有(定义为欧式距离);③若p>max_num,令ε(1+α)→ε,转(2)②;若p<min_num,令ε/(1+α)→ε,转(2)②;否则按照适应值从好到坏对X1,X2,…,XP进行排序。

(3)子空间进化。对i=1,2,…p进行如下并行操作:①定义搜索子空间;②对每个子空间Di,随机生成N1个个体,构成子种群Pi(0)并置t=0;③若进化代数t>sub_gen或Pi(t)中最差个体Xworst的适应值=最好个体Xbest的适应值,则转(3)⑤;④对Pi(t)中每个个体Xi随机生成3个互不相同的随机整数r1,r2,r3∈{1,2,…,N}和随机 整 数jrand∈ {1,2,…,n},如果,。如果优于Xi(t),则将付给Xi(t+1),否则将Xi(t)付给Xi(t+1),t=t+1,转(3)③;⑤。结束并行化操作。

(4)把{X1,X2,…,XP}中相同的解剔除,从而得到优化问题的多个解。

变异操作可以提高种群的多样性,但为了保证较好的个体不会被淘汰,因此变异的概率通常设置成较小的数值。变异操作虽然可以提高种群的多样性,但提高的程度比较有限。同样,交叉操作在寻优的前期,确实能够很好地提高种群的多样性,但进入寻优后期,当种群中的个体趋于一致,这时交叉操作提高种群多样性的程度也就比较有限了。因此在复杂、多峰、多目标的优化问题上,简单的进化算法无法得到问题的全部最优解,通常只能找到局部最优解或一个全局最优解。而混合进化算法把搜索空间进行划分,在整体和子空间上都运用一次改进的微分进化算法,种群多样性得到明显提高,便于找到问题的全部最优解。

4 混合进化算法在水资源配置中的应用

宝鸡市河流网分属黄河、长江两大水系,并以秦岭为界。以渭河为干流的渭河水系构成了黄河水系的主要部分,渭河横贯宝鸡市辖内206.1km,多年平均径流量为35.51亿m3。市年平均降水量在590~900mm,是关中降水量最多的地区。文章以2015年为基准年(供需水量参考陕西省2015年年鉴),宝鸡不同水平年的可供水量和需水量预测见表1。

4.1 目标函数的建立

由于水资源优化配置问题复杂,多目标,难以求解,有非常多的因素影响着水资源系统,且各个因素往往量纲不同,大小也不成比例,最关键的是这些因素通常相互影响、相互制约。基于此,文章主要从经济、生态、社会三个方面着手进行考虑[8]。

(1)把不同行业用水产生的经济净效益达到最大值作为经济目标:

(2)把BOD排放量总和最小作为生态目标:

(3)把粮食产量与期望产量的差值最小作为社会目标:

式中:C为粮食目标变量;A为实际粮食产量;B为期望粮食产量。

4.2 约束条件

(1)供水约束:

(2)需水约束:

4.3 优化结果

模型根据水资源优化配置的相关原则,设置了经济、生态、社会三方面目标。其目标函数可以表示为U=opt{maxf(x),min(TBOD),min(C)},然后利用上述混合进化算法对其进行优化。计算结果见表2、表3,水量配置前后供需情况的比对见表4。

表1 宝鸡不同水平年的可供水量和需水量预测表 单位:万m3

表2 2030年宝鸡市水资源合理配置方案 单位:万m3

表3 2040年宝鸡市水资源合理配置方案 单位:万m3

表4 水量配置前后供需情况对照表 单位:万m3

5 水资源优化配置结果分析

随着宝鸡经济的稳步提升,市内供水量有限,而需水量会逐步增加,农业部门和工业部门表现尤为明显,因此会造成不同程度的缺水。综上,从水量的供需情况来看,2040年的缺水会比2030年更为严重。

经过水资源的优化配置,2030年的供需缺水量减少了5371万m3,2040年供小于需,但供需缺水量也比优化配置前减少了6580万m3。这提高了宝鸡当地的水资源利用率,保障了当地经济的快速发展。

6 结束语

水资源规划的一个极其重要的内容就是水资源优化配置,简单的进化算法很难处理这个问题。文章对经典微分进化算法的搜索空间进行划分,既有效避免了陷入局部最优的问题,又很好地继承了微分进化算法的优点,非常适合处理复杂、多目标、难求解的水资源优化配置问题。将混合进化算法运用到水资源优化配置领域,计算出实例的优化结果,配置结果合理、可行。将此算法应用到更多领域,尤其是复杂、多目标的优化问题中,是相关人员进一步研究的方向。

猜你喜欢
宝鸡微分交叉
Ap(φ)权,拟微分算子及其交换子
拟微分算子在Hp(ω)上的有界性
多复变整函数与其关于全导数的微分多项式
上下解反向的脉冲微分包含解的存在性
“六法”巧解分式方程
宝鸡“十严禁”严明村“两委”换届纪律
宝鸡对霾源“拔芯断气”
走进宝鸡
宝鸡:松绑人力资源
连数