pg下载麻将胡了安卓专属特惠.安卓应用版本.中国 轻松掌握Matlab:实数编码遗传算法全解析与应用实例

频道:生活应用 日期: 浏览:41

引言

模拟自然选择以及遗传学原理的搜索启发式算法,是一种叫作遗传算法,也就是Genetic Algorithm,简称GA的算法。在MATLAB这个环境里,遗传算法能够用来处理各种各样的优化问题。本文会具体去介绍实数编码遗传算法的原理,还有它的实现方法,并且给出一个应用方面的实例 。

遗传算法概述1. 基本原理

对自然选择以及遗传机制予以模拟实现的特定搜索算法就是被称为遗传算法的,它借助迭代这种方式去寻觅最优解,主要涵盖以下这些步骤,。

2. 实数编码

实数编码的遗传算法pg下载麻将胡了A.旗舰厅进体育.cc,把问题空间当中的解决方案,呈现为实数,并非二进制编码,这样的编码方式pg下载,适用于连续优化问题。

实数编码遗传算法实现1. 编码与解码

在实数编码这个方式里,每一个个体的基因呈现为实数这种形式。为了去开展交叉以及变异操作pg下载赏金下载,是需要针对实数来实施编码还有解码的。

2. 适应度函数

用来评估个体优劣的适应度函数,一般情况下是目标函数,适应度值要是越高,那就意味着个体解越优等形式存在。 , 。

3. 选择算子

选择个体去进行交叉以及变异时会用到选择算子,常用的选择算子包含轮盘赌选择,还有锦标赛选择。

4. 交叉算子

用来生成新个体的是交叉算子,包含单点交叉、多点交叉以及均匀交叉的是常用的交叉算子。

5. 变异算子

将变异算子运用至于种群多样性增强的作用之中,平常所运用的变异算子种类涵盖均匀变异以及高斯变异这两种情况。

应用实例

以下是一个使用MATLAB实现实数编码遗传算法的示例:


    % 初始化种群
对人口的数量进行设定,使用初始人口数据设定的方法,该方法以边界条件和种群大小为参数共同来完成,此人口数量设置为通过该方法所获得的结果 。
    
    % 迭代过程
    for gen = 1:maxGen
        % 计算适应度
fitness等于,通过运用作用于目标函数的数组函数,对种群中第一列的数据进行某种操作后得到的结果。
        
        % 选择
经过挑选选出的个体,是通过在种群、适应度以及种群规模这些因素的基础上,运用选择个体的操作而得到的,那些个体被选中了。
        
        % 交叉
offspring 等于,通过交叉操作所选部分,以及种群大小得出,。
        
        % 变异
新的后代对象,通过变异操作,将界限应用于它,从而得到新的结果 。
        
        % 更新种群
变量population被赋值为,包含population以及offspring的列表 。
将 population 赋值为 population 中从第 1 行到 popSize 行的所有行,列不变,。
        
        % 获取当前最优解
这句MATLAB代码的意思应该是在求出适应度值数组`fitness`中的最大值及其对应的索引,以便找到最优适应度值及其对应的染色体。 改写句子:将适应度数组`fitness`中的最大值以及那个最大值所对应的。
    end
end
% 初始化种群
人口数量函数等于被初始化的人口数量,其依据边界条件以及人口规模大小来确定,其中边界条件为特定界限范围,人口规模大小为指定的规模数值,该函数以此来完成初始化操作 。
    % ...
end
% 选择个体
将其改写为:函数名为选中 , 它作为这样一种操作 , 即使用群体 , 结合适应度值 , 以及群体规模大小 , 来进行个体的挑选操作 。
    % ...
end
% 交叉操作
使后代等于交叉操作,该交叉操作以双亲群体以及种群规模为参数,其中双亲群体为parents,种群规模为popSize 。
    % ...
end
% 变异操作
使得后代等于变异(后代,边界),这里的变异函数名为变异,参数有后代以及边界,返回值为后代 。
    % ...
end

在此示例里头,objectiveFunc属于目标函数,bounds为变量边界,popSize是种群大小,maxGen乃最大迭代次数。

总结

一种适用于连续优化问题的遗传算法是实数编码遗传算法,借助MATLAB去实现实数编码遗传算法,能够便利地解决各类优化问题 ,本文讲述了实数编码遗传算法的原理,阐述了其实现方法,并且列举了一个应用实例,期望对读者有所助益 。

网友留言(0)

评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。