Sudoku Flow

世界一難しいナンプレをヒントエンジンで解いてみました

公式に世界一難しいと認められたナンプレはありません。何を基準にするかで変わります。私たちは、ナンプレアプリのヒントエンジンを使い、プレイヤーが解くときと同じように、その時点で使える最も簡単な解法で1手ずつ進めて調べました。

要点

フィンランドの数学者Arto Inkalaが作ったAI Escargot(2006年)と2012年の問題は、史上最も難しいナンプレとして世界中で報じられました。私たちのアプリのヒントエンジンでは、どちらもすべての手順を説明することはできません。どちらも、数字を1つ仮に置き、その先をたどるフォーシングチェーンが必要で、さらに、アプリが知っているどの解法でも説明できない手順があります。アプリの全60,000問には、そのどちらが必要な問題もありません。

調べ方

ヒントエンジンは、私たちのアプリのヒントと同じコードです。数字を入れられる最も簡単な解法を探して数字を入れ、また探すことを、盤面が埋まるまで繰り返します。最後に試す解法がフォーシングチェーンです。それでも進めない場合、エンジンは入る数字を把握していますが、その根拠を説明できる手順がありません。ナンプレソルバーで、すべての手順を確認できます。

検証結果

問題最初の数字の数手数フォーシングチェーン解説できない手順名前のある解法で最も難しいもの
Arto Inkalaの2012年の問題216064フォーシングチェーン
AI Escargot235832フォーシングチェーン
総当たりのプログラムを苦戦させるための問題176400ヒドゥンシングル

Arto Inkalaの2012年の問題

2012年6月に公開され、世界中の報道機関が史上最も難しいナンプレとして紹介しました。

フォーシングチェーンが6回、解説できない手順が4手あります。アプリで最も難しいエクストリームレベルよりも難しい問題です。

1手ずつ解く →

出典: SudokuWiki: Arto Inkala Sudoku

AI Escargot

2006年11月下旬、作者であるフィンランドの数学者Arto Inkalaは、これが世界一難しいナンプレだと述べました。名前は、カタツムリのような形にちなんで付けられました。

フォーシングチェーンが3回、解説できない手順が2手あります。アプリで最も難しいエクストリームレベルよりも難しい問題です。

1手ずつ解く →

出典: SudokuWiki: Escargot

総当たりのプログラムを苦戦させるための問題

Wikipediaでは、総当たりで解くプログラムが苦戦するように設計されたナンプレとして紹介されています。一番上の行が空いていて、その行の答えは9 8 7 6 5 4 3 2 1です。1から順に試すプログラムにとっては、最も都合の悪い並びです。

すべての手順に解法の名前があります。最も難しい解法はヒドゥンシングルなので、アプリではこの問題をふつうレベルと判定します。

1手ずつ解く →

出典: Wikipedia: Sudoku solving algorithms

ここからわかること

  • 最初に入っている数字が少なくても、問題が難しくなるとは限りません。総当たりのプログラム向けの問題には、答えが1つだけのナンプレで最小となる17個の数字が入っていますが、人ならシングルだけで解けます。Inkalaの2012年の問題には21個の数字が入っていますが、それでも数字を仮に置いて試す必要があります。
  • コンピューターにとっての難しさと、人にとっての難しさは異なります。すべての数字を順番に試すプログラムは、総当たりのプログラム向けの問題で膨大な回数を試す必要がありますが、人なら当てずっぽうを使う必要は一度もありません。
  • アプリで最も難しいレベルでも、数字を仮に置いて試す必要はありません。全60,000問のどれにもフォーシングチェーンは必要ありません。「エクストリーム」レベルでは、最も難しい手順の大半がALS-XZで、その割合は86.3%です。

どの問題が最も難しいかは、基準によって変わります。SudokuWiki独自の基準では、Inkalaの2012年の問題は、David Filmerが作った2問に次いで3位です。 SudokuWiki: Arto Inkala Sudoku

ナンプレアプリのアイコン

こんな問題をもっと解いてみませんか?

私たちは、iPhone、iPad、Mac、Android向けのナンプレアプリも開発しています。広告は一切なく、オフラインでも遊べます。ヒントを使うと、数字を入れるだけでなく、そのマスを解くための解法を説明します。

Sudoku Flowは、このサイトでおすすめしているナンプレアプリの開発元、Rubigo Gamesが制作しています。