当前位置: 首页 > news >正文

免费简历制作网站推荐广西壮族自治区图书馆

免费简历制作网站推荐,广西壮族自治区图书馆,wordpress商城 插件,企业网设计案例分析多输入多输出 | MATLAB实现GA-BP遗传算法优化BP神经网络多输入多输出 目录 多输入多输出 | MATLAB实现GA-BP遗传算法优化BP神经网络多输入多输出预测效果基本介绍程序设计往期精彩参考资料 预测效果 基本介绍 多输入多输出 | MATLAB实现GA-BP遗传算法优化BP神经网络多输入多输出…多输入多输出 | MATLAB实现GA-BP遗传算法优化BP神经网络多输入多输出 目录 多输入多输出 | MATLAB实现GA-BP遗传算法优化BP神经网络多输入多输出预测效果基本介绍程序设计往期精彩参考资料 预测效果 基本介绍 多输入多输出 | MATLAB实现GA-BP遗传算法优化BP神经网络多输入多输出 1.data为数据集10个输入特征3个输出变量。 2.main.m为主程序文件。 3.命令窗口输出MBE、MAE和R2可在下载区获取数据和程序内容。 程序设计 完整程序和数据下载方式私信博主回复MATLAB实现GA-BP遗传算法优化BP神经网络多输入多输出。 %----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- function [x, endPop, bPop, traceInfo] ga(bounds, evalFN, evalOps, startPop, opts, ... termFN, termOps, selectFN, selectOps, xOverFNs, xOverOps, mutFNs, mutOps)% Output Arguments: % x - the best solution found during the course of the run % endPop - the final population % bPop - a trace of the best population % traceInfo - a matrix of best and means of the ga for each generation % % Input Arguments: % bounds - a matrix of upper and lower bounds on the variables % evalFN - the name of the evaluation .m function % evalOps - options to pass to the evaluation function ([NULL]) % startPop - a matrix of solutions that can be initialized % from initialize.m % opts - [epsilon prob_ops display] change required to consider two % solutions different, prob_ops 0 if you want to apply the % genetic operators probabilisticly to each solution, 1 if % you are supplying a deterministic number of operator % applications and display is 1 to output progress 0 for % quiet. ([1e-6 1 0]) % termFN - name of the .m termination function ([maxGenTerm]) % termOps - options string to be passed to the termination function % ([100]). % selectFN - name of the .m selection function ([normGeomSelect]) % selectOpts - options string to be passed to select after % select(pop,#,opts) ([0.08]) % xOverFNS - a string containing blank seperated names of Xover.m % files ([arithXover heuristicXover simpleXover]) % xOverOps - A matrix of options to pass to Xover.m files with the % first column being the number of that xOver to perform % similiarly for mutation ([2 0;2 3;2 0]) % mutFNs - a string containing blank seperated names of mutation.m % files ([boundaryMutation multiNonUnifMutation ... % nonUnifMutation unifMutation]) % mutOps - A matrix of options to pass to Xover.m files with the % first column being the number of that xOver to perform % similiarly for mutation ([4 0 0;6 100 3;4 100 3;4 0 0])%% 初始化参数 n nargin; if n 2 || n 6 || n 10 || n 12disp(Insufficient arguements) end% 默认评估选项 if n 3 evalOps []; end% 默认参数 if n 5opts [1e-6, 1, 0]; end% 默认参数 if isempty(opts)opts [1e-6, 1, 0]; end%% 判断是否为m文件 if any(evalFN 48)% 浮点数编码 if opts(2) 1e1str [xc1; c1(xZomeLength), evalFN ;]; e2str [xc2; c2(xZomeLength), evalFN ;]; % 二进制编码elsee1str [xb2f(endPop(j,:),bounds,bits); endPop(j,xZomeLength), evalFN ;];end else% 浮点数编码if opts(2) 1e1str [[c1 c1(xZomeLength)] evalFN (c1,[gen evalOps]);]; e2str [[c2 c2(xZomeLength)] evalFN (c2,[gen evalOps]);];% 二进制编码elsee1str[xb2f(endPop(j,:),bounds,bits);[x v] evalFN ...(x,[gen evalOps]); endPop(j,:)[f2b(x,bounds,bits) v];]; end end%% 默认终止信息 if n 6termOps 100;termFN maxGenTerm; end%% 默认变异信息 if n 12% 浮点数编码if opts(2) 1mutFNs boundaryMutation multiNonUnifMutation nonUnifMutation unifMutation;mutOps [4, 0, 0; 6, termOps(1), 3; 4, termOps(1), 3;4, 0, 0];% 二进制编码elsemutFNs binaryMutation;mutOps 0.05;end end%% 默认交叉信息 if n 10% 浮点数编码if opts(2) 1xOverFNs arithXover heuristicXover simpleXover;xOverOps [2, 0; 2, 3; 2, 0];% 二进制编码elsexOverFNs simpleXover;xOverOps 0.6;end end%% 仅默认选择选项即轮盘赌。 if n 9selectOps []; end%% 默认选择信息 if n 8selectFN normGeomSelect;selectOps 0.08; end%% 默认终止信息 if n 6termOps 100;termFN maxGenTerm; end%% 没有定的初始种群 if n 4startPop []; end%% 随机生成种群 if isempty(startPop)startPop initializega(80, bounds, evalFN, evalOps, opts(1: 2)); end%% 二进制编码 if opts(2) 0bits calcbits(bounds, opts(1)); end%% 参数设置 xOverFNs parse(xOverFNs); mutFNs parse(mutFNs); xZomeLength size(startPop, 2); % xzome 的长度 numVar xZomeLength - 1; % 变量数 popSize size(startPop,1); % 种群人口个数 endPop zeros(popSize, xZomeLength); % 第二种群矩阵 numXOvers size(xOverFNs, 1); % Number of Crossover operators numMuts size(mutFNs, 1); % Number of Mutation operators epsilon opts(1); % Threshold for two fittness to differ oval max(startPop(:, xZomeLength)); % Best value in start pop bFoundIn 1; % Number of times best has changed done 0; % Done with simulated evolution gen 1; % Current Generation Number collectTrace (nargout 3); % Should we collect info every gen floatGA opts(2) 1; % Probabilistic application of ops display opts(3); % Display progress %% 精英模型 while(~done)[bval, bindx] max(startPop(:, xZomeLength)); % Best of current popbest startPop(bindx, :);if collectTracetraceInfo(gen, 1) gen; % current generationtraceInfo(gen, 2) startPop(bindx, xZomeLength); % Best fittnesstraceInfo(gen, 3) mean(startPop(:, xZomeLength)); % Avg fittnesstraceInfo(gen, 4) std(startPop(:, xZomeLength)); end%% 最佳解if ( (abs(bval - oval) epsilon) || (gen1))% 更新显示if displayfprintf(1, \n%d %f\n, gen, bval); end% 更新种群矩阵if floatGAbPop(bFoundIn, :) [gen, startPop(bindx, :)]; elsebPop(bFoundIn, :) [gen, b2f(startPop(bindx, 1 : numVar), bounds, bits)...startPop(bindx, xZomeLength)];endbFoundIn bFoundIn 1; % Update number of changesoval bval; % Update the best valelseif displayfprintf(1,%d ,gen); % Otherwise just update num genendend %% 选择种群endPop feval(selectFN, startPop, [gen, selectOps]);% 以参数为操作数的模型运行if floatGAfor i 1 : numXOversfor j 1 : xOverOps(i, 1)a round(rand * (popSize - 1) 1); % Pick a parentb round(rand * (popSize - 1) 1); % Pick another parentxN deblank(xOverFNs(i, :)); % Get the name of crossover function[c1, c2] feval(xN, endPop(a, :), endPop(b, :), bounds, [gen, xOverOps(i, :)]);% Make sure we created a new if c1(1 : numVar) endPop(a, (1 : numVar)) c1(xZomeLength) endPop(a, xZomeLength);elseif c1(1:numVar) endPop(b, (1 : numVar))c1(xZomeLength) endPop(b, xZomeLength);elseeval(e1str);endif c2(1 : numVar) endPop(a, (1 : numVar))c2(xZomeLength) endPop(a, xZomeLength);elseif c2(1 : numVar) endPop(b, (1 : numVar))c2(xZomeLength) endPop(b, xZomeLength);elseeval(e2str);endendPop(a, :) c1;endPop(b, :) c2;endendfor i 1 : numMutsfor j 1 : mutOps(i, 1)a round(rand * (popSize - 1) 1);c1 feval(deblank(mutFNs(i, :)), endPop(a, :), bounds, [gen, mutOps(i, :)]);if c1(1 : numVar) endPop(a, (1 : numVar)) c1(xZomeLength) endPop(a, xZomeLength);elseeval(e1str);endendPop(a, :) c1;endend%% 运行遗传算子的概率模型else for i 1 : numXOversxN deblank(xOverFNs(i, :));cp find((rand(popSize, 1) xOverOps(i, 1)) 1);if rem(size(cp, 1), 2) cp cp(1 : (size(cp, 1) - 1)); endcp reshape(cp, size(cp, 1) / 2, 2);for j 1 : size(cp, 1)a cp(j, 1); b cp(j, 2); [endPop(a, :), endPop(b, :)] feval(xN, endPop(a, :), endPop(b, :), ...bounds, [gen, xOverOps(i, :)]);endendfor i 1 : numMutsmN deblank(mutFNs(i, :));for j 1 : popSizeendPop(j, :) feval(mN, endPop(j, :), bounds, [gen, mutOps(i, :)]);eval(e1str);endendend% 更新记录gen gen 1;done feval(termFN, [gen, termOps], bPop, endPop); % See if the ga is donestartPop endPop; % Swap the populations[~, bindx] min(startPop(:, xZomeLength)); % Keep the best solutionstartPop(bindx, :) best; % replace it with the worstend [bval, bindx] max(startPop(:, xZomeLength));%% 显示结果 if display fprintf(1, \n%d %f\n, gen, bval); end%% 二进制编码 x startPop(bindx, :); if opts(2) 0x b2f(x, bounds,bits);bPop(bFoundIn, :) [gen, b2f(startPop(bindx, 1 : numVar), bounds, bits)...startPop(bindx, xZomeLength)]; elsebPop(bFoundIn, :) [gen, startPop(bindx, :)]; end%% 赋值 if collectTracetraceInfo(gen, 1) gen; % 当前迭代次数traceInfo(gen, 2) startPop(bindx, xZomeLength); % 最佳适应度traceInfo(gen, 3) mean(startPop(:, xZomeLength)); % 平均适应度 end 往期精彩 MATLAB实现RBF径向基神经网络多输入多输出预测 MATLAB实现BP神经网络多输入多输出预测 MATLAB实现DNN神经网络多输入多输出预测 参考资料 [1] https://blog.csdn.net/kjm13182345320/article/details/116377961 [2] https://blog.csdn.net/kjm13182345320/article/details/127931217 [3] https://blog.csdn.net/kjm13182345320/article/details/127894261
http://www.dnsts.com.cn/news/190050.html

相关文章:

  • 潍坊做网站wordpress手机版主题
  • 腾讯微博做网站外链步骤网站开发制作公司简介
  • 网站定制开发收费标准是多少wordpress资源下载插件
  • 高校网站建设意义怎样找网站
  • 中国建设银行北京天竺支行网站佛山网站建设专业现状
  • 导航网址网站怎么做广告制作包括哪些
  • 重庆农村网站建设淄博网站建设方案
  • DW做网站下拉列表怎么做网站建设的格式
  • 网上有专业的做网站吗影视logo设计制作器
  • ie兼容性 网站沈阳网红打卡旅游景点
  • wordpress做物流网站合肥城市建设网站
  • 国外做家谱的网站外贸网站logo
  • wordpress如何搭建网站建视频网站
  • 广州电信网站备案百度收录左侧带图片的网站
  • 建设网站需要什么软件淘宝网站基础建设 托管
  • 网站链接分析工具网站建设与网页设计制作教程
  • 嘉盛建设集团网站运营怎么自学
  • 官方网站如何做php网站制作软件
  • 长春模板自助建站亚马逊云服务器
  • 建设厅电工证查询网站官方网网上注册公司要多少钱
  • 深圳市做网站建设株洲网站建设推广报价
  • 建设ca网站wordpress首页html
  • 杭州网站 建设凡科做网站友情链接怎么做
  • 企业网站 自助建站网站域名空间一年费用是多少钱
  • 安康创宇网站制作建设在线crm网站
  • 做网站到底要不要营业执照做小说网站做国外域名还是国内的好处
  • 网站开发制作的流程asp.net做音乐网站
  • 品牌网站建设公司排名网页与网站的区别是什么
  • 东莞市行业网站制作公司辽宁建设工程信息网专家库官网
  • 华为公司网站建设目标网站建设价格如何