A*智能寻路算法(php版本)

本文介绍了PHP版本的A*寻路算法,适用于寻找二维地图上两点间的最短路径。A*算法基于f = g + h公式,其中f表示预判距离,g为实际走过距离,h为曼哈顿距离。通过open和close列表管理待探索和已探索节点,优先选择h值最小的节点进行探索,直到找到终点或open列表为空。详细步骤和实例代码可供参考。
摘要由CSDN通过智能技术生成

          A*被誉为大众级寻路算法,常用于获取两个坐标的最短路径,属于AI(人工智能)范畴,最近自己开发了一套php版本的A*寻路算法类,想要直接使用的朋友可以借鉴下。可以在我的空间里面看具体的调用部分,类库我会尽快上传。

          先说下A*的算法思路吧,首先,要有一个地图,其实寻路就是在一块块的方格子里面的中心点间进行移动,地图的话我这里用的是一个二位数组矩阵(如图):

这就是一张简单的地图了!你可以自由编辑或者是扩容,把他想想成游戏中的场景地图。

             其次就是一个核心的公式:f = g + h 。地图中走哪些点,先走哪个点后走哪个点就靠这个公式啦!

            (一)f 值代表这当前坐标点到达终点的一个预判距离,值越小表示距离越短,越优!

 

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值