在细胞遗传算法中:
for each cell in the grid do in parallel
generate a random individual
end parallel for
while not termination condition do
for each cell in the grid do in parallel
Evaluate individual
Select individual(s) in the neighbourhood ( )
Produce offspring
Evaluate offspring
Assign one of the offspring to cell according to some criterion
end parallel for
end while
为什么在选择父母之前必须对个人进行评估?(第6行)。据我所知,在应用操作符后,必须对产生的个体(即后代)进行评估。
在遗传算法中,好的解决方案应该获得更高的交配机会(将其dna传递给下一代)。例如,快速和强壮(高健康值)的动物有更多的交配机会。大自然对健康的动物给予优待。所以,在你的算法中,在决定选择哪对父母进行交配之前必须进行适应度评估。一般来说,适合度值与被选为亲本的可能性成正比。要了解如何进行选择:"有偏见的轮盘赌"父母选择技术。