化进化退表 机器学习中四类进化算法的详细讲解!

进化退表 机器学习中四类进化算法的详细讲解!

什么是进化算法?

进化算法的核心概念:四个字总结就是“优胜劣汰”。

进化算法是模拟自然界中生物的进化过程。大自然有一种神奇的力量。它可以保留好的基因,进化出更强大、更适合生存的基因。进化算法基于达尔文的进化论,模拟自然选择、自然选择、适者生存,通过N代的继承、变异、交叉、复制,演化出问题的最优解。

进化算法,也称为进化算法( ,简称 EA),不是一个特定的算法,而是一个“算法簇”。进化算法的产生灵感来源于自然界生物体的进化操作,一般包括基因编码、种群初始化、交叉变异算子、管理保留机制等基本操作。与传统的基于微积分的方法和穷举法等优化算法相比,进化计算是一种成熟的全局优化方法化进化退表,具有高鲁棒性和广泛的适用性,具有自组织、自适应和自学习的特点。 ,不受问题性质限制,能有效处理传统优化算法难以解决的复杂问题。接下来,我们将介绍进化算法中常用的四种算法。

进化2闪退_化进化退表_方舟生存进化报错闪退

遗传算法原理( , GA) GA算法

首先我们来介绍一下遗传算法,进化算法的先驱。遗传算法(GA)是最基本的进化算法。它是一个模拟达尔文的生物进化论的优化模型。它于 1975 年由 J. 教授首次介绍。在遗传算法中,种群中的每个个体都是解空间中的可行解。通过模拟生物进化过程,通过继承、变异、交叉、复制在解空间中寻找最优解。

GA算法步骤

Step 1 种群初始化:根据问题的特点设计合适的初始化操作(初始化操作要尽量简单,时间复杂度不要太高)对种群中的N个个体进行初始化;

Step 2 个体评价:根据优化后的目标函数计算种群中个体的适应度值(值);

Step 3 迭代设置:设置种群的最大迭代次数g_{max},设置当前迭代次数g=1;

Step 4 个体选择:设计合适的选择算子选择种群P(g)中的个体,选择的个体进入交配池形成亲代种群FP(g),用于交叉转化为产生新的个体。选择策略应基于个体适应度值。如果要优化的问题是最小化问题,则适应度值较小的个体被选中的概率应该相应较大。常用的选择策略有轮盘选择、锦标赛选择等。

Step 5 交叉算子:根据交叉概率pm(预先指定,一般0.9)判断父个体是否需要交叉。交叉算子要根据特征优化问题的核心是整个遗传算法的核心,其设计将直接决定整个算法的性能。

Step 6 变异算子:根据变异概率pc(预先指定,一般0.1)来判断亲本个体是否需要变异。变异算子的主要作用是保持种群多样性可以防止种群陷入局部最优,所以一般设计为随机变换。

交叉变异操作后,父种群FP(g)生成新的后代种群P(g+1),令种群迭代次数g=g+1,进行下一轮迭代操作(跳转到步骤4)直到达到最大迭代次数。

通过交叉操作,原来的两个个体组合生成两个新的个体组合,相当于在解空间中搜索,每个个体都是解空间中的可行解。

方舟生存进化报错闪退_化进化退表_进化2闪退

经过一轮“遗传变异”,我们使用适应度函数来验证这些新的后代。如果该函数确定它们具有足够的适应度化进化退表 机器学习中四类进化算法的详细讲解!,那么它们将用于替换种群中适应度不足的那些。染色体。

当满足以下条件时循环终止1. X 次迭代后,总体上没有发生太大变化。 2. 我们提前定义了算法的进化次数。 3. 当我们的适应度函数达到预定义值时。

因为函数比较简单,可以看出算法收敛的很快。

进化2闪退_方舟生存进化报错闪退_化进化退表

差分进化算法原理(,DE)DE算法

差分进化算法 ( , DE) 是 Storn 和 Price 在遗传算法等进化思想的基础上于 1997 年提出的。它本质上是一种用于求解多维空间的多目标(连续变量)优化算法(MOEA)。整体最优解。 DE算法也是一种智能优化算法,类似于启发式算法,如ABC、PSO等,都属于启发式优化算法。差分进化思想的来源是早期提出的遗传算法(GA),它模拟遗传学中的杂交()、变异()、复制()来设计遗传算子。

与遗传算法相比,差分进化算法的相似之处在于初始种群是随机生成的,以种群中每个个体的适应度作为选择标准。主要过程还包括变异、交叉和选择三个步骤。 不同的是遗传算法根据适应度值控制亲本杂交。变异后产生的后代的概率值被选中,适应度值大的个体在最大化问题中被选中的概率也会相应变大。在差分进化算法中,变异向量由亲本差异向量生成,与亲本个体向量交叉生成新的个体向量,直接与亲本个体选择。显然,差分进化算法的逼近效果比遗传算法更显着。

初始化种群的DE算法步骤

和之前的群体智能优化算法一样化进化退表,差分进化也需要初始化种群:

其中,X{i}(0)是第i个个体,j代表第j个维度。

其中化进化退表,x_{i, j}^{L} 和 x_{i, j}^{U} 分别是第 j 维的下界和上界,rand(0, 1) 表示在区间[0,1]的随机数中。

2.变化

DE算法通过差分策略实现个体变异。一种常见的差异化策略是在种群中随机选择两个不同的个体,然后缩放它们的向量差异,与待突变的个体进行向量合成。

其中 r1 、 r2 和 r3 是三个随机数,间隔为 [1,NP] ,F称为比例因子,是一个确定的常数。 g代表g代。

3.交叉

交叉操作的目的是随机选择个体,因为差分进化也是一种随机算法。交叉操作的方法是:

其中,CR 称为交叉概率。新个体以概率方式随机生成。

4.选择

DE采用贪婪选择策略,即选择更好的个体作为新个体。

化进化退表_进化2闪退_方舟生存进化报错闪退

DE 的群体是由突变和选择过程驱动的。包括变异和交叉操作在内的变异过程旨在利用或探索搜索空间,而选择过程用于确保可以进一步利用有关有前途的个体的信息。

Co- (Co-, CCEAs) CCEAs算法原理

CCEA(合作协同进化算法)是使用“分而治之”策略解决大规模优化问题的算法。对于一个优化问题,根据变量分解为若干组问题,分组进行优化,各组相互配合,共同完成整个问题的优化。该算法是一种协同进化遗传算法,在传统遗传算法的基础上,通过改进和优化来保留优秀种群。

复杂的问题被分解成子问题,子问题在进化的子群体中得到解决。个体的评价依赖于子种群之间的合作,通过组合每个子种群的代表个体得到一个完整的解。亚群中个体的适应度是通过他们参与完整解决方案来评估的。

CCEA的优点是问题分解后可以通过并行计算加速,提高优化效率;子问题在子种群中独立求解,方法​​多样;

分解成子模块增加了对模块错误的鲁棒性;适当的分解可以减缓决策变量的快速增长。

CCEAs算法步骤: 初始化:随机生成n个初始父子群,并创建一个空的外部集A = \phi ,将每个子群随机组合生成的解中的非支配解添加到A中;设置A的最大容量=M,子种群大小=N,交叉概率=Pc,变异概率=Pm;

2.育种操作:对每个父子群依次进行交叉和变异操作,生成n个子群;

3. 子群之间的合作:让子群的子群中的每个个体与父群的子群合作,生成一个完整的解,计算目标向量,判断是否应该在子群上进行解外部集 A. 更新或丢弃,直到处理完所有后代子组中的所有个体;

4. 外集归约:若|A|>M(|·| 表示集合中元素的个数),则对A进行归约操作化进化退表 机器学习中四类进化算法的详细讲解!,并去除那些最近邻的解,所以则 A 变为 M,否则,如果 |A| ≤M,进行第5步;

5. 新一代父子组的生成:if |A| ≤ N,随机选择 N -|A|每个子子组中的个体,并与 A 中的所有解进行比较,将 A 的对应分量合并,形成下一代的父子组,否则,如果 |A |>N,则从 A 中随机选择 N 个解, 并将它们的组件组合为下一代的父子组;

6. 终止判断:若满足终止条件,则输出外部集A作为最终得到的非支配解集(近似最优解集),算法终止,否则转步骤2 进入新一代进化。

方舟生存进化报错闪退_化进化退表_进化2闪退

(of, EDA) EDA算法原理

分布估计算法的概念最早由H.于1996年提出,主要思想是结合自然进化算法和建设性数学分析方法来指导问题空间的高效搜索。

分布估计算法本质上是一种基于概率模型的新进化算法。遗传算法与统计学习相结合是自然计算的另一种典型实现方式。它通过对当前找到的一组较好个体建立概率模型来指导算法的下一次搜索范围,并通过对得到的较好解的概率分布函数进行抽样来生成新的个体。

通过概率模型描述候选解在空间中的分布,利用统计学习的方法从总体的宏观角度建立描述解分布的概率模型,然后随机抽取概率模型生成新的总体,并重复此过程以实现种群必须进化直到终止条件。 (建模-采用-建模-采样-循环)

EDA算法流程

Step1 随机生成M个个体作为初始种群;

Step2 计算第L代种群的个体适应度,判断是否满足终止条件。如果是,则终止循环;如果没有,请继续。

Step3 根据适应度值,从种群中选出前N(N≤M)个优势个体,形成L+1代优势子种群;

Step4根据优势亚群更新概率模型(引入变体UMDA,即更新概率模型的公式);

更新过程:

进化2闪退_方舟生存进化报错闪退_化进化退表

Step5随机抽样概率模型生成新总体(尺度M),

此时若达到算法终止条件则结束,否则返回Step2.

方舟生存进化报错闪退_进化2闪退_化进化退表

以上四种算法都是进化优化算法。基本原理和思想是基于遗传算法引入不同的机制(多种群、概率分布等)。以上就是今天给大家分享的内容。有不明白的朋友可以随时私信交流讨论。作者会不断更新科学研究、算法等相关知识。更新整理不易,请朋友们关注和支持。

标签: 算法 个体 进化

六爻专家网


相关文章

推荐文章

热门文章