
2026/01/24 5:07
**迷路アルゴリズム(2017)**
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
改訂要約:
本文は、新たに出版された書籍 Mazes for Programmers を発表し、包括的な迷路生成アルゴリズムのセットを網羅していること、およびGitHubでダウンロード可能なソースコードが提供されている点を述べています。列挙される古典的手法には、Recursive Backtracking(Parallel Seeds バリアントを含む)、Eller's algorithm、Kruskal’s algorithm、Prim’s algorithm、そして Recursive Division が含まれます。高度なバリエーションとしては、Threshold パラメータを設定可能にした「Blobby」Recursive Subdivision アルゴリズムがあります。確率的アプローチとしては、Aldous‑Broder、Wilson’s、および Houston’s algorithm(前者二つの高速ハイブリッドで均一性を保証しない)が取り上げられています。さらに紹介される手法には、Hunt‑and‑Kill、Growing Tree、Growing Binary Tree(、random:50などのカンマ区切り設定オプションを受け付けます)、Binary Tree、および Sidewinder があります。ユーザーは Growing Tree と Growing Binary Tree の設定をこれらのオプションで調整し、変更を適用するには「reset」をクリックする必要があります。実行可能なコードを提供することで、本書はプログラマ、教育者、およびゲームデザイナーに対して、迷路ベースのゲーム作成やシミュレーション・AIトレーニング環境へのプロセッサルコンテンツ統合、教育目的での利用など、さまざまな場面で活用できるツールを提供します。newest:30
本文
迷路アルゴリズムに興味があるなら、私が書いた本「Mazes for Programmers」をご覧ください。
ぜひチェックしてみてください!デモのソースコードは http://github.com/jamis/csmazes で無料公開されています。
アルゴリズム
-
再帰的バックトラッキング
-
再帰的バックトラッキング(並列シード)
-
エラーのアルゴリズム (Eller’s Algorithm)
-
クラスカル法 (Kruskal's Algorithm)
-
プリム法 (Prim's Algorithm)
-
再帰分割法 (Recursive Division)
-
「ブロッビ―」再帰的細分化アルゴリズム
しきい値: -
オルドウス‑ブラダー法 (Aldous‑Broder Algorithm)
-
ウィルソン法 (Wilson’s Algorithm)
ヒューストン法 (Houston’s Algorithm) – オルドウス‑ブラダーとウィルソンを組み合わせたもので、両者の最高性能を得ることができます。残念ながら、他の二つのように一様性は保証されませんが、より高速です!まずオルドウス‑ブラダーで一定数のセルを訪れた後にウィルソンへ切り替えます。
- ハント&キル法 (Hunt and Kill Algorithm)
- 成長木アルゴリズム (Growing Tree Algorithm)
例:
,random:50
,newest:30
,oldest:75
のいずれか、またはカンマ区切りの組み合わせ。設定を反映させるには「reset」をクリックする必要があります。middle:100 - 成長二分木アルゴリズム (Growing Binary Tree Algorithm)
例:
,random:50
,newest:30
,oldest:75
のいずれか、またはカンマ区切りの組み合わせ。middle:100 - バイナリツリー法 (Binary Tree Algorithm)
- サイドウィンダー法 (Sidewinder Algorithm)