質問

なぜコンピューターサイエンスでは、最大の多項式が効率的であると見なされる複雑さはなぜですか?

実用的なアプリケーション用(a), 、複雑さのアルゴリズム$ n^{ log n} $は、たとえば$ n^{80} $などを実行するアルゴリズムよりもはるかに高速ですが、最初は非効率的であると見なされますが、後者は効率的です。論理はどこにありますか?!

(a)たとえば、宇宙の原子の数は約10ドル^{80} $であると仮定します。

役に立ちましたか?

解決

「効率」に関するもう1つの視点は、多項式時間により、マシンモデルに依存しない「効率」の概念を定義できることです。具体的には、「効果的な教会教師の論文」と呼ばれる教会の教会の論文の変種があり、マシンモデルの一種で多項式時間に実行される問題は、別の同様に強力なマシンモデルで多項式時間にも実行されると述べています。

これは一般的なCT論文に対するより弱い声明であり、ランダム化されたアルゴリズムと量子アルゴリズムの両方に違反されていますが、Poly-Hardの問題を解決することができるという意味では、ポリタイムのNPハード問題を解決できるという意味では違反されていません。マシンモデル。

これが最終的に、多項式時間が理論的に人気のある概念である理由です。しかし、ほとんどの人は、これが「実用的な効率」を反映していないことを認識しています。これの詳細については、ディック・リプトンの投稿に関する銀河アルゴリズム「素晴らしい読み物です。

他のヒント

理論的には、漸近的挙動に関心を持ち、漸近挙動に基づいて問題とアルゴリズムのクラスを説明します。ここのキーワードはです 漸近. 。 $ o(n^{80})$は$ o(n^{ log n})$よりも高速です。すなわち、$ n> 1208925819614629174706176 $から始まります(これは、それは:セキュリオン!)。一定の係数、および低次項はありません。

ただし、実際には、指数と一定の係数の両方に注意が払われています。プラクティスでは、入力サイズはセキュリオンに成長することはできません。したがって、はい、あらゆる目的で$ n^{ log n} $は$ n^{80} $よりも優れた選択肢になります。他の要因は、練習においても重要です:並列性、メモリアクセスパターン(例:局所)。

たとえば、整数増殖のためのほとんどのライブラリ、例: GMP アルゴリズムの混合物を実装します 入力サイズに基づいて下のアルゴリズムを選択します 入力サイズに基づいて実質的に優れたアルゴリズムを選択しますが、これらのアルゴリズムは漸近的に劣っている可能性があります。一部の漸近的に「劣る」アルゴリズムは、特定の入力サイズでより速く、最適なアルゴリズムで選択されます。

別の例は、知られている最速のマトリックス乗算アルゴリズムは Coppersmith-Winogradアルゴリズム $ o(n^{2.3737})$で実行されます(最近の改善があります。 詳細はこちら)。ただし、(1)硬い(2)一定の係数が巨大であるため、実装されませんでした。すべての線形代数パッケージは、最適ではないものを使用します ストラッセン.

TL; DR理論は、入力サイズの限界が任意に多数になるため、アルゴリズムを比較するために漸近挙動を気にします。

この答えは、あなたの質問の「全体像」の文脈を見ていきます。コンピューターサイエンスは実際には比較的若く、ややオープンな科学であり、基本的および基本的な質問に対する素晴らしい答えもまだありません。 「効率的に計算されるもの」の基本的な質問はどちらかです 正確に また だいたい 有名なP対NPの問題(または密接に関連するP対Exptimeの問題)としてCS(意見に応じて)で正式化され、その静止 開いた クック/レビン〜1970年と世界最大のコンピューター科学者による激しい仕事によって最初に紹介された40年以上の後(そして、多くの数学者もこの問題に基本的なものとして興味を持っています)。

言い換えれば、 粗い P時間としての「効率的」の定義、および最高値の科学賞の1つ、すなわち10年以上の問題に添付された100万ドルの賞 - コンピューターサイエンスは、いくつかの問題(この境界線に近い)が効率的でなければならない、または効率的であってはならないことを証明することさえできません(PTIME)アルゴリズム。したがって、p時間よりも正確な「効率的」の正確な定義は必要ありません。 可能 現時点では。 P vs NPの推測が何らかの方法で解決された場合、「効率的」のより厳格な定義が可能になるか、おそらく可能な場合があります。

さらに、「効率的」のPtimeの定義は少し「ずさん」でさえあると感じるかもしれず、ほとんどのコンピューター科学者はおそらく同意するでしょう。彼らがこの主張や観察を些細なものと見なすかもしれないという点....言い換えれば、いわば、いわば、 その進行中の作業 /私たちはそれに取り組んでいます. 。 (実際、主流のコンピューター科学者は、これまでのところ、半分冗談でしかありません。 恥ずかしい.)

実際、密接に関連する/かなり強い P vs NP、すなわちNP対P/Polyよりも推測します。これは、現時点ではコンピューターサイエンスでも解決できません。 NP-Timeの問題は解決できないと推測します どれか 「Pサイズの」回路、つまり、アルゴリズム/チューリングマシンによって作成できる回路には制限されていません。

P対NPがどれほど難しいかについては、それがそうであると考えるいくつかの確かな理由があります 少なくとも同じくらい難しい 数学の非常に古いリーマンの推測として(現在は1.5 世紀 古い)、両方とも10年以上にわたって同じ100万ドルの賞を獲得しており、どちらもまだ/最初に解決されていないからです。

したがって、言い換えれば、実際には「効率的」であるアルゴリズムが実際には 理論科学と数学における最も重要で最も難しい既存のオープンな問題.

実際、「効率的に計算されたもの」の問題は、実際にはさらに微妙です。なぜなら、P-Time CT論文と呼ばれる教会への教会の論文のバリアントがあり、実際に量子コンピューティングが実際に計算されるかどうかは不明である 違反 それ。 PITE QMのShorの突破口の結果により、Factoringはこの研究で劇的なひねりと考えられています。言い換えれば、効率的に計算されたものの問題は、実際にもっともっともらしい物理学の原則に至るまでずっと下降し、量子コンピューティングが古典的な計算よりも効率的に計算できるかどうかに関連しています。

したがって、P vs NPと効率的なコンピューティングの問題は、CSと数学に加えて重要または根本的な重要性がある可能性があることを追加することさえできます。 物理.

[1] P vs NP問題、ウィキペディア

[2] ミレニアム賞の問題

[3] P/ポリクラス、ウィキペディア

[4] Shorのアルゴリズム

多項式時間アルゴリズムは、特にいわゆるNPコンプリートと比較してのみ効率的であると見なされます。画像を参照してください: P、NP、NPコンプリート、およびNPハードの問題セットのオイラー図.

ライセンス: CC-BY-SA帰属
所属していません cs.stackexchange
scroll top