2017-07-19 48 views
1

我正在執行A * JPS (跳轉搜索點), ,雖然我理解了它的基本知識,但似乎仍然是錯過了一點。具有A * JPS的未探測節點(跳轉點搜索)

下面是一個試圖(參見附圖)試圖找到一個起始節點之間的路徑(標示小號和目標節點(標記ģ。 帶有黑色棋盤格的單元格是探索節點,而帶箭頭的白色單元格是跳轉點(相關方向)。所有單元的旅行成本爲1,除了藍色障礙物。

但是,正如您所看到的,某些區域未被探測,因此無法找到存在目標節點的路徑。看起來這是因爲它沒有在某些跳躍點上沿對角線進行探索,但根據我的理解,我們應該只考慮當前的方向(即沿着圖片上的箭頭)

所以我的問題是,這種嘗試有什麼問題?我是否錯過了跳轉點或誤解了它的運作方式?

Attached image : A* JPS attempt(不能嵌入照片呢:P)

謝謝您的回答。

線性(垂直和水平,但不是對角線)強制鄰居丟失。 C.f. C.f.圖2 BlueRaja的帖子

回答

0

您似乎錯過了本文中描述的強制鄰居步驟。圖片中與箭頭相鄰的未探索節點應排入強制鄰居。

參見圖2和3 here

Forced neighbors