
大概的需求是:
已经货物 A,B,C 的尺寸分别为 10 * 10 * 4,3 * 20 * 20,8 * 12 * 20,数量分别为 40,30,20 个
如果把它装在 60 * 50 * 40 的箱子中,怎么个堆叠方式最省空间。
感觉这个问题变量太多会比较复杂,或者也可以简化成:
只有一个货物 A,尺寸是 10 * 10 * 4,装在 60 * 50 * 40 的箱子中,怎么个方式可以放置尽量多的货物 A。
大概就是这样子。
我能想到的算法就是。。。。。。想不出来。。。
在网上找了个类似的
https://www.searates.com/cn/reference/stuffing/
但这个不能自定义集装箱大小。因为这个链接打开比较慢,我就截图贴在下面了 
1 midasplus 2020 年 1 月 4 日 via Android 在三个方向上分别做背包(? |
4 Mohanson 2020 年 1 月 4 日 装箱问题一般用遗传算法来解决 |
5 Mohanson 2020 年 1 月 4 日 是遗传算法的经典应用场景之一 |
6 Mohanson 2020 年 1 月 4 日 另外好像也可以模拟退火算法 |
7 Kirscheis 2020 年 1 月 4 日 via Android 这问题是 OR 的经典问题,如果不允许自由旋转的话,搜索 3-dimensional cuboid packing problem 有真相。这个问题目前并没有完全解决,但是有可行的结果还不错的算法,比如 Computers & Operations Research. 36.10 (2009): 2801-2815。 如果允许旋转,那就困难了,我暂时没有听说过什么具体的办法,可以试试力学随机模拟,结果应该不会太差 |
10 tmsdy0404 OP http://www.ic.unicamp.br/~fkm/publication/rotation.pdf 以上链接是 Computers & Operations Research. 36.10 (2009): 2801-2815 |