目次へ
「Sudoku(数独) を Mathematica で解く」を14回にわたり説明してきた。ここで使った方法は the logic of sudoku の解き方の初歩を Mathematica を使ってプログラムにしたものである。リストを使って Sudoku を表現し、リストの操作を行うことにより解を求めている。リスト操作の演習問題としての面白さがあり、ノートブックにグラフィック表示することにより分かりやすい特徴を持つ。
今後のプランとしては Sudoku の中級問題を解くための定石(解法)を予定している。
- Naked Pairs, Naked Triples
- Hidden Pairs, Hidden Triples
- Pointing Pairs, Box/Line Reduction
- X-Wing(2国同盟)
- Simple Coloring( or Simple Chains ) これはプログラムするのが難しい
Sudoku を探索問題として解く
Sudoku に取りかかった当初は、探索問題としてとらえ取り組んだのが実情であった。その後、理解が進んだこともありWeb で検索して次を見つけた。
プログラマの道具箱(深さ優先探索と幅優先探索) Mathematica編
これは10行のコードのMathematica のプログラムである。すばらしいと思います。
他に Mathematica Archive で検索して見つけたものがある。
- Solving Sudoku Using Combinatorica`Backtrack
- Sudoku Solver
- Sudoku Analysis in Mathematica