IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 遗传算法谢菲尔德大学工具箱第一个例子,一点点方便理解。。。 -> 正文阅读

[开发工具]遗传算法谢菲尔德大学工具箱第一个例子,一点点方便理解。。。

遗传算法谢菲尔德大学
遗传算法谢菲尔德大学工具箱第一个例子,一点点方便理解。。。

%% 简单一元函数优化
%  f(x)=sin(10*pi*x)./x;1<=x<=2;求最小值
% 思想,种群使用二进制来代表数字的大小,。。。。
%1 清除之前变量工作区内容
clc;
clear;
close all;
%2 画出函数图使用fplot函数;格式fplot(@x 公式,区间,'图像属性');
lb=1;ub=2;
figure(1);
hold on;
fplot(@(x) sin(10*pi*x)./x,[lb,ub],'Linewidth',2);
xlabel('自变量/X');
ylabel('函数值/Y');
%  定义遗传算法参数:种群大小,最大遗传代数,个体长度,代沟,
Chrom_Num=40;
MAXGEN=20;
indiviLen=20;
GGAP=0.95;
%交叉概率,变异概率,寻优结果的初始值,区域描述器,初始化种群大小,初始化代数gen
px=0.7;
pm=0.01;
trace=zeros(2,MAXGEN);
FieldD=[indiviLen;lb;ub;1;0;1;1];
Chrom=crtbp(Chrom_Num,indiviLen);
gen=0;
%  优化:确定当前随机种群中各个个体的目标函数值;
x=bs2rv(Chrom,FieldD);
ObjV=sin(10*pi*x)./x;
%        进行迭代循环,将目标值按照规则分配适应度值
while gen<MAXGEN
    FitV=ranking(ObjV);%ranking 为工具箱内置的函数
    %        根据适应度值进行选择,交叉重组,变异,重新插入父代,得到新种群
    SelCh=select('sus',Chrom,FitV,GGAP);
    SelCh=recombin('xovsp',SelCh,px);
    SelCh=mut(SelCh,pm);
    x=bs2rv(SelCh,FieldD);
    ObjVSel=sin(10*pi*x)./x;
    [Chrom,ObjV]=reins(Chrom,SelCh,1,1,ObjV,ObjVSel);
    x=bs2rv(Chrom,FieldD);
    gen=gen+1;
    %        记录最优值横竖坐标
    [y,i]=min(ObjV);
    trace(1,gen)=x(i);
    trace(2,gen)=y;
end
% 画图:
%       画出最优点
plot(trace(1,:),trace(2,:),'bo');
grid on;
plot(x,ObjV,'b*');
%       画出迭代(进化图)
figure(2);
plot(1:MAXGEN,trace(2,:));
grid on;
title('进化过程');
bestY=trace(2,end);
bestX=trace(1,end);
fprintf(['最优解:\nX=',num2str(bestX),'\nY=',num2str(bestY),'\n']);
% 输出最优解

这里是引用
[1] 郁磊,MATLAB智能算法30个案例分析(第2版) P12-13.

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-11-11 12:55:00  更:2021-11-11 12:56:09 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 20:58:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码