2011-09-20[n年前へ]
■A全判 = A1判( 約60センチメートル × 約84センチメートル )の世界一広い!?迷路(PDF)
「迷路」を作り・描き出すRubyスクリプトを書いてみました。手作業無しに迷路を自動作成することができるコードを書いたので、勢い余って「A全判 = A1判( 約60センチメートル × 約84センチメートル )の世界一だだっ広い!?迷路(PDF 6.5MB)」を作ってみました。
そのサムネイル画像(サムネイル画像のリンク先はPDFファイル)が下の迷路です。下の画像では、均一なハーフトーン画像に見えるかもしれませんが、実は巨大な迷路です。その巨大迷路を拡大して眺めてみれば、「左下」と「右上」に、それぞれ「入口」と「出口」があることもわかるかもしれません。この迷路(464x323ユニットもあります)を、左下(入り口)から右上(左上)まで抜けるには、どんな迷路上級者でも丸一日以上かかるのではないでしょうか。
さて、「手作業無しに、プログラマブルに迷路を自動作成することができる」コードを書いたにしても、その迷路が果たして使いものになるか・どの程度のものなのか…という確認作業は「とても手作業ではできない」ということに今更ながらに気づかされました。巨大迷路をプログラムで作り出すのは一瞬ですが、その巨大迷路がまともなものであるかどうかを確認するのは、ちょっと面倒そうです。
迷路のテスト・評価を手動でできないのなら自動でやろう!ということになるわけですが、さてさて「迷路生成プログラムの品質を評価するテストコード」は一体どのように書けば良いのでしょうか?