APP下载

粒子群算法在渠道横断面优化设计中的应用

2018-09-21叶振威于贤磊

丝路艺术 2018年10期
关键词:极值适应度遗传算法

叶振威 于贤磊

(1.扬州大学水利与能源动力工程学院,江苏 扬州 225009;2.南水北调东线江苏水源有限责任公司徐州分公司,江苏 徐州 221000)

现行的渠道横断面设计是用明渠均匀流公式,以试算法或图解法进行计算,这些方法复杂、计算量大、精度低。粒子群算法与遗传算法相类似,也是基于群体的优化算法,不要求函数连续或者显式表达,具有很强的全局搜索能力,但它比遗传算法简单,易于使用,而且收敛速度也更快[1]。本文将粒子群算法与罚函数法相结合,解决非线性约束问题,并对渠道横断面设计进行优化计算。

1.粒子群算法设计

假设在一个D维搜索空间里有n个粒子组成的种群X=(X1,X2,…,Xn),第i个粒子的位置为X=(Xi1,Xi2,…,XiD);第i个粒子所经历的最好的位置记为Pi=(Pi1,Pi2,…,PiD),称个体极值;群体中所有粒子经历过的最好的位置记为Pg=(Pg1,Pg2,…,PgD),称群体极值[2]。PSO算法步骤如下:

步骤一:确定迭代次数k、种群规模X、搜索空间的维数D,在搜索空间中产生粒子的初始速度V和初始位置x。

步骤二:计算粒子适应度。

步骤三:将每个粒子当前适应度值与自身个体极值和群体极值进行比较,如果当前适应度值优于个体极值,则更新个体极值;如果当前适应度值又优于群体极值,则更新群体极值。

步骤四:更新粒子速度和位置,公式[3]如下:

式中:ω为惯性权重,ω取1;i=1,2,…,D;j=1,2,…,n;k为当前迭代次数;c1、c2为加速因子,取1;φ1、φ2为区间[0 1]之间的随机数。

步骤五:迭代次数k=k+1,若满足迭代次数或精度要求,则停止搜索,输出结果,否则返回步骤二。

2.渠道横断面优化设计

2.1 目标函数及约束条件

渠道梯形断面优化设计是根据明渠均匀流公式进行水力计算。明渠均匀流公式为:

由此可推得明渠均匀流公式为:

由此可得渠道横断面优化模型[4]为:

2.2 罚函数法及处理

目前,使用最广泛的处理约束条件的方法是惩罚函数法,设法将约束问题转化为无约束的问题求解。具体做法是,根据约束的特点,构造某种惩罚函数,然后,把它加到目标函数中去,将约束优化问题的求解转化为无约束问题的求解。这种惩罚策略在无约束问题求解过程中,那些企图违反约束的迭代点给予很大的目标函数值(对于极小化而言是一种惩罚),迫使一系列无约束问题的极小点或者无限地靠近可行域,或者一直保持在可行域内移动,直至迭代点列收敛到原约束问题的极小点。罚函数处理的适应度函数公式[5]如下:

式中: F( x)为原适应度函数;G( x)为罚函数;D为x满足约束条件的集合。

2.3 算例分析

例[6]:某灌区渠道采用梯形断面,设计流量3.2m3/s,边坡系数m=1.5,渠比降i=0.0005,渠床糙率系数n=0.025,渠道不冲流速该渠道为清水渠道,无防淤要求,为了防止长草,最小允许流速为0.4m/s。求该渠道过水断面尺寸。

文献[6]将免疫遗传算法引入梯形渠道断面优化设计,免疫遗传算法具有较高的全局搜索能力,但其算法复杂,需要不断编码解码,运行时间长。本文采用的粒子群算法,算法结构简单,运行速度快,在非线性约束问题中要优于免疫遗传算法。应用粒子群算法求解,迭代次数为1000,种群规模为20,变量b取离散值[1.0 1.5 2.0 2.5 3.0],变量h取区间[0.0 5.0]。

粒子群算法求得最优解与文献[6]所求最优解对比见表1。粒子群算法所得结果与文献[6]中免疫遗传算法所得解相近,精度高,完全满足实际工程设计要求。粒子群算法程序在多次运行中,平均耗时0.6s,优于免疫遗传算法。

表1 梯形渠道断面优化设计表

3.结论

本文基于MATLAB平台,应用粒子群算法与罚函数法相结合对渠道断面进行优化设计,并与免疫遗传算法计算结果比较,证明了粒子群算法在求解该问题上具有全局性好、收敛速度快、精度高等特点。粒子群算法具有较好的非线性极值寻优能力,为解决非线性约束问题提供了新思路。

猜你喜欢

极值适应度遗传算法
改进的自适应复制、交叉和突变遗传算法
极值点带你去“漂移”
极值点偏移拦路,三法可取
一类“极值点偏移”问题的解法与反思
一种基于改进适应度的多机器人协作策略
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于遗传算法和LS-SVM的财务危机预测
借助微分探求连续函数的极值点
基于空调导风板成型工艺的Kriging模型适应度研究
软件发布规划的遗传算法实现与解释