差分进化算法

✍ dations ◷ 2025-02-24 00:14:12 #数学最佳化,进化算法

差分进化算法(英语:Differential Evolution)又称微分进化算法,是一种求解最优化问题的进化算法。因为进化算法对于最优化问题的要求极少,所以被视为一种后设启发式算法(英语:metaheuristic)。虽然后设启发式算法适用于多种最优化问题,但是并不保证可以找到全局最优解。

差分进化算法被使用在多维度实数编码的最优化问题。因为此算法不使用问题的梯度信息,故可解不可微分的最优化问题。也因此,差分进化算法可用于不连续的,噪声的,随着时间改变的最优化问题。

差分进化算法类似遗传算法,包含变异,交叉操作,淘汰机制。本质上说,它是一种基于实数编码的具有保优思想的贪婪遗传算法。而差分进化算法与遗传算法不同之处,在于变异的部分是随选两个解成员变量的差异,经过伸缩后加入当前解成员的变量上,因此差分进化算法无须使用几率分布产生下一代解成员。

算法的原理采用对个体进行方向扰动,以达到对个体的函数值进行下降的目的,同其他进化算法一样,差分进化算法不利用函数的梯度信息,因此对函数的可导性甚至连续性没有要求,适用性很强。同时,算法与粒子群优化有相通之处,但因为差分进化算法在一定程度上考虑了多变量间的相关性,因此相较于粒子群优化在变量耦合问题上有很大的优势。由于差分进化算法在连续域优化问题的优势已获得广泛应用,并引发进化算法研究领域的热潮。算法的实现参考实现代码部分

差分进化算法之目的为求解最优化问题,使用突变、交叉、选择计算以演化多个可能的解。首先,产生足量的随机变量,做为初始的可能解。接着,依序进行突变、交叉、选择计算,做完一轮后,检查某个终止条件。若终止条件尚未满足,则回到突变、交叉、选择计算,否则终止差分进化算法,输出最后一轮的最佳解。

在进化计算中,突变是用于产生随机解的计算方法。

在突变之后,差分进化算法使用交叉计算以增强随机解的多样性。

在交叉之后,差分进化算法对随机解做选择,移除演化失败的解,留下演化成功的解。选择之后,进行突变计算,直到满足某个终止条件。

相关

  • 携带者带原者指受到传染病的感染或带有隐性(recessive)遗传疾病的不正常基因,却不表现症状的人。即使不受到疾病或基因可感染到的影响,他们仍能够将传染性疾病的病原体散播给其他个体
  • 边缘科学边缘科学(英语:fringe science),是指在某个已经成熟的科学领域中,研究方法、理论等与该领域的主流理论均不相同,被主流认定为“存疑”的科学行为,既可以是对该领域的一项研究方法的
  • 桑托斯桑托斯(Santos、Santosse)可以指:
  • 工人国际委员会工人国际委员会(英语:Committee for a Workers' International),简称工国委(CWI),是一个已不存在的托洛茨基主义政党和组织的国际联盟。它成立于1974年4月21日。总部位于英国伦敦。
  • 兰塞奥兹牧草地兰塞奥兹牧草地(英语:L'Anse aux Meadows,源自法文L'Anse-aux-Méduses,即“水母湾”)是处于加拿大纽芬兰与拉布拉多省纽芬兰岛最北端,于1960年由挪威探险家海尔格·英斯塔(Helge I
  • 卡片分类法卡片分类法(Card sorting)是一种在网站或其他规划初期常用的测试方法,透过卡片分类法可以让我们了解一些在设计网站架构时十分有用的使用者资讯:卡片分类法的进行方式很简单,首先
  • AN-M8烟雾弹AN-M8 HC 烟雾弹(英语: Army/Navy Model 8 HC Smoke Grenade,陆军/海军8型烟雾弹),是一款美国军队使用的烟雾弹。它被用作地对地的掩护用途,设置烟幕或为空对地攻击、炮兵标示
  • 永元 (东汉)永元(元年:89年 - 末年:105年四月)是东汉和帝刘肇的第一个年号。汉朝使用这个年号时间共计17年。章和二年二月汉和帝即位沿用章和年号,次年正月初一(89年1月30日)改元永元。永元十
  • 李洛克的青春全力忍传《李洛克的青春全力忍传》(日语:ロック・リーの青春フルパワー忍伝)是日本漫画家岸本齐史的少年漫画作品《火影忍者》的外传漫画,由平健史作画。主要主角为李洛克,其他第三班成员
  • 西莫尼峰坐标:47°04′21″N 12°15′36″E / 47.0725°N 12.26°E / 47.0725; 12.26西莫尼峰(德语:Simonyspitzen),是奥地利的山峰,属于维内迪杰山脉的一部分,海拔高度3,473米,该山峰每年平