当前位置:首页 期刊杂志

基于果蝇算法的Boltzmann机谐波检测

时间:2024-07-28

周爱国 ,余汉华 ,,何怡刚

(1.中国国能电力工程有限公司,上海200061;2.湖南大学,湖南 长沙410082)

在达尔文生物进化论的基础上,学者相继进行了遗传算法、PSO算法、蚁群算法、鱼群算法、果蝇算法等智能群体算法的研究[1-3],在神经网络基础上,学者提出了优于BP网络和Hopfield网络的Boltzmann机[4]。其中,由潘文超提出的果蝇算法通过嗅觉和视觉两方面实现搜寻,加快了搜寻速度,提高了搜寻精度[5];Boltzmann机结合了两种网络结构和学习算法的优点。基于此,本文采用果蝇算法搜寻Boltzmann机结构,实现对发电机机端电流检测研究。将此方法与传统网络滤波及滤波器滤波对比,更体现了本文方法的优越性。

1 果蝇算法

果蝇算法(FOA)是继遗传算法、蚁群算法、粒子群算法等智能群体算法之后,由潘文超提出的一种全新的演化式算法。通过对果蝇搜寻食物的研究,分析出果蝇是通过嗅觉寻找食物的大概位置,再用视觉确定食物的准确位置的觅食规律,提出了果蝇优化算法。

果蝇群体同以往群体算法一样,也是通过迭代搜寻得到最优值,果蝇群体演化式搜索算法流程如图1所示。

图1 算法流程

2 果蝇算法寻优Boltzmann机网络

Boltzmann机网络结构没有明显的层次,通过神经元的互联实现网络状态按概率分布进行变化。神经元之间通过正向、逆向实现信息双向传递,即 ωij=ωji、ωii=0,中间部分隐见神经元不受外部环境的约束。Boltzmann机的每个神经元都具有随机的兴奋和抑制状态,其概率取决于神经元输入,图2表述了Boltzmann机网络结构形式。

i神经元的数学模型为:

果蝇算法寻优Boltzmann机通过果蝇算法对网络结构的权值和阈值进行优化,具体过程分为网络结构的确定、果蝇算法的优化和网络预测。算法流程如图3所示。

图3 果蝇算法寻优Boltzmann机网络结构

3 仿真实现

通过对燃机发电机机端电流谐波检测,与传统网络搜寻结果相比,验证本文算法的优越性。通常,发电机机端短路都是采用低通滤波器实现Matlab的仿真,本文采用Simlink与Matlab语言的交互平台,用Create Bubsystem实现代码模块化,模块分别为传统Boltzmann机网络模块和果蝇算法优化Boltzmann机网络模块。图4为实验仿真原理图,原理还涉及图5~图7所示关于C23变换、C32变换、Cpq变换。

图4 检测电流原理图

从图8、图9能明显看出,果蝇算法搜索相比传统智能搜索算法优化过程和迭代步骤都得到了简化,说明从嗅觉和视觉两方面搜寻的高效性。从图10~图12可以看出,在同样的原始输入波情况下,果蝇算法寻优后的基波效果明显优于传统滤波效果。

传统网络算法都是对合适的样本集,寻求一个参数集使其能量函数最小,其缺陷是使网络容易陷入局部极小问题。果蝇算法通过嗅觉、视觉两方面的非线性寻优Boltzmann机结构并配合Boltzmann机的动态滤波优点,通过对燃机发电机机端谐波检测,说明本文方法可以明显改善谐波检测效果,提高滤波性能。

图5 三相/二相变换模块C32

图6 二相三相变换模块C23

图7 ip、iq运算模块 Cpq

图8 果蝇算法的优化过程

图9 果蝇算法的搜寻迭代路径

图10 原始输入波

图11 果蝇算法寻优后的基波

图12 传统网络结构滤波的基波

[1]KENNEDY J,EBERHART R C.Particle swarm optimization[C].Proceedings of IEEE International Conference on Neural Networks,1995:1942-1948.

[2]谢宏,何怡刚.离散Hopfied神经网络在混烧控制系统故障诊断中的应用[J].湖南大学学报(自然科学版),2007,34(3):33-35.

[3]谭阳红,何怡刚.模拟电路故障诊断的小波方法[J].电工技术学报,2005,20(8):89-93.

[4]陈洁,刘希玉,姚树魁.用遗传算法优化 Boltzmann机[J].计算机工程与应用,2011,47(7):65-69.

[5]潘文超.果蝇最佳化演算法[M].台湾:沧海书局出版社,2011:10-134.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!