タグ付けされた質問 「ds.algorithms」

タスクを完了するための明確に定義された指示、および時間/メモリ/その他に関する関連分析に関する質問。


1
マルチコモディティフローカット結果に関する参考資料のリクエスト
これはやや主観的な質問です。マルチコモディティフローカット結果、特にフローがカットの良い近似であることを示す「肯定的な」結果(たとえば、フローの数が一定または多対数である因子内)の研究に興味があります。次に例を示します。 1)無向グラフのマルチコモディティフローのフローポリトープ(デマンドポリトープとも呼ばれる)は、以下に示すように、カットのO(log k)内にあります。 F.レイトンとS.ラオ、「近似アルゴリズムへのアプリケーションを使用した均一な多種商品流れ問題の近似最大フロー最小カット定理」、Proc。コンピュータサイエンスの基礎に関する第28回年次シンポジウム(カリフォルニア州ロスアラミトス)、1988年。 N. Linial、E。London、およびY. Rabinovich、「グラフのジオメトリとそのアルゴリズムアプリケーションの一部」、Combinatorica、vol。15、いいえ。2、pp。215–245、1995。 2)対称需要の有向グラフのマルチコモディティフローの需要ポリトープは、以下に示すように、カットのO(log ^ 2 k)内にあります P.クライン、S。プロトキン、S。ラオ、およびE.タルドス、「有向マルチコモディティフローの最大フロー最小カット比の限界」、J。アルゴリズム、No。22、pp。241–269、1997。 3)グループキャストの最大合計レートは、マルチカットの2倍以内です。(私はこの結果の参照を知りません。誰かがこれを手伝ってくれませんか?ありがとうございます。) 問題の特定の構造(上記のように、グラフの無向性や対称的な要求など)を想定して、フローがカットに近いことを確認するこのような肯定的な結果について、もっと知りたいと思います。結果の1行の要約と論文のリファレンスを提供していただければ幸いです。ありがとう。

1
ダイロール問題
編集:質問の精神は良かったと思いますが、改善する必要があります。コインのトスに対して行われた仮定はその問題を些細なものにしており、サイコロはまだ十分に正確に定義されていません。 質問を扱いやすくするが自明ではないサイコロについて、私たちができる合理的な仮定は何ですか?これ以上の議論のための最良の場所はおそらくチャットです。 この質問は、スーパーマリオギャラクシー(SMG)問題に触発され、密接に関連しています。 マリオが惑星の表面を歩いているとします。彼が既知の場所から一定の方向に所定の距離を歩き始めた場合、彼がどこで停止するかをどのくらい早く判断できますか? 最初のパスとして、質問をできるだけ単純化したいと思います。 質問1 コインヘッドを上向きにして開始し、初期トルクで投げ、時間t後にもう一度キャッチするとします。コインが表と裏のどちらに着地するかをどのくらい早く判断できますか?TTTttt より正確には、コインは高さがほぼ0の円柱です(半径に比べて無視できます)。コインは一定の角速度で一定の角度で一定時間回転します。その期間の終わりに、時間と空間を凍結し、コインの位置を調べます。これは、コインを「キャッチ」することを意味します。3つの可能性があります。コインは正確に垂直で、薄いエッジは正確に上を向いています。現時点では、この可能性を無視します。したがって、コインを上から見ると、表側または裏側が見えます。この瞬間、上から見える側がトスの価値です。 初期のトルクと時間は、マリオが一定の方向に一定の方向に歩くのに似ています。違いは、ポリトープの表面に沿ってある程度距離を歩くのではなく、一定数のラジアンで空間内を自由に回転できるようにすることです。 質問0 コインが固定軸を中心に回転する場合、トス(上から見たコインの側面)の値は周期的ですか?上記の問題を定義したように、コインは必ず固定軸を中心に回転するのでしょうか、それとも予想外に回転するのでしょうか? SMGの問題と同様に、コインをめくるときに、各面を明示的に「ウォーク」するよりも賢い方法を実行します。この非常に単純化された問題のバージョンでは、コインフリップが周期的であるため、これは可能であると思います。 2番目の質問では、元の問題のささいな制限を検討します。 質問2 sssTTT ダイについては、いくつかの単純化した仮定を行う必要があります。そうしないと、これは物理的なモデリングの問題になります。とりあえず、コインを投げるようにサイコロを振ったとしましょう。それを投げて、最初の回転を与え、しばらくしてからもう一度キャッチします。表を上にした側がトスの価値です。 PPP 質問3 通常のサイコロの場合でも、上向きの顔のシーケンスが周期的であることはわかりませんが、サイコロを周期的なシーケンスで近似し、結果の「最良の推測」を予想よりも早く得ることができます。元の問題を解決しますか?答えは明らかにイエスだと思いますが、見積もりの​​質と実行時間の改善の間のトレードオフは何ですか? 問題4 ここで、ダイに重みが付けられており、その速度が現在の面に依存していると仮定します。元のSMG問題の用語では、これは、マリオが歩く速度が、マリオが現在いる面に依存することを意味します。おそらく、惑星の一部は、他の部分よりも起伏の多い地形を持っています。

1
要素が軌道上で最小かどうかを判断するための最も効率的なアルゴリズムは何ですか?
グループ所与集合に作用するX全順序で≤とをX ∈ X、もし判断、言い換えれば、xはその軌道に少なくとも要素であるか否かを決定するための最も効率的なアルゴリズムが何であるかを、M I nは、(G x )= x?GGGXXX≤≤\leqx∈Xx∈Xx\in Xmin(Gx)=xmin(Gx)=x min(Gx) = x 私の動機は、自動的に対称性を壊すことにある程度の関心があったSMT解法にあります。対称性を破る述語を追加すると、多くの場合、節のセットが大きくなります。そのため、これを遅延理論の伝播として扱う可能性に興味があります。 上記の説明は一般的すぎる可能性があり、sidで言及されているようにNP-hardです。可能な単純なタスクは、ジェネレーターのセットとしてエンコードされた長さの文字列の順列のグループと長さnの文字列xが与えられた場合です。その文字列がその軌道上で辞書的に最小かどうかを決定するための最も効率的なアルゴリズムは何ですか?nnnxxxnnn

1
循環行列と対角行列の乗算
LET 、B iは、の配列で巡回行列サイズのN × N。あ私AiA_{i}B私BiB_{i}n×nn×nn \times n は2次時間で計算できることを知っています(FFTを使用して対角行列を対角化して追加し、IFFTを適用します)。∑ni=1AiBi∑i=1nAiBi\sum_{i=1}^{n}A_{i}B_{i} 仮に(LET、簡略化のために任意の対角行列であり、RがであるN一体乗根未満全て異なる力として対角要素検討NのRが)。DDDrrrnnnnnnrrr の複雑さは何ですか?各項に同じ対角行列(O (n )項)を含めているので、それは2次式であると思います。∑ni=1AiDBi∑i=1nAiDBi\sum_{i=1}^{n}A_{i}DB_{i}O(n)O(n)O(n) 検討巡回行列のサイズがN × N個より少ない異なるパワーからなる第1の行とn個のR。ましょXはIとY 私のために私は= 1 → nはフルランク対角行列も。RRRn×nn×nn \times nnnnrrrXiXiX_{i}YiYiY_{i}i=1→ni=1→ni=1\rightarrow n の複雑さは何ですか?繰り返しますが、これは二次式であると思います。∑ni=1XiRYi∑i=1nXiRYi\sum_{i=1}^{n}X_{i}RY_{i} rに関して定義される行列とRは人工的なものです。一般的な対角線Dと一般的なフルランクの循環Rの場合を探しています。DDDRRRrrrDDD RRR

1
自己回避ランダムウォークをどのようにシミュレートする必要がありますか?
確率的隣接行列をべき乗することにより、グラフ全体のランダムウォークをシミュレートする簡単な方法がありますが、ランダムウォークが自己回避であると尋ねると、問題はより困難になります。つまり、プロセスは、感染症などのパスを使用してグラフをトラバースする必要があります。 エッジ確率が大きい場合は、単純なモンテカルロアルゴリズムがあります。各試行で、確率1 − p eで各エッジを削除し、新しいグラフの接続されたコンポーネントを計算し、それぞれについて1の行列でカウント行列をインクリメントします。接触したコンポーネント。最後に試行回数で割ります。eee1 − pe1−pe1-p_e 確率が非常に小さいときに、この計算を行うためのアルゴリズムを知っている人はいますか? グラフの関連性が高すぎない場合は、いくつかの最小カットセットを見つけて、それらに包含/除外カウントを行うことができますが、そのようなアプローチは、カットセットのサイズが倍に指数関数的です。明白な計算を介してすべてのクリークサブグラフを個別に処理するなど、接続性の高い特定のケースにもさまざまな最適化があります。より一般的なアイデアはありますか?

1
ヒープソートがスムースソートよりも優れている点は何ですか?
ウィキペディアはヒープソートを超えるsmoothsortの利点があることであると述べている時期に、それは近いO(n)の時間に来ます。 今、私はヒープソートがスムースソートよりも優れている点を考えていましたか? または、この質問を言い換えると、smoothsortは常にheapsortよりも良い選択です(たとえ入力がまだある程度ソートされていなくても)。

1
力のハミング重み
正の整数を考えるととE、何のハミング重み(バイナリ1の数)を求めるの空間と時間の複雑さについてはほとんど知られていたB Eを?bbbeeebebeb^e 場合ビットが利用可能であり、数は単に標準的な技術によって計算することができ、1秒がカウント。しかし、より少ないメモリを使用できる場合、どのようなテクニックが可能ですか?電子ログbeログ⁡be\log b

2
ランダム化された再帰アルゴリズムを分析する方法は?
次のアルゴリズムを考えます。ここで、は固定定数です。ccc void partition(A[1..m], B[1..n]) { if m=1 or n=1 return k = random(min(c,m,n)); partition A into k sublists Asub[1..k] at k-1 distinct random indices partition B into k sublists Bsub[1..k] at k-1 distinct random indices for i = 1 to k for j = 1 to k partition(Asub[i], Bsub[j]) Do …

1
最大マッチング問題の興味深いバリアント
グラフ与えられた場合、従来の最大マッチング問題は、各エッジ、に対してエッジ stの最大サブセットを選択することです。M (U 、V )∈ MのD (U )= D (V )= 1G (V、E)G(V,E)G(V,E)MMM(U 、V )∈ M(u,v)∈M(u,v) \in Md(u )= d(v )= 1d(u)=d(v)=1d(u)=d(v)=1 誰かが次の亜種を研究しましたか?各エッジ、が成り立つ、ここでcはa絶え間ない。この制約を次数制約と呼びます。((D (U )&lt; C ) ∨ (D (V )&lt; C ))(U 、V )∈ M(u,v)∈M(u,v) \in M((d(u )&lt; c ) ∨ (d(v )&lt; c ))((d(u)&lt;c)∨(d(v)&lt;c))\left( \left(d(u) < c\right) \lor …

2
ディペンデンシーグラフからの冗長なエッジの削減
多くの冗長エッジを含む依存関係のDAGがあります(以下の例を参照)。最小限のサブグラフを見つける「クイック」アルゴリズム(つまり、数千のノード/エッジを持つグラフを処理できる)が必要です。 例えば: A -&gt; B -&gt; C A -&gt; C つまり、AはBの前提条件であり、BはCの前提条件であり、AもCの前提条件です。この場合、A-&gt; Cは冗長です(BはCに到達するためにすでに必要であり、AはBに到達するために必要なので) 。 アルゴリズムを研究してからしばらく経ちましたが、どこから始めればよいかわかりません。 ちなみに、アルゴリズムがグローバル最小値、ローカル最小値を見つけることが重要であることは重要ではありません(エッジ削減は、処理の次の段階のランタイム最適化にすぎません)。 また、これはプログラミングではなくCS QAであることに気づきましたが、私のプログラムはPythonで書かれているため、ご存知の場合に備えて、この削減を行うためのpythonモジュールまたはオープンソースについて学ぶことができれば幸いです。 前もって感謝します!

1
凸性と効率的なアルゴリズム。
[2011年7月21日編集:他の例を求めるために質問を編集しました] この質問は、ヒューリスティックな観察の文書化された議論またはより多くの例を求めています。 効率的なアルゴリズムを認めるいくつかの数学的問題は、本質的に凸状であるように見えます。私は線形および半定プログラムと、これらに帰着するさまざまな組み合わせ問題を考えています。 まず、凸型/接続型の場合の効率的なアルゴリズムを認める他の問題のファミリーはありますか?(論理理論の決定手順の例に特に感謝します)次に、「多くの効率的なアルゴリズムの下に潜むことは凸構造である」などの意見を論じている記事または記事のセクションへのポインターをいただければ幸いです。 [編集、2011年7月21日:以下を追加。] いくつかの説明を追加したいと思います。以前に含めなかったのは残念です。私は論理的な決定問題に興味があります。いくつかの論理的な問題の接続部分について、効率的な決定手順が存在するように思えます。2つの例を示します。 量指定子のない1次理論の効率的なソルバー(等価のSMTソルバー、解釈されていない関数との同等性、差分演算など)は、通常、論理積フラグメントの効率的なソルバーを備えており、さまざまな手法を使用して分離と否定に対処します。プログラムの静的分析では、一般的に使用される(そして効率的な)抽象化は、整数間隔、アフィン等式、八角形、または多面体に基づいています。述語ベースの抽象化とプログラム検証には、デカルト抽象化と呼ばれるものがあります。これは、任意のブールの組み合わせではなく、述語の結合を直感的に持つことです。これらのすべてのケースは、問題の接続部分を利用して効率を上げることについてであるように私には見えます。 線形の実数演算の1次理論の接続部分は、凸多面体を表現できます。これが私が最初に凸型プログラミングについて尋ねた理由です。 (理論的または実用的な意味で)効率的な解決策が凸または連言の副問題に基づいている他の問題や例について知りたいです。別の一般的な条件がある場合(Sureshはサブモジュール性について言及しています)、その条件と、その条件を悪用するソリューションの問題について言及してください。

4
多項式と指数のソリューション、および小さなフットプリントの問題の例?
私は今秋、アルゴリズムクラスを教えるときに「実験」を実行する予定です。非常に古い、制限されたコンピューター(主な制限要因はおそらくメモリ(おそらく16KB))と1つのモダン/標準のコンピューターです。遅いコンピューターで実行されている多項式の問題と、速いコンピューターで指数関数の問題を解決するという考えです(そしてもちろん、遅いものが勝ちます)。 問題は、適切な問題を見つけることです。非常に限られたサイズのインスタンスでは実行時間が実際に異なる(そして、好ましくは、データ構造が非常に単純な、プリミティブコンピューターが…プリミティブである)問題です。もともとはソートアルゴリズム(たとえば、2次と線形)について考えていましたが、(bogosortを使用した場合を除き)非常に大きなインスタンスが必要になります。 現在、私が考えた唯一の(かなり退屈な)例は、フィボナッチ数を賢く愚かな方法で計算することです。少し疲れている/使いすぎない、できれば(半)明らかに役立つ何かがあればいいでしょう。アイデア/提案はありますか?

2
これは既知の組み合わせ最適化/スケジューリング問題ですか?
異なる色の「アイテム」を保持するスタックと、同じ色の複数のアイテムを一度に処理できるマシンが与えられます。各ステップで、各スタックの最上部から1つのアイテムを削除してマシンに配置できます(そのため、マシンは1ステップで最大n個のアイテムを処理できます-そのためには、すべてのスタックに同じ色のアイテムが必要です上に)。目標は、すべてのアイテムを最小限の時間で処理することです。nnnnnn 入力例: 可能な解決策の1つは、貪欲なアルゴリズムです。各ステップで、できるだけ多くのアイテムを取り出し、それらをすべてマシンに詰め込みます。残念ながら、貪欲なアルゴリズムは最適ではありません。入力例に対して次のスケジュールが生成されます。 最適なスケジュールは次のとおりです。 何らかの形の状態空間検索を使用する予定ですが、より問題固有で効率的なアプローチがあるでしょうか?関連文献へのリンクは高く評価されています。

1
VC次元dの範囲空間で -nets を構築するための実行時間における
-net範囲空間のの部分集合であるのように、すべてのための空でように。(X 、R)N X N ∩ R R ∈ R | X ∩ R | ≥ ε | X |εε\varepsilon(X、R)(バツ、R)(X,\mathcal{R})NNNバツバツXN∩RN∩RN\cap RR∈RR∈RR\in \mathcal{R}|X∩R|≥ε|X||バツ∩R|≥ε|バツ||X\cap R| \ge \varepsilon |X| レンジ空間所与の VC次元の、 -netサイズのは時間内に計算できます([1]、Thm 4.6を参照)。D ε O (D(X,R)(バツ、R)(X,R)dddεε\varepsilonO(d)3d(1O (dεログ(dε))O(dεログ⁡(dε))O\left(\frac{d}{\varepsilon}\log\left(\frac{d}{\varepsilon}\right)\right)O (d)3 D(1ε2ログ(dε))d| バツ|O(d)3d(1ε2log⁡(dε))d|X|O(d)^{3d}\left(\frac{1}{\varepsilon^2}\log\left(\frac{d}{\varepsilon}\right)\right)^d|X| この問題に固有の項はどの程度ですか?具体的には、改善できますか?既知の下限はありますか? 2 O (d )O (d)3 DO(d)3dO(d)^{3d}2O (d)2O(d)2^{O(d)} 関連する質問:このような改善が存在することが知られている一般的な条件はありますか?(X、R)(X,R)(X,R) [1]バーナード・シャゼル。不一致法。2000年

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.