【问题标题】:Does this bin-packing variant have a name?这种装箱变体有名称吗?
【发布时间】:2014-06-12 19:28:17
【问题描述】:

我有一个听起来像是典型的装箱问题:x 个不同尺寸的产品需要装入 y 个不同容量的容器中,从而最大限度地减少容器的数量使用,以及最大限度地减少浪费的空间。

我可以简化问题,因为产品尺寸和容器容量可以减少到标准的一维单位。即这个产品是 1 个单位,而那个是 3 个单位,这个盒子可以装 6 个单位,那个是 12 个单位。想想鸡蛋和纸箱,或者啤酒箱。

但是还有一个额外的限制:每个容器都有一个特定的属性(我们称之为 colour ),每个产品都有一组与之兼容的颜色。颜色和产品/容器尺寸之间没有相关性;一种产品可能与整个调色板颜色兼容,另一种可能仅与 red 容器兼容。

这个问题变体是否已经在文献中描述过?如果有,它叫什么名字?

【问题讨论】:

标签: bin-packing


【解决方案1】:

我认为此变体没有特殊名称。尽管着色约束首先给人的印象是它与图形着色相关,但事实并非如此。这只是对变量值的限制。

在典型的求解器实现中,每个产品(= 项目)都有一个变量,它被分配到哪个容器。颜色约束只是缩小了特定变量的值范围。因此,不要指定所有变量都使用相同的值范围,而是使其特定于变量。 (例如,在 OptaPlanner 中,这是by the solution generally or by the entity specifically 提供的值范围之间的差异。)因此,着色约束甚至不需要是约束:它可以是大多数求解器中模型的一部分。强>

任何可以处理装箱的求解器都应该能够处理这种变体。您的问题实际上是对Roadef 2012 Machine Reassignment problem 的放松,这是关于将进程分配给计算机。只需删除所有约束,除了 1 资源使用约束和将某些进程排除在某些机器上的约束。该用例在许多求解器中实现。 (尽管在实践中,从基本的装箱示例开始可能更容易,例如Cloud Balancing。)

【讨论】:

    【解决方案2】:

    很可能是二维装箱问题或经典背包问题。

    【讨论】:

    • 我打折了 2d,因为没有办法订购颜色
    • RGB 值是多少?
    猜你喜欢
    • 2014-07-15
    • 1970-01-01
    • 1970-01-01
    • 2019-10-02
    • 2011-03-22
    • 2010-11-21
    • 2011-05-08
    • 1970-01-01
    • 2011-06-11
    相关资源
    最近更新 更多