本发明属于仓库一货一码采集和管理技术领域,尤其涉及一种采样估计货物编号方法。
背景技术:
仓库管理要给每件货物附上编号,然后跟踪每批出库货物的编号集合,而目前这是通过人工清点出库货物的所有编号来实现的。因此如果货物出库量很大,就要消耗大量的时间和人力物力。所以一物一码的管理,一直是行业的难点,在出库量大的情况下,如何快速且准确的查找到对应的货物编码是亟待解决的技术问题。
技术实现要素:
鉴于上述现有技术存在的缺陷,本发明公开了一种采样估计货物编号方法,能够快速查找估计货物编码,解决了单批次货物出库量大而出现的跟踪编号费时费力的问题。
本发明的目的将通过以下技术方案得以实现:
一种采样估计货物编号方法,其步骤如下:
a.根据采样率α对出库货物编号集合m进行采样,随机采集集合m中的α|m|个样本,样本集合记为ms;
b.仓库全部货物编号集合s划分为若干个子集合,并确定阈值;
c.用集合ms里的样本对每一个子集合进行投票,判断ms里的样本是否属于子集合,统计每个子集合的票数,与阈值比较,判断是否命中子集合;
d.合并相邻的子集合,得到新子集合,更新新阈值,判断是否命中新子集合,将命中子集合中的编号记录到集合a,并清空相对应的子集合的票数;
e.重复步骤c和步骤d,直到s中的新的子集合中没有命中子集合,得到目标货物编号集合m的估计集合a=a∩s。
优选的,对仓库全部货物编号为s={1,2,…,n}进行划分,把集合s划分成若干个子集合
优选的,用集合ms里的样本对每一个子集合
优选的,合并相邻的桶即为
出库货物编号集合m与方法估计集合a之间的误差估计为
相对于现有技术,本发明的有益效果是:此估计方法解决了通过人工清点出库货物的所有编号来查找货物编号的问题,操作简单,方便,节省时间和人力物力,快速查找估计货物编码,解决单批次货物出库量大而出现的跟踪编号费时费力的问题,能快速给出出库货物编号的估计集合。同时,采用随机采样,合适的采样率和阈值,能够大大的减少估计集合的误差。如果采样率大于30%,那么估计集合的误差小于2%,并且出库量越大,估计集合的误差越小。
以下便结合实施例附图,对本发明的具体实施方式作进一步的详述,以使本发明技术方案更易于理解、掌握。
附图说明
图1是本发明实施例的合并过程示意图。
具体实施方式
实施例1
仓库里有100件货物,每件货物编号1到100,即有s={1,2,…,100}。现出库10件货物,而实际出库的10件货物的编号不是连续的,但是局部是连续的,例如m={1,2,3,7,8,9,25,26,27,28}。现在应用此方法对m进行估计。下面是方法的具体执行过程:
估计集合
第n轮阈值的计算公式为t(n)=[30%*n+1]+[n/5],其中[a]表示对a取整。
第一轮:
候选桶为
{1},{2},……,{100}
阈值为t(1)=1。统计每个桶包含样本集合ms={1,8,27}元素的个数,与阈值比较,桶得票数大于等于阈值就是命中桶,则此轮命中桶为{1},{8},{27},第一轮命中桶票数都是1。
第二轮:
合并上一轮相邻候选桶得到新的候选桶
{1,2},{3,4},……,{99,100}
阈值为t(2)=1,新桶票数是两个旧桶票数之和(如下每一轮都是这样统计新桶票数,简化了每一轮的投票过程),例如{1,2}就是{1}和{2}的票数之和,票数为1。则此轮命中桶为{1,2},{7,8},{27,28}。
第三轮:
合并上一轮相邻候选桶得到新的候选桶
{1,2,3,4},{5,6,7,8},……,{97,98,99,100}
阈值为t(3)=1,统计新桶票数,与阈值比较得到命中桶为{1,2,3,4},{5,6,7,8},{25,26,27,28}。
第四轮:
合并上一轮相邻候选桶得到新的候选桶
{1,2,3,4,5,6,7,8},{9,10,11,12,13,14,15,16},……,{97,98,99,100}
注意这里桶{97,98,99,100}没有和其他桶合并,把它直接当作新桶即可。此轮阈值为t(4)=2,则命中桶为{1,2,3,4,5,6,7,8}。而上一轮命中桶{25,26,27,28}与桶{29,30,31,32}合并得到的新桶{25,26,27,28,29,30,31,32}没有命中,那么更新估计集合a=a∪{25,26,27,28}={25,26,27,28}。
第五轮:
合并上一轮相邻候选桶得到新的候选桶
{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},
……,
{89,90,91,92,93,94,95,96,97,98,99,100}
阈值为t(5)=3,统计新桶票数,并与阈值比较,此轮没有命中桶。而上一轮有命中桶{1,2,3,4,5,6,7,8},更新估计集合a=a∪{1,2,3,4,5,6,7,8}={1,2,3,4,5,6,7,8,25,26,27,28}。
因为此轮没有命中桶,方法结束。
估计集合a={1,2,3,4,5,6,7,8,25,26,27,28}。
误差估计=10-12/10=0.2。
此例的货物总量和出货量都很小,因此得到较大的误差估计算是正常。对比估计集合a与实际出货集合m,可以看出估计集合a和误差估计是相当准确的。
实施例2-6
实施例2,3,4,5,6中,仓库1000,000件货物,出库货物总数分别为10,000,30,000,60,000,80,000,90,000件,并分别对其进行不同的采样率10%,20%,33.33%,50%的采样,方法同实施例1中步骤,每组出库货物总数和采样率进行多次测试。
测试实验数据:
给定仓库1000,000件货物,出库货物总数和采样率作为应变量,每组出库货物总数和采样率测试1000次,计算实际误差的平均值和标准差,如表格1和表格2所示。
表格1:实际误差平均值
表格2:实际误差标准差
根据表格1和表格2可以看出,采样率为33.3%时,出库货物总数对误差估计的平均值和标准差几乎没有影响。换句话说,只要出库货物总数足够大(测试里出库货物总数大于等于10,000),采样率33.3%就能保证误差估计稳定,得到估计集合波动很小,估计集合的误差越小。
此估计方法解决了通过人工清点出库货物的所有编号来查找货物编号的问题,操作简单,方便,节省时间和人力物力,通过划分子集合和合并子集合进行投票判断,减少查找时间和次数,更加迅速有效给出出库货物编号的估计集合。同时,采用随机采样,合适的采样率和阈值,能够大大的减少估计集合的误差。
此估计方法适合于容许一定量误差的场景。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。