畅享博客 > 供应链仿真优化 > 供应链管理 > [转帖]求 仓库取货 的合理算法 ?
2008-7-24 11:15:02

[转帖]求 仓库取货 的合理算法 ?



我一直在做仓库运作管理软件(WMS),目的就是通过运用运筹优化理论,使仓库运作低成本,高效率;
但是有一个看似简单的运筹问题,就是如何合理的从仓库里一堆货里合理去取货, 我考虑多年始终没有能力得到好的处理方法;


比如:仓库里只有一种商品,有一组货架,货架上有若干货位,每个货位上放一个托盘,由托盘存放商品,每个托盘上的商品最大数量为10箱,取货指令由电脑控制,叉车工根据指令进性取货作业

现在比如有个客户要5箱货,此时仓库里有若干托盘,各个托盘上的商品数量为 1,1,1,1,1,2,3,5,7,10....
这时候有很多取货方法,比如
方法一:
电脑指示从小到大取货,那么
叉车工开着叉车把仓库里把那些商品数量为1的托盘全拿走,送到出库口,这样要来回5次,显然这样很浪费人工,也浪费叉车的汽油。

方法二:

电脑指示从大到小取货,那么
叉车工开着叉车把仓库里那个商品数量为10的托盘拿走,送到出库口,取下5个,托盘上还剩下5个,所以叉车工还得把该托盘从出库口送回货架上;

方法三:
电脑指示按照最接近取货数量的方法取货,那么
叉车工开着叉车把仓库里那个商品数量为5的托盘拿走,送到出库口,取下5个,这时候,该托盘正好空了,没有必要再回到货架上,既省人力,又多腾出一个货位;


根据以上现象,于是得到这个结论:按照最接近取货数量的方法取货 最合理。

果真合理吗?
再举个例子,比如客户要8个商品, 此时各个托盘上商品数量分别为 4,4,5,7,10....
按照最接近取货数量的方法,先取商品数量为7个的那个托盘,然后再在商品数量为4的托盘上取1后,取完后,还剩3个,这样就需要把把剩余3个商品的托盘从出库口送回货架;
实际上,此方法不是最合理的,这里凭感觉都能看出,实际上把那两个商品数量为4的托盘取出最合理,因为同样都是取两次,后者没有剩余,不需要把最后一个托盘送回去;

合理的方法,怎么去实现呢。需要什么知识做指导呢,如果有现成的数学公式最好,如果没有,通过一些算法实现也行,比如贪婪(背包)算法;

当然我这里只是考虑取货的效率和人力,还要考虑商品的生产日期,先进先出,货位承受等等问题做一个合理的均衡;
这里我们暂时就先不考虑这些;

希望能够和大家就该问题做些探讨.

 

分配货位时需要同时考虑货架稳定性和出入库操作的效率,将这一问题描述为一个组合多目标优化问题,采用遗传算法对这一问题进行了求解,对交叉算子进行了改进,得到的解可兼顾两个优化目标。仿真实验表明这一方法可较好地解决货位分配问题。

http://www.agzo.cn/html/2005/object/891w63...d7s80y00q45870/

 

关于这个算法,具体不是很了解。但是在两个比较优秀的WMS(MK,EXE)里,已经有实现的了。


推荐到鲜果: 查阅更多相关主题的帖子: 仓库取货 仓库管理

评论

运筹学,具体点就是数学建模,这玩意儿难啊,就象车间的排产一样,交给那些理论家去干了!

发布者 匿名用户
2008-7-24 14:23:13


可以采用神经网络的算法去思考

发布者 匿名用户
2008-8-8 13:02:07


您正在以 匿名用户 的身份发表评论  快速登录
(不得超过 50 个汉字)
       看不清,换一个
提示消息
(输入完内容可以直接按Ctrl+Enter提交)