偏微分方程求解:基于鲸鱼优化算法优化BP神经网络的偏微分方程求解研究(提供MATLAB代码)

176 篇文章 16 订阅
112 篇文章 27 订阅

一、鲸鱼优化算法

鲸鱼优化算法 (whale optimization algorithm,WOA)是 2016 年由澳大利亚格里菲斯大学的Mirjalili 等提出的一种新的群体智能优化算法。鲸鱼优化算法
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

二、偏微分方程

求解定义在[0,1]x[0,1]的如下偏微分方程
在这里插入图片描述

通过鲸鱼优化算法(WOA)优化BP神经网络的权值阈值,目标函数为上述偏微分方程的真实目标值和BP神经网络的输出预测值的均方误差(MSE)。

三、求解结果

部分代码:

close all
clear
clc
global inputnum hiddennum outputnum TrainNum 
inputnum=2;%神经网络输入层神经元个数(输入样本维度)
hiddennum=10;%神经网络隐藏层神经元个数(可以自己修改) 
outputnum=1;%神经网络输出层神经元个数(输出样本维度)
TrainNum=1156;%训练集数目 
%% 鲸鱼优化算法WOA优化BP神经网络求解偏微分方程,目标函数是均方误差MSE
SearchAgents_no=50; %种群大小(可以修改)
Function_name='F1'; 
Max_iteration=500; %最大迭代次数(可以修改)
[lb,ub,dim,fobj]=fun_info(Function_name);% 在fun_info.m中可以查看上下限及目标函数
[fMin,bestX,WOA_curve]=WOA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);  %鲸鱼优化算法WOA优化BP神经网络的权值阈值 bestX是最优权值阈值
save bestX bestX %保留鲸鱼优化算法WOA优化BP神经网络得到的最优权值阈值
save WOA_curve WOA_curve
%%
TrainPre(bestX) %训练集预测
%% 画出鲸鱼优化算法WOA优化BP神经网络的均方误差随迭代次数的图
figure
semilogy(WOA_curve,'Color','g')
title('Objective space')
xlabel('Iteration');
ylabel('MSE');
grid on
box on
legend('WOA')
%%
display(['The best solution obtained by SSA is : ', num2str(bestX)]);
display(['The best optimal value of the objective funciton found by SSA is : ', num2str(fMin)]);%fMin越小说明鲸鱼优化算法WOA优化BP神经网络效果越好

MSE随迭代次数图:
在这里插入图片描述

真实值与预测值:
在这里插入图片描述

由此可见,WOA优化BP神经网络得到的预测值与该偏微分方程的真实值十分接近,误差很小,效果非常理想。

四、参考代码

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值