“New Puzzle”により、パズルが作成される。手入力による作成については後述する。
デフォルトで難易度 (Level) は“Advanced”となっている
“Level Setting”で難易度を変更する。また、“Default Settings”によりレベルを設定し、ソフトウエア立ち上げ時のデフォルトとする事も出来る
作成したパズルはファイルとして保存できる(File / Save)
“File / Load”でセーブしたパズルをロードする
最難問レベルのExtra-Terrestrialは目標に達していないので現行のバージョンでは封印している。と言っても、7段階あって、WorldClassでInkala2012には及ばないけれどInkala2010よりも難しいパズルを出力するので満足度に影響はしないと思う
"Erase Solving and Candidates"でクイズ以外を消去する
解答入力の誤りを表示する3つの選択肢がある。
“No Express”では何も指摘しない。
“Visible Mistake”では見掛けの誤りを、つまりルール上での誤りを、赤いフォントで表示する。
“Absolute Mistake”では正解 (Answer) に照応して誤りを赤いフォントで表示する。これはあくまで正解 (Answer) データがある場合に限る。後述するが、正解 (Answer) データの無いパズルも手入力で作成登録出来るからだ。
手入力によるパズルでは、複数解答のあるモノもあり得るので、“Absolute Mistake”の指摘が正しいとは限らない。あくまで登録した正解 (Answer) とは異なる入力を指摘するだけである。
デフォルトで表示は“Visible Mistake”となっている。“Default Settings”により表示を設定し、ソフトウエア立ち上げ時のデフォルトとする事も出来る
候補 (candidates) のメモは容易だ。
セルにフォーカスを当てると (選択すると)、フォントサイズが小さくなり、複数の数字を入力する事が出来る。フォーカスを外すと、1つの数字だけ入力していた場合は元のフォントサイズで大きく表示され、複数の数字であれば小さなフォントのまま候補として表示させておく事が出来る。
候補を1つだけメモしておきたい場合は、その数字を2つ入力しておく事だ
どんな難問パズルでも解く事が出来る。
世界最難問と主張されているInkala2012 (後述) でも解ける。複数解答のパズルも余裕で解ける、たとえ解く度に異なる答えを出力しようとも
“Show Candidates”により候補 (candidates) を解析表示する事が出来る。あくまでヒントとしての表示であり、1つしか候補の無いセルは何も表示されない。
複数解答でなければ各セルに候補は1つしか無い筈なので、これは矛盾している。そこで、パズルの難易度に応じて解析深度を変えて候補を抽出する仕様にしている。あまりに簡単なパズルに於いては、浅い解析深度ですら、1つとして候補が表示されない場合もある
“Open Answer”で正解を表示する。つまり投了 (resign) である。もちろん正解データのある場合に限る
“Pencil Marks”は決定論的な手法である通常の(?)方法をシミュレートしていて、書籍販売されている様な手作りパズルならほとんど一瞬で解く事が出来る。但し、複数解答のあるパズルでは、そのエリアだけ残して終了する。
また、解くにあたって再帰が深いパズルは解けない。このソフトウエアの“Expert”が出力するパズルではしばしば、“World Class”以上が出力するパズルではほとんど、解く事が出来ない
“Backtracking”を使えば、どんなパズルでも解ける。81セルで作り得る再帰がどれほど深くても解ける。更には、パズルと言えるか如何かは別にして、複数解答であろうとヒントが数個しか無くてもお構いなしに解いてしまう
“Backtracking”に関して現行のバージョンでは、素早く解答出来る経路を探索する為にrandom chanceを取り入れています。この為、同じパズルでありながら、解答に要する時間はマチマチになっています。世界最難問のパズルを一瞬で解いてしまうかと思えば、同じパズルに数秒ほど掛ったりもする。
より効率的なアルゴリズムにする事は今後の課題です
"Check Solvable"により、パズルが可解構造であるかどうかを判定出来ます。"Hand-build"によってパズルを作成した場合などに一度チェックしておくと良いでしょう。
パズル(ヒント)を一見する限りではルールに反していない様に見えても、可解不可能なパズルがあり得ます。"sample"フォルダに非可解構造の一例として"unsolvable_xx.np"を置いておきます。当然、"Backtracking"によっても解答する事はあり得ません。
解答(Pencil Marks, Backtracking)の度に事前判定するように、"Option"のメニューで設定する事も出来ます
"Check Multiple"により、パズルが複数解答を持つか単一解答のみであるかを判定出来る。同時に、可解構造であるかどうかも判定する。
この機能は、ハンドビルド中にもチェックする事が出来る。また、候補の分析表示もハンドビルド中に機能するようにした。その場合のリセット(Reset Solving)は候補のみを消去する。これは、パズル作成にも有用かも知れない
“Hand-build Puzzle”で、手入力によるパズルを作成する事が出来る。作成したパズルはファイルとして保存する事が出来る。
2つのステップがあり、先ず最初に、パズルを登録する。ヒント (cell opened an answer) を入力して“Registre”ボタンを押す
前節でフライング説明をしたが、ハンドビルド中に有効となる機能に、複数解答を持つか単一解答であるかのチェック,可解構造であるかどうか,候補の分析表示,候補の消去,更に、解答 (Pencil Marks, Backtracking) がある。パズル作成に有用かも知れない
次いで、各セルに正解を入力して“Registre”ボタンを押すと完成です
正解の入力をスキップして、正解無しのパズルとして作成する事も出来ます。その場合は“Without Answer”を押して完成です
また,一々入力しないでも、解答 (Pencil Marks, Backtracking) させる事で、正解が入力された状態になるので、あとは“Registre”ボタンを押して完成です。それが唯一正解であるかどうかはパズル次第です
“Default Settings”でソフトウエアの立ち上げ時の設定を変えます。
LevelとExpress, Quality of puzzle creating,Confirmationに関しての設定です。ダイアログが立ち上がるので、好みの設定を選択して下さい