在研究遗传算法时,似乎有各种选择方法和其他算子方法可以显着改变性能。例如,这张图片包含一些可以使用的方法:
据推测,您可以混合和匹配这些运算符来优化您要解决的任何问题。
大多数人关心的是达到目标需要多少次迭代。这是可以理解的,但我见过在实际系统中效率低下的事情,例如:
对当前人口使用排序并为交配池挑选前 n 个成员
附加到不断调整大小的切片以创建匹配池,而不是在当前数组上重写
我正在寻找的是,如何使用尽可能少的计算和内存达到目标。迭代次数和到达那里所需的时间仍然是次要的。
这可能是选择正确运算符的过程,但我也在考虑的是实现的并行化程度。