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



昨天我遇到了一个我没有答案的问题。

我们有一个随机大小的矩形,我们还有一些半径不同的圆,每个圆的数量是有限的。每个循环都有一个特定的代价。我们想要用这些圆完全填满我们的矩形,接近最小的成本。

现在我想用遗传算法来解决这个问题,但是我在网上找不到任何文章,这和我的问题是一样的。

有人知道吗?

你的问题与背包问题有关:在一组N个权重为W值为V的项目中,你想选择具有最大值的那一组项目,但它们的权重总和仍然低于某个界限。

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

容器内物体的排列可以被描述为包装问题。您可能需要查看圆形包装和相关文献。一个简单的松弛也可以基于矩形。如果你把你的圆当作矩形来处理,你可以使用一些快速的矩形填充方法。如果你的圆的大小相差很大,这可能是一个不好的放松。

最新更新