【发布时间】:2012-04-11 20:47:47
【问题描述】:
当我说箱子时,我指的是运输箱。
我有一些随机大小的小物品,我需要将它们装入尽可能少的盒子中。 我需要知道最佳的盒子尺寸。
- 所有项目都是rectangular prisms。
- 对于太大而无法容纳的商品,可以轻松排除盒子尺寸。
- 我知道盒子尺寸(它们是我有库存的可用盒子尺寸)
- 项目可以水平或垂直放置,而不是对角线。
- 可以使用任意数量的盒子。目标是使用尽可能少的盒子。
- 可以使用多种尺寸的盒子来最佳地适应不同尺寸的物品。
有什么算法可以让我计算出我需要用于优化空间使用的盒子大小? 将最多的物品放入尽可能少的盒子中。
可用的盒子尺寸来自我现有的库存。出于示例目的,您可以创建有限数量的组合框尺寸。
【问题讨论】:
-
所以这只涉及2个维度?长度和宽度?
-
这听起来类似于
Knapsack,即NP-Complete。您可以查看近似Knapsack的算法,看看是否可以根据您的需要调整算法。 -
@FrancisP 立方,长度、宽度和高度。我不知道立方矩形形状的技术词。
-
@FrancisP 这个词就是直角棱镜。我编辑了它。
-
那么你是怎么解决这个问题的?他们是否有任何现成的类或 PHP 代码?任何的想法?自己写一个需要好几天!
标签: algorithm optimization shipping calculus