导语
大家好,我是智能仓储物流技术研习社的社长,你的老朋友,老K。
知识星球 * 原创电子书 * 深海社区 * 微信群
在WMS中有很多策略,拣货的策略是核心中的核心,因为这对仓库作业的效率有很大的影响。好的策略不仅仅能满足不同类型的客户的业务需求,还能提升仓库作业效率,降低人工成本。
一般来说拣货的策略会包含三个大模块:
分波的策略;
拣货推荐的策略;
拣货路径的策略;
分波是将多个订单聚合在一起,一起作业。所以分波策略关注的是如何将订单的一些共性抽离出来,通过这些共性将订单聚合在一起,便于后续的拣货,复核,打包,称重等流程。
拣货推荐则是系统提醒拣货员应该去哪里拣货,拣多少货。所以拣货推荐的策略关注的是这个波次订单中的SKU应该从哪里拣货,拣多少数量。
拣货路径是指完成整个拣货任务需要在不同库位之间走动的路径。拣货路径关注的是一共要去哪些库位(类似于坐标),然后库位时间的距离、位置是怎么样的(类似坐标连线),通过一些算法得出路径的规划线路,帮助拣货人员节省时间。
对于海外仓或者一些国内的小仓库来说,由于系统智能化的程度还不够,所以拣货路径这一块一般做得都比较简单,很少有一些高深算法或者复杂的调度逻辑。
所以此次我们抛开拣货路径这个比较「高深」的话题,重点来聊聊在设计「拣货推荐库位」方面的产品逻辑时会遇到什么坑,要重点注意哪些内容。
很多人可能都听说过「先进先出」,英文简称为FIFO
;那么与它相反的就是「先进后出」,简称为FILO
,不过这个策略用的比较少,所以我们重点关注一下「先进先出」;
先进先出很好理解,就是先入库的先出库,这样可以保证货物不会积压太久导致过期、变质或者是被淘汰。仓库要满足客户的先进先出要求,那么就需要设置对应的策略来管理这些货物。
单拿这一个策略来说,先进先出一般会有两种处理逻辑:
严格的先进先出;
逻辑的先进先出;
严格的先进先出
严格的先进先出就是先进来的一定要先出去,不同的批次不能混放在一起。
❝举个例子,仓库在上个月入库了一批iPhone 12,然后上架到了库位A上;这个月又要入库一批iPhone 12,按理说这应该是属于两个批次,所以不能放在同一个库位上。因为iPhone都长得一样,如果放在同一个库位上,那就混在一起搞不清楚了。所以就需要将这个月入库的批次放在库位B上,以区分库位A的那个批次。随着时间的推移,越来越多的iPhone 12要入库,库位都已经排到了库位Z了……
由于很多产品的外包装上并没有批次号,在入库上架的时候并没有记录批次号,当货物进入了仓库之后并不能直接通过货物来判断出对应的批次号。
一般的解决方式是:系统自动生成一个入库批次或者上架批次,然后与上架的实际库位做关联。
❝还是刚刚的例子,上个月入库的一批iPhone 12放在了库位A,那么记录批次为20210501(一般是按日期来生成);本月入库的一批放在了库位B,然后批次号为20210601,同样的道理,如果下个月还会入库一批,那么放在库位C,批次号则为20210701……
当需要出库的时候,系统经过查询iPhone 12最早的一个批次是放在库位A上,然后就会推荐拣货人员去库位A拣货。这样库位A的产品(批次更早),就会比库位B的产品(批次更晚)先出库,也就满足了我们想要的先进先出策略
。
逻辑的先进先出
逻辑上的先进先出也可以称为宽松型的先进先出(这个名字是我自己取的),意思就是说对先进先出的要求没有很严格,有点宽松,有点放水。
上面讲到了严格的先进先出一般是通过不同的库位放不同的批次,也就是同库位不混批次存放的方式来解决的。
但是这个方式也有很明显的弊端,那就是:
太浪费仓库容量;
拣货速度会减慢;
同样的产品因为入库的批次不一样而放在了不同的库位上,相当于某个产品有多少个批次就要放在多少个库位上,这对于寸土寸金的海外仓来说,显然是有点不太能接受的,成本太高了。
其次,当某款产品遍布仓库各个库位的时候,对仓库作业人员来说也不太方便。本来这个地方一直是放着iPhone 12的,如果再入库iPhone 12,那我直接放在一起多好,上架的时候方便,拣货的时候也方便。
基于上述说到的两点弊端,聪明的仓库人员们想出来了逻辑的先进先出
这种方式。由于海外仓有很多产品都是非效期的,非时效敏感的,类似于家具,玩具,衣服,手机,充电器等,即使没有先进先出其实也不会太影响其性能或者销售。
那么就可以考虑将这些产品混批次放在同一个库位上,这样出库的时候拣货人员可以在这个库位随意拿相应的数量,而不用过于纠结他自己拿的批次到底是更早的还是更晚的。系统会根据你拣货的库位去计算该库位上最早的那个批次是什么,然后对应的扣减这个批次的数量即可。
逻辑上的先进先出在海外仓系统中很常见,因为它既能帮助仓库节省容量,同时也能最大程度上保证用户的需求得到满足。同时,正是因为批次的引入,当仓库需要统计库龄的时候,也可以很好地实现按梯度计费(不同区间的库龄会有不同的计费单价)。
一个库位混放了不同批次逻辑先进先出的问题
虽然说逻辑上的先进先出对海外仓来说有很多优点,算是当下的最优解了,但是这并不表示它就没有什么缺点。
其中有一些细节的逻辑还是需要产品经理们注意一下,避免踩坑。
即使是采用了逻辑的先进先出,随着入库的批次越来越多,还是不可避免地会出现同一个产品散落不同的库位上的情况。
SKU A001三个批次散落在三个库位上当我们某次拣货需要SKUA001
12个的时候,我们就会遇到一个困扰。
如果是按照先进先出的要求,那么先查出来A001
最早的是批次分别放在哪个库位,从上图可知应该库位A、B、C都有。
然后这个时候就需要引入二级策略(第二重判断):是先从A库位拣货还是从B库位拣货还是从C库位拣货?
选择哪个库位,是策略(判断逻辑)决定的,所以此刻我们一般会有三个策略可以选择:
按拣货优先级;
按清空库位优先;
按数量满足优先;
按拣货优先的意思是按库位的优先级,谁优先级更高,那么先从这个库位拣货;按清空库位优先的意思是先确保能将此库位的货物全部拣完;按数量满足优先的意思是先从库位数量足够的库位拣货,确保只在此库位拣货一次就够了;
当理解了这三个策略的意思之后,我们深入思考一下会发现,这三个策略好像有一些地方会有交织错乱。
❝例如当我选择的是「按清空库位优先」的策略,我清空了库位A之后,接下来库位B和库位C都能满足我的需求,那么我从哪个库位去选?当我选择「按数量满足优先」的策略后,库位B和库位C都能满足,那么我应该选择哪个……
通过上面的简短分析我们可以得出,「按清空库位优先」和「按数量满足优先」其实都会出现权重相同的情况(类似于高考总分相同)。
所以为了解决这个问题,我们就需要引入一个不太能出现权重相同的因素,例如策略1的「按拣货优先级」。当权重相同的时候,我们再去比较拣货优先级,看谁的优先级高,那就去优先级高的库位拣货。
逻辑缜密的朋友仔细一琢磨之后会发现,这个方案好像也有点问题。例如下图中的,如果库位A和库位B的拣货优先级一样的怎么办呢?是不是要在设置拣货优先级的时候限制优先级不能相同?
库位A和库位B拣货优先级相同在拣货优先级的时候限制库位的优先级不能相同是一个解决办法,但是由于拣货优先级并不是必填项,必须要设置的。那么当仓库没有配置这些信息的时候,又怎么办呢?
别急,我们再回到刚刚说的那个高考的同分的例子。当张三和李四分数都相同且某个大学的名额只有一个的时候,我们现实生活中往往会采用什么办法呢?
对的,相同分数下比较语文成绩,语文成绩相同的情况下比较数学成绩,数学成绩也相同的情况下比较英语成绩……以此类推,直到最后比出一个排名的先后为止。
在拣货优先级的排名上,我们也可以采用类似的办法,拣货优先级都为空的情况下,那就比较库位的编码(一般库位的编码是不能重复的),如果真的有重复的情况下还能比较数据库的ID大小,反正肯定能比出一个最后的高低。
拣货优先级相同时,库位编码越小优先级越高通过以上案例的分析,我们发现如果想要解决「逻辑上先进先出」的一些弊端,还是要引入对应策略来层层解决出现的缺陷。
逻辑先进先出的另一个坑
❝例如上面案例中提到,可能依据一层又一层的策略,我最终确定了要推荐拣货员去库位A拣货,但是拣货员今天心情不好,不想走那么远,他就去了库位B拣货。由于库位B是有这个产品的,而且数量也是足够的,再加上我们采用的是「逻辑先进先出」,所以系统并不能提示错误或者拦住货员……
所以当我们采用了这种宽松型管理的策略之后,我们应该考虑一些容错机制。例如仓库人员没有按照推荐库位拣货怎么办?
没关系,那就在什么库位上拣货了,就扣减这个库位上对应的最早的批次的库存;虽然做不到百分百的准确,但是起码可以满足该库位上的先进先出。
综上所述,我们会发现其实采用了逻辑的先进先出之后,我们节省了仓库的容量,提高了作业的效率;但是也带来了弊端,那就是让批次信息或者说是库龄统计有一些些的不准确。
本来最早的批次是在库位A,结果仓库从库位B拣货了,那么只能扣减库位B上最早的批次。从而导致库位A上最早的批次的库龄又增加了一些时间,最后有可能会越过计费区间,增加一些额外的费用。
但是如果没有超过计费区间或者压根就没有梯度计费,此问题也就没什么影响了。
总结
关于逻辑先进先出的策略之下,仓库不按推荐库位拣货怎么处理的问题,我咨询了一些朋友之后发现,应对方式是有的,但是也都各有利弊,还是需要结合自身业务来做取舍。
例如朋友F就提出,可以把库龄的统计放在OMS上,这样的话就脱离了WMS的库位的影响。类似于系统会自动按已有库存量来扣减最早的批次,这样在计费的时候就只需要关注批次号对应的库龄即可,而不需要关注库位的批次是否准确。
还有朋友D提出,当拣货人员没有在推荐的库位拣货,且该库位的批次和推荐的库位的批次不一致的时候。要做提示,告知仓库由于批次的问题,建议去推荐的库位拣货,如果执意在此库位拣货的话,可能会导致违反先进先出的本意。
以上两种策略都有利有弊,感兴趣的朋友可以自行分析一下,探索更好的解决方案。
先进先出是WMS中很常见的一种策略,但是实施起来的时候却又很受限于实际的作业现场情况。
知名企业
-智能仓储物流技术研习社-
建立智能物流系统甲方、集成商与周边配套商
共同技术语言,填埋沟通鸿沟
提供高校物流专业教学现实素材
搭建可实际应用、接地气的
智能物流技术交流分享平台
立体库 | AGV | 机器人 | 拣选 | 分拣 | 仿真
| WMS | WCS | 输送 | 包装
|规划| |报告| |趋势| |历史|
制造业| 电商 | 快递 | 鞋服 | 家具 | 商超
| 零售 | 医药 | 冷链 | 第三方
往期推荐
34页PPT-京东物流智能大脑揭秘
软件定义智能物流PPT
台湾媒体:大陆的仓储物流中心全是黑科技!
南京!600万件校服的自动化立体库
31台穿梭车+56000个货位的自动密集存储系统
医药物流中心规划方法与装备选型
6月份物流技术圈-招聘合集(10万-90万)
物流仿真在AGV调度方面应用案例
仓储堆垛机上的速度控制详解
干货!双轨搬运RGV系统的设计细节
中国物流技术圈主要玩家和各自战场
WMS开发前要知道的10大关键点
自动化立体仓库操作流程与优点
自动化立体仓库规划选购指南
雅戈尔超大工厂的智能物流系统|输送、AGV、分拣、打包……