• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:経路探索のアルゴリズムを改善したい)

経路探索アルゴリズムを改善する方法

このQ&Aのポイント
  • 経路探索アルゴリズムを改善するために、C#での実装について質問しています。Flashでの実装では反復回数制御により制限があるため、同じ結果が得られるような改善案を求めています。
  • 具体的には、2次元配列に格納されているマップ情報を使用し、特定の場所からの最短経路を求める方法を改善したいと考えています。マップには通行可/不可の情報が格納されており、経路の探索進行方向は縦横左右のみです。
  • また、障害物が存在する場合はそのマスへの最短経路を求める必要はありません。探索用関数を通る回数をカウントしています。

質問者が選んだベストアンサー

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

「Flash の反復回数制御」は知りませんが, 「1点から他のすべての点までの最短経路」といえば普通は Dijkstra のアルゴリズム. 今の場合は実質的に「キューを使った幅優先探索」となります. 大雑把には ・まず出発点をキューに入れる ・キューから点を 1個取り出す ・そこからいける点の距離を更新し, 「距離を更新した点」をキューに入れる ・キューから点がなくなるまで繰り返す. で OK.

atse
質問者

お礼

考えてみるとただ縦横無尽に探索するだけで、必ず近場から調べる、ということをやっていませんでした。 箇条書きにしていただいた部分を順に考えFlashで組んでみると、スムーズにいき、少し手を加えただけで成功しました。 やはり頭だけで考えず流れを文章に起こすことは大事ですね。 どうもありがとうございます、とても助かりました。