使用遗传算法填充具有不等大小圆的矩形

时间:2013-06-01 06:05:32

标签: optimization artificial-intelligence genetic-algorithm packing

昨天我想出了一个我无法解答的问题。

我们有一个随机大小的矩形,我们也有一些半径不同的圆圈,我们得到的圆圈数量有限。每个圆圈都有指定的费用。我们希望用这些圆圈完全填充矩形,接近最小的成本。

现在我想用遗传算法来解决这个问题,但我不会在网上找到任何文章,这与我的问题在某种程度上相同。

有没有人有任何想法?

1 个答案:

答案 0 :(得分:2)

您的问题与Knapsack问题有关:在一组具有权重W和值V的N项中,您希望选择具有最大值的项目组,但其权重总和仍然较低比某些约束。

然而,你的问题更复杂,因为权重约束的评估不是一个简单的补充,而是取决于圆的排列。我认为这构成了另一个需要解决的NP难题。你必须在这个约束上找到一些快速的近似值,告诉你它是否可能(有时可能会告诉你它是不可能的,即使它是可能的)。

容器内物体的排列可以描述为包装问题。您可能需要查看circle packing及相关文献。简单的放松也可以基于矩形。如果您将圆圈视为矩形,则可以使用矩形包装的快速方法。如果你的圈子大小差异很大,那么这可能是一个不好的放松。