多目标应用:非支配排序的鲸鱼优化算法NSWOA优化RBF神经网络实现数据预测(RBF隐藏层神经元个数可以自行设定)

news2025/9/16 12:31:36

一、非支配排序的鲸鱼优化算法

非支配排序的鲸鱼优化算法(Non-Dominated Sorting Whale Optimization Algorithm,NSWOA)由Pradeep Jangir和 Narottam Jangir于2017年提出。
在这里插入图片描述

在这里插入图片描述

NSWOA算法流程如下:

在这里插入图片描述

二、RBF神经网络

1988年,Broomhead和Lowc根据生物神经元具有局部响应这一特点,将RBF引入神经网络设计中,产生了RBF(Radical Basis Function)。1989年,Jackson论证了RBF神经网络对非线性连续函数的一致逼近性能。

RBF的基本思想是:用RBF作为隐单元的“基”构成隐藏层空间,隐含层对输入矢量进行变换,将低维的模式输入数据变换到高维空间内,使得在低维空间内的线性不可分的问题在高维空间内线性可分。

RBF神经网络结构简单、训练简洁而且学习收敛速度快,能够逼近任意非线性函数,因此已被广泛应用于时间序列分析、模式识别、非线性控制和图形处理等领域。

RBF神经网络学习算法需要优化的参数有3个:基函数的中心方差以及隐含层到输出层的权值
基于高斯核的RBF神经网络拓扑结构:
第一层输入层:由信号源节点构成,仅起到数据信息的传递作用,对输入信息不做任何变换

第二层隐含层:节点数视需要而定。隐含层神经元核函数(作用函数)是高斯函数,对输入信息进行空间映射的变换。

第三层输出层,对输入模式做出响应。输出层神经元的作用函数为线性函数,对隐含层神经元输出的信息进行线性加权后输出,作为整个神经网络的输出结果。

在这里插入图片描述

三、非支配排序的鲸鱼优化算法NSWOA优化RBF神经网络

非支配排序的鲸鱼优化算法NSWOA中每个个体由基函数的中心方差以及隐含层到输出层的权值构成,两个目标函数为样本真实值与预测值的均方误差(MSE)。训练数据集为6个输入,2个输出,共300个样例。构建结构为6-10-2的RBF神经网络,其中隐藏层神经元数目可以修改。
部分样例如下:(前6列为输入,后2列为输出)

0.713579996594884	0.973568402691768	0.0824448224264940	0.585264837959374	0.531414173953683	0.856365367019255	1.32743899297506	2.41519860767040
0.218557762664222	0.888419469848967	0.939959005198331	0.711424938174573	0.449737107676159	0.812247345729087	1.60825387553871	2.41209175375263
0.210845792953702	0.291848474251125	0.817985975534208	0.0224069835293927	0.642499428553517	0.464226773276162	1.67133119704143	0.778482231056679
0.138925583640368	0.150529446517112	0.281251506709573	0.0289283211915973	0.348706368098486	0.903657252375479	0.768883458448428	1.08311502008419
0.679015819172490	0.210504001944847	0.506998736255627	0.0143607498566152	0.892442419026897	0.566823504951400	2.07845697445501	0.791688256752862
0.0520848926590219	0.154913533271986	0.0557509606785225	0.916497166251544	0.0697163732653581	0.591405090114828	0.177552226602902	1.66281578963836
0.0810950135454228	0.269334511629595	0.754531447868779	0.139215440452895	0.459460537278416	0.0419227996933343	1.29508699869262	0.450472751775824
0.927299917256754	0.741521161159710	0.747005122998480	0.112919143211011	0.467921048750087	0.743709711696814	2.14222608900532	1.59815001606753
0.928165532557930	0.472203377881395	0.683036636925367	0.206504589377546	0.903236727308788	0.729565383108516	2.51443889679209	1.40827335036746
0.191494299273308	0.491535033231124	0.967782075039601	0.878017316272317	0.304171048995970	0.182382593579523	1.46344742330888	1.55193494308296
0.518113080400652	0.362748260135582	0.209806887695183	0.956451054998756	0.510052514763925	0.790610340906869	1.23797248285976	2.10980965604121
0.830713356252473	0.751748214027656	0.316186995843160	0.617428331451750	0.475194292178331	0.561777637615592	1.62209464427396	1.93095418309500
0.142256115752167	0.248628311738998	0.464354034178816	0.0459195257000721	0.382991165602749	0.430631218266837	0.989601315533732	0.725179055705907
0.756177912918820	0.394826363724776	0.714308626604904	0.792136982678444	0.316946044903704	0.814129928334899	1.78743258442743	2.00109327473812
0.636267440609688	0.696754012036900	0.948325910043440	0.565577362012063	0.755877881232562	0.195634834495328	2.34047123188569	1.45796620854429
0.0894354528968515	0.774878326539918	0.761255673320979	0.450222594452581	0.119946316991966	0.837217733177432	0.970637443209796	2.06231865416993
0.490846637046064	0.238559840946110	0.880383966782141	0.849756780444547	0.364265992607895	0.159017465755099	1.73549659643610	1.24733408714576
0.562256680322090	0.421278711197472	0.0548573856716194	0.103518820683544	0.196625841528628	0.534104471459144	0.813739907522337	1.05890200334016
0.359507176414332	0.131440307233889	0.487121117853134	0.558834800863296	0.927027286166390	0.213694822584527	1.77365558043386	0.903969930681711
0.187063542906367	0.612424846727939	0.0553117989895839	0.212760776106613	0.642309868487962	0.896181269095994	0.884685210383912	1.72136689193055
0.786500401198605	0.635675576516305	0.777686342722035	0.424039116519014	0.391810970884959	0.889827824797412	1.95599771480560	1.94954251783273
0.510093025740105	0.180135530430196	0.802368302424647	0.332104156050016	0.379416525315520	0.792981620086756	1.69187785348027	1.30522130656697
0.163936208611282	0.397650330010963	0.406461343190970	0.787572874688299	0.856142621359846	0.557263065211912	1.42654017316210	1.74248626991117
0.222944554515944	0.172888824306559	0.131734775822207	0.113721858923443	0.281167201030943	0.366425511609739	0.635846531369094	0.653036194839741
0.994176240512781	0.309652781208750	0.430164650695471	0.334698769797657	0.935287723130266	0.243596965312906	2.35962861433852	0.887948516319314
0.612502638977732	0.280104345526887	0.0320728504877658	0.637477847090346	0.562511849201201	0.937730332243288	1.20708733866670	1.85531252486052
0.0445534978647620	0.839876814539396	0.818964442816881	0.0237621903267523	0.00971624164550933	0.966216417652830	0.873234182327152	1.82985542251898
0.687768579812269	0.498923080114782	0.784427811219562	0.131568810381094	0.697482023708840	0.0909859966689093	2.16967841474067	0.721477887164785
0.696277135120957	0.252109542567679	0.379538502367650	0.296769112885393	0.331565505654575	0.994905858431417	1.40738114314318	1.54378451388449
0.913720809929107	0.683353086105831	0.202985701891935	0.451210891843151	0.508794036450449	0.270392101042156	1.62550054827149	1.40495607899114

部分代码如下:(完整代码可以私聊博主或添加博主微信

close all;
clear ; 
clc;
%% NSWOA优化RBF 决策变量为RBF待优化参数,两个目标函数分别为真实值和预测值的均方误差
global inputnum hiddennum outputnum TrainNum 
inputnum=6;%神经网络输入层神经元个数(输入样本维度)
hiddennum=10;%神经网络隐藏层神经元个数(可以自己修改) 
outputnum=2;%神经网络输出层神经元个数(输出样本维度)
TrainNum=300;%训练集数目 
TestProblem=1;%
MultiObj = GetFunInfo(TestProblem);
MultiObjFnc=MultiObj.name;%问题名
% Parameters
params.Np = 100;        % Population size
params.Nr = 200;        % Repository size
params.maxgen =5000;    % Maximum number of generations
[x,f] = NSWOA(params,MultiObj);
% x是PS
% f是PF
%% 计算算法的评价指标Spacing,Spacing越小说明解集分布越均匀
ResultData=Spacing(f);%计算的Spacing

%% 找出两个目标的均方误差和最小的个体作为最优解bestX
[~,idx]=min(sum(f,2));
bestX=x(idx,:);
save x x %保存PS
save f f %保存PF
save bestX bestX %保存最优解bestX

Predata;%求解结果展示


四、预测结果

在这里插入图片描述

找出两个目标的均方误差和最小的个体作为最优解bestX,在最优解下预测结果:
在第一个目标上的真实值与预测值:
在这里插入图片描述

在第二个目标上的真实值与预测值:
在这里插入图片描述

两个目标的真实值与预测值的误差MAE:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/4667.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring-Aop面向切面编程

文章目录一、简介1、作用2、AOP核心概念3、五种(增强)通知类型二、AOP入门小案例(注解版)1.导入坐标(pom.xml)2.制作连接点(原始操作,Dao接口与实现类)3:定义通知类和通知4:定义切入点5:制作切面6:将通知类配给容器并标…

Linux操作系统

Linux 基础入门 Linux操作系统 操作系统 首先,我们需要知道什么是操作系统: 操作系统是应用程序运行的基础支撑环境操作系统作用是管理与控制计算机系统硬件与软件资源(软件与硬件的中间层)Intel X86 架构上的常见的操作系统&…

linux基本指令(上)

文章目录1.whomai指令2. pwd指令3. ls 指令1. ls指令2. ls -l指令3.ls -la指令1. cd .2. cd . .4. ls -ld指令5. ls -i指令1. windows 与linux标识文件之间的区别6. ls -R指令4. cd指令1.cd 指令2. cd ~ 指令3.cd -指令5. 根目录1.绝对路径2.相对路径例判断相对路径是否唯一6. …

leetcode-每日一题-119-杨辉三角2(简单,dp)

今天这道题是一道简单的dp题说实话很好想到解法,就是用两个dp来回倒换即可解除,然后也没啥难度所以就不解释了,养成一个好习惯就是设置数组的时候需要malloc动态获取即可,然后使用memset进行初始化,注意memset只能进行…

期货行权(期货行权日)

​ 期权如何行权?期货到期了如何进行实物交割? 期权到期日 Expiration Date:到期日即是指期权合约所规定的,期权购买者可以实际执行该期权的最后日期。 对欧式期权而言,为期权合约可以行权的唯一一天;对…

[附源码]计算机毕业设计JAVAjsp心理测评系统

[附源码]计算机毕业设计JAVAjsp心理测评系统 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis…

经典图割算法中图的构建及实现:Graph-Cut

经典图割算法中图的:Graph-Cut一.graph-cut:准则函数二.Graph-cut:图的建立1.术语:2.图的建立3. 头文件4. 源文件5. 测试图像讲解目前典型的3种图割算法:graph-cut、grab-but、one-cut。本文主要讲解graph-…

【IEEE2014】EET:基于采样的机器人运动规划中的平衡勘探与开发

EET:基于采样的机器人运动规划中的平衡勘探与开发 摘要: 本文提出了一种用于运动规划的探索/利用树(EET)算法。EET规划者故意用概率的完整性来换取计算效率。这种权衡使EET规划器能够比最先进的基于采样的规划器多三个数量级。我们…

【蓝桥杯真题练习】STEMA科技素养练习题库 答案版013 持续更新中~

1、人工神经网络是一种模仿动物神经系统设计的机器学习方法,它被用于解决各种传统编程无法解决的问题。“神经网络”一词在英文中是( )。 A.Neural Network B.Neural Engine C.Machine Learning D.Machine Network 答案:A 2、中央处理器(CPU)是手机,电脑…

第五章 Docker 自定义镜像

5-1 认识 Dockerfile 文件 Dockerfile 用于构建 Docker 镜像,Dockerfile 文件是由一行行命令语句组 成 , 基于 这些命 令 即 可以构建一 个镜 像, 比如下面 就 是一 个 Dockefile 文件样例: FROM XXX/jdk:8 MAINTAINER docker_us…

大一学生《Web编程基础》期末网页制作 HTML+CSS+JavaScript 企业网页设计实例

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

【紧急情况】:回宿舍放下书包的我,花了20分钟敲了一个抢购脚本

文章目录情况紧急 ⁉️抢❗️抢❗️抢❗️开抢时间说明💨开抢过程💥Get_cookie.py开抢结束语😱情况紧急 ⁉️ 不管你信不信,这就是俺刚瞧出的代码!!! 现在离20:00还有38分钟&#xf…

持久与速度 鱼和熊掌 MySQL怎么去兼得

前言 我们都知道 MySQL 有一个特性就是持久化储存到磁盘中 我们存进去就要取出来这也是MySQL的速度为什么比不上Redis。但是MySQL 并不是完全就摆烂每次都进行 Select update 的时候都重新去磁盘IO 这样MySQL肯定会更慢 速度快 和 持久化 MySQL 表示我都要 但是两者都要肯定没…

Chapter7.4:线性离散系统的分析与校正考研参考题

此系列属于胡寿松《自动控制原理题海与考研指导》(第三版)习题精选,仅包含部分经典习题,需要完整版习题答案请自行查找,本系列属于知识点巩固部分,搭配如下几个系列进行学习,可用于期末考试和考研复习。 自动控制原理(…

台式万用表究竟如何选型?手持式和台式选择哪一个?

数字万用表是一种多用途的电子测量仪器,有各种各样的形状和规格,可能要超过任何其他仪器品类,比较常见的就是手持和台式万用表了,那么在选型时选择手持式还是台式万用表呢?今天安泰测试就给大家分享一下: 手持式数字万…

充分复用离线空闲算力,降低了实时计算资源开支

针对提供下游数据报表展示的场景,一般需要走预计算的流程将结果持久化下来,对数据就绪和计算耗时的敏感度都较高,而且查询逻辑相对复杂,Trino/Impala 集群规模相对较小,执行容易失败,导致稳定性欠佳。这个场…

Linux系统中标准输入设备的控制实现

大家好,今天主要和大家聊一聊,如何使用标准输入设备,进行控制信息的识别。 目录 第一:按键应用编程方法 第二:单点触摸应用程序实现 ​第三:多点触摸应用程序实现 第一:按键应用编程方法 编写…

java 实现删除单链表中所有指定的结点以及如何清空单链表

文章目录1. 删除单链表中的所有的指定结点1.1 删除思路1.2 删除步骤1.2.1 删除结点不是头结点1.2.2 删除的结点是头结点的情况1.3 部分代码思路分析1.4 整体代码演示2. 清空单链表1. 删除单链表中的所有的指定结点 1.1 删除思路 定义一个 cur 来代替 head 遍历单链表。遇到指…

Python检测和防御DOS攻击

目录 ​编辑 一、在CentOS上安装Python3 1.下载Python3.10源代码文件 2.运行以下命令行完成安装 3.确认是否安装成功 二、理解各个命令的含义 1.uptime 2.netstat 3.ss 4.firewall-cmd 5.sysctl 三、利用Python实现DDOS入侵检测 1.采集TCP连接数据 一、在CentOS上安…

生态系统服务——水源涵养水源涵养分布

水源涵养,是指养护水资源的举措。一般可以通过恢复植被、建设水源涵养区达到控制土壤沙化、降低水土流失的目的。 水源涵养数据是地理遥感生态网平台通过水量平衡方程(The Water Balance Equation)计算(式29)。水量平衡…