将许多小长方体包装成给定的大长方体

时间:2016-05-25 10:20:30

标签: 3d knapsack-problem packing

我需要将不同尺寸(长度,宽度和高度)的小立方体纸箱装入8个给定的大型长方体容器(长度,宽度和高度)。 然后,我需要为每个容器准备包装纸,在该容器中写入要存储在该容器中的纸箱。 给出了纸盒在其上方可容纳的每个重量和重量。 有一个限制,纸箱不应该因为它上面的重量过重而损坏(例如,你不能把3个装有沙子的纸箱放在装有棉花的纸箱上面)。 如何以最佳方式包装物品,以及如何确保最大限度地减少使用损失。

1 个答案:

答案 0 :(得分:0)

假设长度大于两个矩形(较小和较大的矩形)的宽度,当您尝试在较大的矩形上包装较小的矩形时,可能会出现以下情况。设较大矩形的长度为L,其宽度为B,长度和宽度较小的矩形分别为l和b。

案例1:打包较小的矩形,使其长度与较大矩形的宽度平行,直到您没有空间。然后在可用空间上尝试相反的方向(较大的矩形的长度平行于较小的长度)。

案例2:包装较小的矩形,使其长度与较大矩形的长度平行,直到您没有空间。然后在可用空间上尝试相反的方向(较大的矩形的长度平行于较小的宽度)。

取最大的情况1和情况2来获得最大的no较小的矩形,可以打包在较大的矩形上。在这里找到实现的python 3代码:http://geekzonelive.blogspot.in/2016/06/packing-similar-small-rectangles-into.html