一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于鱼骨型仓库布局的多车拣选路径问题优化方法及系统与流程

2021-11-22 13:14:00 来源:中国专利 TAG:


1.本发明涉及仓储管理技术领域,具体地涉及一种基于鱼骨型仓库布局的多车拣选路径问题优化方法及系统。


背景技术:

2.鱼骨型仓库布局是一种非传统的仓库布局模式,其主要布局特征是两个对角线通道呈现“v”字型。gue等指出合理规模下鱼骨型仓库布局的人工拣货距离比传统仓库布局降低20%左右。另外,订单拣选是提高仓库生产效率首要考虑的运营活动,其作业成本占仓库总运营成本的55%,订单拣选的任何不足都可能导致客户满意度下降以及仓库运营成本增高,进而影响整条供应链。订单拣选时间由行走、寻找货物时间、拣取货物时间等组成,而拣货人员在进行拣货作业时所耗费的行走时间占总拣选时间的五成。因此,研究如何优化鱼骨型仓库布局下的拣货路径,减少拣货人员的行走时间,对提高仓库拣货作业效率和降低仓储运营成本有着显著意义。
3.关于仓库布局的研究,国外学者给出了许多重要的研究成果。roodbergen等提出了一种确定仓库拣选区域布局的方法,可以让订单的拣选距离最小化。parikh等指出影响订单拣选效率的决定性因素是仓库的布局。pohl等研究了非传统仓库中周转率高的物品的最佳存储位置,并以鱼骨型仓库布局为例,提出了最佳性能的布局设计。luis等对比了鱼骨型和传统型仓库设计的性能,并使用数值算法和精确算法求解鱼骨型设计的重要特征(对角交叉通道的斜率)。cardona等针对鱼骨型仓储布局最重要的特征(即对角交叉通道的斜率),研究得出最佳斜率为1,且偏离最佳斜率也不会显著增加运营成本。gue等提出在鱼骨型仓库布局下,可行的范围内,存、取货点应置于仓库中间。后续学者在基于鱼骨型仓库布局下,转向研究仓库内部的路径优化问题,罗志文基于改进的鱼骨型仓库布局,建立一单一车和一单多车拣货模型,并运用传统启发式算法进行求解。张新艳等基于鱼骨型仓库布局运用一种混沌模拟退火粒子群算法对拣货路径优化问题进行求解。zhou等采用遗传算法、蚁群算法和布谷鸟算法对鱼骨型仓库布局的拣选路径进行了优化。刘建胜等考虑新型鱼骨型仓库布局的特点,引入有载重限制的多车调度模型,并提出一种混合粒子群优化算法进行求解。
4.由上述研究可以看出,关于鱼骨型仓库的研究逐渐由布局设计转向拣选路径的优化,目前多数关于拣选路径优化问题的研究都是基于传统启发式算法,且研究的模型鲜有考虑拣货小车载重、容积等约束条件,并没有涉及对鱼骨型仓库内的布局的计算,因此在实际实施时难以实现高效化的调度和拣货。


技术实现要素:

5.本发明实施例的目的是提供一种基于鱼骨型仓库布局的多车拣选路径问题优化方法及系统,该方法及系统能够提高鱼骨型仓库的调度和拣货效率。
6.为了实现上述目的,本发明实施例提供一种基于鱼骨型仓库布局的多车拣选路径
问题优化方法,包括:
7.按照预设的编码方式对鱼骨型仓库的各个货位进行编码以得到多个初始的路径;
8.计算每个所述路径的适应度,选择适应度最小的所述路径作为个体最优路径和全局最优路径;
9.在待拣选的多个货位中随机选择多个出发点;
10.根据预设的概率选择每个所述出发点对应的下一个拣货点以得到对应的第一拣选路径;
11.按照预设的交叉和变异概率将每个所述第一拣选路径与所述全局最优路径执行第一次交叉操作;
12.按照预设的交叉和变异概率将第一次交叉操作后的所述第一拣选路径与所述个体最优路径执行第二次交叉操作;
13.按照预设的交叉和变异概率对第二次交叉操作后的所述第一拣选路径执行变异操作;
14.分别计算变异操作后的所述第一拣选路径和第一次交叉操作前的所述第一拣选路径的适应度;
15.针对每个变异操作后的所述第一拣选路径和第一次交叉操作前的所述第一拣选路径的组合,选择适应度较小的所述第一拣选路径加入新的所述第一拣选路径;
16.根据所述第一拣选路径更新所述全局最优路径和所述个体最优路径;
17.判断当前的迭代次数是否大于或等于预设的迭代次数阈值;
18.在判断所述迭代次数小于所述迭代次数阈值的情况下,更新每两个拣货点之间的信息素浓度;
19.将每个所述第一拣选路径的最后一个拣货点作为出发点,再次根据预设的概率选择每个所述出发点对应的下一个拣货点以得到对应的第一拣选路径,并执行所述方法的相应步骤,直到判断所述迭代次数大于或等于所述迭代次数阈值;
20.在判断所述迭代次数大于或等于所述迭代次数阈值的情况下,将所述全局最优路径作为最优解并解码为最终的拣选路径。
21.可选地,所述根据预设的概率选择每个所述出发点对应的下一个拣货点以得到对应的第一拣选路径包括:
22.根据公式(1)选择每个出发点对应的下一个拣货点以得到每个出发点对应的第一拣选路径,
[0023][0024]
其中,为第k个出发点选择前往下一个拣货点的概率,i、j为拣货点的编号,τ
ij
(t)为t时刻拣货点i到拣货点j之间的路径的信息素浓度,α为拣货点i到拣货点j的轨迹相对重要性,γ
ij
(t)为t时刻拣货点i到拣货点j之间的路径的能见度,且d
ij

拣货点i到拣货点j之间的距离,β为拣货点i到拣货点j的能见度相对重要性,allowed
k
为第k个出发点的小车当前能够前往的拣货点的集合。
[0025]
可选地,所述判断当前的迭代次数是否大于或等于预设的迭代次数阈值包括:
[0026]
判断新生成的所述第一拣选路径是否全部与历史生成的所述第一拣选路径相同;
[0027]
在判断新生成的所述第一拣选路径全部与历史生成的第一拣选路径的情况下,将所述全局最优路径作为最优解并解码为最终的拣选路径。
[0028]
可选地,所述根据所述第一拣选路径更新所述全局最优路径和所述个体最优路径包括:
[0029]
在新生成的所述第一拣选路径中选择适应度最小的路径作为所述个体最优路径;
[0030]
在所有的所述第一拣选路径中选择适应度最小的路径作为所述全局最优路径。
[0031]
可选地,所述方法还包括:
[0032]
根据公式(2)计算所述适应度,
[0033][0034]
其中,min f为所述适应度,m为所述鱼骨型仓库内当前需要使用的拣货小车的数量,n
m
为第m个所述拣货小车需要完成的拣货点的数量,i、j为拣货点的编号,为第m个所述拣货小车从拣货点i到拣货点j的距离,为用于指示第m个所述拣货小车是否从拣货点i到拣货点j的指示变量,为第m个所述拣货小车从所述鱼骨型仓库的出入口到第一个拣货点的距离,为第m个所述拣货小车从最后一个拣货点到所述鱼骨型仓库的出入口的距离。
[0035]
可选地,所述更新每两个拣货点上的信息素浓度包括:
[0036]
根据公式(3)更新所述信息素浓度,
[0037]
τ
ij
(t n)=ρ
·
τ
ij
(t) δτ
ij

ꢀꢀ
(3)
[0038]
其中,τ
ij
(t n)为t n时刻的拣货点i到拣货点j之间的路径的信息素浓度,τ
ij
(t)为t时刻的拣货点i到拣货点j之间的路径的信息素浓度,ρ为轨迹的持久性参数。
[0039]
可选地,所述按照预设的编码方式对鱼骨型仓库的各个货物进行编码以得到多个初始的路径包括:
[0040]
根据公式(4)至公式(9)确定所述初始的路径,
[0041][0042]
其中,n
m
为第m个拣货小车需要完成的拣货点的数量,w
mi
为第m个拣货小车在拣选完拣货点i后增加的载重量,w
max
为所述拣货小车的最大载重量,m为所述拣货小车的总数量;
[0043][0044]
其中,v
mi
为第m个拣货小车在拣选完拣货点i后增加的体积,v
max
为所述拣货小车的最大容量;
[0045][0046][0047]
其中,为用于指示第m个拣货小车是否经过拣货点i和拣货点j之间的路径的指示变量;
[0048][0049][0050]
其中,n为所述拣货点的总数量,|r|为待拣货的拣货点的个数,r为待拣货的拣货点的集合。
[0051]
另一方面,本发明还提供一种基于鱼骨型仓库布局的多车拣选路径问题优化系统,所述系统包括处理器,所述处理器用于被机器读取以使得所述机器执行如上述任一所述的方法。
[0052]
再一方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有指令,所述指令用于被机器读取以使得所述机器执行如上述任一所述的方法。
[0053]
通过上述技术方案,本发明提供的基于鱼骨型仓库布局的多车拣选路径问题优化方法及系统基于蚁群算法的设计流程,结合粒子群算法的特点,采用与设计的染色体相匹配的交叉和变异方法。相较于现有技术而言,本技术的方法及系统由于在对拣货路径进行优化时,结合了鱼骨型仓库的特点,并对传统的蚁群算法进行改进,克服了现有技术中算法难以适应鱼骨型仓库的技术缺陷,从而提高了鱼骨型仓库的拣货的优化效率。
[0054]
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
[0055]
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
[0056]
图1是根据本发明的一个实施方式的基于鱼骨型仓库布局的多车拣选路径问题优化方法的流程图;
[0057]
图2是现有技术中鱼骨型仓库的平面示意图;
[0058]
图3是根据本发明的一个示例的待拣货位规模为15的三种算法的优化结果的统计表;
[0059]
图4是根据本发明的一个示例的待拣货位规模为20的三种算法的优化结果的统计表;
[0060]
图5是根据本发明的一个示例的待拣货位规模为25的三种算法的优化结果的统计表;
[0061]
图6是根据本发明的一个示例的待拣货位规模为30的三种算法的优化结果的统计表;
[0062]
图7是根据本发明的一个示例的待拣货位规模为15的三种算法的适应度的曲线
图;
[0063]
图8是根据本发明的一个示例的待拣货位规模为20的三种算法的适应度的曲线图;
[0064]
图9是根据本发明的一个示例的待拣货位规模为25的三种算法的适应度的曲线图;
[0065]
图10是根据本发明的一个示例的待拣货位规模为30的三种算法的适应度的曲线图。
具体实施方式
[0066]
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
[0067]
在本发明实施方式中,在未作相反说明的情况下,使用的方位词如“上、下、顶、底”通常是针对附图所示的方向而言的或者是针对竖直、垂直或重力方向上而言的各部件相互位置关系描述用词。
[0068]
另外,若本发明实施方式中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施方式之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
[0069]
如图1所示是根据本发明的一个实施方式的基于鱼骨型仓库布局的多车拣选路径问题优化方法的流程图。在该图1中,该方法可以包括:
[0070]
在步骤s10中,按照预设的编码方式对鱼骨型仓库的各个货位进行编码以得到多个初始的路径;
[0071]
在步骤s11中,计算每个路径的适应度,选择适应度最小的路径作为个体最优路径和全局最优路径;
[0072]
在步骤s12中,在待拣选的多个货位中随机选择多个出发点;
[0073]
在步骤s13中,根据预设的概率选择每个出发点对应的下一个拣货点以得到对应的第一拣选路径;
[0074]
在步骤s14中,按照预设的交叉和变异概率将每个第一拣选路径与全局最优路径执行第一次交叉操作;
[0075]
在步骤s15中,按照预设的交叉和变异概率将第一次交叉操作后的第一拣选路径与个体最优路径执行第二次交叉操作;
[0076]
在步骤s16中,按照预设的交叉和变异概率对第二次交叉操作后的第一拣选路径执行变异操作;
[0077]
在步骤s17中,分别计算变异操作后的第一拣选路径和第一次交叉操作前的第一拣选路径的适应度;
[0078]
在步骤s18中,针对每个变异操作后的第一拣选路径和第一次交叉操作前的第一拣选路径的组合,选择适应度较小的第一拣选路径加入新的第一拣选路径;
[0079]
在步骤s19中,根据第一拣选路径更新全局最优路径和个体最优路径;
[0080]
在步骤s20中,判断当前的迭代次数是否大于或等于预设的迭代次数阈值;
[0081]
在步骤s21中,在判断迭代次数小于迭代次数阈值的情况下,更新每两个拣货点之间的信息素浓度;
[0082]
在步骤s22中,将每个第一拣选路径的最后一个拣货点作为出发点,再次根据预设的概率选择每个出发点对应的下一个拣货点以得到对应的第一拣选路径(即返回执行步骤s13),并执行该方法的相应步骤,直到判断迭代次数大于或等于迭代次数阈值;
[0083]
在步骤s23中,在判断迭代次数大于或等于迭代次数阈值的情况下,将全局最优路径作为最优解并解码为最终的拣选路径。
[0084]
如图2所示是现有技术中鱼骨型仓库的平面分布示意图。在该图1中,该鱼骨型仓库可以包括直角三角形的a、b、c、d四个货架区。货架区b和货架区c的交界处公用同一拣货通道,且该货架区b和货架区c的设置于货架区a和货架区c之间。货架区a和货架区b之间通过一条斜通道隔离开,货架区b和货架区c之间通过一条竖直通道隔离开,货架区c和货架区d之间通过另一条斜通道隔离开。位于该鱼骨型仓库的边缘的货架距离仓库的外围的距离为w
c
。货架区a和货架区b、货架区c和货架区d之间的拣货通道与鱼骨型仓库的正面的角度为θ(θ的值可以是例如为45
°
)。单个货架的长度和宽度分别为g
a
和g
b
(g
a
、g
b
以及w
c
的值均为可以为1单位长度)。鱼骨型仓库的出口和入口均为如图2中的p&d。
[0085]
基于该如图2所示出的鱼骨型仓库的布局,在步骤s10中,生成的染色体(拣货路径)的编码方式可以是例如:[分区位置编码—巷道位置编码—货架位置编码—货位位置编码—货物重量编码—货物体积编码]。在该染色体中,按照如该图2中的鱼骨型仓库,对于货架区a、b、c、d的编码可以是依次为1、2、3、4。货架区a和货架区d可以按照从下到上依次进行编码,货架区b和货架区c可以以鱼骨型仓库平面布局图的垂直中心线为基准,分别按照从右到左、从左到右依次进行编码,第一条巷道编号可以为1,第二条巷道编号为2,以此类推。至于货架位置的编码,货架区a和货架区d可以按照待拣货点位于所在巷道的上侧和下侧进行编码,货架区b和货架区c可以按照待拣货点位于所在巷道的左侧和右侧进行编码,下侧或左侧编号为1,上侧或右侧编号为2;对于货位位置编码,各分区均可以按照由边界向p&d点的方向进行编码,即货架区a可以按照从左至右进行编码,货架区d可以按照从右至左进行编号,货架区b和货架区c均可以按照从上到下进行编号,第一个货位编号为1,第二个货位编号为2,以此类推。
[0086]
基于该步骤s10中所确定的编码方式,在步骤s11,需要针对每条染色体来计算其适应度,从而确定该染色体的优劣。虽然确定该适应度的方式可以是本领域人员所知的多种方式。但是,在为了降低计算量,且同时为了保证计算出的适应度能够准确反映染色体的优劣,在本发明的一个优选示例中,该适应度可以是采用公式(1)来计算,
[0087][0088]
其中,min f为该适应度,m为鱼骨型仓库内当前需要使用的拣货小车的数量,n
m
为第m个拣货小车需要完成的拣货点的数量,i、j为拣货点的编号,为第m个拣货小车从拣货点i到拣货点j的距离,为用于指示第m个拣货小车是否从拣货点i到拣货点j的指示变
量,为第m个拣货小车从鱼骨型仓库的出入口到第一个拣货点的距离,为第m个拣货小车从最后一个拣货点到鱼骨型仓库的出入口的距离。由于通过该公式(1)计算的是该条染色体对应的拣货路径的长度,因此,计算出的适应度越大,则该条染色体就越差。反之,则越好。
[0089]
另外,为了降低生成的染色体中不合理个体的数量,可以在随机生成染色时,针对生成的染色体采用预设的约束条件来进行筛选,从而提高生成的染色体的有效性,并最终达到减少算法的计算量的效果。即:该方法还可以根据公式(2)至(7)来生成该染色体的步骤,
[0090][0091]
其中,n
m
为第m个拣货小车需要完成的拣货点的数量,w
mi
为第m个拣货小车在拣选完拣货点i后增加的载重量,w
max
为拣货小车的最大载重量,m为拣货小车的总数量;
[0092][0093]
其中,v
mi
为第m个拣货小车在拣选完拣货点i后增加的体积,v
max
为拣货小车的最大容量;
[0094][0095][0096]
其中,为用于指示第m个拣货小车是否经过拣货点i和拣货点j之间的路径的指示变量;
[0097][0098][0099]
其中,n为拣货点的总数量,|r|为待拣货的拣货点的个数,r为待拣货的拣货点的集合。
[0100]
在该公式(2)至公式(7)中,公式(2)可以用于确保在拣货路径中,每个拣货小车的载重量均不会超重;公式(3)可以用于确保在拣货路径中,每个拣货小车运输的货物不会超出其最大容量;公式(4)和公式(5)可以用于确保每个拣货点只会有一个拣货小车前往拣货,避免出现多个拣货小车同时拣货导致的碰撞问题;公式(6)可以用于确保拣货路径中不存在小回路;公式(7)可以用于限定指示变量的数值。
[0101]
此外,考虑到鱼骨型仓库的特殊布局,在计算距离时,如果采用传统的距离公式,很显然无法实现鱼骨型仓库的距离计算,因此,在本发明的一个优选示例中,该距离的计算公式可以是公式(8)至(22):
[0102]
对于货架区a和货架区b任意两个拣货点之间的路径,在不经过斜通道的情况下,,该计算公式可以为公式(8),
[0103]
l=l
i
l
j

l
i

l
j
|x
i

x
j
|
·
s,
ꢀꢀ
(8)
[0104]
其中,l为计算出的距离,l
i
为拣货点i所在的巷道(拣货通道)的总长度,l
j
为拣货点j所在的巷道的总长度,x
i
为拣货点i所在的巷道的编号,s为相邻的竖直或水平的巷道与
斜通道之间的距离;
[0105]
对于货架区a和货架区b任意两个拣货点之间的路径,在穿过斜通道且不发生斜向位移的情况下,该计算公式可以为(9)和公式(10),
[0106]
l=2l
j
l
i

l
j
|x
i

x
j
|
·
δt,x
i
<x
j

ꢀꢀ
(9)
[0107]
2l
i

l
i
l
j
|x
i

x
j
|
·
t,x
i
<x
j

ꢀꢀ
(10)
[0108]
其中,δt为相邻的水平或竖直的巷道之间的距离;
[0109]
对于货架区a和货架区c任意两个拣货点之间的路径,在经过点p&d的情况下,该计算公式可以为公式(11),
[0110]
l=l
i
l
j

l
i

l
j
(x
i
x
j

2)
·
s,
ꢀꢀ
(11);
[0111]
对于货架区a和货架区c任意两个拣货点之间的路径,在不经过点p&d的情况下,该计算公式可以为公式(12),
[0112]
l=2l
i

l
i
l
j
(x
i
x
j

2)
·
δt,
ꢀꢀ
(12);
[0113]
对于货架区c和货架区a任意两个拣货点之间的路径,在经过斜通道的情况下,该计算公式可以为公式(13),
[0114]
l=l
i
l
j

l
i

l
j
(x
i
x
j

2)
·
s,
ꢀꢀ
(13);
[0115]
对于货架区c和货架区a任意两个拣货点之间的路径,在不经过斜通道的情况下,该计算公式可以为公式(14),
[0116]
l=2l
j
l
i

l
j
(x
i
x
j

2)
·
δt,
ꢀꢀ
(14);
[0117]
对于货架区a和货架区d任意两个拣货点之间的路径,在经过点p&d的情况下,该计算公式可以为公式(15),
[0118]
l=l
i
l
j

l
i

l
j
(x
i
x
j

2)
·
s,
ꢀꢀ
(15);
[0119]
对于货架区a和货架区d任意两个拣货点之间的路径,在不经过点p&d的情况下,该计算公式可以为公式(16),
[0120]
l=2l
j
l
i

l
j
(x
i
x
j

2)
·
δt,
ꢀꢀ
(16);
[0121]
对于货架区b和货架区c任意两个拣货点之间的路径,在经过斜通道的情况下,该计算公式可以为公式(17),
[0122]
l=l
i
l
j

l
i

l
j
(x
i
x
j

2)
·
s,
ꢀꢀ
(17);
[0123]
对于货架区b和货架区c任意两个拣货点之间的路径,在不经过斜通道的情况下,该计算公式可以为公式(18),
[0124]
l=l
i
l
j
(x
i
x
j

2)
·
δt,
ꢀꢀ
(18);
[0125]
对于同一个货架区任意两个拣货点之间的路径,在两个拣货点位于同一个巷道且不经过斜通道的情况下,该计算公式可以为公式(19),
[0126]
l=|l
i

l
j
|,
ꢀꢀ
(19);
[0127]
对于同一个货架区任意两个拣货点之间的路径,在两个拣货点位于不同的巷道且经过斜通道的情况下,该计算公式可以为公式(20),
[0128]
l=l
i
l
j

l
i

l
j
|x
i

x
j
|
·
s,
ꢀꢀ
(20);
[0129]
对于同一个货架区任意两个拣货点之间的路径,在两个拣货点位于不同的巷道且不经过斜通道的情况下,该计算公式可以为公式(21),
[0130]
l=l
i
l
j
|x
i

x
j
|
·
δt,
ꢀꢀ
(21);
[0131]
对于四个货架区中的任意点到点p&d的距离,该计算公式可以为公式(22),
[0132]
l=l
i

l
i
(x
i

1)
·
s,
ꢀꢀ
(22)。
[0133]
在计算出了各个路径的适应度后,可以将适应度最小的路径作为个体最优路径和全局最优路径。其中,个体最优路径可以是在每次迭代过程中生成的适应度最小的路径;全局最优路径可以为在历史迭代过程中所有生成的路径的中的适应度最小者。
[0134]
在通过步骤s10和步骤s11确定了初始的个体最优路径和全局最优路径后,通过步骤s13至步骤s22来对个体最优路径和全局最优路径进行更新,从而得到满足要求的最优路径。具体地,在步骤s12中,在待拣选的多个货位中随机选择多个出发点,该多个出发点可以是拣选小车的初始出发点。步骤s13根据预设的概率选择每个出发点对应得下一个拣货点以得到对应的第一拣货路径则是用于选择每个拣选小车从出发点出发前往的下一个拣货点。至于该预设的概率,在该实施方式中,可以是针对每个拣货点人为预设的概率。但是,这样的人为预设的方式显然无法达到高效规划的技术要求。因此,发明人通过采用蚁群算法的思想,针对该预设的概率,在每次迭代更新时,结合前一次的概率进行更新,从而实现动态的调整,最终达到高效规划的技术要求。具体地,该步骤s13可以是根据公式(23)选择每个出发点对应的下一个拣货点以得到每个出发点对应的第一拣选路径,
[0135][0136]
其中,为第k个出发点选择前往下一个拣货点的概率,i、j为拣货点的编号,τ
ij
(t)为t时刻拣货点i到拣货点j之间的路径的信息素浓度,α为拣货点i到拣货点j的轨迹相对重要性,γ
ij
(t)为t时刻拣货点i到拣货点j之间的路径的能见度,且d
ij
为拣货点i到拣货点j之间的距离,β为拣货点i到拣货点j的能见度相对重要性,allowed
k
为第k个出发点的小车当前能够前往的拣货点的集合。
[0137]
在确定完初步第一拣选路径后,步骤s14至步骤s16可以用于对初步确定的第一拣选路径进行进一步的更新。具体地,步骤s14可以用于将第一拣选路径和全局最优路径进行第一次交叉操作;步骤s15则可以用于将该第一拣选路径和个体最优路径进行第二次交叉操作;步骤s16则可以用于对第一拣选路径进行变异操作。至于该第一交叉操作、第二交叉操作以及变异操作的具体内容,则可以是本领域人员所知的多种方式,例如修改染色体上的一个或多个拣货点等。
[0138]
在步骤s14至步骤s16完成对第一拣货路径的更新后,需要确定更新后的第一拣选路径是否优于更新的拣选路径,因此可以再次计算每个第一拣选路径的适应度,并针对更新前和更新后的每个第一拣选路径进行一一对比,从而选择适应度更小的第一拣选路径加入新一代的个体(即新的第一拣选路径)中。最后,针对新的第一拣选路径,更新当前的个体最优路径和全局最优路径。
[0139]
步骤s20可以用于确定当前该方法是否已经得到最优的拣选路径。在步骤s20判断当前的迭代次数小于预设的迭代次数阈值的情况下,此时基于蚁群算法的思想,更新两个
拣货点之间的信息素浓度(步骤s21),再将每个第一拣选路径的最后一个拣货点作为出发点并返回执行步骤s13,从而继续新一轮的更新。
[0140]
至于上述信息素浓度的更新方式,虽然也可以是本领域人员所知的多种方式,但是,在本发明的一个优选示例中,发明人通过多次的实验比较,该信息素浓度的更新方式可以是根据公式(24)来进行更新,
[0141]
τ
ij
(t n)=ρ
·
τ
ij
(t) δτ
ij

ꢀꢀ
(24)
[0142]
其中,τ
ij
(t n)为t n时刻的拣货点i到拣货点j之间的路径的信息素浓度,τ
ij
(t)为t时刻的拣货点i到拣货点j之间的路径的信息素浓度,ρ为轨迹的持久性参数。
[0143]
此外,在步骤s20中,之所以采用判断迭代次数是否大于或等于预设的迭代次数阈值的方式,是因为在每次的迭代更新中,步骤s17都会筛选更优的个体进入新一代的第一拣选路径中。基于这样的原理,事实上,在迭代次数达到一定的值的情况下,适应度会趋于稳定,这也可以称之为算法的收敛。因此,只要设置合适的迭代次数阈值就能够保证该方法最终得到最优的拣选路径。但是,要得到这样的迭代次数阈值,需要进行大量的实验,并且针对不同的鱼骨型仓库,由于拣货点的数量的不同,同样的迭代次数阈值并不能够通用。因此,在本发明的一个优选示例中,该步骤s20还可以包括判断新生成的第一拣选路径是否全部与历史生成的第一拣选路径相同的步骤。在判断新生成的第一拣选路径全部与历史生成的第一拣选路径的情况下,此时说明整体的方法已经迭代进入收敛的阶段,因此可以直接将全局最优路径作为最优解并解码为最终的拣选路径。反之,则可以继续执行步骤s21。
[0144]
另一方面,本发明还提供一种基于鱼骨型仓库布局的多车拣选路径问题优化系统,所述系统包括处理器,所述处理器用于被机器读取以使得所述机器执行如上述任一所述的方法。
[0145]
再一方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有指令,所述指令用于被机器读取以使得所述机器执行如上述任一所述的方法。
[0146]
通过上述技术方案,本发明提供的基于鱼骨型仓库布局的多车拣选路径问题优化方法及系统基于蚁群算法的设计流程,结合粒子群算法的特点,采用与设计的染色体相匹配的交叉和变异方法。相较于现有技术而言,本技术的方法及系统由于在对拣货路径进行优化时,结合了鱼骨型仓库的特点,并对传统的蚁群算法进行改进,克服了现有技术中算法难以适应鱼骨型仓库的技术缺陷,从而提高了鱼骨型仓库的拣货的优化效率。
[0147]
为了进一步验证本发明提供的基于鱼骨型仓库布局的多车拣选路径问题优化方法及系统的技术效果,发明人基于如图2所示出的鱼骨型仓库,分别采用ga算法、gapso算法以及本发明提供的方法(ga

pso

aco)来进行优化。
[0148]
仿真实验的环境为:inter(r)core(tm)i5

4590 cpu@3.30ghz,操作系统为windows7,仿真软件为matlabr2017b。算法具体参数设置见表1所示:
[0149]
表1
[0150][0151]
在该表1中,ps表示初始种群规模;nc表示迭代次数;pc表示交叉概率;pm表示变异概率;c表示初始路径上的信息素浓度;a表示轨迹的相对重要性;b表示能见度的相对重要性;q表示单个蚂蚁的信息素浓度;r表示轨迹的持久性。
[0152]
按照步骤s10中的编码规则,以30个待拣货点为例,其编码的染色体如表2所示,
[0153]
表2
[0154][0155]
基于该表2中所示出的染色体,分别通过ga算法、gapso算法以及gp

pso

aco算法来进行优化,其优化结果如图3至图6所示。在该图3至图6中,本发明提供的方法在四种待拣货点规模下的适应度值(拣货路径的总距离)以及收敛速度都明显优于ga、gapso算法,由此可以看出本发明提供的方法由于集成了遗传算法的强全局搜索能力、蚁群算法的强局部搜索能力以及粒子群算法的高收敛速度,可以更快、更精确的获得问题的解。当然,由于混合算法整体设计流程基于蚁群算法,算法计算量大,在迭代相同的代数时,混合算法较另外两种法所需的运行时间稍长,但其收敛速度快,在待拣货物规模为15、20、25以及30下,平均迭代次数分别在20.4次、18.5次、35.5次以及68.2次时,适应度值已逼近最优解,迭代次数远远小于其余两种算法。
[0156]
ga、gapso以及ga

pso

aco算法的收敛曲线如图7至图10所示。由图中所示结果可以看出,在四种不同待拣货点规模下,混合算法的适应度值、迭代次数以及收敛速度都比另外两种算法要优。
[0157]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0158]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0159]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0160]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0161]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0162]
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
[0163]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0164]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0165]
以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献