任意のサイズの部分的に満たされた数独を与えると、対応する完成した数独を与えるプログラムがあるとしましょう。
このプログラムをブラックボックスとして扱い、これを使用してTSPを解決できますか?つまり、TSP問題を部分的に満たされた数独として表現する方法はありますか?その数独の答えを与えると、TSPの解を多項式時間で伝えることができますか?
はいの場合、どのように?TSPを部分的に満たされた数独としてどのように表現し、対応する満たされた数独を結果として解釈しますか。
任意のサイズの部分的に満たされた数独を与えると、対応する完成した数独を与えるプログラムがあるとしましょう。
このプログラムをブラックボックスとして扱い、これを使用してTSPを解決できますか?つまり、TSP問題を部分的に満たされた数独として表現する方法はありますか?その数独の答えを与えると、TSPの解を多項式時間で伝えることができますか?
はいの場合、どのように?TSPを部分的に満たされた数独としてどのように表現し、対応する満たされた数独を結果として解釈しますか。
回答:
9x9数独の場合、いいえ。有限なので、時間で解くことができます。
しかし、数独のソルバーがあり、それがすべてのおよびすべての可能な部分ボードで機能し、多項式時間で実行された場合、はい、それは数独はNP完全です。
NP完全性の証明は、NP完全問題Rから数独に還元することで機能します。RはNP完全であるため、TSPからRに減らすことができます(NP完全の定義から)。これらの削減を連鎖させると、数独ソルバーを使用してTSPを解決する方法が得られます。
実際、一般的な数独ソルバーを使用してTSPのインスタンスを解くことができ、このソルバーが多項式時間を要する場合、プロセス全体も同様になります(複雑な用語では、TSPから数独への多項式時間の削減があります)。これは、数独がNP完全であり、TSPがNPにあるためです。しかし、この分野では通常そうであるように、削減の詳細を確認することは特に効果的ではありません。あなたがしたい場合は、数独にラテン広場完了から、単純な削減使って、それをつなぎ合わせることができ、ここで、ラテン平方完成に均一な三部グラフを三角測量の削減、ここで、三角測量の3SATからの減少こちらを、および3SAT問題としてのTSPの定式化。ただし、数独からTSPへの還元の背後にある考え方を理解したい場合は、クックの定理(SATがNP完全であることを示す)と3SATからのいくつかの単純な還元(例:3次元マッチング)を勉強した方が良いと思いますまた、TSP-数独削減は同じ種類のものであるが、より長く、より厄介なものであるという知識に満足しています。