解释差分进化方法

2024-01-02

有人可以解释一下差分进化方法吗?维基百科定义 http://en.wikipedia.org/wiki/Differential_evolution#Algorithm非常具有技术性。

一个简单的解释和一个简单的例子将不胜感激:)


这是一个简化的描述。 DE 是一种优化技术,它迭代地修改候选解的群体,使其收敛到函数的最优值。

您首先随机初始化候选解决方案。然后,在每次迭代中,对于每个候选解决方案 x,您执行以下操作:

  1. 您生成一个试验向量:v = a + ( b - c ) / 2,其中 a、b、c 是从总体中随机挑选的三个不同的候选解决方案。
  2. 您在 x 和 v 之间随机交换向量分量以生成 v'。必须交换 v 中的至少一个组件。
  3. 仅当它是更好的候选者时(即它可以更好地优化您的函数),您才用 v' 替换总体中的 x。

(请注意,上述算法非常简化;不要从中编码,而是在其他地方找到合适的规范)

不幸的是,维基百科文章缺乏插图。通过图形表示更容易理解,您会在这些幻灯片中找到一些内容:http://www-personal.une.edu.au/~jvanderw/DE_1.pdf http://www-personal.une.edu.au/~jvanderw/DE_1.pdf .

它与遗传算法 (GA) 类似,只是候选解不被视为二进制字符串(染色体),而是(通常)被视为实数向量。 DE 的一个关键方面是突变步长(参见突变的步骤 1)是动态的,也就是说,它会适应群体的配置,并且在收敛时趋于零。这使得 DE 比 GA 更不容易受到遗传漂变的影响。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

解释差分进化方法 的相关文章

  • spring-boot 如何提供特定的 url?

    以我之前的经验来看 当使用纯servlet 我们定义 servlet 以便它可以处理与特定 url 匹配的请求 使用时struts2 我们定义一个过滤器 以便它为匹配特定 url 的请求提供服务 使用时springMVC在传统的 xml 配
  • 简约 Qt 构建的推荐标志

    我正在尝试构建 Qt 因为 Visual Studio 2010 需要它 构建脚本 configure exe 非常简单 但默认情况下需要很长时间才能编译 在配备 SSD 的快速笔记本电脑上等待了一个小时后 我放弃了 不使用任何标志 仅使用
  • Visual Studio 2019 无法识别 tsconfig.json

    我刚刚安装了 Visual Studio 2019 并尝试了我当前的解决方案 似乎它忽略了tsconfig json文件 而它在 VS 2017 中工作 在 Visual Studio 2017 中的项目属性 TypeScript Buil
  • 如何使用PHP调用python脚本实时返回结果?

    我使用PHP调用python脚本成功并得到了结果 但我必须等待脚本运行结束而没有任何输出 它看起来对我的客户不友好 如何将脚本结果实时返回到PHP Web 例如 对于下面的代码 我希望 PHP Web 将实时显示输出消息 而不是在最后一起显
  • Xamarin Monodroid:WP7 => Android 和自定义控件?

    我正在使用 Xamarin Monodroid 将一些 Windows Phone 应用程序移植到 Android 我对 Xamarin 的东西还很陌生 实际上刚刚购买了许可证 到目前为止 在 AXML 中重新创建 XAML UI 方面效果

随机推荐

  • Heroku 推送问题

    我在将应用程序推送到 Heroku 时遇到问题 以下是我尝试使用 git push heroku master 时的终端输出 Counting objects 22 done Delta compression using up to 8
  • 谷歌在搜索结果中以不同方式显示网站标题

    Google 以与预期不同的方式显示我网站的页面标题 页面标题应该是 布莱顿和刘易斯 平面设计师刘易斯 沃利斯平面设计 它在必应 雅虎和我的实际网站上显示良好 然而 谷歌以不同的方式显示它 刘易斯 沃利斯平面设计 平面设计师布莱顿和刘易斯
  • 如何在 Power BI 中按度量筛选结果

    我需要能够按度量进行筛选 以便在 Power BI 中显示更精细的结果 我希望能够选择百分比在某个范围内的位置 或者 100 我对度量的计算是这样的 每列只能是 1 或 0 errorPercentage CALCULATE SUM mis
  • React/react hooks:状态更改后子组件不重新渲染?

    我正在react react hooks中编写一段代码 尝试执行以下操作 从父组件获取对象数组作为 prop 使用将其设置为状态useState钩 根据预期的过滤器 时间和评级 对状态进行排序 然后重新渲染子组件 我看到的是 下面的代码在排
  • 如何在 Spark 中向 Kryo 注册 InternalRow

    我想使用 Kryo 序列化运行 Spark 因此我设置spark serializer org apache spark serializer KryoSerializer and spark kryo registrationRequir
  • Apache - 本地主机访问文件夹的域 http://folder.local

    我在 Ubuntu 上运行 XAMPP 我想为我的项目创建一个虚拟主机 这样我就可以为我的服务器根目录 例如 local 分配一个 tld 并且可以通过 URL 访问其中的文件夹 如下所示http foldername local 另外 使
  • 使用ExecutorService并行重复执行多个类似的任务

    Java 代码简化后如下所示 while someCondition SomeType a CalcResult param1 SomeType b CalcResult param2 SomeType c CalcResult param
  • 在对揭示模块进行单元测试时如何存根私有函数

    我一直在构建一个节点模块 它包装了对 GitHub API 的许多调用 并以我无限的智慧使用揭示模块模式构建了这个模块 使我的包装函数保持私有 只公开简单的方法 请参阅下面的示例 github shortcuts function var
  • 既然元组是不可变的,为什么对它们进行切片会生成副本而不是视图?

    据我了解 元组和字符串是不可变的 可以进行优化 例如重复使用不会改变的内存 然而 Python 中并未包含一项明显的优化 即使元组切片引用与原始元组相同的内存 我知道不包括此优化 因为当我对以下函数进行计时时 所花费的时间类似于 O n 2
  • Django - 无法加载静态文件?

    对 Django 非常陌生 我正在尝试遵循 youtube 上的 senddex 的教程 Django 版本 1 9 选择本教程中使用的版本 我似乎不知道如何获得css要加载的文件 的位置css file media xxx django
  • 将 Objective-C 块声明为变量的最佳实践

    我对声明的最佳实践有疑问块作为变量 最初我这样写了我的块变量 id actionHandler UIAlertAction action Handling code 稍后像这样使用 UIAlertAction action UIAlertA
  • 使用 protobuf 的 i386 架构的未定义符号

    我正在尝试制作一个使用协议缓冲区的应用程序 我收到此错误 知道为什么吗 Ld Users fmota Library Developer Xcode DerivedData PBTest gvudadeakgzklbekugyiqyfypr
  • 用于视频下载的 YouTube API

    我想创建一个能够从 youtube 下载视频的 PHP Java 应用程序 我认为 google 没有直接的 youtube api 有任何第三方 api 可用吗 请帮我 您可以使用第三方应用程序clive http clive sourc
  • 如何处理 SELECT 语句中的 to_date 异常以忽略这些行?

    我有以下查询 我试图将其用作我正在处理的水晶报告中的命令 SELECT FROM myTable WHERE to date myTable sdate MM dd yyyy lt EndDate 这工作正常 但我唯一担心的是日期可能并不总
  • Rails:从一个查询搜索多个表

    条件语句怎么写find or paginate允许用户搜索的方法Project and Project Category同时命名 现在我的代码看起来像这样 projects Project paginate per page gt 20 p
  • 如何使用rails3创建一个范围来获取最近十笔交易

    尝试向我的交易模型添加一个范围 以返回 create at 的最后 10 个交易 scope most recent order created at desc limit 10
  • 为什么我的 Perl 单行代码不能在 Windows 上运行?

    在 Windows 命令提示符下 我生成一个目录中所有文件的文本文件 dir c logfiles B gt config txt Output 0001 832ec657 log 0002 a7c8eafc log 我需要将 config
  • 使用 Scipy curve_fit 和分段函数

    我收到优化警告 OptimizeWarning Covariance of the parameters could not be estimated category OptimizeWarning 当尝试使用我的分段函数来拟合我的数据时
  • python中一个3D图形中的多个2D轮廓图

    python 中是否有任何方法可以在 python 的一个 3D 图中绘制多个 2D 等高线图 我目前正在使用 matplotlib 进行轮廓绘制 但没有找到我正在搜索的任何选项 我添加的示例图像 但我想在Z轴上做 你可以试试这个 from
  • 解释差分进化方法

    有人可以解释一下差分进化方法吗 维基百科定义 http en wikipedia org wiki Differential evolution Algorithm非常具有技术性 一个简单的解释和一个简单的例子将不胜感激 这是一个简化的描述