回答:
一般に経路探索について調査し、学習したい場合は、複数のアルゴリズムを学習することをお勧めします。全体的な概念を理解したいが、あなたが取り組んでいるものは何でもそれらを適用することができるでしょう。深刻な経路探索を行う必要があるほとんどのゲーム開発者は、独自のカスタムアルゴリズムを作成することになりますが、既知のソリューションに大きく基づいていますが、ゲームはすべて異なり、要件も異なります。
まず、A *、ダイクストラのアルゴリズム、深さ、幅優先の検索など、よく知られているメソッドをいくつか読んでいきます。これらのそれぞれについて、インターネット上には多くの良い情報があります。(http://en.wikipedia.org/wiki/Pathfinding)
それらを読みながら、各アプローチの利点と欠点、およびアルゴリズムが処理できるデータのタイプに注意してください。3次元パスに適用できますか?マップ内の地雷を避けたい人間のAIを説明するために変更できますか?
経路探索に関しては、A *はほとんどの人が使用するゴールデンチケットです。あなたはそれがどのように機能するかを確実に知る必要があります。(http://en.wikipedia.org/wiki/A*_search_algorithm)
これは、RTSゲームに適用されるA *の良い例です。RTSゲームでは、さまざまなサイズのエンティティを考慮する必要があります。http://aigamedev.com/open/tutorials/clearance-based-pathfinding/
幸運を!
経路探索アルゴリズムは、基本的にグラフ検索問題解決アルゴリズムです。
http://en.wikipedia.org/wiki/Pathfinding#Algorithms
最も知られているのは、ジクストラのアルゴリズム:http : //en.wikipedia.org/wiki/Dijkstra's_algorithm
およびそのバリアントA *検索アルゴリズム:http : //en.wikipedia.org/wiki/A*
ウィキペディアには良いリストがあります: Pathfinding
私の知る限り、A *とD *はどちらもかなり人気があります。
そこにはいくつかのパス検索アルゴリズムがあります。
最も人気のあるものの1つはおそらくA *(A-Star)です。目標に到達するための推定コストを提供できるヒューリスティック関数がある場合、これは非常に便利なアルゴリズムです(例は、ターゲットまでの見通し距離です)。A *は、開始点から終了点までの最短経路を見つけるのに非常に便利です。
それ以外にも、いくつかのアイテムから最も近いアイテムを見つけるのに非常に役立つダイクストラのアルゴリズムがあります。例えば。ゲームのキャラクターに最も近いパワーアップ(または類似のパワーアップ)を見つけたい場合。
他にもいくつかのアルゴリズムがありますが、A *が最も人気があると思います。Mat BucklandはExampleによる Book Programming Game AIに Path-Findingに関する素晴らしい章を持っています。コピーを入手することを強くお勧めします。それ以外の場合は、「スター検索」を検索して、オンラインで大量の情報を見つけます。
パスファインディングにダイクストラのアルゴリズムを使用するチュートリアルは次のとおりです。
これは入門書ではありませんが、2009年秋にアルゴリズムクラスでグラフアルゴリズムについて広範囲に議論しました。
アルゴリズム入門、トーマスH.コーメン、チャールズE.レイザーソン、ロナルドL.リベスト、クリフォードスタインによる第3版
http://mitpress.mit.edu/algorithms/
また、MITクラスからのYouTube講義も付随しています。
第17章、第18章、および第19章では、最短経路について説明しました。
ウィキペディア1の [グラフおよびツリー検索アルゴリズム]を参照してください。それらは、ほとんど状態空間検索のバリエーションです。これらすべてを調べて、どこが違うのかを見つけなければなりません。
Collaborative Diffusionもあります。これは、前述の興味深い方法のアルゴリズムの1つです。
これはおもしろそうです:
http://www.codeproject.com/Articles/455 A *よりも優れているのでしょうか?