一种调拨采购方法、装置和设备与流程

文档序号:11234556阅读:718来源:国知局
一种调拨采购方法、装置和设备与流程
本申请涉及计算机
技术领域
,具体涉及一种调拨采购方法,相应于上述方法,本申请还涉及一种调拨采购装置和设备。
背景技术
:近年来,随着电子商务快速发展,为了满足客户需求,提升客户体验,如缩短交付时间,商家需要在靠近消费者的地方建立大量的仓库和配送中心。仓库受存储空间、进出货能力以及库存成本的限制,不可能无限量铺货,而客户需求是多样且难以预测的,这样就会在有些仓库出现某些货品缺货的现象。当某一仓库的货品不够销售时,商家可以考虑用从其它仓库调拨的方式来为该仓库补货,也可以考虑从外部采购的方式为该仓库补货,商家虽然可以看到货品在每个仓库的分布情况,但是却不知道是应该通过调拨还是采购方式补货,以及从哪个仓库调拨,调拨多少,采购多少等等,不知道哪种补货方案最优,全凭经验通过调拨、采购或调拨加采购来为该仓库补货。因此,能够根据实际情况为商家提供一套合理的调拨采购建议,不仅商家可以获得最大化的利润;作为仓库物流管理方的电商平台也可以提高库房的利用率,降低运营成本,且缩短了交付时间,提升了客户体验。针对上述问题,有公司开发出物流计划系统,其中有一个调拨建议功能来给商家提供调拨建议,但该功能有很多不足之处:1)现有调拨建议仅根据销量预测得到的,没有考虑其他因素,如接收仓库的能力,商家根据建议创建调拨单时有可能创建不成功,得到的建议在现实情况下无法操作;2)现有系统仅根据销量预测得到的调拨建议没有一个衡量标准,商家根据建议进行调拨并不一定能获得最大利润;3)现有系统仅考虑调拨,没有将调拨与采购结合起来一起考虑,若仓库中某个货品缺货,商家无法判断到底是通过调拨还是通过采购进行补货;4)在调拨过程中产生残次品是经常会发生的事,如何减少货物移动,降 低残次率,在增加销量与产生残次成本之间如何取舍都是需要考虑的问题,现有调拨建议没有考虑残次品的问题。技术实现要素:本申请提供一种调拨采购方法,克服了现有系统中仅考虑调拨,没考虑其他因素,如采购,仓库容量,残次品的机会成本等等的影响,另外,建立以调拨采购所产生的利润最大化为目标,优化调拨采购方案。本申请提供了一种调拨采购方法,包括:从关联数据系统中获取货品的相关数据,为预先确定的优化模型在优化算法运行中所需要的参数赋初始值;以及,为优化算法的控制参数赋值;经过染色体编码,随机生成预定数量的染色体个体,将该些染色体个体的集合作为初始种群;所述染色体个体为包括调出仓库编码、调入仓库编码、调拨数量和采购数量的数据集;经过染色体译码,从当前种群中筛选出符合预定约束条件的染色体个体,然后计算所述染色体个体的适应度值;以适应度值为标准,选择部分适应度值大的染色体个体,经过交叉、变异操作,生成所述适应度值更大的下一代种群;在迭代次数达到预先设定的阈值或达到收敛条件时,进入下一步;否则,返回所述染色体译码步骤;将具有最大适应度值的染色体个体作为最优解,并据此生成满足条件的调拨采购方案。可选的,所述关联数据系统至少包括下述系统之一:财务系统、预测系统、仓储中心、资源中心、库容及能力管理系统、残次品管理系统、物流执行平台。可选的,从所述关联数据系统获取的所述相关数据至少包括下述数据之一:售价信息、预测销量、在仓库存、可销库存、仓库信息和仓库之间的路线信息、仓库的总库容、所述货品的库容限制以及仓库的收货能力、仓库之间调拨产生的残次率以及仓库采购产生的残次率信息、调拨成本与采购成本。可选的,所述优化模型包括:优化目标、优化目标函数、决策变量、约束条件。可选的,所述优化目标是货品在预定时间周期内的利润最大化;所述利润是总盈利减去总成本;所述总盈利=调拨总量*(售价-入库前生产运输成本)+采购总量*(售价-入库前生产成本);所述入库前生产运输成本包括两部分:入库前生产成本和入库前运输成本。可选的,所述总成本包括调拨成本;所述调拨成本=调拨数量*单个货品调拨成本。可选的,所述总成本包括采购成本;所述采购成本=采购数量*单个货品采购成本。可选的,所述总成本包括调拨产生残次机会成本;所述调拨产生残次机会成本=产生的残次品数量*(售价-入库前生产运输成本)。可选的,所述总成本包括采购产生残次机会成本;所述采购产生残次机会成本=产生的残次品数量*(售价-入库前生产成本)。可选的,所述约束条件包括如下条件中的至少一个:在一条调拨路径上调拨产生的残次品数量要小于等于调拨数量;一个仓库采购产生的残次品数量要小于等于采购数量;一个仓库调拨到其他仓库的调拨总量应小于等于该仓库的预测销量减去可销库存数量;一个仓库接收的其他仓库调拨到该仓库的调拨总量加上该仓库的采购总量,再加上该仓库本来有的可销库存数量应小于该仓库的库容。可选的,所述染色体编码包括如下步骤:根据从所述关联数据系统获得的每个仓库的可销库存和预测销量找到可以调出的仓库和需要调入的仓库;根据仓库编码分别对所述可以调出的仓库集合和所述需要调入的仓库集合进行排序;根据可以调出的仓库数和需要调入的仓库数计算出单个染色体的编码长度:用co表示所述可以调出的仓库数,ci表示所述需要调入的仓库数,所述编码长度lc=(co+1)*ci;对应每个所述需要调入的仓库生成的编码为一个基因段,ci也表示所述基因段的段数;每个所述基因段由确定数量的基因值组成;所述确定数量即所述可以调出的仓库数加1,多留出来的一个基因是为采购用的;根据每个所述基因段的限制值随机生成所述确定数量的基因值,所述基 因值表示出了所述基因段所对应的所述需要调入的仓库的调拨数量和采购数量;将每个所述基因段的值连接到一起生成一条染色体,完成染色体编码。可选的,所述染色体译码的步骤包括:读取所述染色体中当前基因位的基因值,根据所述基因位表示的含义分别流转到不同的译码方式上;所述基因位代表所述基因值在所述染色体中的位置;若所述基因位表示调拨,则采用调拨基因位译码,若表示采购,则采用采购基因位译码。检查所述染色体的所有基因位的译码是否完成,若没有完成,返回开始步骤进行下一个基因位的译码;若已经完成,则所述染色体的译码完成。可选的,所述调拨基因位译码的步骤包括:比较调入仓库的库容和收货能力,取所述库容和所述收货能力较小值,比较所述较小值是否小于调入的货品数量,若小于,则令所述染色体的适应度值为负无穷,所述染色体译码完成;若不小于,则继续往下执行;根据从所述关联数据系统中获得的仓库之间的线路信息,计算出调出仓库到调入仓库之间的最短路径;根据在所述最短路径上仓库间的调拨产生的残次率随机产生残次品,获得所述最短路径上的残次品数;计算该次调拨的调拨成本,调拨总量和调拨产生残次成本。可选的,所述采购基因位译码的步骤包括:比较需采购货品的仓库的库容与需购入的货品数量,若所述库容小于所述需购入的货品数量,则令所述染色体的适应度值为负无穷,所述染色体译码完成;若所述库容不小于所述需购入的货品数量,根据该仓库采购的残次率随机产生残次品,获得该仓库该次采购产生的残次品数,计算该次采购的采购成本,采购总量和采购产生残次成本。可选的,所述选择部分适应度值大的染色体个体的选择操作采用轮盘赌选择法来进行。可选的,所述交叉操作所用交叉算子的选择包括下列方式至少之一:单点交叉、多点交叉、均匀交叉、算术交叉。可选的,所述交叉算子选用单点交叉。可选的,所述变异操作采用均匀变异。可选的,所述调拨采购方案包括对应每个仓库的下述值:调入货品数量、调出货品数量以及需购入货品数量。本申请还提供了一种调拨采购装置,包括:参数设置单元、初始种群生成单元、染色体译码与适应度值计算单元、种群更新单元、输出结果单元;所述参数设置单元,用于从关联数据系统中获取货品的相关数据,为预先确定的优化模型在算法运行中所需要的参数赋初始值;以及,为遗传算法的控制参数赋值;所述初始种群生成单元,用于通过染色体编码,随机生成预定数量的染色体个体,将该些染色体个体的集合作为初始种群;所述染色体个体为包括调出仓库编码、调入仓库编码、调拨数量和采购数量的数据集;染色体译码与适应度值计算单元,用于通过染色体译码,从当前种群中筛选出符合预定约束条件的染色体个体,然后计算所述染色体个体的适应度值;种群更新单元,用于以适应度值为标准,选择部分适应度值大的染色体个体,经过交叉、变异操作,生成所述适应度值更大的下一代种群;在迭代次数达到预先设定的阈值或达到收敛条件时,进入下一单元;否则,返回所述染色体译码与适应度值计算单元;输出结果单元,用于输出以具有最大适应度值的染色体个体所代表的最优解,以及据此生成的调拨采购方案。本申请还提供一种电子设备,包括:显示器;处理器;存储器,用于存储基于遗传算法的调拨采购优化程序,所述程序所用优化模型是涉及多个仓库的,以所述调拨数量和所述采购数量为变量,以利润最大为目标的模型;所述程序在被所述处理器读取执行时,执行如下操作:设置遗传算法所需的控制参数,从关联数据系统获得货品的相关数据,按照编码规则生成包含调拨采购数据的染色体个体所组成的初始种群;计算种群中所述染色体个体的适应度值;并以所述适应度值为依据,选择所述适应度值大的所述染色体个体,经过交叉变异后产生下一代种群;经过预定次数的进化,获得适应 度最大的所述染色体个体,也就是能产生最大利润的调拨采购方案并输出。与现有技术相比,本申请具有以下优点:本申请所用优化算法采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则,能在一定进化代数内找到一种较优的调拨采购方法;本申请提供的调拨采购方法,综合考虑了仓库的库容、仓库接受货品的能力、仓库间的调拨线路、调拨数量、采购数量以及调拨和采购所产生的残次品的影响,给出的调拨采购方案具有可行性;更一步的,本申请提供的调拨采购方法建立了调拨采购装置的衡量标准,以货品的利润最大化为目标;同时,考虑调拨和采购对货品利润的影响,商户的选择更加多样。附图说明图1是本申请的实施例提供的一种调拨采购方法的流程图;图2是本申请的实施例提供的染色体编码的流程图;图3是本申请的实施例提供的仓库网络的拓扑结构图;图4是本申请的实施例提供的染色体结构图;图5是本申请的实施例提供的染色体译码的流程图;图6是本申请的实施例提供的交叉操作示意图;图7是本申请的实施例提供的变异操作示意图;图8是本申请的实施例提供的一种调拨采购装置的示意图;图9是本申请的实施例提供的电子设备的示意图。具体实施方式在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施的限制。本申请实施例提供了一种调拨采购方法以及调拨采购装置;本申请实施例还提供了一种电子设备;在下面的实施例中会进行详细说明。本实施例要处理的问题是在一个多仓库的物流网络中,当一个或多个仓库 出现某种货品的缺货时,如何通过仓库间的调拨和从外部的采购获得所述货品满足销售并且获取利润。本实施例提供一种调拨采购方法,通过所述调拨采购方法能够获得在该多仓库网络中,包括每个仓库的调入货品数量、调出货品数量以及需购入货品数量的解决方案,采用所述解决方案,商户可以获得最大利润。另外,本申请的实施例采用了遗传算法作为优化计算方法,下面对遗传算法做一下简要介绍。遗传算法(geneticalgorithm)是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法。它是由美国的j.holland教授1975年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。遗传算法的这些性质,已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。它是现代有关智能计算中的关键技术。图1是本申请的实施例提供的一种调拨采购方法的流程图。以下结合图1进行说明。步骤s101,从关联数据系统中获取货品的相关数据,为预先确定的优化模型在算法运行中所需要的参数赋初始值;以及,为遗传算法的控制参数赋值。大多数的优化方法都是为了解决现实中所遇到的问题,以此,在优化计算运行之前,需要根据要解决的现实问题建立优化模型;所述优化模型的建立包括目标分析和优化数学模型的生成。所述目标分析就是根据业务流程确定需要优化的目标,以及对所述目标产生影响的因素。本申请的实施例的优化目标是货品在预定时间周期内的利润最大化,所述利润是总盈利减去总成本;所述总盈利=调拨总量*(售价-入库前生产运输成本)+采购总量*(售价-入库前生产成本);所述入库前生产运输成本包括两部分:入库前生产成本和入库前运输成本;所述入库前生产成本是所述货品在商家发货前的总成本;所述入库前运输成本是所述货品从商家到库房的运输成本。所述总成本=调拨成本+采购成本+调拨产生残次机会成本+采购产生残次机会成本;所述调拨成本是一种调拨方案所产生的成本;所述调拨成本=调拨量*单个货品调拨成本;所述采购成本是一种采购方案所产生的成本,所述采购成本=采购量*单个货品采购成本;所述调拨产生残次机会成本是指调拨过程中产生残次损失掉售卖机会所产生的成本,所述调拨产生残次机会成本=产生的残次品数量*(售价-入库前生产运输成本);所述采购产生残次机会成本是指采购过程中产生残次损失掉售卖机会所产生的成本,所述采购产生残次机会成本=产生的残次品数量*(售价-入库前生产成本)。所述预定时间周期是未来的一个时间段,在所述时间段内,预测销量准确,所述货品的调拨和采购可以完成。所述优化目标是建立在预测销量准确的基础上的,即在未来预测时间段的预测销量是准确的,而且,针对该预测销量所做的调拨采购方案必须在所述预测时间段内完成,所以,所述预定时间周期必定长于所述调拨采购方案的执行周期。本实施例提供的优选方案,所述总成本可包括调拨成本、采购成本、调拨产生残次机会成本、采购产生残次机会成本,在一些情形下,需要考虑其他因素对利润的影响,如调拨残次赔付、商家残次重修/损失金额。所述调拨残次赔付指执行调拨产生残次后仓库给商家的赔付,以大家电商品举例来说,若为机损,一般赔付金额为售价的30%~80%,若为箱损,一般赔付金额为售价的3%。所述商家残次重修/损失指商家从仓库拉走残次品后对残次品进行重修所需要的钱或者无法恢复直接损失掉的钱。为了简化模型,本实施例提供的优选方案没有考虑库存成本的影响,在库存成本高的场合,需要考虑调拨采购增加的库存对优化结果的影响。根据所述优化目标,可以生成优化目标函数:fobj=max{fm}(1)fm=fp-fc(2)其中fp表示总盈利,fc表示总成本,表达式如下所示:其中,设所述货品有库存记录的仓库所构成的物理网络拓扑为g=(v,e),其中结点集合v={vi|i=1,2,...n},n表示网络中结点总数,即所述货品总共有多少个仓库,结点vi和vj之间的链路lij的集合为p={lij|i,j∈n};即p表示所有路径集合;si表示vi仓库的预测销量;mi表示vi仓库的可销库存数量;ap表示单个所述货品在路径p的调拨成本,xp表示所述货品在路径p的调拨量;bi表示单个所述货品在vi仓库的采购成本,yi表示vi仓库的采购量;cp表示所述货品在路径p调拨过程中产生的残次品数量;di表示vi仓库的采购过程中产生残次品数量。sp:所述货品的售价;c:所述货品入库前生产成本;t:所述货品入库前运输成本;δp:布尔变量,δp=1表示路径p∈p存在调拨,否则δp=0;p:某条路径,p∈p;λi:布尔变量,λi=1表示vi仓库存在采购,否则λi=0;ri:表示仓库vi的最大容量;其中,xp、yi为决策变量;约束条件:cp≤xpp∈p(5)di≤yii∈n(6)式(5)表示某条路径上调拨产生的残次品数量要小于等于调拨数量;式(6) 表示某个仓库采购产生的残次品数量要小于等于采购数量;式(7)表示vj仓库调拨到其他仓库所有的调拨总量应小于等于该仓库的预测量减去可销库存数量,即能够调拨出去的量;式(8)表示vj能有库存接收货品,其他仓库调拨到vj仓库的调拨量加上vj仓库的采购总量,再加上本来有的可销库存数量应小于该仓库的库容。在所述优化函数中涉及众多的变量,在优化算法的运行之前以及执行过程之中需要为这些变量赋值,赋值所需要的数据来自于关联数据系统,所述关联数据系统包括:财务系统、预测系统、仓储中心、资源中心、库容及能力管理系统、残次品管理系统、物流执行平台。从所述关联数据系统获得的相关数据包括:售价信息、预测销量、在仓库存、可销库存、仓库信息和仓库之间的路线信息、仓库的总库容、所述货品的库容限制以及仓库的收货能力、仓库之间调拨产生的残次率以及仓库采购产生的残次率信息、调拨成本与采购成本。除了上述参数,还需要为所述遗传算法运行预先设置控制参数,所述控制参数包括种群规模、最大进化代数、最小交叉概率、最大交叉概率、最小变异概率、最大变异概率。本实施例对所述控制参数作如下设置:所述种群规模:种群中染色体个体的数量,设为50;所述最大进化代数t:迭代的次数,设为500;所述为最小交叉概率0.6,所述最大交叉概率为0.9;所述最小变异概率为0.01,所述最大变异概率为0.1。步骤s102,经过染色体编码,随机生成预定数量的染色体个体,将该些染色体个体的集合作为初始种群;所述染色体个体为包括调出仓库编码、调入仓库编码、调拨数量和采购数量的数据集。所述染色体编码是将上述优化模型中的决策变量的值编码转换成由基因组成的染色体个体的过程。所述编码的方式有很多种,如二进制编码、实数编码、符号编码、多参数级联编码等等,采用不用的编码方式会对算法过程产生巨大的影响;而且所述编码要满足遗传算法的编码规则,即完备性、健全性和非冗余性。完备性表示问题空间中的所有点都能成为遗传空间中的点;健全性是指编码后遗传空间的 点能对应原问题所有的点;非冗余性是指遗传空间的点和原问题空间的点是一一对应的。本实施例所提供的优选方案采用分段约束的实数编码方式进行染色体编码。图2是本申请的实施例提供的染色体编码的流程图。图3是本申请的实施例提供的仓库网络的拓扑结构图,包括5个结点,所述节点代表仓库;8条双向链路,表示所述5个仓库中有8条仓库间的线路可以提供调拨。下面结合图2和图3说明所述染色体编码的步骤。步骤s201,根据从所述关联数据系统获得的每个仓库的可销库存和预测销量找到可以调出的仓库和需要调入的仓库。当所述预测销量减去所述可销库存大于0时,表示该仓库的库存不能够满足销售,需要通过调拨或采购增加库存;反之,则表示该仓库可以调出库存供其他仓库使用;若为0,表示该仓库的库存不需要做变动。从表1中的数据可得出,图2网络中可以调出的仓库有两个,v1(-10)和v5(-20),需要调入的仓库有两个,v2(10)和v4(10),括号中是可以调出或需要调入的数量。表1:5个仓库的可销库存数量和预测销量v1v2v3v4v5可销库存80901009080预测销量7010010010060需入量-1010010-20步骤s202,根据仓库编码分别对所述可以调出的仓库集合和所述需要调入的仓库集合进行排序,排序后vo={v1,v5},vi={v2,v4}。步骤s203,根据可以调出的仓库数和需要调入的仓库数计算出单个染色体的编码长度:用co表示所述可以调出的仓库数,ci表示所述需要调入的仓库数,所述编码长度lc=(co+1)*ci;对应每个所述需要调入的仓库生成的编码为一个基因段,ci也表示所述基因段的段数;每个所述基因段由确定数量的基因值组成;所述确定数量即所述可以调出的仓库数加1,多留出来的一个基因是为采购用的。在图2所示的本实施例中,co=2,ci=2,lc=6,即该染色体的由6个基因位,2个基因段组成,每个所述基因段包括3个基因位。步骤s204,根据每个所述基因段的限制值随机生成所述确定数量的基因值,所述基因值表示出了所述基因段所对应的所述需要调入的仓库的调拨数量和采购数量。在本实施例中,所述基因段有两个,v2和v4仓库分别为一个基因段,以v2仓库为例,v2仓库基因段的基因值有三个,分别表示v1仓库到v2仓库的调拨数量,v5仓库到v2仓库的调拨数量,以及v2仓库的采购数量,三者之和需等于v2仓库需要增加的库存数量10个,10个即所述限制值,也就是随机生成三个和为10的正整数,且除最后一个基因值外,其他基因值也都有所述限制值,如v1仓库到v2仓库的调拨数量不能超过v1仓库可以调出的数量,即不能超过10;如果随机生成的一段基因值不满足限制条件,可以再随机生成;同理生成v4仓库基因段的基因值。步骤s205,将每个所述基因段的值连接到一起生成一条染色体,完成染色体编码。本实施例中,将v2和v4基因段的基因值连接起来生成一条基因位长度为6的染色体,如图4所示;图4是本申请的实施例提供的染色体结构图。按照同样的染色体编码方式,生成数量上满足所述种群规模要求的染色体个体的集合,形成初始种群。步骤s103,经过染色体译码,从当前种群中筛选出符合预定约束条件的染色体个体,然后计算所述染色体个体的适应度值。图5是本申请的实施例提供的染色体译码的流程图,下面结合图5详细说明所述染色体译码的步骤。步骤s301,读取所述染色体中当前基因位的基因值,根据所述基因位表示的含义分别流转到不同的译码方式上;所述基因位代表所述基因值在所述染色体中的位置;若所述基因位表示调拨,则转到步骤302,若表示采购,则转到步骤304。步骤s302,比较调入仓库的库容和收货能力,取所述库容和所述收货能力较小值,看所述较小值是否小于调入的货品数量,若小于,则令所述染色体的适应度值为负无穷,所述染色体译码完成;若不小于,则继续往下执行;步骤s303,根据从所述关联数据系统中获得的仓库之间的线路信息,用迪杰斯特拉(dijkstra)算法算出调出仓库到调入仓库之间的最短路径;根据在所述最短路径上仓库间的调拨产生的残次率随机产生残次品,获得所述最短路径上的残次品数;计算该次调拨的调拨成本,调拨总量和调拨产生残次成本;所述当前基因位的调拨基因位译码完成,转到步骤306;仓库之间的调拨残次概率都不一样,每个仓库采购时的残次概率也都不一样,可以从残次品管理系统中获得这些数据;本申请实施例假设仓库间调拨产生的残次概率均为0.1,每个仓库采购产生的残次概率均为0.09。步骤s304,比较需采购货品的仓库的库容与需购入的货品数量,看所述库容是否小于所述需购入的货品数量,若小于,则令所述染色体的适应度值为负无穷,所述染色体译码完成;若不小于,则继续往下执行;步骤s305,根据该仓库采购的残次率随机产生残次品,获得该仓库该次采购产生的残次品数,计算该次采购的采购成本,采购总量和采购产生残次成本;所述当前基因位的采购基因位译码完成;步骤s306,检查所述染色体的所有基因位的译码是否完成,若没有完成,返回开始步骤进行下一个基因位的译码;若已经完成,则所述染色体的译码完成。所述适应度值,即适应度函数值,是用来判断种群中染色体个体的优劣程度的指标,它是根据所求问题的目标函数来进行评估的;所述适应度值越大,说明所述染色体个体越优秀,目标函数值越接近最优解;在本实施例中,所述适应度函数与所述优化目标函数相同。步骤s104,以所述适应度值为标准,选择部分适应度值大的染色体个体,经过交叉、变异操作,生成所述适应度值更大的下一代种群。所述选择部分适应度值大的染色体个体的操作即选择操作,所述选择操作采用轮盘赌选择法来进行;所述轮盘赌选择法可以表述为:假设种群大小为n,其中个体i的适应度值为fi,则i被选择的概率为随机生成n个0到1的随机数,选择被选中的个体进入下一代,下一代种群与上一代种群个体总数相同。所述交叉操作是两个现有的染色体交换预定的基因段,产生新的染色体个体;所述交叉操作所用交叉算子的选择包括下列方式至少之一:单点交叉、多点交叉、均匀交叉、算术交叉。由于单点交叉操作简单且能达到很好的杂交效果,是最常用的交叉算子,本实施例的所述交叉算子选用单点交叉;图6是本申请的实施例提供的交叉操作示意图。如图6所示,所述交叉操作首先从种群中随机选择两个父代染色体,再生成(0,1)区间的一个随机数prandom,若prandom小于交叉概率pcrossover,随机选择一个基因位作为交叉点,交换两个父代染色体个体从交叉点基因位开始的后面的所有基因位,然后将交换后的染色体放入子代种群中成为子代染色体;若prandom大于等于交叉概率,则所述两个父代染色体个体保持不变进入子代种群。随着进化代数的增加,种群中的个体越来越优,为保持所述种群中染色体个体的多样性,避免结果陷入局部最优,克服早熟收敛,可以使所述交叉概率pcrossover具有某种可调节性,使其随着进化代数的增加而增大。因此,我们建立一个所述交叉概率pcrossover与进化代数t相关联的函数pcrossover(t),计算式如下:pcrossover(t)=pc_min+(pc_max-pc_min)×t/max_gen(10)上式中,pc_min是设定的最小交叉概率,pc_max是设定的最大交叉概率,max_gen是算法设定的所述最大进化代数,pcrossover(t)表示第t代的交叉概率。所述变异操作是改变现有的一条染色体预定基因段生成另外一条符合要求的染色体个体;所述变异操作的主要功能是增加种群中个体的多样性,均匀变异能很好的增加个体的多样性,本实施例的变异操作采用所述均匀变异。图7是本申请的实施例提供的变异操作示意图。如图7所示,所述变异操作针对染色体中的每个基因,生成(0,1)区间的一个随机数prandom,若prandom小于变异概率pmutation(t),则将所述染色体中该基因位上的值变为另外一个有效值;若prandom大于等于变异概率pmutation(t),则该基因位上的值保持不变;所述变异概率pmutation(t)是与遗传代数t相关联的函数,其计算式如下:pmutation(t)=pm_min+(pm_max-pm_min)×t/max_gen上式中,pm_min是设定的最小变异概率,pm_max是设定的最大变异概率,max_gen是算法设定的最大进化代数,pmutation(t)表示第t代的变异概率。经过上述所述选择、交叉、变异操作,生成了新一代种群;所述新一代种群的染色体数量等于设定的种群规模;相比上一代种群,所述新一代种群的染色体个体的适应度值更大。步骤s105,在迭代次数达到预先设定的阈值或达到收敛条件时,进入步骤s106;否则,返回步骤s103;当迭代次数达到预先设定的所述最大进化代数时,在本实施例中是500次,进入步骤s106,否则,返回步骤s103继续进行种群更新的操作。在有的场合下,也可以设定其它收敛条件,比如当所述适应度值满足一定条件时,进入下一步。步骤s106,将具有最大适应度值的染色体个体作为最优解,并据此生成满足条件的调拨采购方案。所述调拨采购方案包括对应每个仓库的下述值:调入货品数量、调出货品数量以及需购入货品数量,按照所述调拨采购方案执行,商家可以获取最大利润。本申请提供的优选方案,仅考虑了单个货品的利润最大,但申请所提供的方法也可以应用于多货品的调拨采购方案的确定。在上述的实施例中,提供了一种调拨采购方法,与上述调拨采购方法相对应的,本申请还提供了一种调拨采购装置。由于装置的实施例基本相似于方法的实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅是示意性的。图8是本申请的实施例提供的一种调拨采购装置的示意图。如图8所示,所述调拨采购装置包括:参数设置单元401、初始种群生成单元402、染色体译码与适应度值计算单元403、种群更新单元404、输出结果单元405。所述参数设置单元401,用于从关联数据系统中获取货品的相关数据,为预先确定的优化模型在算法运行中所需要的参数赋初始值;以及,为遗传算法的控制参数赋值;所述初始种群生成单元402,用于通过染色体编码,随机生成预定数量的染色体个体,将该些染色体个体的集合作为初始种群;所述染色体个体为包括调出仓库编码、调入仓库编码、调拨数量和采购数量的数据集;所述染色体译码与适应度值计算单元403,用于通过染色体译码,从当前种群中筛选出符合预定约束条件的染色体个体,然后计算所述染色体个体的适应度值;所述种群更新单元404,用于以适应度值为标准,选择部分适应度值大的染色体个体,经过交叉、变异操作,生成所述适应度值更大的下一代种群;在迭代次数达到预先设定的阈值或达到收敛条件时,进入下一单元;否则,返回所述染色体译码与适应度值计算单元;所述输出结果单元405,用于输出以具有最大适应度值的染色体个体所代表的最优解,以及据此生成的调拨采购方案。可选的,所述关联数据系统至少包括下述系统之一:财务系统、预测系统、仓储中心、资源中心、库容及能力管理系统、残次品管理系统、物流执行平台。可选的,在所述参数设置单元中,从所述关联数据系统获取的所述相关数据至少包括下述数据之一:售价信息、预测销量、在仓库存、可销库存、仓库信息和仓库之间的路线信息、仓库的总库容、所述货品的库容限制以及仓库的收货能力、仓库之间调拨产生的残次率以及仓库采购产生的残次率信息、调拨成本与采购成本。可选的,所述优化模型包括:优化目标、优化目标函数、变量、约束条件。可选的,所述优化目标是货品在预定时间周期内的利润最大化;所述利润是总盈利减去总成本;所述总盈利=调拨总量*(售价-入库前生产运输成本)+采购总量*(售价-入库前生产成本);所述入库前生产运输成本包括两部分:入库前生产成本和入库前运输成本。可选的,所述总成本包括调拨成本;所述调拨成本=调拨量*单个货品调拨成本。可选的,所述总成本包括采购成本;所述采购成本=采购量*单个货品采购成本。可选的,所述总成本包括调拨产生残次机会成本;所述调拨产生残次机会成本=产生的残次品数量*(售价-入库前生产运输成本)。可选的,所述总成本包括采购产生残次机会成本;所述采购产生残次机会成本=产生的残次品数量*(售价-入库前生产成本)。可选的,所述约束条件包括如下条件中的至少一个:在一条调拨路径上调拨产生的残次品数量要小于等于调拨量;一个仓库采购产生的残次品数量要小于等于采购量;一个仓库调拨到其他仓库的调拨总量应小于等于该仓库的预测销量减去可销库存数量;一个仓库接收的其他仓库调拨到该仓库的调拨总量加上该仓库的采购总量,再加上该仓库本来有的可销库存数量应小于该仓库的库容。可选的,所述初始种群生成单元包括所述染色体编码;所述染色体编码包括如下步骤:根据从所述关联数据系统获得的每个仓库的可销库存和预测销量找到可以调出的仓库和需要调入的仓库;根据仓库编码分别对所述可以调出的仓库集合和所述需要调入的仓库集合进行排序;根据可以调出的仓库数和需要调入的仓库数计算出单个染色体的编码长度:用co表示所述可以调出的仓库数,ci表示所述需要调入的仓库数,所述编码长度lc=(co+1)*ci;对应每个所述需要调入的仓库生成的编码为一个基因段,ci也表示所述基因段的段数;每个所述基因段由确定数量的基因值组成;所述确定数量即所述可以调出的仓库数加1,多留出来的一个基因是为采购用的;根据每个所述基因段的限制值随机生成所述确定数量的基因值,所述基因值表示出了所述基因段所对应的所述需要调入的仓库的调拨数量和采购数量;将每个所述基因段的值连接到一起生成一条染色体,完成染色体编码。可选的,染色体译码与适应度值计算单元包括所述染色体译码和所述适应度值计算;所述染色体译码的步骤包括:读取所述染色体中当前基因位的基因值,根据所述基因位表示的含义分别流转到不同的译码方式上;所述基因位代表所述基因值在所述染色体中的位置;若所述基因位表示调拨,则采用调拨基因位译码,若表示采购,则采用采购基因位译码;检查所述染色体的所有基因位的译码是否完成,若没有完成,返回开始步 骤进行下一个基因位的译码;若已经完成,则所述染色体的译码完成。可选的,所述调拨基因位译码的步骤包括:比较调入仓库的库容和收货能力,取所述库容和所述收货能力较小值,比较所述较小值是否小于调入的货品数量,若小于,则令所述染色体的适应度值为负无穷,所述染色体译码完成;若不小于,则继续往下执行;根据从所述关联数据系统中获得的仓库之间的线路信息,计算出调出仓库到调入仓库之间的最短路径;根据在所述最短路径上仓库间的调拨产生的残次率随机产生残次品,获得所述最短路径上的残次品数;计算该次调拨的调拨成本,调拨总量和调拨产生残次成本。可选的,所述采购基因位译码的步骤包括:比较需采购货品的仓库的库容与需购入的货品数量,若所述库容小于所述需购入的货品数量,则令所述染色体的适应度值为负无穷,所述染色体译码完成;若所述库容不小于所述需购入的货品数量,根据该仓库采购的残次率随机产生残次品,获得该仓库该次采购产生的残次品数,计算该次采购的采购成本,采购总量和采购产生残次成本。可选的,所述种群更新单元包括选择操作;所述选择操作采用轮盘赌选择法来进行。可选的,所述种群更新单元包括所述交叉操作;所述交叉操作所用交叉算子的选择包括下列方式至少之一:单点交叉、多点交叉、均匀交叉、算术交叉。可选的,所述交叉算子选用单点交叉。可选的,所述种群更新单元包括所述变异操作;所述变异操作采用均匀变异。可选的,在所述输出结果单元中输出所述调拨采购方案;所述调拨采购方案包括对应每个仓库的下述值:调入货品数量、调出货品数量以及需购入货品数量。在上述的实施例中,提供了一种调拨采购方法以及一种调拨采购装置,此外,本申请还提供了一种电子设备;所述电子设备实施例如下:请参考图9,图9是本申请的实施例提供的电子设备的示意图。所述电子设备,包括:显示器501;处理器503;存储器505;所述存储器505,用于存储基于遗传算法的调拨采购优化程序,所述程序所用优化模型是涉及多个仓库的,以所述调拨数量和所述采购数量为变量,以利润最大为目标的模型;所述程序在被所述处理器读取执行时,执行如下操作:设置遗传算法所需的控制参数,从关联数据系统获得货品的相关数据,按照编码规则生成包含调拨采购数据的染色体个体所组成的初始种群;计算种群中所述染色体个体的适应度值;并以所述适应度值为依据,选择所述适应度值大的所述染色体个体,经过交叉变异后产生下一代种群;经过预定次数的进化,获得适应度最大的所述染色体个体,也就是能产生最大利润的调拨采购方案并输出。在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明虽然以较佳实施例公开如上,但其并不是用来限定本发明,任何本 领域技术人员在不脱离本发明的精神和范围内,都可以做出可能的变动和修改,因此本发明的保护范围应当以本发明权利要求所界定的范围为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1