差分进化算法

✍ dations ◷ 2025-11-27 14:44:04 #数学最佳化,进化算法

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

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

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

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

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

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

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

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

相关

  • 灸术在古代中国,艾草就已是重要的民生植物。通常用于针灸术的“灸”。所谓针灸其实分成两个部分。“针”就是拿针刺穴道,而“灸”就是拿艾草点燃之后去薰、烫穴道,穴道受热固然有刺
  • 噻丁环Trimethylene sulfide噻丁环(Thietane)是一种含硫的四元杂环化合物,化学式C3H6S。噻丁环可由碳酸丙二酯与硫氰化钾反应制得,该法产量不高:一个改进的方法是1,3-二溴丙烷与硫化钠
  • 世界医学协会世界医学协会(The World Medical Association)简称WMA,是国际性独立的医学联合会,由专业的医学组织(英语:medical association)所组成,世界医学协会是在1947年9月18日成立,在2019年时
  • 普什图族普什图人(Pax̌tānə),也译作帕坦人、普赫屯人,是居于南亚的一个民族,西方归入伊朗人(雅利安人)的一个分支。为阿富汗第一大民族和巴基斯坦第二大民族。普什图族部落和氏族的数量
  • 原安平港导流堤南堤原安平港导流堤南堤,原兴建于日昭和13年(公元1938年),为当年为维持运河与外海间船舶进出通行之航道而设筑。原建有南北两座导流堤,长约100米,堤内再筑甲乙水路护岸,但北堤现已不存,
  • 猫与桃花源追光动画(英语:Light Chaser Animation Studios)由土豆网创始人、前CEO王微于2013年3月在北京创立。追光团队当前拥有190人。在2013年3月12日,王微宣布成立一个动画电影制片厂叫
  • 利他主义利他主义(英语:altruism,也可译为利他行为)源自于法文altruisme,字源可溯自意大利文及更早拉丁文alter,即其他、别人的意思。利他主义是一种无私的为他人福利着想的行为,在道德判断
  • 磷酸氢钠铵磷酸氢钠铵是一种无机化合物,化学式为NaNH4HPO4,常以四水合物的形式存在。它在长时间灼烧之后生成偏磷酸钠。磷酸氢钠铵可用于磷酸珠试验检验金属离子。磷酸氢钠铵和过量氢氧
  • 1924年冬季奥林匹克运动会法国代表团1924年冬季奥林匹克运动会法国代表团参加了在该国的霞慕尼举办的1924年冬奥会。奥地利 · 比利时 · 加拿大 · 捷克斯洛伐克 · 芬兰 · 法国 · 英国 · 匈牙利 
  • 苏利文原则苏利文原则(英语:Sullivan Principles)是一个于1977年初步制定的企业行为规范原则,由非裔牧师里昂·苏利文为了促进企业的社会责任所制定,有两个版本:1977年,非裔美国人牧师里昂·