Home
パズル問題自動生成時代
ナンプレ
はじめに
プログラムで問題を解く
プログラムで問題を自動生成
- 手作りの方法
- 破綻の判定が欲しい
- 序盤の数字のばらまき方
- 多重解にならないために
- 中盤は統計的にごまかそう
- 終盤へのつなぎ方
- 良い問題を目指して
- 終盤は問題の選択
- 見かけが大切
- 隠れた工夫
- 面白さの実現について
- 自動生成プログラムのススメ
乱数の乱用だけでは限界
将来展望
- もしミリ秒で問題生成できたら
- 誰でも簡単に問題が作れたら
- 自動生成も多種多様
- 解き方を見て問題を提供
- パズル作家風の問題生成
- 自動生成プログラムの自動生成
- 多種パズルに適用可能な汎用的アルゴリズム
- いつごろ実現できるか (1)
- オープンソースでの公開
- パズル作家は何をすべきか
パズル問題自動生成時代 -- ナンプレ
最初のパズルとして最適
ペンシルパズル
パズルの種類は非常にたくさんある。ここでは、プログラムを使って解いたり作ったりすることを考えているので、論理的に考えられるものだけにする。
立体とか、何か物で作り、手で玩びながら解けない解けないと悩むタイプのパズルもあるが、ここで解説するのはそのタイプではない。一般に、立体パズルは難しい。それは、人間の立体把握能力があまり高くないためかもしれない。
ここでは、紙と鉛筆、消しゴムがあれば可能なパズルに取り組む。この代表的なものにクロスワードがあるが、クロスワードは言語に依存する。日本語のクロスワードは、英語の世界ではまったく意味をなさない。
ここでは、そのように言語に依存するパズルも除外する。言語に依存しなければ、同じ問題を世界中に提供でき、非常に効率的だ。われわれ日本人も楽しめ、まったく同じ問題が何の変更もなく世界中で遊んでもらえることは重要だ。「世界に通用するパズル」だけを考えることにする。
紙と鉛筆、消しゴムと書いたが、コンピュータ上でのパズルを考えるので、画面と、キーボード、マウスなどを使って操作できるものになる。こういうのを一般に、ペンシルパズルと言ったりするようだが、以下では、パズルと言った場合、そのようなパズルだけに限定する。
簡潔なルール
ナンプレの特長は、ルールの簡潔さにある。
パズルは、そもそもエレガントさを競う傾向が強い。
- よりシンプルなルール
- 様々な問題を作れる
- 難易度も自在に調整できる
- 解くためのテクニックも多数存在する
こういうのが理想的なパズルである。
ナンプレを、上記に照らして見ると、その優秀さが分かる。
ルールは、明らかにシンプルだ。縦、横、3x3のブロックに異なる数字を入れる。 たったこれだけだ。一度遊べば、もう忘れることはあるまい。
問題が作り難いと、絶対普及しない。 数問程度提供されたって、中毒にはなれない。 毎日毎日、暇さえあれば、あるいは暇がなくても取り敢えず1問解いてから 勉強にあるいは仕事を始めるか、と思う程度の中毒患者を作るには、 延々と問題を提供できる必要がある。
この点でも、ナンプレは適している。問題が作り易いのだ。 人手でも比較的簡単にできるし、コンピュータで自動生成も可能だ。 数百問、数千問作るのだって、十分に可能である。
パズルは、易しい問題から難しい問題まで作れて、やっと遊んでもらえる。 やさしい問題しかないと、つまらない、 馬鹿馬鹿しい子供騙しのパズルとして終ってしまう。 難しい問題ばかりだと、ほとんどの人は挫折してしまい、 ごく一部のパズル狂人のものになってしまう。 やさしい問題から難しい問題まで、連続的に難易度を調整できるのが 理想的なパズルである。
ナンプレは、難易度の点でも優秀だ。 たった9×9の盤面しかないのだから、難しい問題といっても たかが知れていると思う者も多いだろうが、 難しい問題は無茶苦茶難しくできる。 実際、私が手作業で解くのを断念するような問題が いくらでもできてしまう。
それから、多様な解き方ができないといけない。 ある法則を1つ発見したら、どんな問題でも解けてしまえば、 非常につまらないパズルになってしまう。
ナンプレの解き方のテクニックは、既にインターネット上に多数紹介されている。 分類方法によって数え方は異なるが、だいたい十数個のテクニックが存在する。 これくらい沢山のテクニックが存在し、 それをどう駆使して問題を解いて行くかが解く人の楽しみだ。
簡潔なルールで奥が深いところが分かっていただけたであろうか。 このような条件が十分に満たされているから、 現在の世界的な流行がある。
変則ルール (バリエーション)
ナンプレは、上記の説明のように、 最初のパズルとしては非常に優れている。
しかし、色々と不満もある。
サイズが9×9と固定 ⇒ 大きなサイズのナンプレ
もちろん、16×16、25×25のナンプレも存在する。 もっともっと大きな、49×49のナンプレが雑誌の折込になっているのもあった。 しかし、数字が2桁になると、見た目のシンプルさがずいぶん失われる。 各マスに文字は1個でなければならない。
もちろん、16あるいは25種類の文字を用意するだけなら、 アルファベットを使えばできる。もっと増えたら、 英字の大文字小文字を使い分けるのだろうか。 大小の差しかないと、よく分からなくなる。 仮名を使えば、少し改善はされるが、次第に見にくくなるだけだろう。
しかし、サイズが大きくなると、繁雑さが増えるだけだ。 9×9で使える多様なテクニックをそのまま大きな問題にも 拡張してしまうと、人間が解くのが嫌なほど面倒な問題になってしまう。
重ね合わせナンプレ ⇒ 大きなサイズのナンプレになる
単純に大きくするのではなく、9×9のナンプレを、 いくつか重ねて、重なった部分を共通にするという条件で解くのがある。
ナンプレの拡張、変型が色々あるが、 その中では一番受けいれやすい拡張かと思う。 しかし、今回はナンプレの本質的部分に限定したいので、 言及しない。
ルールに制約条件を追加
対角線の9マスは総て異なるというルールを付け加えたものもある。 縦、横、3×3ブロック、それぞれ9個ずつあるので、 全部で27個制約だったのが、対角線が加わって、29個の制約になる。 たった2つの増加だが、これだけの差で、 ぐ〜んと制約が増えた感じになり、 バランスが大いに崩れていると思う。
パズルというものは、制約が増えれば増えるだけ、 問題としては易しくなる。 これにより、より少い表出数字の問題を作ることは可能だ。 しかし、ちょっと余分なルールという感じがあるので、 これも言及しない。
変則ルール
後は、様々な変則ルールが存在する。 3×3のブロックではなく、長方形にさえなっていない場合もある。 そこまでブロックの形を自由にすれば、7×7とかのナンプレも作れる。
しかし、そんなことまでして楽しいか、と思う。
もちろん、子供用、小学生用に、 より小さなナンプレを用意するのはそれなりに価値はあろう。 4×4は極端だが、6×6で、 ブロックを2×3にするのはありだろう。
でも、これも言及しない。
ということで、本来の9×9の正統派のナンプレについてのみ説明していく。
変則ルールへの反論
無理にルールをねじ曲げてまで工夫するくらいなら、まったく違うパズルをやればと思う。
なぜ、ルールをねじ曲げるのだろうか。正統派のルールで良質の問題を作れない人が、「逃げ」として変則ルールを作ることが多いのではないだろうか。
変則ルールではなく、もう完全に別のパズルを考案する方が望ましいのではないだろうか。
パズルのルールは、もちろん一朝一夕に決まるものではない。ルールに則った問題を作って、実際に解き心地を調べ、問題の作りやすさ、発展性などを考慮して、最終的には人気が出るかどうかで決まる。その途中の段階で、ルールをいじることはよく行なわれる。
パズルは、多種多様で、それぞれに違う味わいがある。類似パズルよりも、新しい感覚のパズルを何とか考案したいと思うわけだが、なかなか難しい。本当に普及するパズルは、世界で1年に1つ以下のペースでしか考案できない。それほどパズルの考案は難しい。
ルールがシンプルなものは、下手をすると問題も簡単なものしか出来なかったりする。また、複雑でとっつきにくいけれども、一度慣れれば、奥深さにはまるパズルも存在する。いわゆるマニア好みのパズルがある。
このあたりを書くときりがないし、実際に様々なパズルを解いたり、作ったりしないと、パズルの本当の面白さは分からない。だから、能書はこのあたりで終りにする。

