一种导航方法技术

技术编号:10638665 阅读:230 留言:0更新日期:2014-11-12 13:34
本发明专利技术揭示了一种导航方法,包括:步骤S1、获取目的地位置信息及实时位置信息;步骤S2、根据目的地位置信息、实时位置信息实时获取到达目的地的K条最短路径,进行实时导航;具体包括:步骤S21、初始化蛙群,随机产生F只青蛙,计算青蛙个体的评价值并将蛙群按评价值升序排序;步骤S22、划分族群;把F个蛙分配到m个族群(Y)中去;步骤S23、局部搜索,对每个族群执行局部搜索loop次;步骤S24、族群混合对整个蛙群中具有相同模因结构的青蛙进行重构,计算青蛙的评价值并将蛙群按升序排序;步骤S25、判断是否满足算法终止条件,若满足,输出前k只青蛙作为k条最短路径;否则,返回步骤S22。本发明专利技术可提供多条路径供用户选择,可提高导航质量及稳定性。

【技术实现步骤摘要】
【专利摘要】本专利技术揭示了,包括:步骤S1、获取目的地位置信息及实时位置信息;步骤S2、根据目的地位置信息、实时位置信息实时获取到达目的地的K条最短路径,进行实时导航;具体包括:步骤S21、初始化蛙群,随机产生F只青蛙,计算青蛙个体的评价值并将蛙群按评价值升序排序;步骤S22、划分族群;把F个蛙分配到m个族群(Y)中去;步骤S23、局部搜索,对每个族群执行局部搜索loop次;步骤S24、族群混合对整个蛙群中具有相同模因结构的青蛙进行重构,计算青蛙的评价值并将蛙群按升序排序;步骤S25、判断是否满足算法终止条件,若满足,输出前k只青蛙作为k条最短路径;否则,返回步骤S22。本专利技术可提供多条路径供用户选择,可提高导航质量及稳定性。【专利说明】
本专利技术属于移动通信及导航
,涉及,尤其涉及一种可提供 多条路径可供选择的导航方法
技术介绍
手机导航(Mobile Navigation)即卫星手机导航,它可以告诉你在地图中所在的 位置,以及可以显示出你要去的地方在地图中的位置,通过系统中的最短路径算法显示最 佳的路线,在导航的路途中用语音提示用户行进的方向。 导航由GPS模块,导航软件,GSM通信模块组成:由GPS模块通过GPS卫星采集 数据,导航软件中的地图模块分析得到的数据,通过不断的刷新使位置在地图上不断的变 化,软件中的路径接收用户的指令或者需求,计算出用户计划要去的地点,规划出一条最 优路线并引导用户,最后GSM模块对这些数据分析处理之后上传服务器中。 手机导航系统就是在可以在手机上运行的导航软件,它是以手机作为硬件平台 的。通过手机中的GPS模块接收信号,再把获得的数据信息传递给导航软件,经过软件确 定用户的位置,再通过GIS模块实现导航功能。 最短路径(Shortest Path, SP)问题是图论中的经典问题,在计算机网络路由,机 器人路径规划,交通线路导航等诸多领域有着广泛应用。Dijkstra算法是求解SP的经典方 法,可在多项式时间内找到有向图中任意两顶点间的最短路径。而在许多实际应用中,不仅 需要求出最短路径,而且往往还需要找出次短等多条最优路径,如,城市道路交通导航中, 用户通常希望获知多条最优路径并根据实际的出行需要进行选择。因此,在一个网络图中 如何快速求得高质量的k条最短路径问题引起人们的极大关注。 近年,很多学者对基于进化和仿生计算的智能方法求解复杂优化问题进行了深入 的研究,获得了许多理论和应用成果。然而,对于k条最短路径问题的研究文献目前尚不多 见。国内研究者提出了一种能够求解k条最短路径问题的遗传算法,直接以自然路径作为 染色体,根据路径节点的连接关系对染色体实施交叉操作,将节点路径块作为染色体的变 异基因块来实施变异,采用对种群排序的方法进行世代更新。国外研究者曾提出了一种求 解最短路径的粒子群算法。基于粒子自我学习和社会学习的进化机理,最终多数粒子会落 入优化解区域,因而算法在求得最短路径的同时也可以得到一些次优路径,而且算法收敛 速度较快。但由于该算法不是将求解k条最短路径作为优化目标,因而,当k比较大时求解 质量不高且稳定性不够好。 混合娃跳算法(Shuffled Frog Leaping Algorithm, SFLA)结合了基于遗传的模 因演算法(Memetic Algorithm)和基于社会行为的粒子群算法的优点,全局寻优能力强,参 数少,计算速度快,在一些实际应用中取得了良好效果。
技术实现思路
本专利技术所要解决的技术问题是:提供,可提供多条路径供用户选择, 可提高导航质量及稳定性。 为解决上述技术问题,本专利技术采用如下技术方案: ,所述导航方法包括: 步骤S1、获取目的地位置信息及实时位置信息; 步骤S2、根据目的地位置信息、实时位置信息实时获取到达目的地的K条最短路 径,进行实时导航,在导航的过程中不断的计算着用户的路线轨迹,直到导航结束;通过 GPS传输数据,再根据地址数据库、地图数据库、第三方路况信息数据库和用户数据库,随时 更新用户和目的地直接的路径;采用混合蛙跳算法求解K条最短路径;具体包括: 步骤S21、初始化蛙群,随机产生F只青蛙,计算青蛙个体的评价值并将蛙群按评 价值升序排序;青蛙个体的评价值的获取方法为:用路径path所有边的代价之和表示青蛙 的评价函数,即 【权利要求】1. ,其特征在于,所述导航方法包括: 步骤S1、获取目的地位置信息及实时位置信息; 步骤S2、根据目的地位置信息、实时位置信息实时获取到达目的地的K条最短路径,进 行实时导航,在导航的过程中不断的计算着用户的路线轨迹,直到导航结束;通过GPS传输 数据,再根据地址数据库、地图数据库、第三方路况信息数据库和用户数据库,随时更新用 户和目的地直接的路径;采用混合蛙跳算法求解K条最短路径;具体包括: 步骤S21、初始化蛙群,随机产生F只青蛙,计算青蛙个体的评价值并将蛙群按评价值 升序排序;青蛙个体的评价值的获取方法为:用路径path所有边的代价之和表示青蛙的评 价函数,即·编码是从问题空间向搜索空间的一个映射,从起始点到终点的一条路径对应的节点集 合;其中,每一位上的节点编号称为青蛙的一个模因 meme ;给定一个赋权图G = (V,E),V表 示G中所有顶点的集合,E表示所有边的集合;边的代价函数表示为Cost :E - R+,cost (e) 为边e e E的代价; 步骤S22、划分族群;把F个蛙分配到m个族群(Y)中去,每个族群包含n个蛙,从而使 得这里X(j)表示蛙群中的第j蛙,f(j)表示第j个蛙的目标函数值; 步骤S23、局部搜索,对每个族群执行局部搜索loop次; 青蛙个体的学习目标是族群内最优个体fr〇gb或整个青蛙群中的最优个体frogg ;采用 对族群中的青蛙按均匀概率选取子群,假设从第i个青蛙族群中随机选择s只青蛙作为该 族群的子群进行局部搜索;将s只青蛙中具有最优评价值的青蛙记为frog b,具有最差评价 值的青娃记为frogw,将娃群中具有最优评价值的青娃记为frog g,则族群i中的一次局部搜 索包括: 步骤S231、从族群中随机选择s只青蛙; 步骤S232、使frogw向frogb跳越一次,执行W. Leap (B); 步骤S233、若frogw代表的解质量较之前更优,则该次局部搜索结束;若较之前更劣或 未改变,则frogw向frogg跳越一次,执行W. Leap (G); 步骤S234、若frogw代表的解质量较之前更优,则该次局部搜索结束;若较之前更劣或 未发生改变,则重新随机构造 frogw ; 在每个族群中,上述4个步骤被执行loop次,loop称为局部搜索强度; 步骤S24、族群混合对整个蛙群中具有相同模因结构的青蛙进行重构,计算青蛙的评价 值并将蛙群按升序排序; 步骤S25、判断是否满足算法终止条件,若满足,输出前k只青蛙作为k条最短路径;否 贝1J,返回步骤S22 ; 其中,F为蛙群规模,m为族群数,η为族内青蛙数,s为子群青蛙数,loop为局部搜索 强度;族群数m取m > k,k条最短路径实际上本文档来自技高网
...

【技术保护点】
一种导航方法,其特征在于,所述导航方法包括:步骤S1、获取目的地位置信息及实时位置信息;步骤S2、根据目的地位置信息、实时位置信息实时获取到达目的地的K条最短路径,进行实时导航,在导航的过程中不断的计算着用户的路线轨迹,直到导航结束;通过GPS传输数据,再根据地址数据库、地图数据库、第三方路况信息数据库和用户数据库,随时更新用户和目的地直接的路径;采用混合蛙跳算法求解K条最短路径;具体包括:步骤S21、初始化蛙群,随机产生F只青蛙,计算青蛙个体的评价值并将蛙群按评价值升序排序;青蛙个体的评价值的获取方法为:用路径path所有边的代价之和表示青蛙的评价函数,即f(frogj)=Σe∈pathcost(e);]]>编码是从问题空间向搜索空间的一个映射,从起始点到终点的一条路径对应的节点集合;其中,每一位上的节点编号称为青蛙的一个模因meme;给定一个赋权图G=(V,E),V表示G中所有顶点的集合,E表示所有边的集合;边的代价函数表示为Cost:E→R+,cost(e)为边e∈E的代价;步骤S22、划分族群;把F个蛙分配到m个族群(Y)中去,每个族群包含n个蛙,从而使得Yk=[X(j),f(j)|X(j)=X(k+m*(j‑1),f(j)=f(k+m*(j‑1),j=1,…,n,k=1,…,m].这里X(j)表示蛙群中的第j蛙,f(j)表示第j个蛙的目标函数值;步骤S23、局部搜索,对每个族群执行局部搜索loop次;青蛙个体的学习目标是族群内最优个体frogb或整个青蛙群中的最优个体frogg;采用对族群中的青蛙按均匀概率选取子群,假设从第i个青蛙族群中随机选择s只青蛙作为该族群的子群进行局部搜索;将s只青蛙中具有最优评价值的青蛙记为frogb,具有最差评价值的青蛙记为frogw,将蛙群中具有最优评价值的青蛙记为frogg,则族群i中的一次局部搜索包括:步骤S231、从族群中随机选择s只青蛙;步骤S232、使frogw向frogb跳越一次,执行W.Leap(B);步骤S233、若frogw代表的解质量较之前更优,则该次局部搜索结束;若较之前更劣或未改变,则frogw向frogg跳越一次,执行W.Leap(G);步骤S234、若frogw代表的解质量较之前更优,则该次局部搜索结束;若较之前更劣或未发生改变,则重新随机构造frogw;在每个族群中,上述4个步骤被执行loop次,loop称为局部搜索强度;步骤S24、族群混合对整个蛙群中具有相同模因结构的青蛙进行重构,计算青蛙的评价值并将蛙群按升序排序;步骤S25、判断是否满足算法终止条件,若满足,输出前k只青蛙作为k条最短路径;否则,返回步骤S22;其中,F为蛙群规模,m为族群数,n为族内青蛙数,s为子群青蛙数,loop为局部搜索强度;族群数m取m≥k,k条最短路径实际上就是经过排序的全部青蛙的前k只青蛙;当m≥k时,在划分族群后,前k只青蛙将成为各自所在族群中最优的青蛙个体,从而避免其蛙跳行为,使求解具有较好的稳定性;如果取m<k,在划分族群后,前m只青蛙被分别划分至第1至第m族群,成为各族群中的最优青蛙个体,而第m+1至第k只青蛙则分别被划分在第1至第(k‑m)族群,并成为这些族群中的次优个体;在局部搜索中,族群内的次优青蛙可能会向最优青蛙学习,导致次优青蛙的模因结构变化,因而影响求解k条最短路径的质量和稳定性。...

【技术特征摘要】

【专利技术属性】
技术研发人员:李保印
申请(专利权)人:上海闻泰电子科技有限公司
类型:发明
国别省市:上海;31

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

1