チュヌリングマシンの代替ずしおの汎甚Memcomputingマシン

この蚘事は、この蚘事の無料翻蚳ずはいえ、それを理解しようずする詊みず考えるこずができたす。 そしお、はい、それは幅広い聎衆よりも数孊者向けに曞かれたした。



小さなネタバレ最初は、ある皮の魔法のように思えたしたが、キャッチに気づきたした...



今日、チュヌリングマシン以䞋MTは、アルゎリズムの抂念の普遍的な定矩であり、したがっお「問題゜ルバヌ」の普遍的な定矩です。 アルゎリズムには他にも倚くのモデルがありたす-ラムダ蚈算、マルコフアルゎリズムなどがありたすが、それらはすべお数孊的にMTず同等であるため、興味深いものの、理論䞖界では䜕も倉わりたせん。



䞀般的に蚀えば、他のモデルがありたす-非決定的チュヌリングマシン、量子チュヌリングマシン。 ただし、それらはこれたで実際には実装されおいない抜象的なモデルにすぎたせん。



6か月前、Science Advancesは、MTずは倧幅に異なる蚈算モデルを䜿甚した興味深い蚘事を公​​開したした。この蚘事は、実際のハヌドりェアでSSPタスクを蚈算する方法に぀いおの蚘事でした。



はい。 このモデルで最も興味深いのは、著者によるず、NP時間クラスの完党な問題の倚項匏時間ずメモリで䞀郚の問題を解決できるこずです。



おそらく、この結果は問題を解決するこずを意味するものではないこずをすぐに蚀及する䟡倀がありたす P = NP 。 結局のずころ、この問題の声明は「問題を解決しない」 NPcompleteの\ のために n ^ {定数} そしお、時間の倚項匏に察しお通垞のチュヌリングマシン䞊で非決定性チュヌリングマシンをシミュレヌトするこずが可胜です。 これはたったく異なる蚈算モデルであるため、叀兞的な耇雑床クラスに぀いおは蚀えたせん。



私自身は、このマシンを鉄で構築する可胜性に぀いおは珟圚懐疑的ですが以䞋で説明したす、モデル自䜓は解析するのに十分興味深いものであり、おそらく他の科孊分野にも応甚できるでしょう。



小さな玹介



今日のコンピュヌタヌより正確には、MTの最も䞀般的な実装であるVon Neumannずは䜕ですか 䜕らかの皮類の入出力むンタヌフェむス、メモリ、およびCPU。これらは物理的に分離されおいたす。 CPUには、蚈算の過皋を制埡するモゞュヌルず、これらの蚈算を実行するブロックの䞡方がありたす。



CPUの物理的な分離は、デヌタの転送に倚くの時間を費やす必芁があるこずを意味したす。 実際、このために、さたざたなレベルのキャッシュメモリが発明されたした。 ただし、キャッシュメモリはもちろん、生掻を楜にしたすが、デヌタ転送のすべおの問題を解決するわけではありたせん。



提案されたデヌタモデルは、脳の働きに觊発されたしたこのフレヌズはかなりボロボロですが、ここに収たりたす。 その本質は、デヌタを転送する必芁がある別のデバむスではなく、盎接メモリで蚈算が行われるこずです。 蚈算順序は、倖郚デバむスコントロヌルナニットによっお制埡されたす。



Universal Memcomputing Machinesず呌ばれるこのコンピュヌティングモデルこの甚語は翻蚳しおいたせん。さらに、略語UMMを䜿甚したす。



この蚘事では、たずMTが正匏に定矩されおいる方法を思い出しおから、UMMの定矩を芋お、UMMの問題を解決するためのアルゎリズムを蚭定する方法の䟋を芋お、最も重芁な情報オヌバヌヘッドを含むいく぀かのプロパティを怜蚎したす。



モデルの正匏な説明。



ナニバヌサルチュヌリングマシンUTM



チュヌリングマシンずは䜕かを芚えおいるず思いたすそうでない堎合、この蚘事を読むのは意味がありたせん。 テヌプ、キャリッゞ、すべおのもの。 正匏にどのように定矩されおいるかを芚えおおきたしょう。



チュヌリングマシンはタプルです



UTM =Q、\ガンマ、b、\シグマ、\デルタ、q_0、F、






どこで Q -倚くの可胜な条件、

\ガンマ -倚くの可胜なリボン文字

b \ in \ガンマ -空の文字

\シグマ -倚くの着信キャラクタヌ

q_0 -初期状態

F \サブセットeq Q -倚くの最終状態



\デルタQ \ smallsetminus F \回\ガンマ\右矢印Q \回\ガンマ\回\ {L、N、R \} どこで L、N、R したがっお、シフトなしで巊にシフトし、右にシフトしたす。 それは \デルタ -倉換テヌブル。



Memprocessor。



たず、メモリセルUMM-memprocessorを定矩したしょう。



memprocessorは4タプルずしお定矩されたす x、y、z、\ sigma どこで x -memprocessorの状態、 y 内郚倉数のベクトルです。 z -「倖郚」倉数のベクトル、぀たり、異なるmemprocessorを接続する倉数。 蚀い換えれば、 z_1 そしお z_2 2぀のmemprocessorsの倖郚倉数のベクトルであり、2぀のmemprocessorsが接続されおいる \巊向き矢印z_1 \ cap z_2 \ neq \ O 。 たた、memprocessorが誰にも接続されおいない堎合、 z = zx、y 、぀たり、内郚状態によっおのみ決定されたす。



そしお最埌に \シグマ[x、y、z] =x '、y' それは \シグマ -新しい状態の挔算子。



memprocessorは、私たちが頭の䞭で想像するようなプロセッサではないこずを思い出しおほしい。 むしろ、新しい状態プログラム可胜を取埗する機胜を持぀メモリセルです。



Universal Memcomputing MachineUMM



ここで、UMMの正匏な定矩を玹介したす。 UMMは、接続されたmemprocessor䞀般的に蚀えば、デゞタルたたはアナログのいずれかから圢成されたコンピュヌティングマシンのモデルです。



UMM =M、\ Delta、\ mathcal {P}、S、\ Sigma、p_0、s_0、F、






どこで M -memprocessorの倚くの可胜な状態

\ mathcal {P} -memprocessorsぞの倚くのポむンタで䜿甚 \デルタ 目的のプロセッサを遞択するには

S -倚くのむンデックス \アルファ 䜿甚した機胜の数 \デルタ 

\シグマ -memprocessorsの初期状態

p_0 -ポむンタヌの初期セット

s_0 -挔算子の初期むンデックス$ \ alpha $

F \サブセットeq M -倚くの最終状態



\ Delta = \ {\ delta _ {\ alpha} \ | \ \ delta _ {\ alpha}M ^ {m _ {\ alpha}} \ smallsetminus F \ times \ mathcal {P} \右矢印M ^ {{m '} _ {\ alpha}} \ times \ mathcal {P} ^ 2 \回S \}、

どこで m _ {\ alpha}lt; \ infty -関数によっお入力ずしお䜿甚されるmemprocessorsの数 \デルタ_ {\ alpha} 、 {m '} _ {\ alpha}lt; \ infty -出力関数ずしお䜿甚されるmemprocessorsの数 \デルタ_ {\ alpha} 。



ご想像のずおり、チュヌリングマシンずの類掚により、 \デルタ_ {\ alpha} -遷移関数、状態テヌブルの類䌌物。 䟋を芋たら、みたしょう p _ {\ alpha}、{p '} _ {\ alpha}、p _ {\ beta} \ in \ mathcal {P} -memprocessorsぞのポむンタヌ、 p _ {\ alpha} = \ {i_1、\ドット、i_ {m _ {\ alpha}} \} 、 xp memprocessorsのデヌタの状態ベクトルであり、 Sの\ベヌタ\ 次のコマンドのむンデックスです



\ delta _ {\ alpha} [xp _ {\ alpha}] =x '{p'} _ {\ alpha}、\ beta、p _ {\ beta}






䞀般的に蚀えば、UMMずMTの䞻な違いは、フォヌマリズムを砎棄するこずです。UMMでは、1぀のメモリセル぀たり、memprocessorに圱響を䞎え、コントロヌルナニットからの远加呌び出しなしで自動的に環境に圱響を䞎えたす。



UMMの定矩から盎接わかる2぀のプロパティに泚意しおください。





䞀般的に蚀っお、チュヌリングマシンを修正しおこれらの特性も持たせるこずはそれほど難しくありたせんが、著者は䞻匵しおいたす。



そしお、定矩によりさらにいく぀かのコメント。 UMMは、チュヌリングマシンずは異なり、有限数のmemprocessorを持぀無限状態空間を持぀こずができたすそれらはアナログである可胜性があるため。



ずころで、UMMはニュヌラルネットワヌクの䞀般化ず考えるこずができたす。



1぀の定理を蚌明したしょう。



UMMはナニバヌサルマシン぀たり、MTの動䜜をシミュレヌトできるマシンです。



蚌明。



぀たり、チュヌリングマシンがUMMの特殊なケヌスであるこずを瀺す必芁がありたす。 反察が真実かどうか-蚌明されおいない、そしお蚘事の著者が正しい堎合、これは蚌明ず同等になりたす P = NP 



UMMの定矩で、 M = Q \カップ\ガンマ 。 私たちが瀺すmemprocessorsの1぀ j_s 、残りおそらく無限数ずしお j 。 次に、ポむンタヌを定矩したす p = \ {j_s、j \} 。 j_s 状態のシンボルずしお䜿甚したす q \にQ 、 j リボン蚘号 \ガンマ 



\デルタ 単䞀の関数で構成されたす \ delta [xp] =x 'p、p' 省略 \ベヌタ 、1぀の関数しかないため。 新しい状態 x ' 遷移衚MTによっお決定されたす。 x 'j_s -新しい状態がありたす。 x 'j -新しいリボンシンボル。 新しいポむンタヌ p '= \ {j_s、j' \} 、 j '= j キャリッゞの移行がない堎合、 j '= j + 1 キャリッゞが右に移動した堎合、 j '= j-1 残っおいる堎合。 その結果、録音するずき x 初期状態 q_0 および開始文字 \シグマ ず \デルタ= \デルタ UTMはナニバヌサルチュヌリングマシンをシミュレヌトしたす。



定理は蚌明されおいたす。



アルゎリズム



UMMの問題を解決する方法の䟋を芋おみたしょう珟時点では、モデルに慣れるためだけです。 サブセット合蚈問題SSP を取りたす。



たくさんありたす G \ in \ mathds {Z} そしお番号が䞎えられたす s 。 サブセットはありたすか K \サブセットeq G 芁玠の合蚈が等しい s 。



指数アルゎリズム



UMMでは、memprocessorsがマトリックス圢匏で配眮されおいるず仮定したす図を参照。 3぀の操䜜を定矩したす。



  1. \チヌ -これは盎接蚈算です。 アクティベヌションラむンを䜿甚しお、蚈算が実行される行ず境界列を遞択できたす。 蚈算の本質は、巊端のセルの倀を行党䜓に远加するこずです。

  2. \ mu デヌタを移動する操䜜です。 制埡ノヌドは2぀の列を遞択し、最初の列の倀が2番目の列にコピヌされたす。 制埡ノヌドは必ずしもコピヌ操䜜自䜓を実行するわけではなく、単に必芁な行で列をアクティブにしたす。

  3. p -同様の操䜜 \ mu 、圌女だけが1぀の倀を取り、それを列に曞き蟌みたす。



これら3぀の操䜜を組み合わせお、遷移関数を取埗できたす \ delta = \ mu \ circ \ chi \ circ p 。



アルゎリズムの最初のステップで、長さのすべおのサブセットの合蚈を取埗したす n-1 サブセットの2番目のステップ n-2 などなど。 正しい番号が芋぀かったら巊の列に衚瀺されたす、答えが芋぀かりたした。 各ステップは1回の関数呌び出しで実行されたす。 \デルタ したがっお、アルゎリズムは機胜したす n-1 ステップ。



次に、これらの操䜜を実行するために必芁なmemprocessorの数を蚈算したす。 繰り返しkでは、 \ binom {n-1} {k-1}n + 2-k memprocessors。 スタヌリング公匏によるこの匏の掚定は n / 2 \ pi^ {1/2} 2 ^ {n-1} 。 ノヌドの数は指数関数的に増加しおいたす。



今では、これがどんな皮類のオブゞェクトであるかが倚かれ少なかれ明らかになったず思いたす。 次に、UMMが提䟛する最もおいしいもの、぀たり3番目のプロパティである情報オヌバヌヘッドに進みたしょう。



指数情報のオヌバヌヘッド



n個のmemprocessorがあるずしたす。遞択したmemprocessorの状態を次のように瀺したす。 xp=xj_1、\ドット、xj_n 。 個々のmemprocessorの状態 xj= u_j 内郚倉数に含たれる M_aのu_j \ 。 u_j -ベクトル。 たた、各memprocessorに぀いお、倖郚倉数を「in」ず「out」の2぀のグルヌプに分けたす1぀のmemprocessorのoutは別のmemprocessorに接続されおいたす。 写真は空の円-コンポヌネントを瀺しおいたす u_j_h = 0 。 たた、目的のmemprocessorに接続され、すぐに読み取れるデバむスがあるずしたす u_j 。



耇数のmemprocessorに接続されたこのデバむスは、䞡方のステヌタスを読み取るこずができたす。぀たり、グロヌバルステヌタスは、 u_ {j_1、j_2} = u_ {j_1} \ダむダモンドu_ {j_2} どこで \ダむアモンドR ^ d \回R ^ d \右矢印R ^ d -可換、連想操䜜、 d = \ dimu_j 。 この操䜜は次のように定矩されたす



u_ {j_1} \ダむダモンドu_ {j_2}_ {h \ star k} =u_ {j_1}_ h \ astu_ {j_2}_ k、






どこで \スタヌ\ mathds {Z} \ times \ mathds {Z} \ rightarrow \ mathds {Z} そしお \ astR \回R \右矢印R -ずの可換および連想挔算 h \ star 0 = h そしお x \ ast 0 = 0 。 たた、 h、k、h '、k' 行った h \ star k = h '\ star k' それから



u_ {j_1} \ダむダモンドu_ {j_2}_ {h \ star k} =u_ {j_1} \ diamond u_ {j_2}_ {h \ star k} \ oplusu_ {j_1} \ diamond u_ { j_2}_ {h '\ star k'}、






どこで \ oplusR \回R \右矢印R -亀換可胜な連想操䜜 x \ oplus 0 = x 。



今たくさん持っおいる G = \ {a_1、\ドット、a_n \} 敎数、メッセヌゞを定矩 m =a _ {\ sigma_1} \ star \ dots \ star a _ {\ sigma_k}\ cupa _ {\ sigma_1}、\ dots、a _ {\ sigma_k} どこで \ sigma_1、\ドット、\ sigma_k -あらゆる皮類のサブセットから取埗したむンデックス \ {1、\ドット、n \} 。 たくさんの投皿 M から成る \ sum_ {j = 0} ^ m \ binom {n} {j} = 2 ^ n 同様に可胜性のあるメッセヌゞ m 、シャノンに関する情報量は Im=-\ log_22 ^ {-n}= n



ここで、n個のmemprocessorを䜿甚しお、れロ以倖のコンポヌネントを公開したす u_ {j_0}、u_ {j_h} どこで h \ in \ {1、\ドット、n \} 。 すべおの芁玠を゚ンコヌドしたした G memprocessorsで。 䞀方、必芁なmemprocessorに接続し、それらのグロヌバル状態を読み取るこずで匏に埓っお、芁玠の合蚈が取埗されたす、可胜な状態mを考慮するこずができたす。 蚀い換えるず、n個のmemprocessorsが必芁に応じお情報を圧瞮しお゚ンコヌドできたす。 2 ^ n メッセヌゞを同時に。



指数情報オヌバヌヘッドを䜿甚したSSP゜リュヌションアルゎリズム



ここで、私はこのアルゎリズムの詳现を理解できなかったず蚀わざるを埗たせん私は電気工孊ず信号凊理がそれほど埗意ではなかったこずがわかり、著者はそのような無知のためにすべおを塗り぀ぶさないこずにしたようですが、䞀般的な考えは。



開始するために、圌らは関数を芋るこずを提案したす



gx= -1 + \ prod_ {j = 1} ^ n1 + e ^ {i 2 \ pi a_j x}






括匧を開くず、すべおの皮類のむンデックスセットに補品がありたす。 j 私たちはそのようなセットを P 、そしおそれらは等しい



\ prod_ {j \ in P} e ^ {i 2 \ pi a_j x} = \ exp \ lefti 2 \ pi x \ sum_ {j \ in P} a_j \ right






蚀い換えれば、私たちの機胜 g すべおのサブセットの合蚈に関する情報が含たれおいたす G 。 ここで、関数gを信号源ず考えるず、各指数は結果の信号に寄䞎し、呚波数の寄䞎は \ sum_ {j in P} a_j 。



ここで必芁なのは、この信号にフヌリ゚倉換を適甚し、信号に含たれる呚波数を確認するこずだけです。 呚波数を持぀コンポヌネントがある堎合 s その埌、サブセット G 、量で s 存圚したす。



通垞のコンピュヌタヌでこの問題を解決したら、高速フヌリ゚倉換を適甚できたす。 挞近的な挙動を掚定したす。



これを行うには、信号から取埗するポむントの数を掚定したす。 コテルニコフの定理により、これらのポむントは N = 2 f_ {max} + 1 どこで f_ {max}lt; n \ max \ {| a_j | \} -可胜な最倧頻床の評䟡。 蚘事では、著者は远加の倉数を導入したした p 比䟋しおいる N そしおそれを通しお挞近性を考慮したした。



したがっお、 FFTを䜿甚しお、次の問題を解決できたす。 Op \ logp 。 ここで、バックパック問題およびSSPはバックパック問題の特殊なケヌスず同様に、$ p $は指数関数的に増加するこずに泚意する必芁がありたす。 Goertzelのアルゎリズムもタスクに䜿甚できたす。これにより、 On p 。 著者によっお提案された方法では、あなたが取り陀くこずができたす p 挞近では、線圢時間を提䟛したす。



さお、あなた自身の蚀葉でより詳现な議論に぀いおは、元の蚘事を参照しおください、圌らはこれをどのように達成したしたか。



取る n アナログmemprocessors、その内郚倀はからのいく぀かの倀になりたす G 。 オペレヌタヌずしお \スタヌ そしお \ ast それぞれ、加算ず乗算が行われたす。



しかし、これは私たちのモデルです。 鉄では、各memprocessorは独自の呚波数の数に察応する信号発生噚であるこずがわかりたす G 、memprocessorsの䞀般的な状態は、単にシグナルの远加です。 これらのmemprocessorsは関数をシミュレヌトするこずがわかりたす g 。



さお、今、結果を読み取るために、信号に特定の呚波数があるかどうかを確認する必芁がありたす。 FFTを実装する代わりに、圌らは䞎えられた呚波数のみを通過させる鉄片を䜜りたしたここでは私も方法をよく理解しおいたせんでしたが、゚レクトロニクスの私の知識は責任がある。



合蚈時間挞近 O1 、memprocessorsの挞近的な動䜜は On 。 発射したしょうか 急がないでください。



いく぀かのモデルの問題



実際、著者はタスクの「困難な」郚分を巧みにシフトしたした。これにより、出展者は゜フトりェアから技術に移行したした。 以前の蚘事では、それに぀いおたったく蚀葉がありたせんが、7月の蚘事では、数行でそれを認めおいたす。



シグナルのコヌディングがすべおです ここで明確な説明を芋぀けたした 。 アナログ信号を゚ンコヌドし、個別の信号発生噚を䜿甚するずいう事実により、信号レベルの決定には指数関数的な粟床が必芁になりたす所望の呚波数を分離する鉄片で。これには指数関数的な時間が必芁になる堎合がありたす。



著者は、この迷惑は、離散信号発生噚の代わりにアナログを䜿甚するこずで回避できるず䞻匵しおいたす。 しかし、私はあなたがすべおのためにアナログ回路を䜿甚できるずいう倧きな疑問を持っおいたす n 同時に、ノむズにdrれないようにしたしたか぀お圌らはアナログコンピュヌタヌを捚お、デゞタルコンピュヌタヌを䜿い始めたのは圌らのためでした。



たずめ



奇跡的な魔法は起こりたせんでした。 NP完党問題の蚈算は䟝然ずしお困難です。 では、なぜこれをすべお曞いたのですか 䞻に、物理的な実装が耇雑であるにもかかわらず、モデル自䜓が非垞に興味深いず思われるため、それらの研究が必芁です。 すぐにただではないにしおも同様のモデルが倚くの科孊分野で非垞に重芁になりたす。



たずえば、前述したように、ニュヌラルネットワヌクはUMMの特殊なケヌスです。 わずかに異なるマットを䜿甚しお、反察偎からそれらを芋るず、ニュヌラルネットワヌクに぀いおもう少し孊ぶ可胜性がありたす。 装眮。



All Articles