Tag: 遗传算法

为遗传算法表示二进制基因组的合理方法是什么?

我之前的问题是缺乏经验而且基于一个假设。 现在我更聪明了。 (把1和0放在一个字符串里?Pah!我嘲笑这个建议!) 我的问题是, 我应该如何编码我的基因组 ? 在纸面上,它们看起来像这样: 01010011010110010 17位,用于编码(在某些情况下单独地,在某些情况下作为组)要测试的参数。 要求是: 需要可扩展。 目前可能有17个,但随着选项的添加,删除或修改范围,这可能会增长/缩小。 每个位都需要单独翻转,以表示点突变。 理想情况下,应该很容易取两个基因组的最后X%并将它们切换(代表交叉)。 必须有一种直接用明文表示基因组的方法。 这里强调的是方便而不是人类的可译性。 (想想URL缩短器。) 有人有什么好主意吗? (如果它有用,我正在使用C#。)

TSP遗传算法中的交叉操作

我正试图用遗传算法解决旅行商问题(TSP) 我的基因组是图中顶点的排列(推销员的路径)。 我该怎样对基因组进行交叉操作? 我在哪里可以找到C#中我的问题的实现?