路径规划方法、装置、存储介质及电子设备与流程

文档序号:31605465发布日期:2022-09-21 10:29阅读:142来源:国知局
路径规划方法、装置、存储介质及电子设备与流程

1.本公开涉及人工智能技术领域,尤其涉及一种路径规划方法、装置、存储介质及电子设备。


背景技术:

2.在很多行业中,需要人工对工作环境进行巡检,例如电力巡检、矿场巡检、机房巡检等。人工巡检的效率低下且人力成本大,并且在一些极端环境例如,高温、高湿、有毒或者其他危险环境下,人工巡检还存在较大安全风险以及无法及时进行巡检的问题。为了避免人工巡检存在的上述问题,目前通常采用智能机器人对工作环境进行巡检。而为了使智能机器人自动对巡检环境进行巡检,需提前对智能检机器人作路径规划,以使智能机器人按照规划好的路径自动对工作环境进行巡检。
3.现有技术中,通常采用蚁群算法或者遗传算法对智能机器人作路径规划。蚁群算法最早由意大利学者marco dorigo于1992年在他的博士论文中提出是一种用来寻找优化路径的概率型算法,其灵感来源于蚂蚁在寻找食物过程中发现路径的行为。这种算法具有分布计算、信息正反馈和启发式搜索的特征,本质上是进化算法中的一种启发式全局优化算法。但是,蚁群算法收敛速度慢,使得采用蚁群算法进行路径规划时效率较低。
4.遗传算法是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。该算法通过数学的方式,利用计算机仿真运算,将问题的求解过程转换成类似生物进化中的染色体基因的交叉、变异等过程。在求解较为复杂的组合优化问题时,通常能够较快地获得较好的优化结果。但是,遗传算法容易过早收敛,使得采用遗传算法确定的路径规划结果与实际的最佳巡检路径存在一定差距。
5.需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。


技术实现要素:

6.本公开的目的在于提供一种路径规划方法、装置、存储介质及电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的数据获取效率较低以及运算效率较低的问题。
7.本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
8.根据本公开的第一方面,提供一种路径规划方法,包括:
9.获取待巡检环境的栅格地图,并根据所述栅格地图生成巡检路径,所述巡检路径包括巡检节点;
10.将所述巡检路径作为遗传算法中父代种群的个体输入所述遗传算法,并获取所述遗传算法的最优解,所述最优解为所述遗传算法确定的第一巡检路径;
11.从所述第一巡检路径中确定任意两个巡检节点的第一连接次数;
12.将所述第一连接次数输入蚁群算法,并利用所述蚁群算法根据所述第一连接次数进行迭代运算,以获取最佳巡检路径。
13.在本公开的一种示例性实施例中,所述获取所述遗传算法的最优解包括:
14.循环第一执行预设步骤,直至满足预设条件,所述第一预设步骤包括:
15.获取所述父代种群中各所述个体的适应度,并根据各所述个体的适应度确定所述父代种群的平均适应度;
16.根据所述各所述个体的适应度和/或所述平均适应度对所述父代种群进行精英保留,得到精英保留结果;
17.根据所述平均适应度计算各所述个体的变异率和/或交叉率,并根据所述变异率和/或交叉率对所述精英保留结果进行变异和/或交叉运算,得到子代种群;
18.若确定不满足所述预设条件,则将所述子代种群作为所述父代种群,并再次执行所述第一预设步骤;
19.若确定满足所述预设条件,则从所述子代种群中确定所述最优解,所述最优解为所述子代种群中适应度最大的m个第一个体,m为大于1的整数。
20.在本公开的一种示例性实施例中,所述确定满足预设条件包括:
21.在循环执行所述第一预设步骤的第一次数大于或者等于第一预设阈值或所述子代种群中个体的适应度与所述父代种群中个体的适应度一致时,确定满足所述预设条件。
22.在本公开的一种示例性实施例中,所述根据所述各所述个体的适应度和/或所述平均适应度对所述种群进行精英保留,得到精英保留结果包括:
23.根据各所述个体的适应度对将各所述个体进行按照适应度由大到小的顺序排序,生成个体序列;
24.将所述个体序列前预设比例的个体进行复制,得到复制个体;
25.根据所述各所述个体的适应度和/或所述平均适应度从各所述个体以及所述复制个体中确定所述精英保留结果。
26.在本公开的一种示例性实施例中,所述根据所述各所述个体的适应度和/或所述平均适应度从各所述个体以及所述复制个体中确定所述精英保留结果包括:
27.根据所述各所述个体的适应度从各所述个体以及所述复制个体中适应度最大的n个个体,并将所述n个个体作为精英保留结果,n为大于1的整数;或,
28.根据所述各所述个体的适应度和所述平均适应度从各所述个体以及所述复制个体中确定适应度大于或者等于所述平均适应度的目标个体,并将所述目标个体作为所述精英保留结果。
29.在本公开的一种示例性实施例中,所述利用所述蚁群算法根据所述第一连接次数进行迭代运算包括:
30.循环执行第二预设步骤,直至循环执行所述第二预设步骤的第二次数大于或者等于第二预设阈值,所述第二预设步骤包括:
31.根据第一连接次数确定所述任意两个巡检节点的第一转移概率;
32.在所述起始节点放置蚂蚁进行巡检,并通过所述第一转移概率确定蚂蚁的下一待巡检节点,以使蚂蚁巡检所述下一待巡检节点;
33.在蚂蚁到达所述下一待巡检节点时,将所述下一待巡检节点作为当前巡检节点并获取蚂蚁在所述当前巡检节点的位置信息;
34.若根据所述位置信息确定蚂蚁未到达所述终止节点,则根据所述第一转移概率确定蚂蚁的下一待巡检节点,以便蚂蚁巡检所述下一待巡检节点;
35.若根据所述位置信息确定蚂蚁到达所述终止节点,则获取蚂蚁的第二巡检路径。
36.在本公开的一种示例性实施例中,所述获取蚂蚁的第二巡检路径后,所述方法还包括:
37.若确定所述第二次数小于所述第二预设阈值,则从所述第二巡检路径确定所述任意两个巡检节点的第二连接次数;
38.计算所述第一连接次数与所述第二连接次数的和值;
39.将所述和值作为所述第一连接次数,并再次执行所述第二预设步骤。
40.在本公开的一种示例性实施例中,所述获取所述最佳巡检路径包括:
41.若所述第二次数大于或者等于所述第二预设阈值,则从所述第二巡检路径中确定长度最短的目标巡检路径;
42.将所述目标巡检路径作为所述最佳巡检路径。
43.在本公开的一种示例性实施例中,所述根据所述第一转移概率确定蚂蚁的下一待巡检节点包括:
44.获取蚂蚁的禁忌表,所述禁忌表包括蚂蚁巡检过的巡检节点;
45.根据所述禁忌表确定待巡检节点;
46.计算所述当前巡检节点与所述待巡检节点的第二转移概率;
47.将所述第二转移概率最大的所述待巡检节点作为所述下一巡检节点。
48.在本公开的一种示例性实施例中,所述根据第一连接次数确定所述任意两个巡检节点的转移概率包括:
49.根据所述第一连接次数以及信息素挥发因子计算所述任意两个节点的信息素,所述信息素挥发因子与所述第二次数成负相关;
50.根据所述信息素以及所述任意两个节点的距离计算所述第一转移概率。
51.根据本公开的第二方面,提供一种路径规划装置,包括:
52.巡检路径生成模块,用于获取待巡检环境的栅格地图,并根据所述栅格地图生成巡检路径,所述巡检路径包括巡检节点;
53.最优解获取模块,用于将所述巡检路径作为遗传算法中父代种群的个体输入所述遗传算法,并获取所述遗传算法的最优解,所述最优解为所述遗传算法确定的第一巡检路径;
54.连接次数确定模块,用于从所述第一巡检路径中确定任意两个巡检节点的第一连接次数;
55.最佳巡检路径确定模块,用于将所述第一连接次数输入蚁群算法,并利用所述蚁群算法根据所述第一连接次数进行迭代运算,以获取最佳巡检路径。
56.根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中任一项所述方法的步骤。
57.根据本公开的第四方面,提供一种电子设备,包括:
58.处理器;以及
59.存储器,用于存储所述处理器的可执行指令;
60.其中,所述处理器配置为经由执行所述可执行指令来执行第一方面中任一项所述方法的步骤。
61.本公开的实施例提供的技术方案可以包括以下有益效果:
62.综上所述,本公开提供的方法,通过获取待巡检环境的栅格地图,并根据所述栅格地图生成巡检路径,所述巡检路径包括巡检节点;将所述巡检路径作为遗传算法中父代种群的个体输入所述遗传算法,并获取所述遗传算法的最优解,所述最优解为所述遗传算法确定的第一巡检路径;从所述第一巡检路径中确定任意两个巡检节点的第一连接次数;将所述第一连接次数输入蚁群算法,并利用所述蚁群算法根据所述第一连接次数进行迭代运算,以获取最佳巡检路径,先采用遗传算法加快收敛速度,提高路径规划效率,再利用蚁群算法获取最佳巡检路径,提高路径规划结果的准确性。
63.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
64.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
65.图1示意性地示出了本公开示例性实施例中一种路径规划方法的流程图;
66.图2示意性地示出了本公开示例性实施例中一种路径规划系统的架构图;
67.图3示意性地示出了本公开示例性实施例中一种待巡检环境的栅格地图的示意图;
68.图4示意性地示出了本公开示例性实施例中一种遗传算法最优解获取方法的流程图;
69.图5示意性地示出了本公开示例性实施例中一种迭代运算方法的流程图;
70.图6示意性地示出了本公开示例性实施例中一种最佳巡检路径的示意图;
71.图7示意性地示出了本公开示例性实施例中一种路径规划装置的方框图;
72.图8示意性地示出了本公开示例性实施例中一种存储介质的示意图;
73.图9示意性地示出了本公开示例性实施例中一种电子设备的方框图。
74.在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
75.下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
76.本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法
或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
77.在本公开的一种示例性实施例中,首先提供了一种路径规划方法。参考图1所示,该路径规划方法可以包括以下步骤:
78.s11、获取待巡检环境的栅格地图,并根据所述栅格地图生成巡检路径,所述巡检路径包括巡检节点;
79.s12、将所述巡检路径作为遗传算法中父代种群的个体输入所述遗传算法,并获取所述遗传算法的最优解,所述最优解为所述遗传算法确定的第一巡检路径;
80.s13、从所述第一巡检路径中确定任意两个巡检节点的第一连接次数;
81.s14、将所述第一连接次数输入蚁群算法,并利用所述蚁群算法根据所述第一连接次数进行迭代运算,以获取最佳巡检路径。
82.综上所述,本公开提供的方法,通过获取待巡检环境的栅格地图,并根据所述栅格地图生成巡检路径,所述巡检路径包括巡检节点;将所述巡检路径作为遗传算法中父代种群的个体输入所述遗传算法,并获取所述遗传算法的最优解,所述最优解为所述遗传算法确定的第一巡检路径;从所述第一巡检路径中确定任意两个巡检节点的第一连接次数;将所述第一连接次数输入蚁群算法,并利用所述蚁群算法根据所述第一连接次数进行迭代运算,以获取最佳巡检路径,先采用遗传算法加快收敛速度,提高路径规划效率,再利用蚁群算法获取最佳巡检路径,提高路径规划的准确性。
83.下面,将结合附图及实施例对本示例实施方式中的路径规划方法中各个步骤进行更详细的说明。
84.在s11中,获取待巡检环境的栅格地图,并根据所述栅格地图生成巡检路径,所述巡检路径包括巡检节点。
85.在本公开的一种示例性实施例中,参考图2所示的系统架构,可以包括:智能终端设备201和服务器203等,其中,智能终端设备201可以设置在路径巡检设备例如智能机器人上。智能终端设备201和服务器203之间,可以通过网络202进行数据传输。网络可以包括各种连接类型,例如有线通信链路、无线通信链路等等。上述的路径规划方法可以执行在服务器端、智能终端设备或者由智能终端设备与服务器端协作执行。以上述的方法执行在服务器端为例,服务器可以获取待巡检环境的栅格地图,并根据所述栅格地图获取最佳巡检路径。进一步地,服务器获取最佳巡检路径后,根据最佳巡检路径向智能机器人发送巡检指令,以使智能机器人按照最佳巡检路径对待巡检环境进行巡检。
86.在本公开的一种示例性实施例中,待巡检环境可以为电力巡检、矿场巡检、机房巡检等巡检环境,此处不做具体限制。待巡检环境的栅格地图如图2所示,所示栅格地图上包括多个栅格,每个栅格表示巡检环境的一个节点。其中,每个栅格内的数字表示该节点的位置信息。在本公开的一种示例性实施例中,可以用连续的数组中的各个数值表示待巡检环境各个节点的位置信息。进一步地,所述栅格地图上的空白栅格待巡检环境中表示可以经过的节点,所述栅格地图上的带虚线的栅格表示待巡检环境中需要巡检的节点(以下简称为巡检节点),所述栅格地图上的带实线的栅格表示待巡检环境中的不可经过的节点,即障碍节点。
87.进一步地,获取所述栅格地图后,根据所述栅格地图生成巡检路径。其中,每条路
径均由所有巡检节点和可以经过的节点组成。
88.在步骤s12中,将所述巡检路径作为遗传算法中父代种群的个体输入所述遗传算法,并获取所述遗传算法的最优解,所述最优解为所述遗传算法确定的第一巡检路径。
89.基于上述内容,在本公开的一种示例性实施例中,如图4所示,上述获取所述遗传算法的最优解包括:
90.循环第一执行预设步骤,直至满足预设条件,所述第一预设步骤包括:
91.s121、获取所述父代种群中各所述个体的适应度,并根据各所述个体的适应度确定所述父代种群的平均适应度;
92.s122、根据所述各所述个体的适应度和/或所述平均适应度对所述父代种群进行精英保留,得到精英保留结果;
93.s123、根据所述平均适应度计算各所述个体的变异率和/或交叉率,并根据所述变异率和/或交叉率对所述精英保留结果进行变异和/或交叉运算,得到子代种群;
94.s124、若确定不满足所述预设条件,则将所述子代种群作为所述父代种群,并再次执行所述第一预设步骤;
95.s125、若确定满足所述预设条件,则从所述子代种群中确定所述最优解,所述最优解为所述子代种群中适应度最大的m个第一个体,m为大于1的整数。
96.在本公开的一种示例性实施例中,可以根据公式(1)计算父代种群中各所述个体的适应度。公式(1)如下所示:
[0097][0098]
其中,fit表示适应度,l(pi+p
i+1
)表示各所述个体(即各所述巡检路径)中每相邻两个节点的距离,pi和p
i+1
表示两个相邻的节点,t表示该巡检路径中节点的数量。
[0099]
进一步地,确定各所述个体的适应度后,根据各所述个体的适应度确定所述父代种群的平均适应度,并根据所述各所述个体的适应度和/或所述平均适应度对所述父代种群进行精英保留,得到精英保留结果。
[0100]
在本公开的一种示例性实施例中,上述根据所述各所述个体的适应度和/或所述平均适应度对所述种群进行精英保留,得到精英保留结果包括:
[0101]
根据各所述个体的适应度对将各所述个体进行按照适应度由大到小的顺序排序,生成个体序列;将所述个体序列前预设比例的个体进行复制,得到复制个体;根据所述各所述个体的适应度和/或所述平均适应度从各所述个体以及所述复制个体中确定所述精英保留结果。
[0102]
例如,各所述个体进行按照适应度由大到小的顺序排序生成的个体序列为a、b、c、d、e、f、g、h。将所述个体序列前1/4的个体复制两份,即将个体a和b分别复制两份,再将所述个体序列中间1/2的个体复制一份,即将c、d、e、f复制一份,得到复制个体。再根据所述各所述个体的适应度和/或所述平均适应度从各所述个体以及所述复制个体中确定所述精英保留结果。
[0103]
在本公开的一种示例性实施例中,上根据所述各所述个体的适应度和/或所述平均适应度从各所述个体以及所述复制个体中确定所述精英保留结果包括:
[0104]
根据所述各所述个体的适应度从各所述个体以及所述复制个体中适应度最大的n个个体,并将所述n个个体作为精英保留结果,n为大于1的整数;或,根据所述各所述个体的适应度和所述平均适应度从各所述个体以及所述复制个体中确定适应度大于或者等于所述平均适应度的目标个体,并将所述目标个体作为所述精英保留结果。
[0105]
例如,n的取值为8,各所述个体分别为a、b、c、d、e、f、g、h。复制个体为a、a、b、b、c、d、e、f。则从各所述个体和所述复制个体中确定的适应度最大的8个个体分别为a、b、c、a、a、b、b、c,再将适应度最大的8个个体a、b、c、a、a、b、b、c作为精英保留结果。
[0106]
再如,所述平均适应度在个体d的适应度和个体e的适应度之间,则从各所述个体和所述复制个体中确定的目标个体为a、b、c、d、a、a、b、b、c、d,再将目标个体a、b、c、d、a、a、b、b、c、d作为精英保留结果。
[0107]
进一步地,得到所述精英保留结果后,根据所述平均适应度计算各所述个体的变异率和/或交叉率,并根据所述变异率和/或交叉率对所述精英保留结果进行变异和/或交叉运算,得到子代种群。
[0108]
在本公开的一种示例性实施例中,可以根据公式(2)各所述个体的变异率和/或交叉率。公式(2)如下所示:
[0109][0110]
其中,pc表示交叉率,pm表示变异率,n1表示各所述个体中适应度大于或者等于所述平均适应度的个体的适应度,n2表示平均适应度值,n

表示各所述个体中的最大适应度。
[0111]
在本公开的一种示例性实施例中,若父代种群中的个体a为123456789,父代种群中的个体b为142358679,将a、b进行交叉运算时,可以a中节点5后的节点更换为b中节点5后的节点,并将b中节点5的前的节点更换为a中节点5前的节点。将a、b进行交叉运算后,得到的子代种群中的个体a和b分别为123458679以及142356789。
[0112]
由公式(2)可知,个体的适应度越高,其交叉率越大,变异率越小。个体的适应度越低,其交叉率越小,变异率越大。因此,种群中优良个体的基因能够得到较好的保存,不会被破坏。并且对于种群中的不良个体来说,有利于引入新的基因,可以提高遗传算法的性能。
[0113]
在本公开的一种示例性实施例中,父代种群中的个体a为123456789,在对a进行变异运算时,可以将a中节点3和节点7互换,生成的子代种群中的个体a为127456389。
[0114]
进一步地,得到子代种群后,若确定不满足所述预设条件,则将所述子代种群作为所述父代种群,并再次执行所述第一预设步骤;若确定满足所述预设条件,则从所述子代种群中确定所述最优解,所述最优解为所述子代种群中适应度最大的m个第一个体,m为大于1的整数。
[0115]
在本公开的一种示例性实施例中,上述确定满足预设条件包括:
[0116]
在循环执行所述第一预设步骤的第一次数大于或者等于第一预设阈值或所述子代种群中个体的适应度与所述父代种群中个体的适应度一致时,确定满足所述预设条件。
[0117]
在本公开的一种示例性实施例中,若第一预设阈值为100,则所述第一次数大于或者等于100时,确定满足预设条件,并从所述子代种群中获取适应度最大的m个第一个体作为所述最优解。
[0118]
在本公开的另一种示例性实施例中,当所述子代种群中个体的适应度与所述父代
种群中个体的适应度一致时确定满足预设条件,并从所述子代种群中获取适应度最大的m个第一个体作为所述最优解。
[0119]
在步骤s13中,从所述第一巡检路径中确定任意两个巡检节点的第一连接次数。
[0120]
在本公开的一种示例性实施例中,在获取的遗传算法的最优解m个第一个体即m条第一巡检路径中,计算任意两个巡检点(i,j)的第一连接次数s
ij
(0)。
[0121]
在步骤s14中,将所述第一连接次数输入蚁群算法,并利用所述蚁群算法根据所述第一连接次数进行迭代运算,以获取最佳巡检路径。
[0122]
基于上述内容,如图5所示,在本公开的一种示例性实施例中,上述利用所述蚁群算法根据所述第一连接次数进行迭代运算包括:
[0123]
循环执行第二预设步骤,直至循环执行所述第二预设步骤的第二次数大于或者等于第二预设阈值,所述第二预设步骤包括:
[0124]
s141、根据第一连接次数确定所述任意两个巡检节点的第一转移概率;
[0125]
s142、在所述起始节点放置蚂蚁进行巡检,并通过所述第一转移概率确定蚂蚁的下一待巡检节点,以使蚂蚁巡检所述下一待巡检节点;
[0126]
s143、在蚂蚁到达所述下一待巡检节点时,将所述下一待巡检节点作为当前巡检节点并获取蚂蚁在所述当前巡检节点的位置信息;
[0127]
s144、若根据所述位置信息确定蚂蚁未到达所述终止节点,则根据所述第一转移概率确定蚂蚁的下一待巡检节点,以便蚂蚁巡检所述下一待巡检节点;
[0128]
s145、若根据所述位置信息确定蚂蚁到达所述终止节点,则获取蚂蚁的第二巡检路径。
[0129]
在本公开的一种示例性实施例中,上述根据第一连接次数确定所述任意两个巡检节点的转移概率包括:
[0130]
根据所述第一连接次数以及信息素挥发因子计算所述任意两个节点的信息素,所述信息素挥发因子与所述第二次数成负相关;根据所述信息素以及所述任意两个节点的距离计算所述第一转移概率。
[0131]
具体来说,可以根据公式(3)计算所述信息素。公式(3)如下所示:
[0132][0133]
其中,τ表示所述信息素,t表示所述第二次数,ρ表示归一化的所述第二次数,f(ρ)表示信息素挥发因子,τ
ij
表示所述信息素,n表示所述待巡检环境中所述巡检节点的数量,λ表示尺度的参数,u表示位置的参数。
[0134]
此处需要说明的是,在循环执行所述第二预设步骤前,即t=0时,所述第一连接次数是根据遗传算法的最优解m条第一巡检路径计算的s
ij
(0),τ
ij
(0)=s
ij
(0)+p,p为信息素常量,且p大于0。
[0135]
由公式(3)可知,信息素挥发因子采用了拉普拉斯概率密度函数分布,可以适用于信息素挥发因子的更新,在已有一定信息素基础上,在蚁群算法迭代初期增大信息素挥发因子,加快蚁群算法的搜索最佳巡检路径的速度;在算法迭代后期,减小信息素挥发因子,
加快蚁群算法的收敛速度。
[0136]
进一步地,确定信息素后,根据公式(4)计算所述第一转移概率。公式(4)如下所示:
[0137][0138]
其中,ak={c-tabuk},tabuk表示第k个蚂蚁的禁忌表,用于统计第k个蚂蚁巡检过的巡检节点,k小于或者等于m,m表示蚂蚁的数量。c表示所述巡检节点的集合,α表示信息素启发因子,η
is
表示巡检节点i和巡检节点s之间的期望度,β表示期望度启发因子,η
is
=1/d
is
,d
is
表示巡检节点i至巡检节点s的距离。
[0139]
在本公开的一种示例性实施例中,上述根据所述第一转移概率确定蚂蚁的下一待巡检节点包括:
[0140]
获取蚂蚁的禁忌表,所述禁忌表包括蚂蚁巡检过的巡检节点;根据所述禁忌表确定待巡检节点;计算所述当前巡检节点与所述待巡检节点的第二转移概率;将所述第二转移概率最大的所述待巡检节点作为所述下一巡检节点。
[0141]
具体来说,公式(4)中的j即为除所述禁忌表中的巡检节点外待巡检节点。当当前巡检节点为i时,分别计算所述当前巡检节点与每个所述待巡检节点的第二转移概率再从每个所述待巡检节点对应的中确定最大值,将所述最大值对应的所述待巡检节点作为所述下一巡检节点。
[0142]
基于上述内容,在本公开的一种示例性实施例中,上述获取蚂蚁的第二巡检路径后,所述方法还包括:
[0143]
s146、若确定所述第二次数小于所述第二预设阈值,则从所述第二巡检路径确定所述任意两个巡检节点的第二连接次数;
[0144]
s147、计算所述第一连接次数与所述第二连接次数的和值;
[0145]
s148、将所述和值作为所述第一连接次数,并再次执行所述第二预设步骤。
[0146]
具体来说,当所述第二次数t小于所述第二预设阈值,从获取m个蚂蚁的第二巡检路径后,从m条第二巡检路径中获取所述任意两个巡检节点i和j的第二连接次数,再计算所述第一连接次数与所述第二连接次数的和值,并将所述和值作为所述第一连接次数,并再次执行所述第二预设步骤。
[0147]
基于上述内容,在本公开的一种示例性实施例中,上述获取所述最佳巡检路径包括:
[0148]
s149、若所述第二次数大于或者等于所述第二预设阈值,则从所述第二巡检路径中确定长度最短的目标巡检路径;
[0149]
s150、将所述目标巡检路径作为所述最佳巡检路径。
[0150]
具体来说,当所述第二次数t大于或者等于所述第二预设阈值,则从m条第二巡检路径中获取长度最短的目标巡检路径作为最佳巡检路径。
[0151]
在本公开的一种示例性实施例中,采用本公开的方法对图2所述的待巡检环境的栅格地图进行路径规划后,最终获取的最佳巡检路径可以从如图6所示。在图6中,起始节点
和终止节点均为242,蚂蚁在242开始对待巡检环境进行巡检,并在巡检结束后,从242出待巡检环境。最终获取的最佳巡检路径为图6中的线条。
[0152]
综上所述,本公开的方法,一方面先充分利用遗传算法的并行性、高效性、全局搜索性等优越性能作为蚁群算法求解最佳巡检路径的先验信息,通过改变交叉率、变异率的固有计算方式,能够快速获取信息素,然后充分利用蚁群算法的鲁棒性、正反馈性,提高最佳巡检路径的搜索效率。再一方面,通过改进蚁群算法中的信息素挥发因子,提高前期信息素挥发因子,能够提高蚁群算法的搜索速度,后期降低信息素挥发因子,能够加快蚁群算法的收敛速度,进而能够更快并且更准确的获取最佳巡检路径。
[0153]
在介绍了本发明示例性实施方式的路径规划方法之后,接下来,参考图7对本发明示例性实施方式的路径规划装置进行描述。
[0154]
参考图7所示,本发明示例性实施方式的路径规划装置70可以包括:巡检路径生成模块701、最优解获取模块702、连接次数确定模块703以及最佳巡检路径确定模块704。其中:
[0155]
巡检路径生成模块701,用于获取待巡检环境的栅格地图,并根据所述栅格地图生成巡检路径,所述巡检路径包括巡检节点;
[0156]
最优解获取模块702,用于将所述巡检路径作为遗传算法中父代种群的个体输入所述遗传算法,并获取所述遗传算法的最优解,所述最优解为所述遗传算法确定的第一巡检路径;
[0157]
连接次数确定模块703,用于从所述第一巡检路径中确定任意两个巡检节点的第一连接次数;
[0158]
最佳巡检路径确定模块704,用于将所述第一连接次数输入蚁群算法,并利用所述蚁群算法根据所述第一连接次数进行迭代运算,以获取最佳巡检路径。
[0159]
在本公开的一种示例性实施例中,所述最优解获取模块包括:
[0160]
第一执行预设步骤执行单元,用于循环第一执行预设步骤,直至满足预设条件,所述第一预设步骤包括:
[0161]
获取所述父代种群中各所述个体的适应度,并根据各所述个体的适应度确定所述父代种群的平均适应度;
[0162]
根据所述各所述个体的适应度和/或所述平均适应度对所述父代种群进行精英保留,得到精英保留结果;
[0163]
根据所述平均适应度计算各所述个体的变异率和/或交叉率,并根据所述变异率和/或交叉率对所述精英保留结果进行变异和/或交叉运算,得到子代种群;
[0164]
若确定不满足所述预设条件,则将所述子代种群作为所述父代种群,并再次执行所述第一预设步骤;
[0165]
最优解确定单元,用于若确定满足所述预设条件,则从所述子代种群中确定所述最优解,所述最优解为所述子代种群中适应度最大的m个第一个体,m为大于1的整数。
[0166]
在本公开的一种示例性实施例中,所述第一执行预设步骤执行单元包括:
[0167]
预设条件确定单元,用于在循环执行所述第一预设步骤的第一次数大于或者等于第一预设阈值或所述子代种群中个体的适应度与所述父代种群中个体的适应度一致时,确定满足所述预设条件。
[0168]
在本公开的一种示例性实施例中,所述第一执行预设步骤执行单元还包括:
[0169]
个体排序单元,用于根据各所述个体的适应度对将各所述个体进行按照适应度由大到小的顺序排序,生成个体序列;
[0170]
个体复制单元,用于将所述个体序列前预设比例的个体进行复制,得到复制个体;
[0171]
精英保留单元,用于根据所述各所述个体的适应度和/或所述平均适应度从各所述个体以及所述复制个体中确定所述精英保留结果。
[0172]
在本公开的一种示例性实施例中,所述精英保留单元包括:
[0173]
第一精英保留单元,用于根据所述各所述个体的适应度从各所述个体以及所述复制个体中适应度最大的n个个体,并将所述n个个体作为精英保留结果,n为大于1的整数;或,
[0174]
第二精英保留单元,用于根据所述各所述个体的适应度和所述平均适应度从各所述个体以及所述复制个体中确定适应度大于或者等于所述平均适应度的目标个体,并将所述目标个体作为所述精英保留结果。
[0175]
在本公开的一种示例性实施例中,所述最佳巡检路径确定模块包括:
[0176]
第二预设步骤执行单元,用于循环执行第二预设步骤,直至循环执行所述第二预设步骤的第二次数大于或者等于第二预设阈值,所述第二预设步骤包括:
[0177]
根据第一连接次数确定所述任意两个巡检节点的第一转移概率;
[0178]
在所述起始节点放置蚂蚁进行巡检,并通过所述第一转移概率确定蚂蚁的下一待巡检节点,以使蚂蚁巡检所述下一待巡检节点;
[0179]
在蚂蚁到达所述下一待巡检节点时,将所述下一待巡检节点作为当前巡检节点并获取蚂蚁在所述当前巡检节点的位置信息;
[0180]
若根据所述位置信息确定蚂蚁未到达所述终止节点,则根据所述第一转移概率确定蚂蚁的下一待巡检节点,以便蚂蚁巡检所述下一待巡检节点;
[0181]
若根据所述位置信息确定蚂蚁到达所述终止节点,则获取蚂蚁的第二巡检路径。
[0182]
在本公开的一种示例性实施例中,所述第二预设步骤执行单元还包括:
[0183]
第二连接次数确定单元,用于若确定所述第二次数小于所述第二预设阈值,则从所述第二巡检路径确定所述任意两个巡检节点的第二连接次数;
[0184]
和值计算单元,用于计算所述第一连接次数与所述第二连接次数的和值;
[0185]
第一连接次数确定单元,用于将所述和值作为所述第一连接次数,并再次执行所述第二预设步骤。
[0186]
在本公开的一种示例性实施例中,所述最佳巡检路径确定模块还包括:
[0187]
目标巡检路径确定单元,用于若所述第二次数大于或者等于所述第二预设阈值,则从所述第二巡检路径中确定长度最短的目标巡检路径;
[0188]
最佳巡检路径确定单元,用于将所述目标巡检路径作为所述最佳巡检路径。
[0189]
在本公开的一种示例性实施例中,所述第二预设步骤循环执行单元还包括:
[0190]
禁忌表获取单元,用于获取蚂蚁的禁忌表,所述禁忌表包括蚂蚁巡检过的巡检节点;
[0191]
待巡检节点确定单元,用于根据所述禁忌表确定待巡检节点;
[0192]
第二转移概率计算单元,用于计算所述当前巡检节点与所述待巡检节点的第二转
移概率;
[0193]
下一巡检节点确定单元,用于将所述第二转移概率最大的所述待巡检节点作为所述下一巡检节点。
[0194]
在本公开的一种示例性实施例中,所述第二预设步骤执行单元还包括:
[0195]
信息素确定单元,用于根据所述第一连接次数以及信息素挥发因子计算所述任意两个节点的信息素,所述信息素挥发因子与所述第二次数成负相关;
[0196]
第一转移概率计算单元,用于根据所述信息素以及所述任意两个节点的距离计算所述第一转移概率。
[0197]
由于本发明实施方式的路径规划装置的各个功能模块与上述路径规划方法发明实施方式中相同,因此在此不再赘述。
[0198]
在介绍了本发明示例性实施方式的路径规划方法、路径规划装置之后,接下来,参考图8对本发明示例性实施方式的存储介质进行说明。
[0199]
参考图8所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0200]
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0201]
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0202]
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
[0203]
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言-诸如java、c++等,还包括常规的过程式程序设计语言-诸如"c"语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0204]
在介绍了本发明示例性实施方式的存储介质之后,接下来,参考图9对本发明示例性实施方式的电子设备进行说明。
[0205]
图9显示的电子设备90仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0206]
如图9所示,电子设备90以通用计算设备的形式表现。电子设备90的组件可以包括但不限于:上述至少一个处理单元910、上述至少一个存储单元920、连接不同系统组件(包括存储单元920和处理单元910)的总线930、显示单元940。
[0207]
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元910执行,使得所述处理单元910执行本说明书上述"示例性方法"部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元910可以执行如图1中所示的步骤s11至步骤s14。
[0208]
存储单元920可以包括易失性存储单元,例如随机存取存储单元(ram)9201和/或高速缓存存储单元9202,还可以进一步包括只读存储单元(rom)9203。存储单元920还可以包括具有一组(至少一个)程序模块9205的程序/实用工具9204,这样的程序模块9205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0209]
总线930可以包括数据总线、地址总线和控制总线。
[0210]
电子设备90也可以与一个或多个外部设备100(例如键盘、指向设备、蓝牙设备等)通信,这种通信可以通过输入/输出(i/o)接口950进行。电子设备90还包括显示单元940,其连接到输入/输出(i/o)接口950,用于进行显示。并且,电子设备90还可以通过网络适配器960与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器960通过总线930与电子设备90的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备90使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0211]
应当注意,尽管在上文详细描述中提及了路径规划装置的若干模块或子模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
[0212]
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
[0213]
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1