我刚开始对遗传算法有所了解,我正在用它来解决旅行商问题。但是,我对应该使用哪些参数感到困惑。让我解释一下参数的含义。
参数:
人口规模
生产的儿童数量
突变数
我确信上述参数取决于我的问题中的城市数量,以及我的交叉和突变规范的确切形式。但到底是什么关系?
关于应该使用哪些参数,是否有任何种类或经验法则?任何类型的提示或建议都会很棒。
以下是我为 5 个城市问题所做的详细说明:
1) 我生成了 20 条随机路径,人口 = 20
2) 选出 14 条最佳路径(扔掉 6 条最差路径)
3) 从 14 条最佳路径中随机选择的两条路径创建 2 个突变体
突变数 = 2
(对于突变,我只是随机交换了两个城市的顺序 Ex: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个城市?
先感谢您。