用途:解决三维装箱(3D Bin Packing)与三维空间优化问题,将三维箱体或物品装入集装箱、卡车或料箱,目标包括最大化空间利用率、最小化容器数量、降低运输成本并保证装载稳定性。
主要能力:覆盖多类问题,包括3D-BPP(用最少同规格箱)、单容器装载(最大化单箱利用率)、托盘/集装箱两级装载、多容器异构装箱(不同尺寸容器选择与装箱)、以及体积与重量双重约束的装箱。支持物品尺寸、重量、易碎与堆叠限制、是否允许旋转(6种朝向或受限)、容器尺寸与承重、重心与轴重、堆叠层数、装卸顺序(LIFO/FIFO)、多站点配送与按客户分组等约束的建模。
方法:提供精确方法(整数规划,仅适合极小规模,如少于10件)与启发式方法,包括Bottom-Left-Back(BLB)贪心放置、层构建算法(先分层再在层内做二维装箱)。资料中给出Python示例代码,涉及pulp、numpy等库,并包含Box、Space类与残差空间生成、利用率计算等实现。
使用方式:先明确目标(最少容器或最大利用率)、物品规格(数量、长宽高、重量、易碎/可堆叠、可否旋转)、容器规格(尺寸、承重、数量与类型)以及物理约束(重心、堆叠、装卸顺序、多站点等),再选择精确或启发式算法求解。
适用场景:物流运输装载、仓储与托盘规划、集装箱配载、多客户配送分组等。
限制:三维装箱为NP-hard问题,精确方法仅适用于极小规模;启发式方法快速但可能非最优;资料中整数规划示例省略了非重叠约束,实际使用需补充完整约束。具体性能、收费与平台支持暂未提供。