「スライディング パズル」を解くためのアルゴリズムを探しています。これは、4 x 4 フレームで 16 個のピースに分割された画像があり、スクランブルされた開始位置のために再構築しようとするパズルのようなものです。この特定のパズルには制限があり、行は右にのみ移動 (およびラップアラウンド)、行全体が一度に移動し、列は上にのみ移動 (およびラップアラウンド)、列全体が同時に 1 タイルのステップで移動します。数学が複雑すぎませんか?この種の問題を経験した人はいますか?
質問する
26830 次
2 に答える
6
このリンクはあなたに答えを提供します。彼らは、ヒューリスティックで使用されるさまざまな距離関数について話します。A* は、オープン ソースの実装を簡単に見つけることができます。
于 2013-06-18T14:24:24.600 に答える
0
ほとんどすべての問題と同様に、そのような問題を解決する「簡単/シンプル」な方法の 1 つは、パズルの状態をグラフとして表現し、グラフ検索/パス検索アルゴリズム (DFS、BFS、ダイクストラ、A* など) を使用することです。 . この問題により適した天才的な特別なアルゴリズムが存在する可能性がありますが、A* / 双方向ダイクストラよりも優れたものを得るには、かなり多くの洞察が必要になるでしょう。
于 2013-06-18T13:49:03.827 に答える