コンピュータサイエンス

コンピュータサイエンスの学生、研究者、実務家のためのQ&A

4
暗号化を使用して「Time Capsule」を作成することはできますか?
一定期間読み取り不能のままで、その後読み取り可能になるデジタルタイムカプセルを作成したいと思います。たとえば、キーを秘密にして、必要なときに公開するために、外部のサービスに依存したくありません。これは可能ですか?そうでない場合、そうでないという何らかの証拠が可能ですか? 1つの戦略は、将来のコンピューティング機能の予測に基づいていますが、それは信頼性が低く、タスクに適用されるリソースの数についての推測を行います。

1
ランダム化された選択
ランダム化選択アルゴリズムは次のとおりです。 入力:配列の(明確、簡潔のために)数と数n個のk ∈ [ N ]AAAnnnK ∈ [ N ]k∈[n]k\in [n] 出力:の「ランク要素」(つまり、がソートされた場合は位置要素)A k AkkkAAAkkkAAA 方法: に要素が1つある場合、それを返しますAAA ランダムに一様に要素(「ピボット」)を選択しますppp セットおよび計算しますR = { ∈ A :&gt; P }L = { ∈ A :&lt; P }L={a∈A:a&lt;p}L = \{a\in A : a < p\}R = { ∈ A :&gt; P }R={a∈A:a&gt;p}R = \{a\in A : …

1
からへの直接削減
私たちは、知っているであるでImmerman-Szelepcsényi定理定理とするのであるしたがって、は還元可能な多対数のログスペースです。しかし、チューリングマシンの構成グラフを通過しない直接/組み合わせの削減はありますか?N Lst-non-connectivityst-non-connectivityst\text{-}non\text{-}connectivityNLNL\mathsf{NL}N L - h a r d s t - n o n - c o n n e c t i v i t y s t - c o n n e c t i v i t y N Ls t - c o n n …

1
左右の中央値と要素を効率的に選択する
コーダーののセットがあるとします。NS={a1,a2,a3,…,aN}S={a1,a2,a3,…,aN}S = \{ a_1,a_2,a_3,\ldots , a_N \}NNN 各コーダーの評価はで、金メダルの数はです。E iRiRiR_iEiEiE_i ソフトウェア会社は、アプリケーションを開発するために正確に3人のコーダーを雇いたいと考えています。 3人のコーダーを雇用するために、彼らは次の戦略を開発しました。 彼らはまず、評価者の昇順および金メダルの降順でコーダーを配置します。 この整理されたリストから、3人の中間コーダーを選択します。たとえば、配置されたリストが場合、コーダーを選択します。(a 2、a 3、a 1)(a5、2、3、1、4)(a5,a2,a3,a1,a4)(a_5,a_2,a_3,a_1,a_4)(a2、3、1)(a2,a3,a1)(a_2,a_3,a_1) ここで、このタスクのためのプログラムを作成して、会社を支援する必要があります。 入力: 最初の行には、つまりコーダーの数が含まれます。NNN 次に、2行目に番目のコーダーの評価が含まれます。 iR私RiR_i私ii 3行目には、番目のコーダーによってバギングされた金メダルの数が含まれています。私ii 出力: 会社が選択する3人のコーダーが獲得した金メダルの合計を含む1行のみを表示します。

1
多項式時間で5先の尖った星を見つける
これが現在受講しているコースの宿題の一部であることを証明したいと思います。回答ではなく、進行中の支援を探しています。 これは問題の質問です。 無向グラフの5つ星の星は5クリークです。5-POINTED-STAR。ここで、5-POINTED-STAR =は、サブグラフとしての5先の尖った星ます。∈ P∈P\in P{ &lt; G &gt;{&lt;G&gt;\{ :G:G: G}}\} クリークがCLIQUE =は、クリーク持つ無向グラフです。{ (G 、k ):G{(G、k):G\{(G, k) : GGGGkkk}}\} 私の問題は、これがCLIQUE問題を解決しているように見えることであり、CLIQUEが5点の星を形成することを決定する必要があるという追加の制約を持つグラフにクリークが含まれるかどうかを決定します。これは、5先の尖った星の知識に基づいた幾何学的計算を含むようです。しかし、マイケル・シプサーの計算理論 268 ページには、CLIQUEがことを示す証拠があり、270ページには、NPNPNP HAMPATHやCLIQUEなど、NPのメンバーであるがにあることが知られていないPPP言語の例を紹介しました 。[強調を追加] CLIQUEがにない場合、なぜ5つの尖った星がですか?表示されていないものはありますか? これは宿題の問題であり、直接の回答は認められないことを忘れないでください。 ありがとう!PPPPPP

2
行列パワーの計算の複雑さ
私は計算に興味「が乗行列。時間で実行される行列乗算のアルゴリズムがあるとします。そして、1は簡単計算することができるにおける時間。より短い時間の複雑さでこの問題を解決することは可能ですか?n × n A O(M (n ))A n O(M (n )log (n ))nnnn × nn×nn\times nAAAO(M(n ))O(M(n))\mathcal{O}(M(n))AnAnA^nO(M(n )ログ(n ))O(M(n)ログ⁡(n))\mathcal{O}(M(n)\log(n)) 一般に、マトリックスエントリはセミリングから作成できますが、役立つ場合は追加の構造を想定できます。 注:一般に、時間でを計算、べき乗のアルゴリズムが得られることを理解してい。しかし、多くの興味深い問題が、m =である行列のべき乗の特殊なケースに帰着し、この単純な問題について同じことを証明できませんでした。 o (M (n )log (m ))o (log m )O(n )AmAmA^mo (M(n )ログ(m ))o(M(n)ログ⁡(m))o(M(n)\log(m))o (ログm )o(ログ⁡m)o(\log m)O(n)O(n)\mathcal O(n)

2
Connect Fourをプレイする機械学習アルゴリズム
現在、機械学習について読んでおり、Connect Fourのプレイにそれをどのように適用するのか疑問に思っています。 私の現在の試みは、シグモイド関数モデルとone-vs-allメソッドを使用した単純なマルチクラス分類器です。 私の意見では、入力フィーチャは7x6 = 42グリッドフィールドの状態(プレーヤー1のディスク、プレーヤー2のディスク)でなければなりません。 出力は、ディスクを挿入する行の番号になります。これは1〜7の離散的な数値であるため、これはマルチクラス分類問題として扱うことができると思います。 しかし、教師あり学習で使用可能なトレーニング例を生成するにはどうすればよいですか? 主な目標はゲームに勝つことですが、最終ターン以外のすべての結果は明らかにわかりません。何千回もお互いに何をプレイするかをランダムに決定する2人のプレーヤーにさせた場合、トレーニングの例として、各ゲームラウンドの勝者によって行われたすべてのターンを取るだけで十分ですか?または、これを完全に異なる方法で行う必要がありますか? 編集:コメントで示唆されているように、強化学習について少し読みました。 私が知っていることから、Qラーニングはトリックを実行する必要があります。つまり、現在の状態の関数Qとその状態で始まる最大累積報酬になるために実行するアクションを近似する必要があります。次に、各ステップでQの最大値が得られるアクションを選択します。ただし、このゲームでは、たとえばルックアップテーブルとしてこれを行うには状態が多すぎます。それでは、このQ関数をモデル化する効果的な方法は何ですか?

2
シンプルな書き換えシステムの合流性証明
次の用語で構成される単純な言語があるとします。 truetrue\mathtt{true} falsefalse\mathtt{false} 場合用語では、次いで、そうでi ft1,t2,t3t1,t2,t3t_1,t_2,t_3ift1thent2elset3ift1thent2elset3\mathtt{if}\: t_1 \:\mathtt{then}\: t_2 \:\mathtt{else}\: t_3 ここで、次の論理評価ルールを想定します。 iftruethent2elset3→t2[E-IfTrue]iffalsethent2elset3→t3[E-IfFalse]t1→t′1ift1thent2elset3→ift′1thent2elset3[E-If]iftruethent2elset3→t2[E-IfTrue]iffalsethent2elset3→t3[E-IfFalse]t1→t1′ift1thent2elset3→ift1′thent2elset3[E-If] \begin{gather*} \dfrac{} {\mathtt{if}\: \mathtt{true} \:\mathtt{then}\: t_2 \:\mathtt{else}\: t_3 \to t_2} \text{[E-IfTrue]} \quad \dfrac{} {\mathtt{if}\: \mathtt{false} \:\mathtt{then}\: t_2 \:\mathtt{else}\: t_3 \to t_3} \text{[E-IfFalse]} \\ \dfrac{t_1 \to t_1'} {\mathtt{if}\: t_1 \:\mathtt{then}\: t_2 \:\mathtt{else}\: t_3 \to \mathtt{if}\: t_1' \:\mathtt{then}\: t_2 \:\mathtt{else}\: …

1
実際のキャッシュ忘却のパフォーマンスの評価に関する研究
キャッシュを無視するアルゴリズムとデータ構造は、Frigo et alによって導入されたかなり新しいものです。中のCache-忘れアルゴリズム、1999。同じ年のプロコップの論文も初期のアイデアを紹介しています。 Frigoらによる論文。理論と、キャッシュを無視するアルゴリズムとデータ構造の可能性を示すいくつかの実験結果を提示します。キャッシュを意識しないデータ構造の多くは、静的検索ツリーに基づいています。これらのツリーを保存およびナビゲートする方法は、おそらく最も顕著なものとして、Bender et al。また、Brodal et al。Demaineが概要を説明します。 実際にキャッシュの動作を調査する実験的な作業は、少なくともLadnerらによって行われました。でプログラム計装、2002を使用してキャッシュを意識し、キャッシュ紛失静的検索木のA比較。ラドナー等。古典的なアルゴリズム、キャッシュ忘却型アルゴリズム、キャッシュ対応アルゴリズムを使用して、バイナリ検索問題を解決するアルゴリズムのキャッシュ動作をベンチマークしました。各アルゴリズムは、暗黙的および明示的なナビゲーション方法の両方でベンチマークされました。これに加えて、2003年のRønnの論文では、同じアルゴリズムを非常に詳細に分析し、Ladner et al。と同じアルゴリズムのさらに徹底したテストも実行しました。 私の質問は それ以来、実際にキャッシュを使用しないアルゴリズムのキャッシュ動作のベンチマークに関する新しい研究はありますか?特に静的検索ツリーのパフォーマンスに興味がありますが、他のキャッシュを意識しないアルゴリズムとデータ構造にも満足しています。

2
バイナリツリーの証明には、最大で葉があります
ノードを持つ二分木が最大で葉を持っていることを証明しようとしています。誘導でこれを行うにはどうすればよいですか?nnn⌈ n個2⌉⌈n2⌉\left\lceil \frac{n}{2} \right\rceil ヒープに関する最初の質問でフォローしていた人々のために、それはここに移動されました。

1
計算可能性理論におけるオープンな問題を簡単に述べる
私は、オープンで問題の例を与えるために、計算可能性のオープンで問題を簡単に述べることができます(計算可能性の最初のコースを履修している学部生が理解できる)。定義とそれらに興味を持っています)。 私はこのリストを見つけましたが、その中の問題は大学生にとって複雑すぎて、問題を述べる前に定義を与えるのにかなりの時間を費やす必要があります。私がこれまでに発見した唯一の問題は 有理数上のディオファンチン問題は決定可能か? 計算可能性理論において、他の興味深く簡単に述べることができる未解決の問題を知っていますか?

2
文脈自由文法の前後セットは常に文脈自由ですか?
してみましょう文脈自由文法であること。端末との非終端記号の文字列あると言われている文形式のあなたが制作適用することによってそれを得ることができればの開始シンボルにゼロ回以上。ましょうのsentential形態の集合。GGGGGGGGGGGGSSSSF(G)SF⁡(G)\operatorname{SF}(G)GGG ましょうおよびletのサブこと -我々は、呼び出し断片の。さあα∈SF(G)α∈SF⁡(G)\alpha \in \operatorname{SF}(G)ββ\betaαα\alphaββ\betaSF(G)SF⁡(G)\operatorname{SF}(G) Before(β)={γ | ∃δ.γβδ∈SF(G)}Before⁡(β)={γ | ∃δ.γβδ∈SF⁡(G)}\operatorname{Before}(\beta) = \{ \gamma \ |\ \exists \delta . \gamma \beta \delta \in \operatorname{SF}(G) \} そして After(β)={δ | ∃γ.γβδ∈SF(G)}After⁡(β)={δ | ∃γ.γβδ∈SF⁡(G)}\operatorname{After}(\beta) = \{ \delta \ |\ \exists \gamma . \gamma \beta \delta \in \operatorname{SF}(G) \}。 ある及び文脈自由言語は?が明確な場合はどうなりますか?が明確な場合、およびも明確なコンテキストフリー言語で記述できますか?後(β )G G 前(β )後(β )Before(β)Before⁡(β)\operatorname{Before}(\beta)After(β)After⁡(β)\operatorname{After}(\beta)GGGGGGBefore(β)Before⁡(β)\operatorname{Before}(\beta)After(β)After⁡(β)\operatorname{After}(\beta) …

1
二分木の最小帯域幅の近似
最小帯域幅の問題は、2つの隣接ノード間の最大距離を最小化する整数線上のグラフノードの順序を見つけることです。 決定問題は、二分木の場合でもNP完全です。帯域幅最小化の複雑さの結果。Garey、Graham、Johnson、Knuth、SIAM J. Appl。Math。、Vol。34、第3号、1978年。 二分木の最小帯域幅を計算するための最もよく知られている効率的な近似性の結果は何ですか?近似結果の最もよく知られている条件付き硬さは何ですか?

6
洗練された再帰アルゴリズムの例
有名な決定的線形時間選択アルゴリズム(中央値アルゴリズムの中央値)を友人に説明していました。 このアルゴリズムの再帰は(非常に単純ですが)非常に洗練されています。それぞれ異なるパラメーターを持つ2つの再帰呼び出しがあります。 このような興味深い再帰アルゴリズムの別の例を見つけようとしていましたが、見つけられませんでした。私が思いつく可能性のある再帰アルゴリズムはすべて、単純な末尾再帰または単純な分割統治(2つの呼び出しが「同じ」である)のいずれかです。 洗練された再帰の例をいくつか挙げていただけますか?

3
Landauの用語の合計の何が問題になっていますか?
私が書いた ∑i = 1n1私= ∑i = 1nO(1)= O(n)∑私=1n1私=∑私=1nO(1)=O(n)\qquad \displaystyle \sum\limits_{i=1}^n \frac{1}{i} = \sum\limits_{i=1}^n \cal{O}(1) = \cal{O}(n) しかし、私の友人はこれが間違っていると言います。TCSチートシートから、合計がHnHnH_nと呼ばれ、が対数的に増加することがわかりnnnます。したがって、私の限界はあまりシャープではありませんが、必要な分析には十分です。 私は何を間違えましたか? 編集:私の友人は同じ推論で、私たちはそれを証明できると言います ∑i = 1ni = ∑i = 1nO(1)= O(n)∑私=1n私=∑私=1nO(1)=O(n)\qquad \displaystyle \sum\limits_{i=1}^n i = \sum\limits_{i=1}^n \cal{O}(1) = \cal{O}(n) これは明らかに間違っています!ここで何が起こっていますか?

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