P対NP:ブルートフォース検索を回避できる場合の有益な例


8

P対NPの問題を非数学者に説明できるようにするために、ブルートフォース検索を回避できる場合の教育的例を挙げたいと思います。問題はすぐに理解できるのが理想的であり、トリックは簡単すぎたり、難しすぎたりしてはなりません。

これまでに思いついた中で最高のものは

SUBSET_PRODUCT_IS_ZERO

問題は簡単に理解できます(整数のセットが与えられ、製品0のサブセットを形成できるか?)。サブセット)。

助言がありますか?



2n/2+o(n)

多分私は質問をよく理解していませんでしたが、「中間レベル」の多項式時間アルゴリズムを使用したPで簡単に理解できる問題が必要な場合は、古典的な2-CNF充足可能性をお勧めします。
Marzio De Biasi 2013年

4
2カラーリング対3カラーリングはどうですか?
Serge Gaspers 2013年

6
O(n!)O(n22n)

回答:


22

私はジェンガをお勧めします!

3NΘ(N)N6NNΘ(N)

しかし実際には、Uri Zwickは、名刺に簡単に合わせることができる単純なルールのセットを使用して、3つの整数を追跡するだけでJengaを完璧にプレイできることを2005年に証明しました。あなたが必要とする3つの数字は

  • m=
  • n=
  • t=

nmod3mmod3nm

ここに画像の説明を入力してください

ここでIIは、中間のレンガを3層の上部から移動する必要があることを意味し、II-は、サイドレンガを3層から上部に移動する必要があることを意味します-I-は、サイドレンガを2層から移動する必要があることを意味します一番上に、そしてbob-ombは、死について考え、悲しいことなどをする必要があることを意味します。ボックス内に提案された移動が複数ある場合は、それらのいずれかを選択できます。トリプルをすでに知っている場合は時間で、知らない場合は時間でこの戦略を実行するのは簡単です。O(1)(m,n,t)O(N)

モラル:ジェンガは、みんなが不器用で酔っている場合にのみ楽しいものです。


これは優れた教育の例ですが、巡礼者の参照だけに+1を与えたでしょう。
ルークマシソン2013年

10

レジ係は顧客にセントの釣り銭を返さなければなりません。彼女が利用できる硬貨を考えると、彼女はそれを行うことができますか?x

  • ブルートフォース:すべての可能なコインのコレクションを検討し、それらの1つがかどうかを確認します。x
  • 非暴力:動的プログラミングにより、すべてのレジ係と同じように実行します。

この問題には2つのバリアントがあります。

  1. 簡単:レジ係はすべての金種を無制限に供給できます。
  2. ハード:レジ係のコインの供給は限られています。

簡単なバリアントは、貪欲なアルゴリズムで解決できます。より難しいものは動的プログラミングを必要とします。

実際、これを提示する方法は、ブルートフォースソリューションを提案し、それが非常に非効率であることを人々に理解させ、次にレジ係が何をすべきかを最初に簡単なバリアントについて、次にハードキャッシングについて尋ねることです。簡単なものから厄介なものまで、いくつかの例があります。


1

私は自分で役立つ例を見つけたと思います!

おそらく少し漠然としていたかもしれませんが、次の仕様を満たす問題を探していました。

  • 問題自体は、社会科学を勉強している人に簡単に説明できるはずです。
  • 明白だが効果のないアルゴリズムが必要です。
  • また、社会科学を勉強している人に説明しやすい、より優れたアルゴリズムが必要です。

オイラーサイクルでは、すべてのノードが次数を持っていなければならないという必要条件であると説明するのは簡単ですが、十分な条件である理由を説明するのは簡単ではありません。

これは、これまでのところ、上記の仕様を最もよく満たしていると私が思う問題です。

FORM_TARGET_SET_WITH_UNIONS

セットのコレクションC={S1,S2,...,Sn}

ターゲットセットT

質問:いくつかのセットの結合をとることによってターゲットセットを形成することは可能ですか?TC

明白だが効果のないアルゴリズム:

  • 可能なすべての共用体を形成2n
  • それらの1つが対応するかどうかを確認しますT

より良いアルゴリズム

  • 含まれるのセットをマークするCT
  • これらのセットの結合を形成しますS
  • 場合と答え、そうでなければ答えます。|S|=|T|YESNO

姉妹問題もあります

FORM_TARGET_SET_WITH_INTERSECTIONS

より良いアルゴリズムは

  • を含むのセットをマークするCT
  • これらのセットの交差を形成しますS
  • もしと答え、そうでなければ答えます。|S|=|T|YESNO

ご覧のとおり、私は本当にシンプルなもの(ほぼSUBSET_PRODUCT_IS_ZEROと同じくらいシンプルなもの)を探していました。

この問題は、NPは完全であるが定式化が類似しているSUBSET SUMおよびSUBSET PRODUCTと対比することもできます。これらすべての問題において、オブジェクトのコレクションが提示され、これらのオブジェクトの選択に対する操作が望ましい結果を生成できるかどうかが尋ねられます。


1
その他のそのような問題は、素数性ホーンSAT最大マッチングです。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.