我正在研究一个关于 时间表问题 的遗传算法,我有一个问题就是决定选择哪种选择方法。
我的问题是:
1)选择方法的选择如何影响遗传算法的性能?
2)最有效的选择方法是什么?
3)如果我尝试使用随机选择来逃避基于健康的选择会发生什么(因为在我的情况下这个任务需要时间)?
提前谢谢..
答案 0 :(得分:1)
1)您的健身功能,突变/交叉操作员和整体搜索空间紧密相连。每个问题/选择方法都有自己的性能特征。所以,你的问题没有确切的答案。这仍然是一个开放的研究问题。
2)因为1)不能说。你必须尝试,衡量,和亲自看看。
3)可能是ziggystar建议的完全随机游走,但这可能没问题。
答案 1 :(得分:1)
在大多数情况下,我使用随机选择或二元锦标赛,但我的人口模型是稳态(后代替换最差,如果比这更好 - 所以我已经在那里进行生存选择)。
随机选择可确保我没有快速收敛。如果我增加选择压力(例如q-tournament,q> 2),我会得到一个非常快速的收敛,这对于困难问题并不好。
Q-tournament也很容易实现:只需随机选择q个人,其中最好的就是选择的结果。如果q == 1,那么你有随机选择。
如果您在实施此问题时遇到问题,可以查看我的实施:http://mepx.org/source_code.html(我是为遗传编程的变体做过的。)