コンピュータが作る難問数独の世界に迫る!【数独人に会うvol.2 後編】

印刷

   前編に続き、いまネットで話題の難問数独専門サイト「danboko.net」の運営者である「数独お父さん」にインタビュー。今回は、日本数独協会の佐貫理事が話を聞きました。
前編はこちら「数独お父さん」が極める難問数独サイト【数独人に会うvol.2 前編】

   数独お父さんは、COBOL使いのプログラマーの方で、定年退職後、コンピュータで数独を作るためにC++を学んだとのこと。プログラマーでもある佐貫理事は開発談が面白くて、ついあれこれ聞いてしまったそうです。

   数独、プログラミング、Webサービスと、話は尽きませんでした。

premium_20181017185435.jpg

数独をコンピュータで作ったきっかけ

   佐貫 数独の問題を作るときに、何から始められたのですか?

   数独お父さん もともとプログラミングの知識がありましたので、乱数と複雑な計算式を組み合わせれば良質な問題が作成できるだろうと確信めいたものを持っていました。
 最初はVisual Basicでソルバー(*1)を作ったのがきっかけで、そのあと、数独の問題を自動で作成するアルゴリズムを書いてみたんですけど、処理速度に満足できなくて......OSの上で動いている言語と違ってC++はマシンに近いところで動くから、速いんですよ!だいたい1秒あれば1問作ってくれます。
*1 ソルバー:数独の問題を自動で解くプログラム

   佐貫 1秒で1問作れるのはすごいですね! これなら無限に数独が遊べそうです。数独に関するプログラムは色々ネットで公開されていて、シンガポールのリー・シェンロン首相が数独ソルバーのプログラムを公開して、以前、話題になっていましたよね。何か参考にしたプログラムはありましたか?

   数独お父さん 問題作成アルゴリズムを作るに当たって、本のサンプルコードなどを参照することは一切しませんでした。全部自分で考えるのが好きなんです。数独の解法も、誰かが紹介しているものではなく自分で見つけた解法のみをプログラムにしました。

   佐貫 そうなんですね。ちなみに、上級問題を解くときに用いる「井桁」という解法があるのですが、こういったものは使いませんでしたか?

   数独お父さん (井桁の説明を見ながら)へえ、こういうのがあるんですね。私は、独自に見出したいくつかの解法から問題を生成しているんです。どの解法を使うか条件付けをすることで、難易度の設定もできます。

今すぐ無料会員に登録して、コメントを書き込もう!
1日1数独作ニコリ

ニコリ作の数独が毎日1問解けます。
朝の日課に、ランチのお供に。
※問題は20日間掲載されます。

すでに会員の方は
ログインしてプレイ
まだ会員でない方は
会員登録してプレイ
J-CAST会社ウォッチ会員向けセミナー
しごとの学校
  • 「就活応援」トークライブ北条かや×石渡嶺司の「会社に騙されないシューカツ」