分配到容器中的N个对象的编码

时间:2017-04-21 19:37:04

标签: genetic-algorithm

有没有人知道如何使用二进制enconding将N个对象分发到C容器中?

我有70个对象分配到25个容器中。

所有可以存储最多6个对象,除了一个,最多可以存储14个对象。

我试图像这样解决它:

  • 具有25个基因的染色体组,每个大小为2 ^ 4。
  • 现在给一个人,我将它们的总和除以染色体中的所有数字。
  • 现在我有25个浮点数表示每个容器中对象的比例
  • 当我将这些比例乘以70时,每个容器应该有多少个对象,但我的结果不是整数,所以我将它们向上或向下舍入,这是最接近的。

由于上下舍入的数量不相同,我的最终分布可以在~65-75之间。

我知道我可以创建一个惩罚系统来惩罚分布式对象数量不等于70的解决方案。但我想知道我是否可以使用另一个包含逻辑解决这个问题。

有没有人有更好的主意?

0 个答案:

没有答案