优化 - 重新排列特定类型的项目? 这是我正在处理的个人项目的一个小优化问题:所以想象你有很多盒子的物品,并且在每个盒子里,你知道物品必须运到不同的地方。
示例:
方框1:1000个项目,500到位置A,500到位置B。
方框2:1000个项目,500到位置A,500到位置B.
我希望能够重新排列这些项目,以便我可以尽可能多地将整箱运送到一个目的地。例如,在上面的示例中,我可以重新排列项目,使new_box 1有1000个项目到位置A,1000个到位置B。
现在你可以想象这种完美的重排案例并不总是会发生。如果我有以下内容:
方框1:1000个项目,500到位置A,300到位置B,200到位置C.
方框2:1000个项目,500到位置A,500到位置B。
然后,我想(a)优化一个目的地的整箱数量,& (b)最小化每个其他框中不同位置的数量。例如,拥有3个盒子,每个盒子有2个不同的目的地,比3个盒子每个有3个不同的目的地要好。上面第二个例子的最佳重新排列是:
New_box_1:1000件商品,1000件到位置A。
New_box_2:1000个项目,800到位置B,200到位置C。
我的问题是:我如何处理任意数量的盒子和每个盒子的任意数量的目的地的这种情况?为了解决这个问题,我们首先假设每个盒子都有相同的物品数量。
我现在想的是采取一种贪婪的方法:
还有其他任何建议或见解吗?非常感谢。
答案 0 :(得分:0)
我认为这是一个简单的1d装箱问题。问题是最多包含1000个项目的框。然后你可以使用bin-packing算法,如最适合,first-fit等。