我正试图开始将Jenetics JAVA库用于遗传算法,但从我的GA受限背景来看,我有些不了解;
据我了解,遗传算法会生成m
元素数组,其中每个数组都是要评估的潜在解决方案,一旦评估,就对潜在解决方案进行排序,并选择最佳解决方案以创建新的总体,等等。但是我发现Jenetics中的一个解决方案(基因型)是一个数组列表,其中每个数组都是我理解的潜在解决方案,每个数组也可以具有不同的长度,而且我不明白为什么要使用这种结构而不是基因载体。
参见the manual的第六页,第3.1.3节。
如果可能的话,我想知道为什么。我希望这个问题已经足够清楚了。
最佳答案
潜在解决方案(苯丙氨酸/基因型)的“阵列”被收集在种群中。基因型代表了一种可能的解决方案。不要被基因型的二维结构所迷惑,它应该给您更多的灵活性来建模更复杂的问题。基因型仍然代表一种可能的解决方案,也是种群的一个个体。
可以轻松创建经典二进制GA的基因型:
Genotype<BitGene> gt = Genotpe.of(BitChromosome.of(15));
还可以查看域模型,即manual中的图3.1。第6.1节试图为您提供其他编码示例。
jenetics,genetic-algorithm