ホームページ目次2012-10-01(前)2012-10-15(次)

パズル問題の作成は上級手筋を知らなくてもできる

2012年10月9日

パズルに関して、非常に多くの誤解が存在する。 とくに、初心者の多くは、勝手な思い込みをしていることが多い。

その中で、一番多いのが、「ナンプレの難易度は、ヒント数で決まる」というものだ。 ヒント数が少なくなるほど難易度が上がるというものだ。 現実には、そんなことはまったくないのだが、この思い込みを信じているパズル出版社さえいるのが現実だ。

実際は、ヒント数が少なくなると、可能な問題の数が極めて限られ、難易度の調整などそもそもできなくなる。 下手をすれば、ヒントが少ない場合は、配置によっては問題が作れないことがしばしばある。 また、作れる問題が、本質的には1問だけということもある。 というわけで、難易度調整がほとんどできなくなって、いわゆる中級程度の問題にしかならないことが多くなる。

さて、もう1つの大きな誤解を説明しよう。 「パズルの問題を作るには、そのパズルのついて、超上級者でなければいけない」というものだ。 難問をすらすら解けるようにならないと、そのパズルの問題を解けないというものだ。

この命題(迷題)は、そもそも自己矛盾しているのだ。 パズル作家だって、新しいパズルについて、最初から超上級者ではないのだ。 もちろん、短期間に超上級者になる可能性は高いが、最初はそれなりなのだ。 そして、新しいパズルの研究をするには、パズルを解かねばいけないので、問題が必要なのだ。 でも、新しいパズルは、だれも問題を作っていないので、まだ慣れないパズルでも、問題を作って試すしかないのだ。

ということで、実は、あまり慣れていないパズルでも、パズル作家は問題を作って解いてみたりするのだ。 つまり、そんなに上級者ではなくても、問題は実はつくれるのだ。 重要なのは、発想の転換なのである。

ちょっと飛躍して、パソコンでの問題の自動生成はどうやっているだろうか。 人によって、プログラムの作り方は違うだろうが、すくなくとも、問題を解くプログラム(ソルバー)が存在するはずだ。

どのパズルでも、手筋は色々あって、完全解明できているものはないはずだ。 虱潰しではなく、論理的に、あるいは理知的に解ける手筋はたくさんあっても、決して全部出尽くしている訳ではない。 いくつかの手筋が判っているだけでに過ぎない。 それでも、問題を作成するには十分なのだ。

というより、どこまでの手筋で解ける問題を作るかで、実は難易度の調整を行っている。 だから、手筋1だけで解ける問題は初心者用、手筋1と手筋2までで解ける問題は中級者用とかなるわけだ。 だから、初心者用の手筋だけを組み込んだソルバーは、初心者レベルの解答能力しかない。 いろいろな上級手筋を組み込んだソルバーは、上級者レベルの解答能力を持つのだ。

問題生成は、実際には適当に数字など問題の条件を適当に入れ替えながらソルバーに解かせて、解が1つになるまで入れ替えを繰り返すのだ。 入れ替えの方法は、むやみやたらに入れ替えても無駄なので、何らかの方針に従って行うのが一般的だ。 このあたりは、人工知能の本でも読めば、すぐに判るだろうから、今回は省略する。

つまり、手筋を全部プログラムに組み込まなくても、問題は生成できるのだ。 自動生成するとか、人間が手作業で作るとかは、実はそれほど本質的な問題ではない。 ソルバーの能力を、問題の対象者のレベル相等の能力に調整してから、 自動生成プログラムにかけると、希望レベルの問題が生成される。 パズル作家が問題を作るとは、初心者用の問題の場合には、自分でここまでの手筋しか使わないと決めて問題を作る訳で、結局コンピュータで自動生成するのと同様のことをやっているのだ。

非常に、いや異常に研究が進んでいるナンプレは、とてもたくさんの難解な手筋が存在する。 これらをプログラムに組み込んで、これらの手筋が必要になる問題を作ることも実はできる。 しかし、そんな問題、一体誰が解けるであろうか。 とんでもないパズラーが集まって競技するような場合を除いて、そう極端に難しい問題は出題できないのだ。

ということで、中級者の人でも、ちゃんと中級レベルの問題を作れるのだ。 パズルの問題を作るのに必要なことは、パズルの上級者でることではなく、問題を作るとはどういうことかが分かることなのだ。 ちょっと、発想の転換が必要なだけだ。それも、ほんのちょっと。 だって、「解くように作る」と以前から言われているのだ。


ホームページ目次2012-10-01(前)2012-10-15(次)