ナンバープレイス自動解法ソフトの開発
このところ、脳の活性化のためナンバープレイスを追いかけていました。消しゴムと鉛筆によりナンプレを解いていましたが、途中からAIに解かせてみようと考えhtml, Css, JavaScriptによる『AIナンプレ自動解法プログラミング』に挑戦しました。
ナンバープレイスを解く鍵は9個からなるグループに与えられた数字をとらえて他のグループとの関連から必然性を見つけてひとつひとつ、空白マスを埋める方法がオーソドックスです。
以下のサンプルは41個の与えられた数字にナンプレのルールを適用して残りの40マスを埋める課題です。左上のスピーカーボタンをクリックすると回答の先頭部分が表示されます。この所作は言わずと知れた『音声が出るサイトにおいて初回は閲覧者が決める』という前提があり、自動開始を認めていないからです。
本格的な記事は『AIでナンプレを解く』です。
先人がナンプレを解くコツをまとめた定石がネットや書籍に掲載されています。コンピュータを用いてナンプレを解くソフトウェアはアプリケーションとして数多く出回っていますが、解く過程について解説している情報はまだ整っていません。当記事がフロントランナーとして役立てば幸いです。
候補として挙げられた数字を一つずつ削除する定石には親しみやすい名称がついていて、隠れ二国同盟、ポインティングペア、三国同盟などが有名です。三国同盟については
『ナンプレ三国同盟実装する』において詳しく触れています。
残した課題
前回、発表した記事はまだまだ発展途上であり不十分な点が多々あります。一番おおきな課題は「極めて難解な問題は解けない」です。これは永遠の課題であり引き継いだ新進気鋭の若者が成すことですので気にしていません。それも含めて残された課題を整理してみます。
①難解な問題は解けない
②画面は600ピクセルより大きなモニタを想定
③解法の集計は大雑把でマス目に確定数字を埋め込むときのみ、カウントしている
④右の進行状況表示欄に解析中の重要情報をもっときめ細かに表示する
HTMLへの思い入れ
かつて、開発環境を整えるだけでも月に何百万円ものリース料を払って開発しなければならない時代がありました。
時代が進んで個人レベルでも様々なシステム開発ができるようになりました。あとは意欲一つの時代が訪れました。
HTMLは世界中の技術者が公開に向けて努力されました。何の代償もなく使わせていただくのはありがたいです。
他人、他組織、他国が開発したシステムを後追いするだけでなく、ユニークな企画のもと独特な商品開発につながることを祈っています。