双隐藏层BP网络的matlab仿真,求遗传算法优化含有两个隐含层的BP神经网络的matlab程序...
怎样用遗传算法优化含有两个隐含层的BP神经网络的matlab程序啊,这个代码是错的,可不知道错在哪,求高手帮忙解答,非常感谢!
FieldD=[repmat(PRECI,1,N);repmat([-0.5;0.5],1,N);repmat([1;0;1;1],1,N)]; %区域描述器
Chrom=crtbp(NIND,PRECI*N); %创建任意离散随机 种群
%% 优化
gen=0; %代计数器
X=bs2rv(Chrom,FieldD); %计算初始种群的十进制转换
ObjV=Objfun(X,P,T,hiddennum1,hiddennum2,P_text,T_text); %计算目标函数值 hiddennum1,hiddennum2:第一、第二隐含层
while gen
fprintf('%d\n',gen)
FitnV=ranking(ObjV); %分配适应度值
SelCh=select('sus',Chrom,FitnV,GGAP); %选择
SelCh=recombin('xovsp',SelCh,px); %重组
SelCh=mut(SelCh,pm); %变异
X=bs2rv(SelCh,FieldD); %子代个体的十进制转换
ObjVSel=Objfun(X,P,T,hiddennum1,hiddennum2,P_text,T_text); %计算子代的目标函数值
[Chrom,ObjV]=reins(Chrom,SelCh,1,1,ObjV,ObjVSel); %重插入子代到父代,得到新种群
X=bs2rv(Chrom,FieldD);
gen=gen+1; %代计数器增加
%获取每代的最优解及其序号,Y为最优解,I为个体的序号
[Y,I]=min(ObjV);
trace(1:N,gen)=X(I,:); %记下每代的最优值
trace(end,gen)=Y; %记下每代的最优值
end
function Obj=Objfun(X,P,T,hiddennum1,hiddennum2,P_text,T_text)
%% 用来分别求解种群中各个个体的目标值
%% 输入
% X:所有个体的初始权值和阈值
% P:训练样本输入
% T:训练样本输出
% hiddennum1:隐含层1神经元数
% hiddennum2:隐含层2神经元数
% P_text:测试样本输入
% T_text:测试样本期望输出
%% 输出
% Obj:所有个体的预测样本的预测误差的范数
[M,N]=size(X);
Obj=zeros(M,1);
for i=1:M
Obj(i)=Bpfun(X(i,:),P,T,hiddennum1,hiddennum2,P_text,T_text);
end
这两段代码运行时会出现如下错误Error in ==> Objfun at 16
Obj(i)=Bpfun(X(i,:),P,T,hiddennum1,hiddennum2,P_text,T_text);
Error in ==> GABPMain at 39
ObjV=Objfun(X,P,T,hiddennum1,hiddennum2,P_text,T_text); %计算目标函数值
双隐藏层BP网络的matlab仿真,求遗传算法优化含有两个隐含层的BP神经网络的matlab程序...相关推荐
- 单相全控桥有源逆变电路matlab仿真,单相桥式全控整流及有源逆变电路的MATLAB仿真详解.doc...
单相桥式全控整流及有源逆变电路的MATLAB仿真详解.doc 学 号 天津城建大学 控制系统仿真 大作业 单相整流-逆变电路仿真模型 学生姓名班级成绩学院 年 月 日 一.仿真电路原理图:2 二.单相 ...
- matlab中alw,MATLAB环境下遗传算法优化工具箱的应用_刘万林
M A T LAB 环境下遗传算法优化工具箱的应用 刘万林,张新燕,晁勤 (新疆大学电气工程学院,新疆乌鲁木齐830008)摘 要:用M A T L AB 语言及M A T L AB 语言编制的优化工 ...
- m基于机器学习MLP的OFDM信道估计误码率matlab仿真,对比LS和MMSE两种信道估计算法
目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 信道估计器是接收机一个很重要的组成部分.在OFDM系统中,信道估计器的设计上要有两个问题:一是导频信 ...
- 协作通信-af df的matlab仿真,协作通信三种协作方式(AF+DF+CC)的matlab仿真程序
[实例简介] 协作通信三种协作方式(AF+DF+CC)的matlab仿真程序 [实例截图] [核心代码] AFDFCC)的matlab仿真程序 ├── www.pudn.com.txt ├── 三种基 ...
- matlab如求曲线插值点,两条曲线之间的插值(matlab)
好了朋友们.我有以下问题: 我有以下情节的数据. 因此该图的数据文件包含三列. 第二和第三个是x,y点.第一个是这些点所属的系统. 在这种情况下,红色的是20年的系统. 30年来的蓝色. 我想要找到的 ...
- 误差反向传播算法(BP网络)
1.引言 误差反向传播网络(Error Back Propagtion,),简称为BP神经网络,是一种多层神经网络,与之相关的另一个概念是多层感知器(Multi-Layer Perceptron,ML ...
- 从头推导与实现 BP 网络
从头推导与实现 BP 网络 回归模型 目标 学习 \(y = 2x\) 模型 单隐层.单节点的 BP 神经网络 策略 Mean Square Error 均方误差 \[ MSE = \frac{1}{ ...
- python手推多层感知机(BP网络实现)
一.概念及应用 多层感知机(Multi Layer Perceptron, MLP)是由多个感知机层全连接组成的前馈神经网络,BP网络是指连接权调整采用了反向传播(Back Propagation)学 ...
- 控制系统数学模型的matlab仿真,第7章 控制系统的MATLAB仿真
<第7章 控制系统的MATLAB仿真>由会员分享,可在线阅读,更多相关<第7章 控制系统的MATLAB仿真(101页珍藏版)>请在人人文库网上搜索. 1.1,本章主要教学内容在 ...
最新文章
- IoC容器和Dependency Injection模式
- Python 数据分析包:pandas 基础
- C++ 指向常量的指针与指针类型的常量
- ABAP TBL鼠标滚动到某行某列
- jquery 鼠标移动 div内容上下或左右滚动
- 如何找素材,设计师必备技能
- 网页中调用Google地图
- 解决 Tomcat禁用OPTIONS协议(不安全的HTTP方法)
- Akka源码分析-Actor创建
- PLSQL导入SQL文件
- AvalonDock使用(2)-简单布局设置
- 数据库的基本操作(增删改查)
- 魏尔斯特拉斯函数 matlab,Applied Numerical Linear Algebra - James W. Demmel
- https://www.jb51.net/article/146628.htm
- 鸿蒙与Android API对应关系
- latex数学公式神器Mathpix
- 【SpringBoot注解-4】:@Target、@Retention、@Documented注解简介
- qt控制程序打开记事本_基于QT记事本应用程序开发.doc
- vector访问出界引起的,判断异常
- 树莓派4B与Android之缘——Android应用MiniChat聊天软件
热门文章
- 记一次oracle HAIP引发的数据库问题
- jsp与servlet数据交互出现null或???解决方案
- python hook pc微信_python实现微信跳一跳辅助工具步骤详解
- element下拉列表触发_记一次vue长列表的内存性能分析和优化
- 【MindSpore易点通】如何实现梯度不回传以及梯度回传后不更新权重功能
- js设计模式学习之单例模式
- JAVA学习笔记 (语言入门篇01)
- 靠谱前端必上网址大全(业界良心推荐)
- 【NI Multisim 14.0原理图设计基础——放置元器件】
- egg-scripts: Permission denied