D-Waveの開発したコンピュータは「量子コンピュータ」なのか?
先日「実用的な量子コンピュータの開発に成功した」というニュースが流れた。
しかし、これらの記事は間違ってはいないのですが、かなりミスリーディングな書かれ方をしている。そこで、以下では混乱しそうなポイントに絞って、この「実用的な量子コンピュータ」とは結局のところ何なのか、について説明していく。
■1:D-Wave社のコンピュータは「量子アニーリング」であって、通常言われる「量子コンピュータ」とは手法も目標も違う
通常言われる「量子コンピュータ」でイメージされているのは「通常のコンピュータよりも圧倒的に早い」というものであろう。もう少し詳しい人は「素因数分解を非常に早く行えるので、現在多くの通信で用いられている暗号が破られてしまう」というところまで知っているかもしれない。
ここで言われている「量子コンピュータ」は、私たちが普段用いているコンピュータと同様、数(01の数字列)の計算や処理を出来るように作られている。コンピュータは情報をすべて01のビットに変換して認識していて、それを処理することで膨大な計算をしてくれる。通常のコンピュータは、01には回路のオン/オフが対応しているが、量子コンピュータではこれを「量子ビット」と呼ばれるもので実現させる。
このようなものが通常言われる「量子コンピュータ」である。そして、量子コンピュータのアルゴリズムとして、素因数分解を非常に高速に行える「ショアのアルゴリズム」というものが見つかっている。現在の通信で用いられている暗号は、巨大な数の素因数分解を通常のコンピュータが行うと膨大な時間がかかってしまい、実質素因数分解できないことを利用している。これが、量子コンピュータが実現してしまうと暗号が危ない、といわれるゆえんである。
一方、今回D-Wave社が開発したのは「量子アニーリング」というものを行うコンピュータである。量子アニーリングというのはある条件を満たすような状態を探すための手法であって、これを用いても数の計算は出来ない。このような手法を用いたくなる状況の例としては、「数独を解く」というものが挙げられる。数独は条件(最初に入っている数字、及び各行と列、四角には1~9が一つずつ入らなければならない)を満たすような数字の入れ方を見つけるパズルである。なので、このようなときには量子アニーリングを用いることは出来る。だが、例えば「方程式を解く」「数値シミュレーションをする」などの計算をしたいときには、量子アニーリングは用いることができない。
なので、「量子アニーリング」と通常言われる「量子コンピュータ」とは、目的のレベルから全く違うものであり、別の記事にあるように
現在、米国や日本をはじめ世界の量子コンピュータ開発の大多数が、この「量子ゲート」方式に基づいていると見てよい。言わば、量子コンピュータ開発の主流方式である。これに対しD-Waveの"量子コンピュータ"は、「量子アニーリング」と呼ばれる全く別の方式に基づいて作られている。(「D-Waveの量子コンピュータは本物か? ---その基礎理論を考案した日本人科学者に聞く」)
というまとめ方はあまりいいとは思わない。単に「主流ではない方法を用いた」というより、「そもそも目指しているところが全く違った」という方が正しいからである。共に人を運搬するものであっても、自転車と飛行機を並べて性能や技術の進展状況を比較することが出来ないように、この二つを並べて論じることはそもそも土台の作り方がよくないと思う。実際、今回出た「D-Wave社が作ったコンピュータは量子効果をちゃんと使っている」と主張している論文も、このコンピュータが量子アニーリングをきちんと行っていることを述べているだけであって、これが量子コンピュータであるなどとはどこにも書かれていない。
そして、用いている手法が全く違う以上、量子アニーリングが成功しても、素因数分解を非常に早く行うことは出来るようにはならない。この点は安心して大丈夫である。
■2:量子アニーリングが実用的な意味で「探索を非常に早くする」のかも、実のところよく分からない
「量子コンピュータは通常のコンピュータよりも圧倒的に早い」というイメージは強い。しかし、このイメージが語っているのはあくまでも「通常言われる「量子コンピュータ」」についての話であって、量子アニーリングについて述べているものではない。さらに、量子コンピュータが圧倒的に早いのは、量子論を古典論から分かつ要素である「エンタングルメント」というものを使っているからだとされている論文があるが、量子アニーリングは単にトンネル効果を利用しているだけで、エンタングルメントは特には使っていない。そのため、量子アニーリングは、通常の量子コンピュータについて言われるような「圧倒的な高速化」は当てはまらない。なので
「量子アニーリング」とは、量子力学的効果を使用して最適化問題、特に組み合わせ最適化問題と呼ばれる種類の問題を、これまでのコンピュータよりもはるかに高速に解ける汎用アルゴリズムを提供する。(「D-Wave社の量子コンピュータは「本物」~米研究者グループが「量子効果を確認」とネイチャーに発表」)
という説明は正しくない。実際、量子アニーリングは通常のコンピュータでもシミュレートできてしまう。
量子アニーリングが通常のコンピュータで出来るというのは、一読すると非常に不自然に見えるかもしれない。これを理解するには、そもそも「アニーリング」というのが何なのかを理解しなければならない。
まず強調すべきは、アニーリングというのはハードウェア(デバイス)の話ではなくて、あくまでもソフトウェア(プログラム)の話だということである。量子アニーリングに対応する「量子的でないアニーリング」というものも存在し、それは「シミュレーテッド・アニーリング」と呼ばれている。シミュレーテッド・アニーリングは、一旦温度を高い状態にして、それから温度を徐々に下げていくことによって、欲しい状態を見つけ出す探索の手法である。しかし、これをする際には実際に温度を上げ下げする必要は全くない。あくまでもコンピュータの中で「温度が高い場合に起きるであろうこと」「温度を下げたときに起きるであろうこと」をシミュレーションして、結果を出せばよいし、実際の探索ではそういう方法が採られている。ただし、本当に物質を用意して温度を上げ、その後でゆっくりと温度を下げてもやはり同一の結果を得ることは出来る。つまり、シミュレーテッド・アニーリングは
(字義通りの方法):物質の温度を上げて、それから下げる(実際のコンピュータのやること):温度を変えた場合に何が起きるかをシミュレーションする。
という関係にある。
量子アニーリングの場合は、シミュレーテッド・アニーリングの場合に行っていた「温度の上げ下げ」の代わりに「量子ダイナミクスの制御」を行う。これも上記のように対比的に書くと
(字義通りの方法):量子ダイナミクスを制御する(実際のコンピュータでやること):量子ダイナミクスが変えられたら何が起きるかをシミュレーションする。
という関係にある。そして後者の「実際のコンピュータ」というのは通常のコンピュータであって構わない。
ただし、D-Wave社が開発したコンピュータは、これを「字義通りにやってしまうコンピュータ」を作ったのである。これがこのコンピュータの新しいところであり、また研究者が「字義通りやっている、と言い張っているけど、実際には通常のコンピュータにシミュレーションさせているんじゃないのか?」と疑いの目を向けた原因でもある。そして、今回出た論文は、その疑いを晴らすもの、つまり本当に字義通りの方法でやってるよ、ということを示したものなのである。
この流れを見ればわかるように、「字義通りのことをやったこと」は「高速化」とはあまり関係ない。物理としては非常に興味深いが、しかし実用上の意義は不明である。
■(詳しい人のための補足):量子アニーリングはシミュレーテッド・アニーリングより早いとは言われるが、それも実用とはあまり関係ない
探索手法としての量子アニーリングとシミュレーテッド・アニーリングの研究は色々となされている。そして、その中で「量子アニーリングの方がシミュレーテッド・アニーリングよりも早い」という研究報告もわりと存在する。しかし、これもまた実用的な意味での高速化とはあまり関係ない。
アニーリングの研究は「収束条件」と呼ばれるものの研究が大半である。アニーリングは確率的な手法なので、実は探索をやるごとに結果は変わってきてしまう。そして、やり方をしくじると本来ほしかった結果ではない結果(与えた条件をすべて満たさないような結果)を出してしまう。そのため、こういった「間違い」が絶対に起きないような方法と、その場合にかかる時間に関する研究は色々となされている。そして、「絶対に間違いが起きない方法」の場合のかかる時間について、量子アニーリングはシミュレーテッド・アニーリングよりも早くなることを示す結果がいろいろと出ているのである。
しかし、「絶対に間違いが起きない方法」をとると、どちらのアニーリングをしても非現実的なぐらいに長い時間がかかってしまい、ちっとも実用的にならない。そのため、実際には「99%正しい解答を与える方法」などで妥協し、その代わり間違っていたらやり直す、等の方法を実用的には用いている。そして、この妥協した場合に量子アニーリングはシミュレーテッド・アニーリングより早いのかどうかは、そもそもほとんど研究がなされていない。しかも時間を短くした場合には、量子アニーリングの方がより間違えやすくなるだろうという予想もあり、どうなるかはよく分かっていないのが現状である。
■3:通常言われる意味での量子コンピュータは当分出来ない
では、通常言われる量子コンピュータの側はどのくらい実現できそうか。2012年のノーベル物理学賞は、量子コンピュータに必要不可欠な部品たった一つを実験で実現した業績に対して贈られた。つい最近の論文で、2変数の1次連立方程式(中学校の最初の頃に習うもの)を実際に量子コンピュータが解いたことが論文に出ている。
さらに残念なお知らせもある。すでに見たように量子コンピュータの圧倒的高速化にはエンタングルメントが不可欠なのだが、コンピュータが大きくなればなるほど、要するに複雑な計算をできるようにすればするほど、エンタングルメントの状態はノイズによって壊されてしまう(状態がすぐに変化して、意図している状態とは別の状態になってしまう)のである(先程と同じ論文)。現状の小さなコンピュータの段階でも、エンタングルメントはすぐに壊れてしまうためになかなか実現できないでいるのだから、実用的な大きさのコンピュータが出来るというのは夢のまた夢である。
| 固定リンク
「自然科学」カテゴリの記事
- D-Waveの開発したコンピュータは「量子コンピュータ」なのか?(2013.07.02)
- 小澤の不等式の量子推定理論における意味及び若干の批判的検討(2012.01.20)
- 小澤の不等式の実験は、量子力学や不確定性関係を否定しているのか?(2012.01.16)
- 雑感(2010.07.21)
- 理性の限界?(2)~不完全性定理(2010.01.08)
この記事へのコメントは終了しました。
コメント
断熱量子計算モデルはUniversalであることが示されているので、高速な素因数分解なども出来るのではないですか?断熱量子計算は量子アニーリングの一種だと理解しているのですが。
投稿: | 2013年7月 3日 (水) 11時43分
コメントありがとうございます。
Universalというのは3-SAT問題を断熱量子計算で解けて、3-SAT問題はNP完全である、ということでしょうか?
確かに3-SAT問題は断熱量子計算で解けますが、それは高々平方程度の高速化しか実現できず、素因数分解で言われるような指数的な高速化にはなりません。
もちろんグローバーのアルゴリズムと同じぐらいに速くなっているというのはそうですが、しかしグローバーのアルゴリズムも実はエンタングルはあまり本質的ではなく、量子コンピュータの本質、少なくともそこで言われる高速化、を体現するものではないでしょう。
投稿: admin | 2013年7月 4日 (木) 00時38分
お返事ありがとうございます。
Universalな量子計算モデルというのは通常の量子計算がシミュレート出来、シミュレートにかかる時間が元の計算時間の多項式関数に収まるものをいいます。Polynomially equivalentなどと言った方が良かったかもしれません。
断熱量子計算のuniversality
http://arxiv.org/abs/quant-ph/0405098
これはノイズが無ければという話ですが。
D-waveはuniversalな計算を目標にしているようですよ。
投稿: | 2013年7月 4日 (木) 12時06分
そこで挙げられている論文は、確か量子ゲートの操作をそのまま量子断熱計算で模倣できるというものだと思います。通常の量子ゲートの方法とまったく同じ状態をなぞっているので、高いエンタングルメント状態を維持できないという量子ゲートの方式が抱えている問題はそっくりそのまま抱えています。それに、量子ゲートそれ自体はすでに存在する以上、それと全く同じことをわざわざ量子断熱計算でやることに(量子断熱計算の「原理的な」計算量を求める以外の)メリットも特にないように思います。
投稿: admin | 2013年7月 4日 (木) 22時13分
前のコメントで「グローバーのアルゴリズムでエンタングルメントはあまり重要でない」と書きましたが、きちんと調べたところ、グローバーのアルゴリズムでもエンタングルメントは使っているようです。この点は訂正いたします。
投稿: admin | 2013年7月 4日 (木) 22時15分
その通りだ思いますが、実現の可能性やメリットについて話しているのではないんです。
"量子アニーリングが成功しても、素因数分解を非常に早く行うことは出来るようにはならない。"というのが自分の理解と合わないので質問したんです。
ScalableでFault tolerantな断熱量子計算が実現すれば素因数分解を多項式時間で実行できます。もちろん多項式時間であっても使い物にならない可能性はありますが。
引用されている西森さんのインタビューは記者のミスではないでしょうか?西森さんの書かれたものと内容が矛盾しているように思います。
投稿: | 2013年7月 5日 (金) 18時47分
要するに
1:量子アニーリングの長所・特性を一切活かさなくてもよく
2:デコヒーレンスなどが一切存在しない状況での「原理的な話」で考える
ということでしょうか?
それならば確かにショアのアルゴリズムと同等のものを走らせることは可能ですが、それはショアのアルゴリズムが量子力学を満たしている時点で「原理的には出来る」のは分かっているので、大した話ではないでしょう。
また「量子アニーリングの実用化の成功」は、素因数分解の高速化には何の貢献もしていない(素因数分解の高速化の場合のボトルネックは全然別の場所にあるので)以上、「量子アニーリングが成功しても、素因数分解を非常に早く行うことは出来るようにはならない」というのは間違っていないと思います。
記事の作成事情は私が知るはずもないですが、引用箇所は西森さんへのインタビュー部分ではそもそもないので、記者が自身の理解に基づいて書いたものでしょう。
投稿: admin | 2013年7月 5日 (金) 23時24分
>>要するに
1:量子アニーリングの長所・特性を一切活かさなくてもよく
2:デコヒーレンスなどが一切存在しない状況での「原理的な話」で考える
ということでしょうか?
原理的な話というだけでなく、Foult tolerantなものが出来た場合の話でもあります。現実にはありえない無意味な話ではありません。
>>それならば確かにショアのアルゴリズムと同等のものを走らせることは可能ですが、それはショアのアルゴリズムが量子力学を満たしている時点で「原理的には出来る」のは分かっているので、大した話ではないでしょう。
アルゴリズムが量子力学を満たすとはどういう意味でしょう?回路モデルよりも弱い計算力しか持たないモデルというのも存在しますから、ショアが必ず走らせられるとは限りませんが。
>>「量子アニーリングの実用化の成功」は、素因数分解の高速化には何の貢献もしていない(素因数分解の高速化の場合のボトルネックは全然別の場所にあるので)
おっしゃっていることがよくわかりません。何も貢献せずに実用化に成功する状況とは、どのようなものなのでしょうか?
ボトルネックというのはノイズの問題のことでしょうか?ノイズの性質やエラー訂正の方法というのはモデルによって変わりますから切り離して考えることは出来ない。全然別の場所にあるのではないでしょう。回路モデルにおけるエラー訂正の閾値定理のようなものが量子アニーリングでも構成され実現される可能性はあるのではないですか。(私はアニーリングの支持者ではないです、念のため笑)
投稿: | 2013年7月 6日 (土) 21時03分
今回のD-Waveのコンピュータで成功したと言われているのは、あくまでも「探索」が実用レベルで出来たという話であって、ここではエンタングルメントのデコヒーレンス対策は特に必要ありません。
一方、「量子ゲートの方式」および「量子ゲートの方式を断熱量子計算で模倣する方式」で問題となるのは高いエンタングルメント状態をデコヒーレンスから守ることですが、こちらは特に成功したわけではありません。
もちろん「『量子断熱計算だと特別にノイズに強くなるような方法』が存在しない証明」はないので、上手くいく可能性が存在するというのはその通りだとは思いますが。
投稿: admin | 2013年7月 7日 (日) 01時06分
そんな役に立つか分からない高級なものを
どうして大企業が相次いで買ってるのですか?
おかしいですねえ。
投稿: | 2013年7月 7日 (日) 13時31分
私は「素因数分解の指数的高速化」には役立たないとしか書いてないですが
投稿: admin | 2013年7月 7日 (日) 23時30分
昨日Eテレ見て勉強しましたが、量子関係なくねって感じた人は山ほどいたことでしょう。
投稿: 通りすがりの量子 | 2014年12月29日 (月) 11時37分