首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >遗传算法选择

遗传算法选择
EN

Stack Overflow用户
提问于 2016-03-30 15:37:38
回答 2查看 654关注 0票数 0

如何选择n条最佳染色体并将它们作为数组返回?

代码语言:javascript
复制
Chromosome[] Selection(int n) {}

我知道我需要比较染色体的健康程度。我有方法public double calculateFitness()

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-30 15:46:16

我假设您有一个要比较的Chromosome数组。然后你可以简单地根据他们的身体状况来订购,并选择最好的n。

代码语言:javascript
复制
Chromosome[] sourceArray = ..... // wherever you got them from
Chromosome[] bestN = sourceArray.
    OrderByDescending(chromosome => chromosome.calculateFitness()).
    Take(n).ToArray();
票数 1
EN

Stack Overflow用户

发布于 2016-04-07 09:25:55

我建议你看看其他非精英选择方案,以避免早熟收敛。总之,在解决方案的健身质量方面,陷入局部最优状态,没有任何进展。可选的概率方案,相当容易编码,是轮盘赌轮选择或锦标赛选择。

请查看其他帖子,这些帖子可能会让您了解如何实现这些内容:

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

https://stackoverflow.com/questions/36313542

复制
相关文章

相似问题

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