世界最速スパコンより 1000 倍速い分子コンピュータ 35
ストーリー by reo
※ ただしフーリエ変換に限る…のかな ? 部門より
※ ただしフーリエ変換に限る…のかな ? 部門より
ある Anonymous Coward 曰く、
日本の分子科学研究所による「世界最速のスパコンよりも 1000 倍速い分子コンピュータ」の研究が注目を浴びているそうだ (本家 /. 記事, doi:10.1103/PhysRevLett.104.180501より) 。
この研究は「電荷の代わりに電気的に中性な物質の波動関数を情報の担い手として用いる」点が新しいとのこと。原理証明実験では分子の波動関数を利用したコンピューティングにより、超高速フーリエ変換を実行することに成功したとのことだ。
この研究は Physical Review Letters の Editors' Suggestions にも選ばれ、POPSCI や ScienceDaily などでも取り上げられている。分子科学研究所のサイトには日本語の詳細説明も掲載されているのでご興味のある方はどうぞ。
特定の計算に対して非常に高い性能を発揮するタイプのテクノロジーかなとも思ったけれども、オングストローム単位に数十ビットの情報という情報密度の方がポイントなのかしらん。
おおよその概念(簡略化のため不正確) (スコア:5, 参考になる)
この手の研究は,波束エンジニアリング等と呼ばれる最近ちょっと流行の面白い研究です.
簡単な概念を述べますと,
まず,超短パルスレーザーで分子の振動状態を励起します.まあここでは単純にヨウ素分子だとか水素分子だとかのような二原子分子を考えましょう.通常の励起では,吸収される波長と同じエネルギー差のところのみが励起されるわけですが,パルス幅(光のパルスの持続時間)が十分短い場合単一の波長というものがきちんと定義できず(例えばデルタ関数の場合,フーリエ変換すると全波長の重ね合わせであるように,短パルスにすると言うことは様々な波長成分を持たせることに相当),様々な振動準位が同時に励起されます.つまり,一発のパルスで複数準位の重ね合わせが励起されます.
このとき,様々な振動の重ね合わせが「波束」と呼ばれる一種の集合体であるかのように振る舞います.海で様々な波長の波が重なって,一つの大きな波(のように見えるもの)として移動していくようなものです.
具体的には,ある波束Ψは
Ψ = C1ψ1exp(-iω1t+iφ1) + C2ψ2exp(-iω1t+iφ2)…
といった形で励起されます.Cnは分子のn番目の振動準位の振幅,ψnはn番目の振動状態の関数,ωnはn番目の準位の波動関数の位相の振動成分(異なる準位は,異なる速度で位相が変化する.単一の準位のみでは位相は意味を持たないが,異なる関数同士の相対的な関係=位相差は時間とともに変わる),φnは励起された瞬間の初期位相です.
ここで,パルス幅,パルスの中心波長(前述の通り,波長が分布を持つため)などを制御することで,この「波束」の各成分のCn,各成分の初期位相φnを独立に制御できます.つまり,好きな初期状態を分子に書き込めるわけです.
#これによって作られる波束構造は,分子よりも遙かに小さくなります.
#つまり将来的には分子/原子内に,原子より小さい「何か」を構築できるかも?
その後,ある任意の時間待ちます.そうすると,iωtという項によって波束を構成する各成分は次々に位相を変化させていきます.この位相が変化していく過程がある種の演算(の一部)になります.
最後に,演算&情報を取り出します.分子に対して再度短パルスを与えもう一つの波束を生成し,これと最初の波束(の時間発展したもの)とを干渉させます.すると例えばある位相を持った成分だけを生き残らせたり,といった処理が可能となりますので,生き残った準位が何であるのかを読み出すわけです.(微妙に違う他の方法もありますが,まあこんな感じで)
物理過程をすべてすっ飛ばして書くと(こう書いてしまうと範囲が広すぎてあまりよろしくはありませんが……),
input -> blackbox -> output
であり,
output = f(input)
という一種の関数(ゲート)を分子で構築できるわけです.
もっと具体的な例で言えば,こういった波束制御によってCNOTゲートを作れることが実証されています.これは量子演算における基本となる素子で,基本的にこれからすべての量子ゲートが構築可能です.つまり,分子ベースの量子コンピュータを作り得る,ということでもあります.あるインプットを短パルスレーザーで与えて,望む演算に相当する放置時間+演算用パルス,それによって新たに生じた状態をまた時間発展させ……と,継続して異なる演算を何度も重ね,最後に出力を得る,というような流れですかね.
また,ビット密度の高さも魅力です.論文でも書かれていますが,二原子分子の振動励起準位として10個ほど使用すれば(現在のレーザー制御技術ならこのぐらいは不可能ではない),各準位の振幅を二値,位相を二値とおおざっぱな取り方をしても原子2個(二原子分子だから)で20bit相当となります.
まあもっとも,これが今日明日に何かになると言うわけではありませんが,まあずっと先には何かにつながるかも知れません.
Re:おおよその概念 (スコア:1)
新手のAAですね。ええ、わかります。
Re:おおよその概念(簡略化のため不正確) (スコア:1)
ご存じしたらお尋ねさせていただきたいのですが、
1.必要なエネルギー(電力)は既存の半導体コンピュータに比べてどうか(同程度の計算をさせて)
2.設備の敷地面積やオペレーターの数は?
3.利用のための段取り時間や、アウトプットを利用できる形に加工する時間は?
Re: (スコア:0)
量子を使うところが先端的ではありますが,
基本は古典力学の波動だと理解しました.
位相を進めた後の状態が演算結果として
使えるってことは,分散関係が
線形じゃない任意の波動で同じことができますか?
また,これで速くできる理由がよく分からなかったので,
よろしければ教えてほしいです.単に,極めて小さいからですか?
Re:おおよその概念(簡略化のため不正確) (スコア:2, 参考になる)
>任意の波動で同じことができますか?
今回の実験の範囲の古典的アナロジーなら,出来無いことはないんじゃないですかね.多分.
ただ分子振動だと一周回った後のものはまた元に戻って繰り返しますけど,時間発展で飛んでっちゃうような系(基板平面上での電子だとか)だと無理な気はします.
>これで速くできる理由がよく分からなかったので
単純に,使っている振動状態の関数の位相部分の時間変化が非常に速いためです.結構上まで叩き上げてますからねえ(振動の量子数で34,36,37,38の4つを使用).
分子 vs 原子 (スコア:1, おもしろおかしい)
分子と原子で大きさ比べてAtomプロセッサの勝ち?
#違!
Re: (スコア:0)
レーザー装置の大きさが不明。
CPUが針先で、入出力装置がラック一本って感じだろうか?
Re: (スコア:0)
ショアのアルゴリズム、できたんじゃない? (スコア:1)
たしか素因数分解の量子アルゴリズムって、量子コンピュータが必要なのはフーリエ変換する箇所だけだった気がします。
うろ覚えですが。
1を聞いて0を知れ!
ある種のアナログコンピュータ? (スコア:0)
FFTの計算に時間がかかる
↓
運動と位置の波動関数はFFT変換対
(量子力学的に考えて)
↓
レーザーで運動エネルギーを与えて
レーザーで位置を測定すればいいんじゃね?
Re: (スコア:0)
こうなると、コンピュータというよりは物理現象(自然法則)を観測してるだけというような気も。
Re: (スコア:0, 既出)
トランジスタによる電流のON/OFFも自然現象です。
Re: (スコア:0)
既出?
Re: (スコア:0)
アナログコンピュータとすると
人口脳や補助脳の作成に一つの光明が与えられたって事ですね
いや本当のところはどうなのかまったく判らないけど
Re:ある種のアナログコンピュータ? (スコア:1, 参考になる)
アナログなのは回路の成長と、素子の判定基準です。
入出力は本来デジタルに行われます。
実質アナログ扱いなのは、素子を特定して利用することができていないからです。
理由は、素子数が膨大、素子のロールが不明、プロトコルが不明、端子がない、プロトコル・素子のロールに個人差があるので定式化が難しい事。
そのため、書き込みには大雑把な範囲単位で信号を叩き込んで調節はのーみそ側が再構成されるに任せ、読み取りも大雑把な範囲単位での活動量を読み取って調節はのーみそ側が再構成されるに任せ、ってのが現状です。
コンピュータで考えるなら、各機器の消費電力の組み合わせに符号を振って一致する信号を出せるようソフトウェアの調節で頑張ってもらい、
余り使ってない機器の電源をショートさせたり水につけたりの状況に符号を振ってそれを読み取るようソフトウェアの調節で頑張ってもらうような物です。
もう、強引すぎて言葉が出ないレベル。
流石に最先端の技術でがんばればもう少しマシなI/Oが出来るはずだけれど、直接信号線を拾うにはまだまだ遠い。
CPUにヤスリ掛けて信号線探すよりは適当なI/Oバスを転用する方が楽で、今のところコッチ(脳の外の神経にアプローチ)のほうが多いけどやはり1ピン単位で繋ぐ技術は確立されていない。
でもそれで一応動くってんだから、そこは生物の神秘ですね。
Re:ある種のアナログコンピュータ? (スコア:1)
神経パルスの有無で動いてるからデジタルに見えるけど、情報はパルス頻度や位相差で送られてるし、膜電位が連続的に積算されて発火するから、アナログでもある。
PCM (パルス符号変調) なら完全デジタルだけど PFM (パルス頻度変調) はどちらか?という問題だな。
the.ACount
Re: (スコア:0)
書き込みはDA変換?読み込みはAD変換?
そうだとするとここがボトルネックにならないのかな?
Re: (スコア:0)
Re: (スコア:0)
それはそれで有用だろうけど
Re: (スコア:0)
"We have experimentally demonstrated a new logic gate
based on the temporal evolution of a wave function."
とありますので,ちゃんと論理回路にしてあるみたいですよ.
フーリエ変換速いと (スコア:0)
桁数が多い処理解くのに便利そうだなー
素数探査とか暗号解読に使えるんじゃね?
Re:フーリエ変換速いと (スコア:1)
変換結果を何百桁の精度で得られる訳じゃないと思うので、暗号解読にどれほど役に立つのか疑問です。
偉い人、教えてください!
Re: (スコア:0)
超高速エンコーダボードとか出ないかな。
Re:フーリエ変換速いと (スコア:1)
もちろん、動画関連(不可逆変換)への応用は期待しています。
ですが、暗号解読にはどの程度役に立つのかなぁ、と思ったのです。
Re: (スコア:0)
GNUMPなんかにも使われていたと思います.
そういうわけで,大きい整数を扱う公開鍵暗号や,それに関連した素因数分解は
速くなるんじゃないでしょうか.
どうやって精度保証をしているのかは,理論があるらしいですが,
詳しくは知りません.
Re:フーリエ変換速いと (スコア:1, 参考になる)
>詳しくは知りません.
FFTによる乗算の利用と精度の保障についてはPeter Henriciによる著ISBN-13: 978-0471608417にきっちりと書かれていたはずです。
(私も大分昔に読んだので具体的になんだったか良く覚えていませんが^^;)
さて、多倍精度整数の乗算ですが、現状では単純な平方による古典的乗算(2n^2)、Karatsuba法の再帰的適用(O(n^(log 3)))、Schönhage and Strassen (1971), Schönhage(1977), Cantor and Kaltofen (1991)のFFTによるアルゴリズム(O(n log n log log n))が一般的な様です。
ただしO記法で見かけ上のオーダーが低く見積もれると言ってもアルゴリズムは複雑になる傾向にあり、コストが極端なものにならない限り単純な古典的方法やKaratsuba法が処理速度が有利な場合があります。
波束エンジニアリングに関してはよく分かりませんが、今回の記事を見る限り複雑な処理もより低コストに実装できるようになり、昔から知られていた単純なものと、オーダーは低いが複雑で遅いものとの差が一層小さくなるのではないでしょうか。
Re: (スコア:0)
ビット数を増やすとレーザー装置もたくさん要る
というオチ?
実用化 (スコア:0)
量子コンピュータ何処行った?
結局未だに実用化されてないよね。
この分子コンピュータも同じで実用化されるのはとっても先。
で分子コンピュータが実用できる頃には今の既存のコンピュータ技術も同じくらいの速度になっていたりしてな。
Re:実用化 (スコア:2, 参考になる)
>量子コンピュータ何処行った?
ビット数の少ないもので良ければすでに存在します.
>結局未だに実用化されてないよね。
元々,通常のコンピュータで言えば「論理ゲートってものを実現できたら,いっぱい組み合わせて計算する機械が出来て速いんじゃね?」-> 「歯車組み合わせて論理ゲートが作れた!」とかそういうレベルの研究段階です.未だにも何も,いつ実現できるのか,そもそも実現できるような代物なのか,すら判別できないような段階ですので,この時期に実用化できるなんてことはほとんど想定されていません.
>今の既存のコンピュータ技術も同じくらいの速度になっていたりしてな。
今回の例も絡んでくるので量子コンピュータで話をするならば,もし本当に,「十分な規模の量子コンピュータが出来た」 & 「量子コンピュータの得意な計算」なら,それはないでしょう.計算量の発散度合いが相当違いますから.
ただし,第一の条件の「十分な規模」のものが作れるのか(少なくとも,数十年以内に作れるのか)がそもそも不明です.また,「量子コンピュータ=速いコンピュータ」ではありません.現状では,「特定のアルゴリズムに関してのみ非常に速いアクセラレータ」です.決して,任意のプログラムを高速に動かすことの出来る装置ではありません.
そもそも,任意のプログラムを量子コンピュータ上で動かせるようなコンパイラ的なものが実現できるかどうかも謎です.アルゴリズムを実際の物理過程に落とし込む汎用のコンパイラが無い(そういったものが作れるのかどうかも不明だったような)状況ですので.現状,感覚としては,ワンオフのアナログコンピュータに近い.しかも作れると判明している回路の種類はとんでもなく少ない.
量子コンピュータは,
・低ビット数のものはすでに存在
・(現実的に)ビット数を増やせるかどうかは謎(いろいろ研究はあるが遅々とした進歩)
・簡単に外部の系とやりとりできるものが作れるかは謎(まあ簡単に出来ないなら出来ないでかまわんかもしれない)
・古典的計算機に対して驚異的に効率的に解ける問題とそのためのアルゴリズムがあることがいくつかの例で知られている.
そもそも問題を高速に解く量子コンピュータ的アルゴリズムを考えるのが非常に大変で,その上それを物理的に実現する手法を考えるのがまた大変.
感覚的には,量子コンピュータのアルゴリズムを考えるのは,通常のプログラムの仕様のようなものを渡されて,
「じゃあこの仕様を満たす装置を,バネと歯車とかで機械的に作って」
と言われているのに近い.FFTをする機械式計算機を作るとか,そういう感じ.
・それ以外の系で速いかどうかは謎(いろいろ議論はあるが,特定問題以外は多分そんなに速くない)
・汎用のコンパイラが作れるかは謎(いろいろ研究はあるが,出来るかどうかは未知)
Re:実用化 (スコア:1)
既存コンピュータも回路設計がナノレベルに近づいていくから、分子コンピュータはその延長線上にあると思うけどな~
the.ACount
飽きた (スコア:1, すばらしい洞察)
もうこのネタに飽きた。
そろそろやめない?
せめてもうちょっとひねるとかさ。
Re: (スコア:0)
まあ実際のところ、この技術は有望そうだから仕分けしないと、くらいは考えるかもね。