コンピュータサイエンス

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

1
決定不能な問題の削減
この質問に私が見逃しているいくつかの些細な答えがある場合は申し訳ありません。決定不可能であることが証明された問題を研究するときはいつでも、証明は決定不可能であることが証明された別の問題への還元に依存していることがわかります。問題の難易度について、ある種の秩序が生まれることを理解しています。しかし、私の質問は-決定不可能なすべての問題が、決定不可能な別の問題に還元できることが証明されているかどうかです。他の決定不可能な問題への還元がないことを証明できる決定不可能な問題が存在することは不可能ではありませんか(そのような問題の決定不可能なことを証明するために、還元は使用できません)。縮約を使用して計算可能性の程度に関する次数を作成する場合、この問題にそのような程度を割り当てることはできません。

2
その決定を説明するテキスト分類子
短い文章のテキストカテゴライザを構築しています。「入力したテキストのカテゴリはCです」とユーザーに伝えるだけでなく、この決定を下した理由を簡潔でわかりやすく説明したいと思います。たとえば、「私はあなたの文を複雑な3層ニューラルネットワークに入れ、それが最良のスコアを出した答えです」とユーザーに伝えたくありません。「トレーニングデータにX、Y、Zなどの文が含まれているため、このカテゴリの特徴であるU、V、Wという文が含まれています」などの説明が必要です。 私の質問は、どのような分類アルゴリズムがそのようなアプリケーションに最適ですか? k-nearest-neighboursは良い候補のように思えます。ユーザーに次のように伝えることができるためです。私はパフォーマンスと説明能力のバランスが取れた分類を探しています。 編集:そのような分類器を探すために多くの時間を費やした後、私はlimduと呼ばれる機械学習ライブラリの構築を開始しました。これにより、分類器が彼らの決定を説明できるようになります。それはまだ開発中ですが、分類器が頻繁に失敗する理由を私自身と同僚に説明するのに役立ちました...

3
1からまでの各数値が、マルチセットのいくつかの要素の合計として一意に表現できるようなマルチセットの数
私の問題。与えられた、私は、有効なマルチセット数カウントする。マルチセットは次の場合に有効ですS SnnnSSSSSS の要素の合計はであり、nSSSnnn からまでのすべての数は、いくつかの要素の合計として一意に表すことができます。n S111nnnSSS 例。 たとえば、n=5n=5n=5場合、{1,1,1,1,1},{1,2,2},{1,1,3}{1,1,1,1,1},{1,2,2},{1,1,3}\{1,1,1,1,1\}, \{1,2,2\}, \{1,1,3\}は有効です。 ただし、2は\ {1,1 \}と\ {2 \}の両方で形成できるため、S={1,1,1,2}S={1,1,1,2}S=\{1,1,1,2\}は無効です(つまり、2は2 = 1 + 1および2 = 2)なので、2番目の条件は成立しません。同様に、3は\ {2,1 \}および\ {1,1,1 \}で形成できます。{1,1}{1,1}\{1,1\}{2}{2}\{2\}2=1+12=1+12=1+12=22=22=2{2,1}{2,1}\{2,1\}{1,1,1}{1,1,1}\{1,1,1\} S={1,2,4S={1,2,4S=\{1,2,4 }も無効です。これは、111から5までのすべての数値を555一意に作成できるためですが、Sの要素の合計は5でSSSはありません。555 私はかなり前からこの問題に適したアルゴリズムを見つけようとしましたが、解決できません。codechefからです。提出されたソリューションのいくつかを見ましたが、問題を解決するためのロジックをまだ取得できませんでした。注:質問の制限時間は10秒で、n&lt;109n&lt;109n<10^9 マルチセットの場合、表記S={(a1,c1),(a2,c2)...}S={(a1,c1),(a2,c2)...}S = \{(a_1, c_1), (a_2, c_2) ... \} ai&lt;ajai&lt;aja_i iai + 1= (a私c私+a私- 1 )+ 1 ⇒a私| ai + 1ai+1=(aici+ai−1)+1⇒ai|ai+1a_{i+1} = (a_ic_i + …

2
2つのサイクルに含まれる最長のサイクル
次の問題はNP完全ですか?(私はそう思います)。 入力: エッジ・セットは、2つのエッジ互いに素シンプルサイクルに分解することができる無向グラフ(これらはない入力の一部)。K ∈ N、G = (V、E)k∈N,G=(V,E)k \in \mathbb{N},G=(V,E) 質問:長さkより大きい単純なサイクルはありますか?GGGkkk 明らかに問題がNPであるとの最大の度合いある≤ 4が、それは助けていないようです。GGG≤4≤4\leq 4

2
セルオートマトンによる1 / r引力
粒子間の力をシミュレートするセルオートマトン(2D)はありますか?1 / r1/r1/r より具体的には、厳密にローカルな更新ルールを使用して、2つのオブジェクト(モデル内で定義)が力で互いに引き付けることができるかどうかを知りたいと思います。ここで、rはオブジェクトを隔てる距離です。これは特に、オブジェクト(粒子)が互いに近づくにつれて加速することを伴います。1 / r1/r1/rrrr より一般的には、オブジェクト(ブロブ)間の長距離引力を、厳密にローカルなルールを使用してセルオートマトン設定でシミュレートできますか?

1
ハノイの塔、ただし任意の初期および最終構成
最近、ハノイの塔のバリエーションであるこの問題に遭遇しました。 問題文: よく知られている問題、ハノイの塔の次のバリエーションを考えてみましょう。 我々は、与えられたタワーおよびサイズのM個のディスク1 、2 、3 、... 、Mいくつかの塔の上に積層します。あなたの目的は、管理できる限り少ない移動ですべてのディスクをk 番目のタワーに転送することですが、次のルールを考慮します。nnn1,2,3,…,m1,2,3,…,m1,2,3,\dots,mkthkthk^{\text{th}} 一度に1つのディスクのみを移動し、 大きいディスクを小さいディスクに移動しないでください。 最大で距離でタワー間のみを移動する。ddd (元の問題で制限: 及びM ≤ 100テストケースの数。≤ 1000年すべての問題は以下で解決することができると仮定することができる。 20000移動します。)3≤n≤10003≤n≤10003 \le n \le 1000m≤100m≤100m \le 100≤1000≤1000\le 1000200002000020000 面白いですね。ハノイ問題の古典的なタワーには、ソース、宛先、およびディスクをソースから宛先に移動するために使用される一時的なタワーがあります。そのサイトで提案された問題には、基本的に初期構成と最終構成があります。 この問題にどのように取り組みますか?

1
有向グラフのst(単純)パスの平均長
事実、所与の -パス列挙には効率的な方法があるかもしれません、#はP完全問題である計算(または少なくとも近似)の平均長さ -パスそれらを列挙することなく?パスが頂点を再訪することが許可されている場合はどうなりますか?ssstttsssttt 特別なグラフの関連する結果も参考になります。

4
FSAはカウントできますか?
これはばかげた質問かもしれません。FSAは有限であるため、その入力文字列内のシンボルの数は、その状態の数によって制限された数までしかカウントできないことは明らかです。しかし、ここでFSAに出力(印刷など)機能を装備するとします。次のようになり、非常に読むことがシンボルごとに1つのシンボルを印刷することができるマシンを構築しやすいです。それは数えるものとして数えるでしょうか?そうでない場合、なぜでしょうか? 代わりにFSTの観点から言えば、私は、任意の長さの文字列をその長さのバイナリ表現(2を底とする数値システムの数値)にマッピングできるFSTを構築することは不可能だと思います。しかし、もちろん、任意の長さの文字列を同じ長さの言うゼロ(または1)の文字列にマッピングできるFSTを構築するのは簡単です。しかし、FSTが実行しているのは入力の長さの表現を構築しているため、それは数えられるかもしれませんし、できないかもしれません。少し奇妙な表現ですが、それでも表現ですよね?

1
写真の日差しを検出する方法
特定の写真について、写真を撮ったときに太陽が輝いていたかどうかをアルゴリズムでどのように検出しますか? 例 山頂にあるこのウェブカメラのサンプル: 明らかに太陽が輝いています。 この他のサンプルでは、​​それほど明白ではありません。 中央の礼拝堂にある小さな教会の尖塔を特定しようとすることで、霧がかかっているかどうかはかなり簡単に検出できるでしょう。しかし、画像処理についてほとんど何も知らないので、日光があるかどうかを確実に判断できるアルゴリズム(の組み合わせ)があったとしても驚きます。

1
プログラム合成、決定可能性、停止問題
私は最近の質問への回答を読んでいて、一種の奇妙な一時的な考えが思い浮かびました。私の理論のチョップが深刻に欠けている(ほとんどの場合は真実)か、このサイトを読むには時期尚早であるかのどちらかであると、これを尋ねると裏切られる可能性があります。さて、免責事項が邪魔にならないように... TMの停止問題を決定できないことは、計算可能性理論のよく知られた結果です。ただし、これは、特定のクラスのマシン(すべてではない)の停止問題を解決できるマシンが存在する可能性を排除するものではありません。 すべての決定可能な問題のセットを検討してください。問題ごとに、その言語を決定するTMが無限に存在します。次のことが可能でしたか チューリングマシンのサブセット停止問題を決定するTMがあります。そしてSSS すべての決定可能な問題は、少なくとも1つのチューリングマシンによって決定されます。SSS もちろん、 Turingマシンを見つけること自体は計算可能ではないかもしれません。しかし、その問題は無視します。SSS 編集:以下のShaullの回答に基づくと、(a)このアイデアはあまりにも詳細に指定されていないため、意味がないか、(b)以前の試みはあまりうまくいっていなかったようです。Shaullの回答へのコメントで詳しく説明しようとするので、私の意図は、入力TMがあることを保証することではありません。私は本当に私の質問の意味することは、そのような存在することができるかどうかであるSを、中よう会員Sが決定可能な問題です。Sの停止問題を解決するプログラムは、Sにないものとして認識される入力が与えられると、おそらく「無効な入力」をテープまたは何かに書き込みます。SSSSSSSSSSSSSSS。そのように定式化するとき、これが停止問題を解決できるかどうか、またはライスの定理が適用されるかどうかはわかりません(決定可能性はライスの定理に対する言語の意味論的特性ですか?)

2
プレイヤーが遅れて参加したときの公平なケーキカット
公平なケーキカット問題に関する通常の声明では、人のプレーヤー全員が同時にシェアを獲得すると想定しています。ただし、多くの場合、プレーヤーは段階的に到着します。たとえば、ケーキをn人のプレーヤーに分割する場合がありますが、新しいプレーヤーが到着し、シェアを求めています。んnnんnn 通常、フェアケーキの分割には多くの労力が必要です(たとえば、プレーヤーの数が多い場合は、プレーヤーが多くのクエリに回答する必要があります)。 追加の労力を最小限に抑えて(つまり、ケーキを最初から再配布するよりも大幅に少ない労力で)、n + 1プレイヤーにケーキの新しい区分を作成するために、プレイヤー以上の既存のケーキ区分を使用することは可能ですか?んnnn + 1n+1n+1

2
ボトルネック問題のあるジョブスケジューリング
与えられたジョブJ 1、J 2、。。。、JはN、各ジョブが必要T 、I &gt; 0 、T I ∈ Nを完了する時間を。nnnJ1,J2,...,JnJ1,J2,...,JnJ_1,J_2,...,J_nTi&gt;0,Ti∈NTi&gt;0,Ti∈NT_i > 0, T_i \in N 各ジョブは、一度に1つのジョブしか処理できない単一のマシンMによって前処理および後処理する必要があり、両方のフェーズに1単位の時間を必要とします。前処理された後、ジョブは無制限のパワーを持つマシン(無制限の数のジョブを並行して処理できる)に送信され、時間T iで準備が整うので、マシンMに(すぐに)送信する必要があります。後処理のために。JiJiJ_iTiTiT_i 関連する決定問題は次のとおりです。 入力:処理時間のN個のジョブ、整数K ≥ 2 N質問:私たちは、時間内のすべてのジョブを処理することができますが、≤ Kは、上記の「ボトルネック」モデルを使用していますか?Ti&gt;0,Ti∈NTi&gt;0,Ti∈NT_i >0, T_i \in \mathbb{N}NNNK≥2NK≥2NK\geq 2N ≤K≤K\leq K この問題に名前はありますか? その複雑さは何ですか?(それをある以上であることN P -complete?) PP\sf{P}NPNP\sf{NP} 3月29日更新: M.Cafaroの回答で正しく認識されているように、問題は制約なしの最小終了時間問題(UMFT)(スケジューリングアルゴリズムのハンドブックの第17章を参照)に似てい ます。 これはハード(Wで提供)です。 KernとW. Nawijn、「単一マシンでのタイムラグのある複数操作ジョブのスケジューリング」、Twente大学、1993年)。私が見ることができるように、私のモデルにはいくつかの違いがあります:NPNP\sf{NP} 前処理/後処理時間は一定(時間の1単位) ジョブが完了したらすぐに後処理する必要があります(UMFTモデルでは遅延が許可されます) Kern&Nawijnの証明をオンラインで見つけられなかったので、上記の制限が問題の難易度を変えるかどうかはまだわかりません。 最後に、大きなオーブンを備えた単一の調理ロボットのようなプロセス全体を考えることができます。ロボットはさまざまな種類の食品を一度に1つずつ準備し(すべて同じ時刻で準備する必要があります)、オーブンに入れます。調理したらすぐにオーブンから取り出し、冷たい材料を追加する必要があります... 「料理ロボットの問題」:-)

4
スターフリー言語と通常の言語
以来、私は、思っていた*は、星のない言語そのものであるスター自由言語ではない通常の言語がありますか?例を挙げていただけますか?a∗a∗a^* (wikipdiaから)ローソンはスターフリー言語を次のように定義しています: 正規表現は、アルファベットの文字、空のセット記号、すべてのブール演算子(補完を含む)、および連結であるがクリーネスターではない正規表現で記述できる場合、スターフリーと呼ばれます。 これはa∗a∗a^*がスターフリーであることの証明です。 ∅∅\emptyset星フリーで⟹⟹\Longrightarrow Σ∗=∅¯Σ∗=∅¯\Sigma^*=\bar{\emptyset}星フリーです⟹⟹\Longrightarrow 場合はA⊆ΣA⊆ΣA\subseteq\Sigmaその後、Σ∗AΣ∗Σ∗AΣ∗\Sigma^*A\Sigma^*スターフリーです⟹⟹\Longrightarrow 場合はA⊆ΣA⊆ΣA\subseteq\Sigmaその後、A∗=Σ∗(Σ∖A)Σ∗¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯A∗=Σ∗(Σ∖A)Σ∗¯A^*=\overline{\Sigma^*(\Sigma \setminus A)\Sigma^*}ですスターフリー 最後の行では、我々は持っているA∗=Σ∗(Σ∖A)Σ∗¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯A∗=Σ∗(Σ∖A)Σ∗¯A^*=\overline{\Sigma^*(\Sigma \setminus A)\Sigma^*}フォームではない任意の単語ので、A∗A∗A^*の文字が含まΣ∖AΣ∖A\Sigma \setminus Aその逆と副を。

2
文脈自由文法によって生成された言語を見つける
これはドラゴンブックからの質問です(私は翻訳ミスをお詫びします。英語版は手元にありません): この文法によって生成される言語は何ですか? S→ a Sb S∣ b SS∣ ϵS→aSbS∣bSaS∣ϵS \rightarrow a S b S \mid b S a S \mid \epsilon ここで何をするべきかわかりません。言語に関する本の定義はこれを述べています(そしてそれはほとんど章の中でそれです): 言語は、任意の解析ツリーで生成できるすべての単語のセットです。 したがって、この文法から「任意」の解析ツリーを作成する場合は、最初の2つのルールだけを使用して、再帰的に構築を続けることができます。少し検索したところ、すべてのルールを1回使用する必要があるという印象を受けましたが、よくわかりません。誰かがこの種の問題を解決するためのいくつかのヒントを提供することができればそれは非常に役に立ちます。

1
「CPS」アプローチは、SML / NJのパフォーマンスに大きな悪影響を与えました。推論が望ましい
Learning F# へのコメント:関数の概念を学ぶために、他のプログラミング言語を使用してF#に翻訳できる書籍はどれですか。マカリウスは述べた: 「CPS」アプローチは、SML / NJのパフォーマンスに大きな悪影響を与えていることに注意してください。その物理的評価モデルは、ハードウェアに組み込まれているあまりにも多くの仮定に違反しています。Isabelle / HOLのようなSMLの大きなシンボリックアプリケーションを使用する場合、CPSを使用したSML / NJは約5倍になります。従来のスタックのPoly / MLよりも100倍遅い。 誰かがこの理由を説明できますか?(できればいくつかの例で)インピーダンスの不一致はありますか?

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