我刚开始接触遗传算法,并使用它来解决旅行商问题。然而,我不清楚应该使用哪些参数。让我解释一下我所说的参数。
参数:
种群大小
产生的子代数目
突变数目
我确定上述参数取决于我的问题中有多少个城市,以及我的交叉和突变规范的确切形式。但是它们之间有什么关系呢?
有没有什么经验法则可以确定这些参数?任何提示或建议都将非常棒。
以下是我在5个城市问题上详细做的事情:
1) 我生成了20个随机路径,种群大小=20
2) 选择了14个最佳路径(抛弃了6个最差的路径)
3) 随机从14条最佳路径中选择两条路径创建2个变异体
突变次数=2
(对于突变,我只是随机交换两个城市的顺序 例如:
4) 我从8条最佳路径中创建了4个孩子。
子代数=4
(对于交叉,我保留了公共的子路径,其余部分是随机生成的) 例如:父亲1:
6) 重复步骤2),3),4),5)等等。
我纯粹任意设置了我的参数吗?它们可以吗?对于含有15个城市、48个城市或500个城市的问题应该使用哪些参数?谢谢您提前的帮助。
参数:
种群大小
产生的子代数目
突变数目
我确定上述参数取决于我的问题中有多少个城市,以及我的交叉和突变规范的确切形式。但是它们之间有什么关系呢?
有没有什么经验法则可以确定这些参数?任何提示或建议都将非常棒。
以下是我在5个城市问题上详细做的事情:
1) 我生成了20个随机路径,种群大小=20
2) 选择了14个最佳路径(抛弃了6个最差的路径)
3) 随机从14条最佳路径中选择两条路径创建2个变异体
突变次数=2
(对于突变,我只是随机交换两个城市的顺序 例如:
0,1,2,3,4,0
可以变为 0,1,3,2,4,0
)4) 我从8条最佳路径中创建了4个孩子。
子代数=4
(对于交叉,我保留了公共的子路径,其余部分是随机生成的) 例如:父亲1:
0,1,2,3,4,0
,父亲2:0,2,1,3,4,0
3,4
是共同的,所以孩子路径会从3,4
开始,其余部分是随机的。孩子路径可能是:0,3,4,1,2,0
或0,2,3,4,1,0
5) 现在我有了2个变异体和4个孩子,我将它们添加到我的14个最佳路径中,现在我有一个由20条路径组成的种群。6) 重复步骤2),3),4),5)等等。
我纯粹任意设置了我的参数吗?它们可以吗?对于含有15个城市、48个城市或500个城市的问题应该使用哪些参数?谢谢您提前的帮助。