一种基于灰狼算法的路径规划方法与流程

文档序号:19675903发布日期:2020-01-10 23:19阅读:1372来源:国知局
一种基于灰狼算法的路径规划方法与流程

本发明涉及路径规划技术领域,尤其涉及一种基于灰狼算法的路径规划方法。



背景技术:

旅行商问题(travelingsalesmanproblem,tsp)是计算机科学领域中一个经典问题,同时也是科学与工程领域中经常遇到的优化问题,如物流配送中的车辆调度、地下公路网络的建设、城市地下通道的建设、工业上的切割路径规划等都可以通过转换成tsp问题来进行求解。因此,研究tsp问题的求解算法,使其能够快速地找到有效解具有很高的实际应用价值。

tsp问题被描述为:一个旅行商需要访问n个城市,可以从任意城市出发,并且每个城市只访问一次,最终回到始发的城市,他想知道如何安排路线使得旅行费用最低。tsp问题已经被证明是一类np-难问题,即目前无法找到一个在多项式时间内得到该类问题最优解的有效算法。

灰狼算法(greywolfoptimizer,gwo)是澳大利亚学者seyedalimirjalili于2014年根据灰狼种群的习性提出的一种元启发式算法。该算法根据灰狼喜欢群居的特性引入了社会统治阶层。在种群中,将其分为四个阶层:α狼(负责对种群发出命令的优势狼,即领头狼);β狼(辅助头狼做出决策等活动的优势狼);δ狼(侦察、站岗、狩猎和看护幼崽等相关活动是这种狼的主要活动,是服从于前两种狼的优势狼。);ω狼(服从于前三种优势狼,是位于统治阶级中最底端的狼)。算法利用根据灰狼种群在搜寻、围捕猎物的行为构建算法的数学描述公式,通过迭代获取最优解。通过基准函数的仿真结果表明,灰狼算法能够比遗传算法、粒子群算法等更快更好地完成最优解的搜寻。虽然灰狼算法在连续空间表现出了较好地应用效果,但是应对tsp问题时,在离散空间下的表现不是十分满意。因此,需要对传统的灰狼算进行改进,来更有效地处理tsp问题。



技术实现要素:

根据现有技术存在的问题,本发明公开了一种基于灰狼算法的路径规划方法,具体包括如下步骤:

s1:获取各个城市的地理位置信息、计算任意两城市之间的距离并构建图g(v,e);

s2:设置最大迭代次数,并将当前迭代次数初始化为1;

s3:根据集合的表示形式描述tsp问题的多个初始解;

s4:根据城市之间的距离计算初始解的适应值,并选取当前适应值最优的解为α狼,次优的为β狼,第三优的为δ狼,其余的解为ω狼;

s5:更新各个灰狼的当前位置及其适应值;

s6:根据更新后的灰狼解的适应值,选出新的α狼、β狼以及δ狼;

s7:更新迭代次数,令当前迭代次数加1;

s8:判断该算法是否到达终止条件,若不满足终止条件,则跳转到s5继续进行;若满足条件,则继续后续步骤;

s9:将α狼的位置定义为满足终止条件的最优解,其中α狼的位置为最优路径、α狼的适应值为路径值。

进一步的,所述适应值采用如下方式计算:

其中,d为路径的总长度,即适应值;n为城市的总数量;d(pi,pi+1)表示从从当前城市i到下一个城市的距离。

进一步的,s5中更新各个灰狼的当前位置及其适应值时:

首先进行距离判断:通过ω狼对自身与α狼、β狼和δ狼的距离判断出灰狼的运动方向和趋势,保留自身与优质狼相同的边,其距离的判断公式如下:

其中,xα(t),xβ(t),xδ(t)分别为α狼、β狼以及δ狼对应的tsp问题的路径安排;xi(t)为第i匹灰狼的路径安排下以当前的城市为起点的边;c为一个随机的概率,用来表示当ω狼不服从狼群的安排时,会随机在其他ω狼中寻找一个作为它更新位置的依据;di为第i匹灰狼与优质狼的距离,即两条路径安排中相同的部分;

进行位置更新:通过距离判断ω狼已经明确了自身的优势所在,ω狼会根据自身与优质狼之间的差距进行位置的更新,具体描述为从优质狼中剔除与第i匹灰狼的距离,其位置的更新公式如下:

其中,除了距离判断公式中已有的符号说明外,a为一个在从0到1逐渐增加的数,以此为概率剔除di中的边,随着迭代逐渐增大,表现了灰狼对优质狼的追随程度;为下一代第i匹灰狼根据α狼、β狼和δ狼的位置获取的优质信息,其体现形式为某些城市间相连的边;

ω狼参照优质狼选取路线的顺序,按照如下公式:

首先,为获取ω狼下一代的位置,从由α狼获取的优质信息中选取边,在中无法找到从某个城市到其他剩余城市的边时,从由β狼获取的优质信息中选取边,同理,若无也法找到边时,则需要在中进行寻找,若根据优质狼获取的优质信息中都没有可用边,则在ω狼的当代解中寻找,最后,当优质边和当前边都无法构造出完整的路径时,在全体边集a中补全剩余边,以构造出一条完整的路径安排,即ω狼的下一位置;

按照上述方式,对全部的ω狼进行位置的更新,得到多组新的路径安排,同样根据城市之间的距离计算各自路径安排的适应值。

由于采用了上述技术方案,本发明提供的一种基于灰狼算法的路径规划方法,该方法基于集合的灰狼算法根据tsp问题的解采用离散化的描述,利用边的优劣取舍代替随机的寻找,使得算法提高了迭代求解过程中的可靠性和有效性。同时,通过采用等级制度更新解,将种群中各个阶段解的关系更加细化,提高了算法在求解tsp问题过程中的寻优能力。此外,算法中的系数采用随机数的形式,相比较于其他元启发式算法,减少了人为因素的潜在影响。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明方法流程图;

图2是非对称tsp问题的集合表达形式的示例图;

图3是基于集合的灰狼算法更新下一位置的示例图;

图4是本发明的优化路径结果图。

具体实施方式

为使本发明的技术方案和优点更加清楚,下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚完整的描述:

如图1所示的一种基于灰狼算法的路径规划方法,具体包括如下步骤:初始化算法的参数,设置最大迭代次数;记录城市的地理位置信息,并获取任意两座城市之间的距离;利用贪心算法生成初始种群,并采用集合的表示形式进行描述;计算解的适应值,并根据适应值选出α狼、β狼、δ狼以及ω狼;根据重新定义的公式更新各个ω狼的当前位置及其适应值;在更新后的解中选取新的α狼、β狼和δ狼;更新当前迭代次数;判断是否到达最大的迭代次数,若未达到,则继续进行迭代;若到达最大迭代次数,则输出α狼的路径安排及其路径值。

步骤1:获取各个城市的地理位置信息,位置信息采用横纵坐标的形式描述,并且任意两座城市间的距离采用欧式距离公式求得。这样网络图g(v,e)的相关信息,包括:顶点集v={vi|i=1,2,3,…,n}和任意两个顶点之间的边集e={ei,j|i,j=1,2,…,n},通过tsp问题的已知信息得到,并采用距离矩阵的方式储存数据。

其中,距离矩阵a的定义如下:当一个顶点i与另一个顶点j有直接关系时,矩阵a中的元素aij即为边b(i,j)的权值,否则即为“∞”。其中,顶点i与顶点j都是顶点集中的元素矩阵。值得注意的是,a中对角线元素为“0”,其数学表示如下:

其中,wij代表了边的权重。

步骤2:初始化算法的相关参数,包括种群中的灰狼数目、参数的递增系数、最大的迭代次数。当前的迭代次数初始化为1。

步骤3:通过贪心算法构造tsp问题的初始可行解。对于每一匹灰狼,从给定的城市中随机选取一座城市作为旅行商的起始点,然后根据距离最短选取下一城市,并作为当前城市。通过不断地探索与选取城市,直到所有地城市均被遍历,完成单个初始解地构造。之后,重复上述的操作,获取所有的初始解。并将解采用集合的形式进行描述。

为了方便理解,以图2为例对集合表达形式进行详细地说明。图2由4个顶点组成,其非对称tsp问题的一个可行解x的路径安排为“1—2—3—4”。则根据集合的表达形式,全体解集e如式(10)所示,他包含了4个维度(顶点)的所有边。而每一个维度的集合如式(11)至式(14)所示,分别包含了由各自的顶点i出发的所有可能边:

e1={(1,2),(1,3),(1,4)}(11)

e2={(2,1),(2,3),(2,4)}(12)

e3={(3,1),(3,2),(3,4)}(13)

e4={(4,1),(4,2),(4,3)}(14)

而基于集合的灰狼算法中的可行解x的集合的表达形式如式(15)所示,可以看出,可行解x满足了哈密顿回路,且与每个顶点相连的边的个数均为2。因为可行解x包含于全体解e,所以,可行解x也具有4个维度(顶点),其相应的集合如式(16)至式(19)所示:

x={(1,2),(2,3),(3,4),(4,1)}(15)

x1={(1,2)}(16)

x2={(2,3)}(17)

x3={(3,4)}(18)

x4={(4,1)}(29)

根据这样的思想,可以构建出灰狼种群中所有的灰狼解,并根据适应值,选取最优的解为α狼,次优的为β狼,第三优的为δ狼,其余的解ω狼;

步骤4:计算初始解的适应值,并选取当前适应值最优的解为α狼,次优的为β狼,第三优的为δ狼,其余的解为ω狼;

计算适应值主要根据的是任意两点之间的距离,将从一座城市到下一座城市的距离相加,直到,所有的城市均被经过,再将最后一座经过的城市与初始城市的距离相加,从而得到解的适应值,而目标则是通过迭代使得解的适应值最小。

步骤5:根据重新定义的距离判断公式如式(2)到式(4)与位置更新公式(5)到(7),(8)更新各个灰狼的当前位置及其适应值。

为了方便解释,以图3为例,对基于集合的灰狼算法下一位置的获取进行说明,已知一匹狼的位置为xi,当前代数的前三匹狼如xp列所示,依次为xα、xβ和xδ。首先,根据距离判断公式,得到灰狼与α狼、β狼和δ狼的当前距离d1、d2和d3,保留优质狼与当前狼的共有边。然后,再根据位置更新公式,得到下一位置的信息x1、x2和x3,得到优质狼相比较于ω狼的优势边。最后,根据α狼、β狼和δ狼更新信息后保留下来的边、当前ω狼的位置以及全体边集构建出当前灰狼的移动后的下一位置。

步骤6:在所有灰狼找到新的位置后,更新α狼、β狼以及δ狼,竞选的方式是根据适应值来选取,拥有最优适应值的为α狼,拥有次优适应值的β狼,拥有第三优适应值的δ狼,其余的解作为ω狼;

步骤7:更新迭代次数,令当前迭代次数加1;

步骤8:判断算法是否到达终止条件,若不满足终止条件,则跳转到步骤5继续进行;若满足条件,则继续后续步骤的进行。

步骤9:α狼的位置即为tsp问题的最优路线安排,其适应值即为满足终止条件的最优值,算法结束。

为了说明本发明的一种求解tsp问题路径规划方法的性能,本发明从百度地图中选取34个城市,并针对tsp问题将城市的位置通过二维空间的横纵坐标进行描述。实验时本发明将算法的种群数目都设置为60,最大迭代次数设置为2500,递增系数设置为0.5%。采用matlab软件进行编程,在运行至1836代时,适应值到达最低,其运行结果如图4所示。

本发明公开的一种基于灰狼算法的路径规划方法,即基于集合的灰狼算法。其基本公式于传统灰狼算法类似,但是通过对相关的符号与运算进行定义使得灰狼算法更是适用于tsp问题的求解。该算法通过迭代在有限的步骤内完成对tsp问题解的获取与寻优。此外由于等级制度的细化,参数多采用随机设置,都帮助算法能够快速、有效的规划出一条合理且相对最短的路径安排,因此本发明可以被视为tsp问题提供路径规划的有效方法。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1