我需要实现为我的问题(大学项目)定制的遗传算法,第一个版本将其编码为短矩阵(每条染色体的位数 x 人口大小)。
那是一个糟糕的设计,因为我声明了一个简短但只使用“0”和“1”值......但它只是一个原型,它按预期工作,现在是我开发一个新的时候了, 改良版。性能在这里很重要,但也很简单。
我四处研究并提出:
对于染色体: - 字符串类(如“0100100010”) - 布尔数组 - 向量(向量似乎针对布尔进行了优化) - 位集(听起来最自然)
对于人口: - C Array[] - Vector - Queue
我倾向于为染色体选择向量,为流行选择数组,但我想听听任何对此主题有经验的人的意见。
提前致谢!