作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在优化问题的差分进化算法中。
涉及三个进化过程,即突变交叉和选择
我只是一个初学者,但我尝试删除交叉过程,结果与原始算法没有显着差异。
那么在差分进化算法中,交叉的重要性是什么?
最佳答案
如果您不使用交叉,则您的算法可能只是探索问题搜索空间而不会利用它。一般来说,如果进化算法在探索率和开发率之间取得良好的平衡,它就会成功。
例如 DE/rand/1/Either-Or
是 DE 的一个变体,它消除了 交叉算子但使用 有效变异算子 .根据 Differential Evolution: A Survey of the State-of-the-Art ,在这个算法中,纯突变体的试验向量出现的概率是pF
而那些纯重组体的出现概率是1 − pF
.与经典的 DE 变体 rand/1/bin 和 target-to-best/1/bin ( Main Reference ) 相比,该变体显示出具有竞争力的结果。
X(i,G)
是 G 代的第 i 个目标(父)向量,U(i,G)
是不是对应的试验向量,F
是差分向量比例因子和 k = 0.5*(F + 1)[in the original paper]
.
在这个方案中,没有使用交叉,但变异足够有效,可以与原始 DE 算法进行比较。
关于optimization - 差分进化算法中交叉的重要性是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12464245/
我喜欢基于图像的语言的想法,最近我一直在通过 sbcl 使用 Common Lisp。我在一些地方读到了关于如何通过能够保存和加载虚拟机的镜像,您可以改进在该镜像上运行的应用程序或应用程序集。 我知道
我是一名优秀的程序员,十分优秀!