MATLAB神经网络43个案例——非线性函数极值寻优

        本章案例是在第三章案例(遗传算法优化BP神经网络)的基础上进行的,相对较为简单。需要注意的是:问题导向是找到最小值对应的坐标点。与第三章中优化神经网络的权值阈值不同。

目标函数:y=x1.^2+x2.^2

寻优:y最小的情况下,找出(x1,x2)的坐标

从下图可以直观体现本案例寻优点:

一、主函数代码

clear;close;clc
%% bp神经网络初始化
%载入原始数据
load data1 input output

%训练集与测试集
k=randperm(length(input));
input_train=input(k(1:3900),:)';
output_train=output(k(1:3900),:)';
input_test=input(k(3901:end),:)';
output_test=output(k(3901:end),:)';

%归一化
[Input_train,inputps]=mapminmax(input_train);
[Output_train,outputps]=mapminmax(output_train);

%% 构建bp神经网络
%设置网络参数
net=newff(Input_train,Output_train,5);
net.trainParam.lr=0.1;
net.trainParam.goal=0.0000004;
net.trainParam.epochs=100;

%训练网络
net=train(net,Input_train,Output_train);

%% 遗传算法
%参数初始化
maxgen=100;         %迭代次数
sizepop=20;         %种群数目
pcross=0.4;         %交叉概率
pmutation=0.2;      %突变概率

lenchrom=[1,1];     %染色体长度 2
bound=[-5 5;-5 5];  %染色体编码范围 -5~5

%种群信息初始化
individuals=struct('fitness',zeros(1,sizepop),'chrom',[]);
bestfitness=[];     %最优适应度(最小)
bestchrom=[];       %最优染色体(对应最小值的坐标)

%初代适应度与染色体编码
for i=1:sizepop
    individuals.chrom(i,:)=Code(lenchrom,bound);%对20个种群依次进行染色体编码
    x=individuals.chrom(i,:);%编码后的染色体
    individuals.fitness(i)=fun(x);%求染色体的适应度(即bp神经网络的y预测值)
end
[bestfitness,bestindex]=min(individuals.fitness);%适应度最小即为最优适应度
bestchrom=individuals.chrom(bestindex,:);%对应的最优染色体

%% 迭代进化(都是对染色体进行操作)
for i=1:maxgen
    %选择(适应度越好选中概率越大)
    individuals=Select(individuals,sizepop);
    %交叉
    individuals.chrom=Cross(pcross,lenchrom,individuals.chrom,sizepop,bound);
    %突变
    individuals.chrom=Mutation(pmutation,lenchrom,individuals.chrom,sizepop,[i maxgen],bound);
    
    %计算进化后染色体的适应度
    for j=1:sizepop
        x=individuals.chrom(j,:);
        individuals.fitness(j)=fun(x);
    end
    %找出这一代中 最优适应度及下标
    [newbestfitness,newbestindex]=min(individuals.fitness);
    [worsefitness,worseindex]=max(individuals.fitness);
    
    %这一代最优适应度与初代最优适应度比较
    %进行最优适应度与染色体更新
    if newbestfitness<bestfitness
        bestfitness=newbestfitness;
        bestchrom=individuals.chrom(newbestindex,:);
    end
    
    %将最差适应度的染色体淘汰(用最优的替代)
    individuals.fitness(worseindex)=bestfitness;
    individuals.chrom(worseindex,:)=bestchrom;
    
end
%迭代的结果(最小值的坐标)
x=bestchrom
round(x)

MATLAB 神经网络43案例分析》目录 第1章 BP神经网络的数据分类——语音特征信号分类 第2章 BP神经网络非线性系统建模——非线性函数拟合 第3章 遗传算法优化BP神经网络——非线性函数拟合 第4章 神经网络遗传算法函数极值寻优——非线性函数极值寻优 第5章 基于BP_Adaboost的强分类器设计——公司财务预警建模 第6章 PID神经元网络解耦控制算法——多变量系统控制 第7章 RBF网络的回归--非线性函数回归的实现 第8章 GRNN网络的预测----基于广义回归神经网络的货运量预测 第9章 离散Hopfield神经网络的联想记忆——数字识别 第10章 离散Hopfield神经网络的分类——高校科研能力评价 第11章 连续Hopfield神经网络的优化——旅行商问题优化计算 第12章 初始SVM分类与回归 第13章 LIBSVM参数实例详解 第14章 基于SVM的数据分类预测——意大利葡萄酒种类识别 第15章 SVM的参数优化——如何更好的提升分类器的性能 第16章 基于SVM的回归预测分析——上证指数开盘指数预测. 第17章 基于SVM的信息粒化时序回归预测——上证指数开盘指数变化趋势和变化空间预测 第18章 基于SVM的图像分割-真彩色图像分割 第19章 基于SVM的手写字体识别 第20章 LIBSVM-FarutoUltimate工具箱及GUI版本介绍与使用 第21章 自组织竞争网络在模式分类中的应用—患者癌症发病预测 第22章 SOM神经网络的数据分类--柴油机故障诊断 第23章 Elman神经网络的数据预测----电力负荷预测模型研究 第24章 概率神经网络的分类预测--基于PNN的变压器故障诊断 第25章 基于MIV的神经网络变量筛选----基于BP神经网络的变量筛选 第26章 LVQ神经网络的分类——乳腺肿瘤诊断 第27章 LVQ神经网络的预测——人脸朝向识别 第28章 决策树分类器的应用研究——乳腺癌诊断 第29章 极限学习机在回归拟合及分类问题中的应用研究——对比实验 第30章 基于随机森林思想的组合分类器设计——乳腺癌诊断 第31章 思维进化算法优化BP神经网络——非线性函数拟合 第32章 小波神经网络的时间序列预测——短时交通流量预测 第33章 模糊神经网络的预测算法——嘉陵江水质评价 第34章 广义神经网络的聚类算法——网络入侵聚类 第35章 粒子群优化算法的寻优算法——非线性函数极值寻优 第36章 遗传算法优化计算——建模自变量降维 第37章 基于灰色神经网络的预测算法研究——订单需求预测 第38章 基于Kohonen网络的聚类算法——网络入侵聚类 第39章 神经网络GUI的实现——基于GUI的神经网络拟合、模式识别、聚类 第40章 动态神经网络时间序列预测研究——基于MATLAB的NARX实现 第41章 定制神经网络的实现——神经网络的个性化建模与仿真 第42章 并行运算与神经网络——基于CPU/GPU的并行神经网络运算 第43神经网络高效编程技巧——基于MATLAB R2012b新版本特性的探讨
MATLAB 神经网络43案例分析》源代码&数据 《MATLAB 神经网络43案例分析》目录 第1章 BP神经网络的数据分类——语音特征信号分类 第2章 BP神经网络非线性系统建模——非线性函数拟合 第3章遗传算法优化BP神经网络——非线性函数拟合 第4章神经网络遗传算法函数极值寻优——非线性函数极值寻优 第5章基于BP_Adaboost的强分类器设计——公司财务预警建模 第6章 PID神经元网络解耦控制算法——多变量系统控制 第7章RBF网络的回归--非线性函数回归的实现 第8章GRNN网络的预测----基于广义回归神经网络的货运量预测 第9章离散Hopfield神经网络的联想记忆——数字识别 第10章离散Hopfield神经网络的分类——高校科研能力评价 第11章连续Hopfield神经网络的优化——旅行商问题优化计算 第12章初始SVM分类与回归 第13章LIBSVM参数实例详解 第14章基于SVM的数据分类预测——意大利葡萄酒种类识别 第15章SVM的参数优化——如何更好的提升分类器的性能 第16章基于SVM的回归预测分析——上证指数开盘指数预测. 第17章基于SVM的信息粒化时序回归预测——上证指数开盘指数变化趋势和变化空间预测 第18章基于SVM的图像分割-真彩色图像分割 第19章基于SVM的手写字体识别 第20章 LIBSVM-FarutoUltimate工具箱及GUI版本介绍与使用 第21章自组织竞争网络在模式分类中的应用—患者癌症发病预测 第22章SOM神经网络的数据分类--柴油机故障诊断 第23章 Elman神经网络的数据预测----电力负荷预测模型研究 第24章概率神经网络的分类预测--基于PNN的变压器故障诊断 第25章基于MIV的神经网络变量筛选----基于BP神经网络的变量筛选 第26章LVQ神经网络的分类——乳腺肿瘤诊断 第27章 LVQ神经网络的预测——人脸朝向识别 第28章决策树分类器的应用研究——乳腺癌诊断 第29章极限学习机在回归拟合及分类问题中的应用研究——对比实验 第30章基于随机森林思想的组合分类器设计——乳腺癌诊断 第31章思维进化算法优化BP神经网络——非线性函数拟合 第32章小波神经网络的时间序列预测——短时交通流量预测 第33章模糊神经网络的预测算法——嘉陵江水质评价 第34章广义神经网络的聚类算法——网络入侵聚类 第35章粒子群优化算法的寻优算法——非线性函数极值寻优 第36章遗传算法优化计算——建模自变量降维 第37章基于灰色神经网络的预测算法研究——订单需求预测 第38章基于Kohonen网络的聚类算法——网络入侵聚类 第39章神经网络GUI的实现——基于GUI的神经网络拟合、模式识别、聚类 第40章动态神经网络时间序列预测研究——基于MATLAB的NARX实现 第41章定制神经网络的实现——神经网络的个性化建模与仿真 第42章并行运算与神经网络——基于CPU/GPU的并行神经网络运算 第43神经网络高效编程技巧——基于MATLABR2012b新版本特性的探讨
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值