一种基于A*算法的路径搜索方法、设备及计算终端技术

技术编号:16379901 阅读:119 留言:0更新日期:2017-10-15 14:07
本发明专利技术公开了一种基于A*算法的路径搜索方法,适于在计算设备中执行,该地图包括具有多个节点的阵列,该计算设备包括列表存储器,该列表存储器中存储有开启列表及删除列表,该方法包括步骤:判断阵列中节点的数量是否小于预定值,如果确定该阵列中节点的数量小于预定值,则将开启列表建成双向链表;监控阵列,获取路径搜索的开始节点及目标节点,并将开始节点加入双向链表;删除双向链表表头的节点,且将删除的双向链表表头的节点加入删除列表;以及判断所删除的双向链表表头的节点是否为目标节点,如果删除的双向链表表头的节点为目标节点,则继续监控阵列。本发明专利技术还提供了一种路径搜索设备及包括根据本发明专利技术的路径搜索设备的计算设备。

A path searching method, device and computing terminal based on A* algorithm

The invention discloses a path search method based on A* algorithm, is suitable for execution in a computing device, the map includes an array having a plurality of nodes, the computing device includes a list of memory, the memory storage list in the open list and delete the list, the method comprises the following steps: judging the number of nodes in the array is smaller than a predetermined if the value, to determine the number of nodes in the array is smaller than a predetermined value, it will open the list has two-way linked list; monitoring array access path search start node and the destination node, and will start node to join a double linked list; delete the node header and two-way linked list, delete the header node of two-way linked list added to delete the node list; double linked list and judging the header deleted if the target node, if the node header deleted the two-way linked list for the destination node Continue monitoring the array. The invention also provides a path search device and a computing device including a path searching device according to the invention.

【技术实现步骤摘要】
一种基于A*算法的路径搜索方法、设备及计算终端本申请是本申请人于2014年12月2日提交的申请号为201410720889.0,名称为一种基于A*算法的地图寻路方法、设备及计算终端的专利技术专利申请的分案申请。
本专利技术涉及电子地图领域,尤其涉及一种基于A*算法的路径搜索方案。
技术介绍
目前,越来越多的软件和应用都需要生成并向用户呈现地图以便实现某种功能。例如,在游戏软件应用中,计算设备(如台式计算机、笔记本计算机及其他智能终端)需要生成游戏场景地图。在该地图中,游戏玩家控制的角色以及非玩家控制的角色需要按照一定的路径进行移动,因此会涉及到地图中路径搜索以对路线选择并且避开障碍点。除了在游戏中需要进行路径搜索之外,一些涉及路径的应用中也需要使用路径搜索方案。在多种路径搜索应用方案中,所涉及的A*算法是一种启发式搜索算法。在应用A*算法的路径搜索方案中,会对地图中的多个节点进行判断。在寻路过程中,会不断将未判断的节点加入一个列表,即开启列表,而将已经判断过的节点加入到另一个列表,即删除列表。在寻路过程中会不断的对开启列表进行操作,包括了节点的插入、排序和检索等。根据开启列表中数据和本文档来自技高网...
一种基于A*算法的路径搜索方法、设备及计算终端

【技术保护点】
一种基于A*算法的路径搜索方法,适于在计算设备中执行,路径搜索的地图包括具有多个节点的阵列,该计算设备包括列表存储器,该列表存储器中存储有开启列表及删除列表,该开启列表包括待寻路检测的节点,该删除列表包括从开启列表中删除的节点,其中,每个节点是具有一定面积的方格状的区域,该方法包括步骤:判断所述阵列中节点的数量是否小于预定值,如果确定该阵列中节点的数量小于预定值,则将所述开启列表建成双向链表;监控所述阵列,获取路径搜索的开始节点及目标节点,并将所述开始节点加入所述双向链表;删除该双向链表表头的节点,且将所删除的双向链表表头的节点加入删除列表;以及判断所删除的双向链表表头的节点是否为目标节点,如...

【技术特征摘要】
1.一种基于A*算法的路径搜索方法,适于在计算设备中执行,路径搜索的地图包括具有多个节点的阵列,该计算设备包括列表存储器,该列表存储器中存储有开启列表及删除列表,该开启列表包括待寻路检测的节点,该删除列表包括从开启列表中删除的节点,其中,每个节点是具有一定面积的方格状的区域,该方法包括步骤:判断所述阵列中节点的数量是否小于预定值,如果确定该阵列中节点的数量小于预定值,则将所述开启列表建成双向链表;监控所述阵列,获取路径搜索的开始节点及目标节点,并将所述开始节点加入所述双向链表;删除该双向链表表头的节点,且将所删除的双向链表表头的节点加入删除列表;以及判断所删除的双向链表表头的节点是否为目标节点,如果所述删除的双向链表表头的节点为目标节点,则继续监控所述阵列,如果该删除的双向链表表头的节点不是目标节点,则获取该删除的双向链表表头的节点周围满足预定条件的节点,并将所获取满足所述预定条件的节点加入所述双向链表;以及继续删除该双向链表表头的节点,且将所删除的双向链表表头的节点加入删除列表,其中,将所获取满足预定条件的节点加入所述双向链表的操作包括:重新计算双向链表中每个节点的实际代价,以更新每个节点的估价函数值,所述估价函数值为所述实际代价与节点的估计代价之和,所述估计代价是直接沿着该节点到目标节点之间的矩形区域边缘的节点移动后的移动消耗值,将所述双向链表的节点进行排序,将该满足所述预定条件的节点以插入排序方式加入到所述双向链表。2.如权利要求1所述的路径搜索方法,其中所述获取所述删除的双向链表表头的节点周围满足所述预定条件的节点的步骤包括:获取所述删除的所述双向链表表头的节点能直接到达、不属于所述删除列表且非障碍的节点。3.如权利要求1所述的路径搜索方法,还包括步骤:当确定所述删除的双向链表表头的节点为目标节点时,根据所述删除列表中的节点获取所述开始节点与所述目标节点之间的最短路径。4.如权利要求1所述的路径搜索方法,其中所述预定值的范围为1000。5.一种基于A*算法的路径搜索设备,路径搜索的地图包...

【专利技术属性】
技术研发人员:罗响
申请(专利权)人:厦门飞游信息科技有限公司
类型:发明
国别省市:福建,35

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

1