中EN

Introduction to the A* Algorithm(笔记)

Markdown1 KB 原始文件

Source: Amit Patel / Red Blob Games, 2014(多轮更新至 2023)。 URL: https://www.redblobgames.com/pathfinding/a-star/introduction.html 延伸:http://theory.stanford.edu/~amitp/GameProgramming/

图搜索家族

算法特点
BFS等代价探索
Dijkstra / UCS计入移动代价
Greedy Best-First只靠启发,快但不保证最短
A*f = g + h:已走路成本 + 启发估计

要点

  • 输入是图(节点+边),不是关卡美术;输出是图上的路径,如何落地由游戏定。
  • 启发式不高估真实距离时,A* 保证最优路径(可采纳启发)。
  • h 变小 → 接近 Dijkstra;h 变大 → 接近 Greedy。
  • 性能首要:减少图节点;网格易用但节点多。
  • A* 不自带:协作移动、动态障碍、编队、转向半径、物体尺寸、路径平滑等。

选型

  • 到所有点 / 多点:BFS 或 Dijkstra。
  • 到单点:通常 A*。

引用这一章的笔记

输入关键词开始搜索

滚轮或双指缩放 · 拖动平移 · 双击放大 / 还原