首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在我的遗传算法中实现高斯变异方法?

如何在我的遗传算法中实现高斯变异方法?
EN

Stack Overflow用户
提问于 2016-10-24 00:12:04
回答 1查看 476关注 0票数 0

我正在做一篇关于特定遗传算法的研究论文,我想分析使用高斯变异方法的影响。然而,我唯一理解的是,我必须采样一个随机的高斯值,并将其添加到我在互联网上某个地方读到的基因中,平均值应该是0,这是我理解的;这给了我们正负两种值。然而,我还没有找到一个单一的来源,给出了std的例子。dev应该是或者应该如何计算它。

谁知道标准差是如何用高斯变异方法来确定的,这样我就可以从中得到一个值?

我已经在StackOverflow上阅读了this问题的问答,但它没有为我提供关于我的问题的任何细节。

EN

回答 1

Stack Overflow用户

发布于 2016-10-24 03:37:55

什么是合理的(甚至是最优的)突变强度,取决于要解决的问题。

通常你会将遗传算法应用于非常困难的优化问题,因为通常的优化算法会失败。你可以想象这样一个优化问题的可能的“解决方案”,比如一个适应度景观,好的解决方案有高峰期,坏的解决方案有低谷。

因此,如果你的问题对应于一个有许多相似高度的山峰分布很广的景观(你怎么知道?),你应该使用广泛的高斯分布,这样你找到最大山峰的机会就会更高。但是,如果您认为您已经有了一个相当好的解决方案(无论这是什么),那么您可以使用较小的发行版来更快地找到最大值。

因此,一个合理的方法是从一个广泛的分布开始,并通过减小分布宽度让种群朝着(局部)最大值发展。

同样,具体的数值必须从问题中推导出来。

编辑:

如果你想尝试一下效果,你可以下载我的免费iPhone/iPad应用程序"Steinertree“,它展示了不同突变强度和种群大小的影响。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40204972

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档