【问题标题】:How to know whether i'm forcing convergence too much, if my GA converges to the RIGHT solution quickly?如果我的 GA 快速收敛到正确的解决方案,如何知道我是否强制收敛太多?
【发布时间】:2019-02-26 18:08:32
【问题描述】:

我正在开发一种遗传算法来解决二维背包问题。目前,我正在测试 50 个物品,每个物品都有重量、体积和价值。 每个周期,10 个(我的 500 人中)最好的个体存活到下一个周期,在我最后的测试中,这 10 个始终是最好的解决方案,而其他 490 个中的一小部分共享该解决方案. 分析适应度图,在我看来,它收敛到最优解的速度太快了。但是,我如何确定我的算法是否良好以及我正在测试的问题是否很容易解决,或者我是否强制收敛太多,这可能导致过早收敛到更复杂的次优解决方案案例? 健身图如下。

【问题讨论】:

  • 如果提高突变率,将迫使算法探索更大的特征空间。

标签: genetic-algorithm fitness


【解决方案1】:

关于这个问题有很多书。您无法判断某些东西是否“过度收敛”。您可以使用注射来确定。这意味着,例如,如果您每 1000 个循环就有 5000 个循环(在理想世界中),那么您将向人口注入一些新材料。这对我有用,而且到处都写着(我猜)

【讨论】:

    猜你喜欢
    • 2015-01-09
    • 2018-02-01
    • 1970-01-01
    • 2015-11-13
    • 2013-06-21
    • 1970-01-01
    • 1970-01-01
    • 2013-07-14
    • 2017-09-06
    相关资源
    最近更新 更多