コンピュータサイエンス

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

1
が規則的でないこと
ことを示す規則的ではありませんL = { aん2| N≥0}L={an2|n≥0}L=\{a^{n^2} | n \geq 0\} やあみんな。私はCSクラスを受講していますが、これは私にとって本当に新しいことなので、我慢してください。私は通常の言語でポンプレンマを使用して矛盾があるかどうかを確認しようとしましたが、次のように解決しました。 仮定規則的です。次に、長さLのすべての単語zに自然数mが必要です。z | ≥ mは、と分解が存在するZは= Uは、V wは、| u v | ≤ メートル、| v | > 0、その結果、Uは(V I)wは任意の言語であり、I ≥ 0。LLLメートルmmzzzLLL| z| ≥メートル|z|≥m|z| \geq mz= u v w 、| u v | ≤ メートル、| v | > 0z=uvw,|uv|≤m,|v|>0z = uvw, |uv| \leq m, …

1
分類グラフに基づいてパーセプトロンの重みを計算する簡単な方法はありますか?
私はAI試験の勉強をしており、次の問題を解決するより良い方法を探しています。 グラフは、単位正方形内の分類問題を示しクラスAが(点線上の点を含まない)図中の灰色の領域によって示され、そしてクラスBは、そうでなければ発生します。[ 0 、1 ]2[0、1]2[0,1]^2 この問題を解決するには、2つのパーセプトロンを構築する必要があります。両方のパーセプトロンは、入力が灰色の領域にある場合は1を出力し、そうでない場合は少なくとも1つが0を出力します。 私が知っている入力とバイアスに適切な重みを見つける方法は3つあります。 試行錯誤 パーセプトロン学習アルゴリズム(ランダムな重み、学習率、複数のエポックを含む) 重みのベクトルを見つけるための幾何学的な方法(境界関数への直交線を見つけることを含む) ペンと紙だけでそれを行うと、それらすべてが非常に時間がかかります。 分類グラフに基づいてパーセプトロンの重みを計算/検索する簡単な方法はありますか?

2
暫定的な充足可能性アルゴリズム
一般的な充足可能性(ホーン句などのいくつかの例外を除く)には、アルゴリズムによる解決策があるとは考えられていません。ただし、次のアルゴリズムは一般的な充足可能性の解決策のようです。次のアルゴリズムの欠陥は何ですか? してみましょう必ずしも真または偽でなければならないすべての変数が含まれています空のセットも。WWW してみましょう節の集合とします。LLL ループします。LLL 非条件変数†が見つかるたびに、それをから削除して挿入し。WLLLWWW この葉空の含意場合‡からその空の意味合いですべての変数を削除と挿入。WLLLWWW この葉空または暗示する場合‡、含意がある場合意味合い(つまり、1つの変数を持つところ、各インスタンスのお得な情報、アルゴリズムの新しいインスタンスを作成します。、1つのインスタンス作成挿入され、1をここで、は挿入され、とは挿入され。x W y Wx V⟹yxV⟹yx V \implies yバツxxWWWyyyWWWy WバツxxyyyWWW すべての変数を、必要な値に設定します。WWW 変数再度挿入中でその変更した値で、すべての句が満たされているかどうかを確認。LWWWLLL 充足可能性が満たされている場合はを返し、それ以外の場合は「満たされていない」を返します。LLL †非条件変数は、真または偽である必要がある変数として定義されます。たとえば、またはです。⟹バツ⟹x\implies x⟹¬ Y⟹¬y\implies \neg y ‡空の含意は、片側が空である含意(例:)または反対側が必然的に真である(例:)として定義されます。T R U E ∨ A⟹X ∧ Y⟹x∧y\implies x \wedge yT R U E ∨A⟹btrue∨a⟹b\mathrm{true} \vee a \implies b アルゴリズムをより直感的に理解するために、以下の一連の節検討してください。LLL ∧ Bff∨ A⟹c⟹f∧ グラム⟹¬ A⟹b⟹c(私)(ii)(iii)(iv)(v)a∧b⟹c(i)⟹f∧g(ii)f⟹¬a(iii)f∨a⟹b(iv)⟹c(v)\begin{align} a \wedge …

2
巡回セールスマン問題ポリトープの既知の側面
ブランチアンドカット法では、問題によって生成されるポリトープの多くの側面を知ることが不可欠です。ただし、ポリトープのサイズが急速に大きくなるにつれて、そのようなポリトープのすべてのファセットを実際に計算することは、現在、最も難しい問題の1つです。 任意の最適化問題の場合、ブランチアンドカットまたはカットプレーンメソッドによって使用されるポリトープは、すべての実行可能な頂点の凸包です。頂点は、モデルのすべての変数の割り当てです。(非常に単純な)例として:一方が最大になる場合2 ⋅ X + Y2⋅バツ+y2\cdot x+y ST x + y≤ 1バツ+y≤1x+y \leq 1と0 ≤ X 、Y≤ 1.50≤バツ、y≤1.50\leq x,y\leq 1.5次に頂点(0 、0 )(0、0)(0,0)、(0 、1 )(0、1)(0,1)と(1 、0 )(1、0)(1,0)実行可能な頂点です。(1 、1 )(1、1)(1,1)の不等式違反したがって、実現可能ではありません。(組み合わせ)最適化の問題は、実行可能な頂点の中から選択することです。(この場合、明らかにが最適です)。これらの頂点の凸包は、まさにこれら3つの頂点を持つ三角形です。この単純なポリトープのファセットは、、およびx + y \ leq 1です。ファセットを介した説明は、モデルよりも正確であることに注意してください。TSPなどのほとんどの難しい問題では、ファセットの数がモデルの不等式の数を数桁超えます。(1 、0 )のx ≥ 0 、Y ≥ 0 、X + Y ≤ 1x + y≤ 1.5バツ+y≤1.5x+y\leq 1.5(1 、0 …

5
応用グラフ理論の標準またはトップテキスト
応用グラフ理論とグラフアルゴリズムに関する参考テキストを探しています。ほとんどのコンピュータサイエンスプログラムで使用されている標準テキストはありますか?そうでない場合、フィールドで最も尊敬されているテキストは何ですか?私はコーメン他を持っています。


2
最適な通貨単位を見つけるアルゴリズム
マークは物事を過剰に考える傾向がある人々が住む小さな国に住んでいます。ある日、国の王は、変更をより効率的にするために国の通貨を再設計することを決定しました。王は、最小の紙幣の金額まで(ただし含まない)の金額を正確に支払うために必要なコインの予想数を最小限に抑えたいと考えています。 通貨の最小単位がコインであるとします。王国で最小の紙幣はコインの価値があります。王は、流通しているコインの金種が超えてはならないと決定しました。次に、問題は、を最小化するから整数のセットを見つけることは。んnnメートルmmメートルmm{d1、d2、。。。、dメートル}{d1,d2,...,dm}\{d_1, d_2, ..., d_m\}{ 1 、2 、。。。、n − 1 }{1,2,...,n−1}\{1, 2, ..., n - 1\}1n − 1Σn − 1i = 1c1(i )+c2(i )+ 。。。+cメートル(私)1n−1∑i=1n−1c1(i)+c2(i)+...+cm(i)\frac{1}{n-1}\sum_{i = 1}^{n-1}{c_1(i) + c_2(i) + ... + c_m(i)}c1(私)d1+c2(私)d2+ 。。。cメートル(私)dメートル= ic1(i)d1+c2(i)d2+...cm(i)dm=ic_1(i)d_1 + c_2(i)d_2 + ... c_m(i)d_m = i たとえば、標準のUSDとそのコインの金額をます。ここでは、最小の紙幣は最小のコインの100の価値があります。この通貨を使用して46セントを作るには4コインが必要です。我々は。ただし、コインの額面が場合、3つのコインのみが必要になります:。これらの金種セットのうち、99セントまでの合計を作るためにコインの平均数を最小化するものはどれですか。{ 1 、5 、10 、25 、50 }{1,5,10,25,50}\{1, 5, …

1
スタックの順序を検出する方法は?
整数のシーケンスを 111 に んんn、順番に1つずつスタックにプッシュします。各プッシュの間に、スタックから任意の数のアイテムをポップすることを選択できます(0から現在のスタックサイズまで)。 スタックから値をポップするたびに、それを出力します。 例えば、 1 、2 、31、2、31,2,3するとプリントアウトされますpush, pop, push, pop, push, pop。3 、2 、13、2、13,2,1から来ていpush, push, push, pop, pop, popます。 しかしながら、 3 、1 、23、1、23,1,2 することができないため、可能なプリントアウトではありません 333 印刷された後に 111、見ずに 222 間に。 質問:次のような不可能な注文をどのように検出できますか?3 、1 、23、1、23,1,2? 実際、私の観察に基づいて、私は潜在的な解決策を見つけました。しかし問題は私が私の観察が完全であることを証明できないことです。 私が次のロジックで書いたプログラム: 現在の値から次の値を差し引いた値が1より大きい場合、現在と次の間の値は次の後に表示できません。たとえば、current = 3およびnext = 1の場合、current(3)とnext(1)の間の値は2であり、next(1)の後には表示されないため、3 、1 、23、1、23,1,2 ルールに違反しています。 これはすべてのケースをカバーしますか?

4
オイラーパスを見つけるのはハミルトニアンパスを見つけるのにPではないことを理解するのは直感的ですか?
よくわかりません。私が理解していることから、エッジと頂点は互いに補完的であり、この違いが存在することは非常に驚くべきことです。 実際にハミルトニアンパスを見つけることは、オイラーパスを見つけるよりもはるかに難しいことを確認するための良い/迅速/簡単な方法はありますか?

2
一連の個別の選択肢の全体的な変動を最小限に抑える
私のセットアップは次のようなものです:一連の整数のセットがあります C私(1 ≤ I ≤ N )Ci(1≤i≤n)C_i (1\leq i\leq n)、 |C私||Ci||C_i| 比較的小さい-すべてのアイテムで約4または5アイテム 私ii。シーケンスを選びたいバツ私(1 ≤ I ≤ N )xi(1≤i≤n)x_i (1\leq i\leq n) それぞれと バツ私∈C私xi∈Cix_i\in C_i 合計のバリエーション( ℓ1ℓ1\ell_1 または ℓ2ℓ2\ell_2、すなわち Σn − 1i = 1|バツ私−バツi + 1|∑i=1n−1|xi−xi+1|\sum_{i=1}^{n-1} |x_i-x_{i+1}| または Σn − 1i = 1(バツ私−バツi + 1)2∑i=1n−1(xi−xi+1)2\sum_{i=1}^{n-1} \left(x_i-x_{i+1}\right)^2)が最小化されます。それぞれの選択のようですがバツ私xix_i が「ローカル」である場合、問題は選択が伝播して非ローカルな影響を与える可能性があるため、問題は本質的にグローバルなものであるように見えます。 私の主な関心事は、問題の実用的なアルゴリズムです。現在、短いサブシーケンスの変異に基づいたアニーリングメソッドを使用しています。これらは大丈夫なはずですが、もっとうまくできるはずです。しかし、私は抽象的な複雑さにも興味があります—私の直感は、標準のクエリバージョン( '全体的なバリエーションのソリューションがあるか)≤ K≤k\leq k? …

1
CLRS-Maxflow Augmented Flow Lemma 26.1-defの使用を理解していません。証明で
コーメンら al。、Introduction to Algorithms(3rd ed。)、私は補題26.1の証明で、拡張されたフローはフローであり、st | f \ uparrow f'であることを示す行を取得しません。| = | f | + | f '| (これはpp。717-718です)。f↑f′f↑f′f\uparrow f'GGG|f↑f′|=|f|+|f′||f↑f′|=|f|+|f′||f\uparrow f'| =|f|+|f'| 私の混乱:フロー保護について議論するとき、最初の行でf \ uparrow f 'の定義を使用しf↑f′f↑f′f\uparrow f'て、各u∈V∖{s,t}u∈V∖{s,t}u\in V\setminus\{s,t\} ∑v∈V(f↑f′)(u,v)=∑v∈V(f(u,v)+f′(u,v)−f′(v,u)),∑v∈V(f↑f′)(u,v)=∑v∈V(f(u,v)+f′(u,v)−f′(v,u)), \sum_{v\in V} (f\uparrow f')(u,v) = \sum_{v\in V} (f(u,v)+f'(u,v) - f'(v,u)), ここで、拡張パスは次のように定義されています (f↑f′)(u,v)={f(u,v)+f′(u,v)−f′(v,u)0if (u,v)∈E,otherwise.(f↑f′)(u,v)={f(u,v)+f′(u,v)−f′(v,u)if (u,v)∈E,0otherwise. (f\uparrow f')(u,v) = \begin{cases} f(u,v)+f'(u,v) - …

2
xorがゼロになるようにシーケンスに追加するために必要な最小数を見つけるにはどうすればよいですか
自然数のシーケンスを指定すると、xorがゼロになるように、シーケンス内の任意の数に任意の自然数を追加できます。私の目標は、追加された数値の合計を最小化することです。 次の例を検討してください。 ために 1,31,31, 3答えはです。を追加すると、ます。2222221113⊕3=03⊕3=03 \oplus 3=0 以下のために答えは。からおよびからを追加すると、ます。10,4,5,110,4,5,110, 4, 5, 166633310101033355513⊕4⊕8⊕1=013⊕4⊕8⊕1=013 \oplus 4 \oplus 8 \oplus 1 = 0 答えは以来、。4,44,44, 40004⊕4=04⊕4=04 \oplus 4 = 0 シーケンス番号のバイナリ表現に取り組んでみましたが、非常に複雑になりました。この問題を解決する簡単で効率的な方法があるかどうか知りたい。


2
2つのパスが到達できるポイントの最大数
のリストが与えられたとしましょう んnn ポイント、その バツxx そして yyy座標はすべて負ではありません。また、重複するポイントがないとします。ポイントからしか行けない(バツ私、y私)(xi,yi)(x_i, y_i) ポイントへ (バツj、yj)(xj,yj)(x_j, y_j) もし バツ私≤バツjxi≤xjx_i \le x_j そして y私≤yjyi≤yjy_i \le y_j。問題は次のとおりです。んnnポイント、上記のルールを使用してポイントを接続する2つのパスを描画することが許可されている場合に到達できるポイントの最大数はいくつですか?パスは原点から開始する必要があり、繰り返しポイントを含めることができます。(0、0)(0,0)(0, 0) もちろん到達ポイントには含まれていません。 例:与えられた (2、0)、(2、1)、(1、2)、(0、3)、(1、3)、(2、3)、(3、3)、(2、4)、(1、5)、(1、6)(2,0),(2,1),(1,2),(0,3),(1,3),(2,3),(3,3),(2,4),(1,5),(1,6)(2, 0), (2, 1), (1, 2), (0, 3), (1, 3), (2, 3), (3, 3), (2, 4), (1, 5), (1, 6)、答えは 888 私たちは取ることができるので (0、0)→(2、0)→(2、1)→(2、3)→(2、4)(0,0)→(2,0)→(2,1)→(2,3)→(2,4)(0, 0) \rightarrow (2, 0) \rightarrow (2, …


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