假设我有 100 个 popsize,我应该生 10 个后代吗?我想要 popsize 和 offspring 之间的最佳组合,以快速实现收敛,还请附上论文。
问问题
825 次
2 回答
2
您可以使用遗传算法解决的每个问题都没有最好的后代/种群。每个问题都有一个最佳配置,这是未知的,不仅是后代/种群,还有突变机会、染色体设计等......
话虽如此,有多种解决方案,例如完全替代,部分替代等。各有优缺点。您应该探索它们并决定哪一个最适合您的问题。
于 2017-03-24T08:02:21.190 回答
2
-假设您的 GA 的人口规模为N。
chrom # 0 = "01010110101" | Fitness = f0
chrom # 1 = "11010010111" | Fitness = f1
chrom # 2 = "01010111011" | Fitness = f2
chrom # 3 = "01111010100" | Fitness = f3
.
.
.
chrom # N = "01011010110" | Fitness = fN
-您从大小为T的主要群体中随机应用染色体比赛:(T < N)
Tournament chrom # 0 = "01010110101" | Fitness = f0
Tournament chrom # 1 = "11010010111" | Fitness = f1
Tournament chrom # 2 = "01010111011" | Fitness = f2
Tournament chrom # 3 = "01111010100" | Fitness = f3
.
.
.
Tournament chrom # T = "01011010110" | Fitness = fT
简单地获得配偶染色体:
Mate Chromosome # 1
另一场比赛:
Mate Chromosome # 2
你应用交叉返回后代:
Crossover(Mate Chromosome # 1, Mate Chromosome # 2) => offspring
从技术上讲,这意味着您将为新种群获得N个后代。
Mutation(offspring) => new chromosome for new population
继续迭代,直到收敛到目标染色体的最大大小。
于 2017-04-14T21:57:50.530 回答