数学の祭典 MATH POWER が今年も開催される。
時期は、10月最初にある連休の最初の2日間に行われる。
今年の場合、10月6日昼から7日夜まで、31時間連続で夜を徹して数学を愛でるイベントだ。
場所は、六本木のニコファーレだ。
MATH POWER 2017 のサイトを見れば、ExcelとPDFで問題があるので、興味のある場合は解いてみよう。
さて、今年のMATH POWERでは、もうちょっとグレードアップした問題を提供することになっていて、現在鋭意製作中である。
去年は「世界最大級」というふうに級をつけていたが、今年はそんなに遠慮せずに、「世界最大」とすることにした。
そのために、去年よりもさらに大きくなってしまった。
去年のデザインは、美しいけれども単純な繰り返しなので、解き筋もモノトーンになってしまう。もっと色々な手筋が現れるように、もうちょっとデザインを頑張ってみた。
その他にも、色々なことにチャレンジしている。
しかし、そんなことをすると、どうやっても問題ができなくなることがある。
それに、いきなり巨大なものを作るのは危険だ。何時間、いや何日も連続でコンピュータを走らせても、何の結果も得られないことが多くなる。
そのため、小さい問題、といっても148合体とかなのだが、その程度の小ぶりな問題(?)で試作をしてみる。
この程度のサイズですんなり出来ない場合には、今年の問題サイズでは絶対に無理なのだ。
コンピュータ、ネットワークなど何でも同じなのだが、小さい場合にうまくいっても、そのまま拡大したら破綻することが多い。
サイズが2倍になったら、計算時間は10倍、100倍どころか永久に終わらなくなる。
ということで、色々な小さな問題を作っては問題生成の調子をみて、スケールアウトできそうだったら本番サイズで試すというのを繰り返している。
使っているアルゴリズムは、進化計算の一種である。
デタラメに問題をつくっては解き、どのくらい酷いかを判定し、ちょっと問題をいじっては酷さを判定している。
どんどんひどくない方向にヒントの数字をいじるのを繰り返しているだけである。
要するに、仕組みは簡単至極である。
問題の難易度はポイントで示される。
これを元に解くのにかかる時間が予想できる。
しかし、それだけでは十分ではない。
極端に易しい場所や、極端に難しい場所がないか、コンピュータに計算させている。
その結果を見て、ざっと判定し、良さそうな問題ができたら、実際に解いてみて、解き心地を調べる。
こういうのを繰り返して、イベントで解いてもらう問題を1問選定するのだ。
とても時間のかかる作業だ。
去年うまくいったので、さらにレベルアップして、来場者が驚くような、印象的なイベントにしようとしているのだ。
どんなサプライズがあるかは、イベントに参加して体感してみよう。