取款装置中多个存放不同面额钞票钞箱的等张配钞方法制造方法及图纸

技术编号:31716002 阅读:20 留言:0更新日期:2022-01-01 11:21
本发明专利技术公开了一种取款装置中多个存放不同面额钞票钞箱的等张配钞方法,获取能够用于配钞的各个分别存放不同面额钞票的钞箱信息并进行记录;然后根据各个钞箱内钞票张数,按由少到多的顺序对钞箱进行排序;计算各个存放不同面额钞票的钞箱出钞后实现等张效果的初始最优配钞张数;再按照面额从大到小,相同面额按张数从少到多对钞箱进行排序;接下来计算每一个钞箱针对当前配钞金额进行配钞的最大下限值和最小上限值;最后迭代求解各个面额钞票的配钞张数。本发明专利技术能够极大地缩减穷举法的计算范围,减少迭代次数,提高了算法的解决速度,计算出来的解方差少,适用于WINDOWS、LINUX等跨平台系统,也适用于PK、信创等体系,适于大规模推广。规模推广。规模推广。

【技术实现步骤摘要】
取款装置中多个存放不同面额钞票钞箱的等张配钞方法


[0001]本专利技术涉及一种取款装置中多个存放不同面额钞票钞箱的等张配钞方法。

技术介绍

[0002]目前金融自助产品

存取机(包括CRS、UCR、ATM)和金融柜员机

出纳机广泛地应用于银行的自助领域和柜台现金管理。它们都要提供取款功能,取款需要从钞箱里进行配钞,当前的主流算法有:
[0003]1、指定钞箱出钞张算算法;
[0004]2、最小出钞张数算法;
[0005]3、最大出钞张数算法;
[0006]4、等张出钞算法,即各个可用于配钞的钞箱出来的钞票张数近似相等;
[0007]5、等空出钞算法,即各个可用于配钞的钞箱出钞后,钞箱内剩余张数近似相同;
[0008]实现上面算法,流行解决办法是穷举法,这种办法解决效率比较低,特别是等张出钞算法以及等空出钞算法,用穷举法来实现的话,计算量大,耗时长,导致用户等待时间过久,体验感差。

技术实现思路

[0009]为了解决目前等张出钞算法计算量大,导致耗时长,用户等待时间长的技术问题,本专利技术提供一种运算速度相对穷举法更快的取款装置中多个存放不同面额钞票钞箱的等张配钞方法。
[0010]为了实现上述技术目的,本专利技术的技术方案是,
[0011]一种取款装置中多个存放不同面额钞票钞箱的等张配钞方法,包括以下步骤:
[0012]步骤1,获取能够用于配钞的钞箱信息并进行记录,其中单个钞箱中只存放一种面额的钞票;
[0013]步骤2,根据各个钞箱内钞票张数,按由少到多的顺序对钞箱进行排序;
[0014]步骤3,根据步骤2的排序结果,计算各个存放不同面额钞票的钞箱出钞后实现等张效果的初始最优配钞张数;
[0015]步骤4,再根据步骤1中获得的钞箱信息,按照面额从大到小,相同面额按张数从少到多对钞箱进行排序;
[0016]步骤5,根据步骤4的排序结果,计算每一个钞箱针对当前配钞金额进行配钞的最小上限值和最大下限值;
[0017]步骤6,根据步骤5的结果,迭代求解各个面额钞票的配钞张数。
[0018]所述的方法,所述的步骤1中,钞箱信息包括钞箱的个数、各钞箱中所存放的钞票面额和钞箱中钞票的张数,其中相同面额的钞票存放在一个或者多个钞箱中。
[0019]所述的方法,所述的步骤3中,初始最佳配钞等张张数D的计算流程为:
[0020]S10:计算所有钞箱中的钞票总面额:SumA=SUM(A(1),
……
A(n)),n为钞箱的总个
数;
[0021]S11:如果S(1)*SumA不小于M,M为当前配钞金额;则执行S12,否则执行S13;
[0022]S12:如果M不能被SumA整除,则D的值为M除以SumA的商取整后加1;否则D的值为M除以SumA的商;结束D的计算;
[0023]S13:初始化index=1,当前配钞金额M变为原M值减去S(1)*SumA,SumA的值变为原SumA

A(1);
[0024]S14:若index+1>n;则结束D的计算且配钞失败;否则执行S15;
[0025]S15:如果(S(index+1)

S(index))*SumA≥M;则执行S16,否则执行S17;
[0026]S16:如果M不能被SumA整除,则D的值为S(index)加上M除以SumA的商取整后加1;否则D的值为S(index)加上M除以SumA的商;结束D的计算;
[0027]S17:M的值变为原M值

(S(index+1)

S(index))*SumA,SumA的值变为原SumA

A(index+1);
[0028]S18:index的值加1,跳转执行S14。
[0029]所述的方法,所述的步骤5中,每一个钞箱针对当前配钞金额进行配钞的最小上限值的计算包括以下步骤:
[0030]设钱箱经过按面额从大到小,相同面额按张数从少到多进行排序后,面额值为A(1)、A(2)
……
A(n),可用于配钞张数分别为S(1)、S(2)
……
S(n);
[0031]若所有存放相同面额钞票的钞箱分别为A(i)、A(i+1)、
……
、A(i+k),则S(i)≤S(i+1)≤
……
≤S(i+k),则计算最小上限值为:
[0032]GBS=GCD(A(1),A(2)
……
A(n))/A(i)

1,其中GCD(A(1),A(2)
……
A(n))为A(1)、A(2)
……
A(n)的最小公倍数;
[0033]HCNT表示在A(i)、A(i+1)、
……
、A(i+k)钞箱中,满足钞箱中现有可配钞票张数S(j)大于D的钞箱个数;
[0034]则求解是否能够有一个该面额的最小上限值SXT能够满足下列关系:
[0035]①
SXT≥D
[0036]②
WCNT=(SXT

D)*(满足S(j)>SXT)的钞箱个数;其中WCNT为钞票面额为A(i)的钞箱中,钞票张数超过最小上限值的补位张数;
[0037]③
QCNT=(S(j)

SXT)的总和,且满足S(j)>D,S(j)≤SXT;其中QCNT为钞箱面额为A(i)值,且钞票张数小于最小上限值的补位张数;j取值范围为(i,i+k);
[0038]④
GBS

HCNT≤WCNT+QCNT;
[0039]若上述关系不是全部满足,则S(i),S(i+1)
……
S(i+k)分别是对应钞箱配钞最小上限值;
[0040]若上述关系全部满足,则当S(j)>SXT时,SXT是对应钞箱配钞最小上限值,其中j取值范围为(i,i+k);否则最小上限值为S(j)。
[0041]所述的方法,在H+G=M时,所述的HCNT=0,其中H为所有钞箱初始张数大于D的配钞金额总数,G为所有钞箱初始张数小于或等于D的配钞金额总数。
[0042]所述的方法,所述的步骤5中,每一个钞箱针对当前配钞金额进行配钞的最大下限值的计算包括以下步骤:
[0043]设钱箱经过按面额从大到小,相同面额按张数从小到大进行排序后,面额值为A
(1)、A(2)
……
A(n),可用于配钞张数分别为S(1)、S(2)
……
S(n);
[0044]若所有存放相同面额钞票的钞箱分别为A(i)、A(i+1)、
……
、A(i+k),则计算最大下限值为:
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种取款装置中多个存放不同面额钞票钞箱的等张配钞方法,其特征在于,包括以下步骤:步骤1,获取能够用于配钞的钞箱信息并进行记录,其中单个钞箱中只存放一种面额的钞票;步骤2,根据各个钞箱内钞票张数,按由少到多的顺序对钞箱进行排序;步骤3,根据步骤2的排序结果,计算各个存放不同面额钞票的钞箱出钞后实现等张效果的初始最优配钞张数;步骤4,再根据步骤1中获得的钞箱信息,按照面额从大到小,相同面额按张数从少到多对钞箱进行排序;步骤5,根据步骤4的排序结果,计算每一个钞箱针对当前配钞金额进行配钞的最小上限值和最大下限值;步骤6,根据步骤5的结果,迭代求解各个面额钞票的配钞张数。2.根据权利要求1所述的方法,其特征在于,所述的步骤1中,钞箱信息包括钞箱的个数、各钞箱中所存放的钞票面额和钞箱中钞票的张数,其中相同面额的钞票存放在一个或者多个钞箱中。3.根据权利要求2所述的方法,其特征在于,所述的步骤3中,初始最佳配钞等张张数D的计算流程为:S10:计算所有钞箱中的钞票总面额:SumA=SUM(A(1),
……
A(n)),n为钞箱的总个数;S11:如果S(1)*SumA不小于M,M为当前配钞金额;则执行S12,否则执行S13;S12:如果M不能被SumA整除,则D的值为M除以SumA的商取整后加1;否则D的值为M除以SumA的商;结束D的计算;S13:初始化index=1,当前配钞金额M变为原M值减去S(1)*SumA,SumA的值变为原SumA

A(1);S14:若index+1>n;则结束D的计算且配钞失败;否则执行S15;S15:如果(S(index+1)

S(index))*SumA≥M;则执行S16,否则执行S17;S16:如果M不能被SumA整除,则D的值为S(index)再加上M除以SumA的商取整后加1;否则D的值为S(index)加上M除以SumA的商;结束D的计算;S17:M的值变为原M值

(S(index+1)

S(index))*SumA,SumA的值变为原SumA

A(index+1);S18:index的值加1,跳转执行S14。4.根据权利要求3所述的方法,其特征在于,所述的步骤5中,每一个钞箱针对当前配钞金额进行配钞的最小上限值的计算包括以下步骤:设钱箱经过按面额从大到小,相同面额按张数从少到多进行排序后,面额值为A(1)、A(2)
……
A(n),可用于配钞张数分别为S(1)、S(2)
……
S(n);若所有存放相同面额钞票的钞箱分别为A(i)、A(i+1)、
……
、A(i+k),则S(i)≤S(i+1)≤
……
≤S(i+k),则计算最小上限值为:GBS=GCD(A(1),A(2)
……
A(n))/A(i)

1,其中GCD(A(1),A(2)
……
A(n))为A(1)、A(2)
……
A(n)的最小公倍数;HCNT表示在A(i)、A(i+1)、
……
、A(i+k)钞箱中,满足钞箱中现有可配钞票张数S(j)大
于D的钞箱个数;则求解是否能够有一个该面额的最小上限值SXT能够满足下列关系:

SXT≥D

WCNT=(SXT

D)*(满足S(j)>SXT)的钞箱个数;其中WCNT为钞票面额为A(i)的钞箱中,钞票张数超过最小上限值的补位张数;

QCNT=(S(j)

SXT)的总和,且满足S(j)>D,S(j)≤SXT;其中QCNT为钞箱面额为A(i)值,且钞票张数小于最小上限值的补位张数;j取值范围为(i,i+k);
④<...

【专利技术属性】
技术研发人员:邓武彬刘荇李先春孙尧周军周峰
申请(专利权)人:中电长城长沙信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1