パズル問題自動生成時代 > NPMakerマニュアル > メイン > 制御盤 > とりあえず問題を作ってみよう > 難易度を指定して自動生成


[Prev] [Next] [Up] [Contents][フレーム表示] [フレーム解除

難易度を指定して自動生成 応援する 

難易度が初期状態のまま問題作成をおこなったら、 難易度が5〜7の問題ができた。 どんな難易度の問題ができるかは、 乱数を利用して作っているので毎回変るのであるが。

さて、もっとやさしい問題を作ることを考えよう。

そのためには、作る前([問題自動生成]ボタンを押す前)に、 難易度範囲を次のように設定した。

念のため[数消去]ボタンを押して、盤面上の数字をきちんと消してから [問題自動生成]ボタンを押した。

さて、どうなったであろうか。


なかなか問題ができず、 右上に赤のエラーメッセージが出る。

たとえば、次のメッセージがでる。

盤面を見る限り完成しているようにみえる。

しかし、エラーメッセージは、「第4ステージ異常終了」である。 これは、最終ステージまで到達したのだが、 難易度が指定範囲(1〜4)でなかったことを示す。

エラーが発生すると、盤面を最初の状態に戻してやり直すようだ。

また、次のように、もうちょっとで全部の青マスが決まるときに エラーが出ることもある。

「第3ステージ異常終了」で、難易度以前に、 完成まで至らなかったことを示す。 まあ、この配置は、空色マス24個にしては作りにくいのでやむを得ない。

また、次のようにもっと早い段階でエラーが出ることもある。

「第2ステージ異常終了」である。 空色マスに、まだ適当に数字を入れているあいだに発生してしまったエラーである。 絶対に問題ができない配置になってしまって発生することと、 計算時間がかかり過ぎたので発生する場合がある。 計算時間は指定できるのだが、標準では次の手を探すのに 20秒以上かかったら諦めてエラーにすることにしている。 このあたりの対処方法は、そのうち書く。


上記のようなエラーを何度かくり返すのだが、 そのまま放置しておくと、次のような画面になり、 問題ができあがる。

右上には、「問題作成完了 408秒」と出ている。 難易度レベルは4であり、指定範囲になんとか入っている。

下左側の情報から、解総数3800から4個のユニーク解が見つかり、 右側のスライダー横の数字 1/1 より、 範囲内の問題は1つしか残らなかったことがわかる。

このように、難易度範囲を絞りこむと、 なかなか条件に合うのを作りづらくなる。


[Prev] [Next] [Up] [Contents][フレーム表示] [フレーム解除

このサイトについて|ヘルプ|Q&A|個人情報保護|プライバシーポリシー|利用規約|コメント・トラックバック規約|削除規程|広告掲載
Copyright (c) 2005-2007 Time Intermedia Corporation