【问题标题】:Distribution of shipments on containers problem集装箱配送问题
【发布时间】:2021-04-20 06:28:59
【问题描述】:

问题是我有货件要发送给客户,这些货件必须装在集装箱中,每个集装箱只包含一个货件。我想确定将这些货物放入其中的最佳集装箱尺寸和每种尺寸的集装箱数量是多少?最大集装箱尺寸等于最大装运量。因此,我需要指定其他容器的大小,以最大限度地利用这些容器的空间。假设我有 50 批货物,我应该有 3 个集装箱尺寸。所以,解决方案应该是 50 个容器,三种容器尺寸,以及每种尺寸的容器数量。

目标函数:

最大化容器的平均利用率

受制于:

每个集装箱只装一次货物

最大集装箱尺寸等于最大装运量

预期的解决方案:

容器尺寸

每种尺寸的容器数量

【问题讨论】:

  • 请说说你自己做了什么。

标签: algorithm


【解决方案1】:

有一个 O(k n²) 时间的动态程序,其中 n 是 出货量,k 是不同容器尺寸的数量。

令出货量为 s1 ≤ s2 ≤ ... ≤ sn。令 W(i, j) 为使用 i 时浪费的最小空间 不同的集装箱尺寸来包装货物 s1, s2, ... sj。基本情况

W(1, j) = sumi∈{1,...,j} (sj - si)

希望清楚。对于 i > 1,递归

W(i, j) = minℓ∈{1,...,j} (W(i−1, ℓ) + sumi∈{ℓ+1,...,j} (sj − si))

说我们应该找到最大的 容器(大小为 sj)和较小的容器。

唯一的诀窍是评估循环中的总和,其中它 我们应该向下迭代ℓ,以便我们可以重用部分和。

要真正恢复最佳尺寸,我们要记住 minimum 参数 到每个 W(i, j) 并从 W(n, k) 向后工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-29
    • 2017-03-05
    • 1970-01-01
    • 2015-09-11
    • 1970-01-01
    • 2020-03-17
    • 2018-06-20
    相关资源
    最近更新 更多