【问题标题】:How to calculate the max number of pallets in a truck load?如何计算卡车装载的最大托盘数量?
【发布时间】:2016-02-28 03:48:46
【问题描述】:

我想最大限度地增加我可以在货件中发送的材料托盘数量。我的材料托盘是三个不同类别之一:

  • 材料类型 1(易碎): 可以与另一个类型 1 的托盘堆叠, 可以堆放在材料类型 2 的托盘上。
  • 材料类型 2(坚​​固): 可以与另一个托盘堆叠 材料类型 2,可以堆叠在材料类型 1 的下方。不能堆叠在材料 1 的顶部
  • 材料类型 3(非常脆弱):不能堆叠。

如果给我一份订购的材料托盘清单,我需要计算任何订单需要多少托盘足迹或底部托盘。例如:10 个材料类型 1 的托盘和 20 个材料类型 2 的托盘和 3 个材料类型 3 的托盘。订单将占用多少底部托盘?

编辑:让我们将卡车底部托盘的限制设置为 24。可堆叠的最大托盘是两个,也就是说,您不能将两个以上的托盘堆叠在一起。注意:材料 2 不能堆叠在材料 1 之上。

【问题讨论】:

  • 一辆卡车可以装载多少个托盘?
  • 首先,所有类型 3 的托盘都必须送达,因为它们不能堆叠。它们必须单独考虑,并被视为对实际问题没有贡献。
  • 是否有最多可堆叠的托盘数量?如果没有,则所有类型 2 和 1 的托盘都可以堆叠成一个堆栈;在底部类型 2 和顶部类型 1。
  • 我已经添加了底部托盘数量的限制

标签: algorithm optimization transport logistics


【解决方案1】:

考虑到当前的约束,堆叠所需的足迹数量将是

t3 + ( 1 if t1 + t2 > 0, 0 otherwise )

其中t1表示类型1的托盘数量,t2表示类型2的托盘数量,t3表示类型3的托盘数量。类型3的托盘不能与任何东西堆叠在一起别的;如果存在类型 1 或类型 2 的托盘,它们可以堆叠在一起,首先是类型 2 的托盘,然后是类型 1 的托盘。

编辑

由于最多可以将 2 个托盘堆叠在一起,而每辆卡车最多可以装载 24 个托盘,因此答案是不同的。总堆栈数为

#Stacks = t3 + ceil( ( t1 + t2 ) / 2 )

其中ceil 表示向上舍入到最接近的整数。每个类型 3 的托盘必须单独堆叠,因此至少需要 t3 堆叠。其余类型 1 和类型 2 的托盘最多可以堆放 2 个高度,显然没有实际限制;如果Type 1和Type 2单独放在一个堆栈中没有问题,如果Type 1和Type 2都存在,则将Type 2放在底部。

最后,需要的卡车总数为

#Trucks = ceil(#Stacks/24)

最后一辆卡车可能还有一些未使用的空间。

【讨论】:

  • 但是我认为原始问题陈述中缺少一些约束...
  • 你能展示我上面给出的例子的工作原理吗?
  • 托盘堆垛的高度是否有界限?
  • 没有限制,抱歉,更新了我的问题:我们最多只能堆叠两个托盘高
  • 不,解决方案仍然有效,因为类型 2 将被置于底部。
猜你喜欢
  • 2012-05-15
  • 2021-10-07
  • 2022-11-23
  • 1970-01-01
  • 2018-03-21
  • 2020-09-01
  • 2021-02-14
  • 2021-10-08
  • 2011-01-04
相关资源
最近更新 更多