Upgrade to Pro — share decks privately, control downloads, hide ads and more …

A*アルゴリズム

 A*アルゴリズム

More Decks by NearMeの技術発表資料です

Other Decks in Research

Transcript

  1. 0 A*アルゴリズム 2023-01-25 第28回NearMe技術勉強会 Yuki Nonaka

  2. 1 目次 1. A*アルゴリズムとは 2. A*アルゴリズムの例題 1

  3. 2 ダイクストラ法を発展させた経路探索法で、ゴールから遠ざかるような 無駄な経路は探索しないことで高速化を行っている。また、コンピュー タゲームや地図プラットフォームにも応用されている。 A*アルゴリズムとは 2 goal start ここを通る経路を 探索するのは無駄

    *辺の重みは全て非負であるとする。
  4. 3 A*アルゴリズムとは 評価関数f(n)はこれまでの累積コストg(n)とヒューリスティック関数h(n) の和で表される。 ここでh(n)は非負である必要がある。また、h(n)が真のコストh*(n)を上 回らない場合、許容的(admissible)といい、最適経路を返す。 3

  5. 4 4 スタート地点からゴール地点までの最適経路を求める。 それぞれのマスでg(n)、h(n)を計算して経路を探索する。 g=0 h=6 f=6 g=1 h=5 f=6

    g=1 h=5 f=6 GOAL アルゴリズム (Nodeリストで考えるとわかりやすい。) 1. 現在地のg(n)、h(n)、f(n)を計算する。 2. 周りのノードをopenにし、g(n)、h(n)、f(n)を調べ る。 3. 現在地のノードはclosedにする。 4. openノードのうちf(n)が最も小さいマスに移動す る。 5. 1に戻る START g(n) = (START~現在地)の距離 h(n) = (現在地~GOAL)のマンハッタン距離 A*アルゴリズムの例題
  6. 5 5 A*アルゴリズムの例題 g=0 h=6 f=6 g=1 h=5 f=6 g=0

    h=6 f=6 GOAL g=0 h=6 f=6 g=1 h=5 f=6 g=2 h=4 f=6 g=0 h=6 f=6 GOAL g=0 h=6 f=6 g=1 h=5 f=6 g=2 h=4 f=6 g=3 h=3 f=6 g=0 h=6 f=6 g=3 h=2 f=5 GOAL g=0 h=6 f=6 g=1 h=5 f=6 g=2 h=4 f=6 g=3 h=3 f=6 g=0 h=6 f=6 g=3 h=2 f=5 GOAL g=0 h=6 f=6 g=1 h=5 f=6 g=2 h=4 f=6 g=3 h=3 f=6 g=4 h=2 f=6 g=0 h=6 f=6 g=3 h=2 f=5 g=4 h=1 f=5 g=4 h=2 f=6 g=4 h=1 f=5 g=4 h=0 f=4
  7. 6 参考文献 • アルゴリズムとデータ構造, 大槻兼資(著), 秋葉拓哉(監修), 講談社, 2020 • Diestel.

    Graph Theory. Springer-Verlag New York, 2017. • Altava, Ramon Andreu. Computation of Optimal Profiles in Descent and Approach Phases. Diss. Université Paul Sabatier-Toulouse III, 2020. 6
  8. 7 Thank you