Algorithm 在计算机科学理论中,这个问题描述的正确问题名称/算法是什么?

Algorithm 在计算机科学理论中,这个问题描述的正确问题名称/算法是什么?,algorithm,data-structures,time-complexity,Algorithm,Data Structures,Time Complexity,问题是,我有X个不同权重值的项,它们必须放入Y个容器中。容器的尺寸不同(例如,容纳不同的最大重量)。每个容器的总负载必须与其他容器大致相等,但容器不需要加满或最小化。必须使用所有容器 这让我想起了“背包”问题,但我有多个不同尺寸的背包,它们之间的负载必须相对相等(例如,一个背包可能只能承载12磅,另一个背包可能只能承载8磅,但它们都需要填充它们所能承载的总重量的相同百分比)。这也让我想起了“垃圾箱包装”问题,但这并不能解决不同的垃圾箱尺寸,或者垃圾箱不需要装满或最小化,它们只需要相等的负载,所有

问题是,我有X个不同权重值的项,它们必须放入Y个容器中。容器的尺寸不同(例如,容纳不同的最大重量)。每个容器的总负载必须与其他容器大致相等,但容器不需要加满或最小化。必须使用所有容器

这让我想起了“背包”问题,但我有多个不同尺寸的背包,它们之间的负载必须相对相等(例如,一个背包可能只能承载12磅,另一个背包可能只能承载8磅,但它们都需要填充它们所能承载的总重量的相同百分比)。这也让我想起了“垃圾箱包装”问题,但这并不能解决不同的垃圾箱尺寸,或者垃圾箱不需要装满或最小化,它们只需要相等的负载,所有的垃圾箱都需要使用


有谁能在数据结构和算法理论中给我指出这个问题的正确方向吗?我还对解决此类问题常用的算法或启发法感兴趣,或者对可能的时间复杂度信息感兴趣。

对我来说听起来像是多重背包。发件人:

如果我们有n个物品和m个容量为Wi的背包,我们得到了多背包问题


编辑:抱歉,遗漏了每个容器需要类似加载的部分。不过,它闻起来像是多个背包,尽管有额外的限制。

如果你把X映射到不同高度的图片;并将Y映射到列,那么给出的解决方案也应该适用于您。这是一个最不合适的箱子包装解决方案,带有用Python编写的预排序和附加物品交换示例。

背包问题或包装问题它肯定属于优化问题类,但它是背包问题的推广(在这种情况下,它可能有更好的名称),而不是背包问题本身,包装问题通常试图用一组统一的对象来优化最小值,这是用一组异构的对象来最小化标准偏差。请注意:这不是一个“家庭作业”问题或任何类似的问题。这是一个实际的“现实世界”问题,我需要编写一个解决方案,但我很难自己设计一个有效的算法或找到类似的问题描述。实际上,这听起来更像是子集和或分区(因为假设所有物体都必须放入容器中,并且比例应该相等,我们实际上可以找到每个容器的“理想”重量)。你能量化“近似相等”吗?例如,你可以使用权重的方差或权重的最大差值。一旦澄清了这一点,你就可以将问题描述为线性规划或二次规划问题。不过,减去一。我同意它闻起来像是多个背包,但背包有两维物体与关联指定的成本(或大小)和值,其中针对最大(值)、最小(成本)进行优化;这是针对背包集上的最大标准偏差进行优化,仅针对一维对象(关联大小)。