【预测模型-ELM预测】基于遗传算法优化极限学习机预测matlab代码

1 简介

针对变压器故障的特征,结合变压器油中气体分析法以及三比值法.提出了基于遗传算法改进极限学习机的故障诊断方法.由于输入层与隐含层的权值和阈值是随机产生.传统的极限学习机可能会使隐含层节点过多,训练过程中容易产生过拟合现象.该方法运用遗传算法对极限学习机的输入层与隐含层的权值与阈值进行优化,从而提高模型的稳定性和预测精度.将诊断结果与传统的基于极限学习机故障诊断进行对比,结果表明,基于遗传算法改进极限学习机变压器故障诊断的精度更高.

遗传算法是以自然选择和遗传理论为基础,将生物进化过程中适者生存规则与种群内部染色体的随机信息交换机制相结合的高效全局寻优搜索算法。 该算法是把问题参数编码为染色体,再利用迭代的方式进行选择,交叉以及变异等运算来交换种群中的染色体的信息。 从而使群体代代进化到搜索空间中越来越好的区域,直至抵达最优解点。 在遗传算法中,染色体对应的是数据或者数组,一般由结构串数据组成来表示。 串上各个位置对应基因的取值。由一系列基因组成的串就是染色体,或者称之为基因型个体, 一定数量的个体又组成为群体,群体中的数目称之为群体大小,而各个个体对环境的适应程度称之为适应度。

​2 部分代码

function [Kpidi,BsJ]=pid_gaf(Kpidi,BsJ)

global rin yout timef

ts=0.001;

sys=tf(350,[1,45,1]);  

dsys=c2d(sys,ts,'z');

[num,den]=tfdata(dsys,'v');

rin=1.0;

u_1=0.0;u_2=0.0;

y_1=0.0;y_2=0.0;

x=[0,0,0]';

B=0;

error_1=0;

tu=1;

s=0;

P=100;

for k=1:1:P

   timef(k)=k*ts;

   r(k)=rin;

   

   u(k)=Kpidi(1)*x(1)+Kpidi(2)*x(2)+Kpidi(3)*x(3); 

   

   if u(k)>=10

      u(k)=10;

   end

   if u(k)<=-10

      u(k)=-10;

   end   

   

   yout(k)=-den(2)*y_1-den(3)*y_2+num(2)*u_1+num(3)*u_2;

   error(k)=r(k)-yout(k);

%------------ Return of PID parameters -------------

   u_2=u_1;u_1=u(k);

   y_2=y_1;y_1=yout(k);

   

   x(1)=error(k);                % Calculating P

   x(2)=(error(k)-error_1)/ts;   % Calculating D

   x(3)=x(3)+error(k)*ts;        % Calculating I

   

   error_2=error_1;

   error_1=error(k);

if s==0

   if yout(k)>0.95&yout(k)<1.05

      tu=timef(k);

      s=1;

   end 

end

end

for i=1:1:P

   Ji(i)=0.999*abs(error(i))+0.01*u(i)^2*0.1;

   B=B+Ji(i);   

  if i>1   

   erry(i)=yout(i)-yout(i-1);

   if erry(i)<0

      B=B+100*abs(erry(i));

   end    

  end

end

BsJ=B+0.2*tu*10;

3 仿真结果

4 参考文献

[1]吕忠, 周强, 周琨, 陈立, & 申双葵. (2015). 基于遗传算法改进极限学习机的变压器故障诊断. 高压电器, 51(8), 5.

【【预测模型-elm预测】基于海鸥算法优化极限学习机预测matlab代码.zip】是一个可用于预测Matlab代码压缩文件。其中使用了极限学习机(Extreme Learning Machine,ELM)作为预测模型,并通过海鸥算法(Seagull Algorithm)对其进行优化ELM是一种训练速度快、预测精度高的机器学习算法,它通过随机初始化输入层到隐藏层的权重和偏置,然后利用正则化方法求解输出层的权重,从而使得神经网络的训练变得非常高效。ELM在处理大数据集时具有较好的性能,因为它可以通过增加隐藏层的神经元数量来提高训练速度和预测精度。 海鸥算法是一种基于自适应寻优策略的优化算法,它模拟了海鸥觅食的过程,通过觅食行为的学习来对ELM模型的参数进行调整。通过海鸥算法优化,可以进一步提高ELM模型的预测能力和效果。 这个Matlab代码压缩文件中,包含了使用ELM模型和海鸥算法优化预测模型的实现代码。使用者可以根据需要进行参数的调整和优化,并根据自己的数据进行训练和预测。该代码文件可以帮助用户更好地理解ELM和海鸥算法的实现方式,并在自己的预测任务中应用这些算法。 总之,【【预测模型-elm预测】基于海鸥算法优化极限学习机预测matlab代码.zip】是一个使用ELM模型和海鸥算法优化预测模型Matlab代码压缩文件,可以帮助用户更好地进行预测任务的实现和优化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Matlab科研辅导帮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值