2. 仓储基础数据模型

仓储基础数据模型是库位优化算法的地基。没有标准化的库位编码、精确的坐标系统、可靠的容量状态数据以及完整的商品主数据,任何ABC分类、热区分析或路径压缩算法都无法落地。本节将逐一拆解这四大核心数据要素。

2.1 库位编码规则

库位编码是仓储系统中每个存储位置的唯一标识符。一套优秀的编码规则应具备可读性(人眼能快速定位)、可扩展性(支持仓库扩建)和机器可解析性(WMS系统能自动拆解)。

行业通用的编码结构通常采用层级分段式,例如:

区-通道-货架-层-列
示例:A-03-12-2-05
含义:A区 → 03通道 → 12号货架 → 第2层 → 第05列

下表对比了三种常见编码风格:

编码风格 示例 优点 缺点
纯数字流水 00012345 系统处理快,无歧义 人眼无法识别位置,易出错
层级字母+数字 A-03-12-2-05 可读性强,支持快速定位 编码长度较长
混合语义码 AZ12B05 紧凑,兼顾可读与效率 解析规则复杂,需培训
最佳实践:推荐使用层级字母+数字编码。在WMS系统中,将编码的每一段作为独立字段存储(区、通道、货架、层、列),便于后续按任意维度进行库位筛选和排序。

2.2 库位坐标系统

库位坐标系统将物理仓库映射为三维数字空间,是路径压缩和热区分析的基础。坐标系统通常以仓库的原点(如收货区大门中心或仓库西南角)为基准,定义X(长度)、Y(宽度)、Z(高度)三个轴。

坐标数据通常以米为单位,精确到小数点后两位。每个库位的坐标值取该库位中心点的坐标。

// 库位坐标数据示例(JSON格式)
{
  "locationCode": "A-03-12-2-05",
  "coordinates": {
    "x": 45.20,   // 距原点X轴方向45.20米
    "y": 12.50,   // 距原点Y轴方向12.50米
    "z": 1.80     // 距地面高度1.80米
  }
}
关键指标:坐标精度直接影响路径距离计算。对于AGV或机器人仓,建议坐标精度达到厘米级(0.01m);对于人工拣选仓,0.1m精度即可满足大部分算法需求。

下图展示了库位坐标系统在仓库平面中的映射关系:

库位坐标系统示意图(俯视图) 仓库边界 原点 (0,0) X轴(长度方向) Y轴(宽度方向) A区 B区 C区 通道 通道 库位A (x=15.0, y=23.0) 库位B (x=35.0, y=19.0) 库位C (x=55.0, y=7.0) 每个库位的坐标取中心点位置,Z轴(高度)在俯视图中未显示,用于区分不同层

2.3 库位容量与状态

库位容量定义了每个库位能存放多少商品,而状态则标识该库位当前是否可用。这两个属性直接影响上架策略和拣选路径规划。

容量模型通常包含三个维度:

  • 最大容量(Max Capacity):库位能存放的最大商品件数或体积/重量上限。
  • 当前占用(Current Occupancy):当前已存放的商品数量或体积。
  • 可用容量(Available Capacity):最大容量 - 当前占用。

状态模型至少包含以下状态:

状态 编码 说明 算法影响
空闲 FREE 库位为空,可存放任何商品 优先分配
部分占用 PARTIAL 库位有商品,但仍有剩余空间 可补货,但需考虑商品兼容性
满 FULL 库位已满,不可再存放 排除出可用库位列表
锁定 LOCKED 因盘点、维修、冻结等原因不可用 算法中视为不可达
预留 RESERVED 已被预留给特定订单或任务 临时不可用,任务完成后释放
常见陷阱:很多系统只记录“是否为空”的布尔状态,忽略了“部分占用”的中间态。这会导致算法无法利用部分空余空间进行补货,造成库位利用率下降15%-25%。

2.4 商品主数据与SKU属性

商品主数据是仓储运营的“血液”。每个SKU(Stock Keeping Unit,库存量单位)都有一组属性,这些属性是ABC分类、热区分析和库位分配的核心输入。

以下是算法优化中必须关注的SKU关键属性:

属性类别 具体属性 对算法的影响
物理属性 长、宽、高、重量、体积 决定库位适配性,防止大件放小库位
流转属性 日均出库量、出库频率、拣选次数 ABC分类的核心指标,决定热区分配
存储属性 存储类型(常温/冷藏/冷冻)、危险品等级 限定可存放的区域范围
关联属性 关联SKU集合、替代SKU、组合套装关系 影响关联存放策略,减少跨区拣选
时间属性 生产日期、保质期、入库时间 FIFO/FEFO策略的基础

下图展示了SKU属性与库位分配决策之间的逻辑关系:

SKU属性驱动库位分配决策 库位分配引擎 (算法决策核心) 物理属性 尺寸 / 重量 / 体积 流转属性 出库量 / 频率 / 拣选次数 存储属性 温层 / 危险品等级 关联属性 关联SKU / 替代关系 库位区域分配 A区 / B区 / C区 库位层级选择 黄金层 / 中层 / 底层 存储策略建议 整托 / 整箱 / 拆零 完整的SKU属性数据是库位优化算法的前提,缺失任一属性都可能导致分配策略失效

2.5 数据模型完整性检查清单

在开始库位优化算法之前,请使用以下清单检查基础数据是否就绪:

  1. 库位编码:是否所有库位都有唯一编码?编码是否支持层级解析?
  2. 库位坐标:是否每个库位都有精确的X/Y/Z坐标?坐标原点是否统一?
  3. 库位容量:是否记录了最大容量和当前占用?容量单位是否一致(件/体积/重量)?
  4. 库位状态:是否覆盖空闲、部分占用、满、锁定、预留五种状态?状态更新是否实时?
  5. SKU属性:是否包含物理、流转、存储、关联、时间五类属性?数据质量是否经过校验?
数据质量警示:根据行业统计,约60%的仓储优化项目失败的直接原因是基础数据不准确。建议在算法上线前,至少进行一轮全仓盘点,确保库位状态和SKU属性与系统记录一致。