向量装箱与固定数量箱子装箱问题解析
1. 多选择向量装箱问题算法
1.1 解决 (P) 问题
多选择向量装箱问题(mvbp)的 (P) 问题包含多项式数量的约束(每个物品一个),但有指数数量的变量。为解决这个难题,我们考虑 (P) 的对偶问题。对偶程序的分离问题是,对于给定的物品利润 (y_1, \ldots, y_n),找到(如果存在)一个子集 (C),使得 (\sum_{i\in C} y_i > w_C)。这个分离问题可以通过对每种箱子类型进行测试,看最优值是否大于 (w_t) 来解决,而这实际上是一个多选择多维背包(mmk)实例,后续会给出其多项式时间近似方案(PTAS)。也就是说,对偶问题 (D) 的分离问题有 PTAS,因此 (P) 的线性规划松弛问题也存在 PTAS。
1.2 构建对偶无关算法
为构建 mvbp 的对偶无关算法,我们引入以下符号:
- 对于每个物品 (i \in I)、化身 (j)、维度 (d) 和箱子类型 (t),定义物品 (i) 的化身 (j) 在 (t) 类型箱子第 (d) 维上的负载为 (\ell_{ijtd} = a_{ijd}/b_{td})。
- 对于每个物品 (i \in I),定义其有效负载为 (\overline{\ell} i = \min {1\leq j\leq m,1\leq t\leq T} {w_t \cdot \max_d \ell_{ijtd}})。
- 设 (t(i)) 表示能容纳物品 (i) 某个化身最多(分数)副本的箱子类型,(j(i)) 和 (d(i)) 分别是确定此界限的化身和维度,形式上:
- (j(i) =
超级会员免费看
订阅专栏 解锁全文
26

被折叠的 条评论
为什么被折叠?



