
「2,000ステージ、すべて解ける」は一つの主張に聞こえますが、実際には連鎖です。探索で経路が見つかり、本当の初期状態から再実行して動き、各手がプレイヤーと同じルールを守る必要があります。OutBrickでは経路の発見と検査を別の仕事にし、公開前に全ステージの証拠となる手順を再実行しました。
ソルバーを信頼できるのは、一手の定義がゲームと一致するときだけです。スライドパズルのピースは、壁、他のピース、その色を通さないゲートまで進むことがあります。OutBrickには状態を持つ詳細もあります。鍵がゲートを変え、氷は何回か滑らせて解け、生成器は待機したピースを出します。検証用に簡略版を再実装すると、バグの隠れる場所にちょうど穴を残します。
だから探索はゲーム自身のルールに合法手を尋ね、遊びと同じ状態遷移コードで適用します。状態のキーにはゲート状態も含め、周期的または手数に依存するゲートで必要なら、周期に合わせて折り畳んだ手数も含めます。見た目が同じでも有効なゲート状態が違う二つは、異なる探索状態のままである必要があります。
ソルバーは重み付きA*を使います。ExitTableヒューリスティックは、他のブロックを取り去ったら、各ピースが合う出口へ何回のスライドで届くかを尋ねます。この緩和した盤面は本物より考えやすく、残る仕事の見積もりを渡します。ヒューリスティックの重みを増すことで、すばやいクリアの発見を優先します。
この選択には限界があります。見つけた経路は役立ちますが、最短保証はありません。探索はノード予算でも止まります。その場合は不明で、盤面を不可能とは呼びません。到達可能な状態空間を完全に探索し尽くしたときだけ、クリアなしの判定を支えられます。区別することで、時間制限や中止がパズルについての虚偽の主張になるのを防ぎます。
経路の発見は最終確認ではありません。制作した各盤面に、初期状態からクリアまでの手順という証拠を保存します。新しいゲーム状態から始め、初期状態の有効性を確認し、本当のルールで一手ずつ適用します。不正な手は即座に失敗です。
検査はまた、同じ直前の状態から各手を再実行し、結果の状態、イベント、結果を比較します。繰り返すと違う動きをする遷移を捕まえます。各手のあと、全ピースが有効なマスにあり、二つが同じマスにいないことを確かめます。最後に実際にクリアしている必要があります。もっともらしいだけの経路や、ブロックが一つ残るものは数えません。
合法な手順は、経路の存在を証明します。人が見つけるか、公平に感じるか、適切に難しいかは証明しません。ソルバーの経路も最適手数を確立しません。それらは別の設計の問いなので、全セットの再実行を正確さの関門にし、ペースと難易度は別に評価します。
手数上限も検証した経路を許す必要があります。好きなだけ考えられ、制限は手数を数え、OutBrickに時計はありません。検証結果をタイマーに変えず、パズルに圧力を与えます。
役立つ公開結果は「一度ソルバーを動かした」ではありません。セット内の全盤面に、公開するルールで正常に再実行した証拠があることです。ルールや盤面が変われば再検査でき、最初に失敗する手が、合法性、決定性、盤面の幾何、最後のクリアのどの約束が破れたかを示します。
こうして公開前にOutBrickの2,000ステージを確認しました。同じ種類を無料のブラウザ盤面で試すか、iPhoneとiPad向けOutBrickをダウンロードできます。
カテゴリーとタグ
よくある質問
役に立つ答えをいくつか
ソルバーは最短解を見つけますか?
いいえ。重み付きA*で良いクリア経路をすばやく探しますが、最適保証はありません。再実行は合法性とクリアを確かめます。
ノード予算に達したら?
結果は解けないのでなく不明です。予算や中止は、経路が存在しない証明ではありません。
OutBrickの「ソルバーで検証済み」とは?
経路を見つけ、初期状態からゲームのルールで再実行しました。合法手、繰り返せる状態遷移、有効で重ならない位置、クリア完了を確認します。
APA 7
参考文献
参考文献は原語のまま記載しています。出典が研究ではなく、スタジオ自身の歴史や報道記事である場合は、本文の該当箇所でその旨を明記しています。



