量子コンピューターが高速に計算できる理由


2022/09/07

古典コンピューターと量子コンピューターでは、計算を実行する最小単位がまったく異なっています。

古典コンピューターでは、この最小単位は、「ビット(bit)」と呼ばれ、「"0"か"1"かのいずれかの状態」を表しています。

 一方、量子コンピューターでの最小単位は、「量子ビット(quantum bit)」と呼ばれ、「"0"か"1"の両方の状態」を同時に表す単位です。これは、量子物理学で説明される「重ね合わせ」とよばれる性質を使ったものです。


例えば、古典コンピューターで、4ビットの組合せを計算すると、16回の計算が必要です。

一方、量子コンピューターでは、「"0"か"1"の両方の状態」を同時に計算できるので、4量子ビットの量子コンピューターであれば、1回の計算で全ての組合せを計算できます

古典コンピューターでこのビット数(n)を増やしてゆけば、2nの計算が必要となり、計算量は指数関数的に増えてゆきます。

一方、量子コンピューターでは、量子ビットの数を増やせば、1回で計算できる組合せが増えることから、古典コンピュータを遥かにしのぐ計算が可能になります。そんなことから量子ビット数を増やす研究が進められています。ただ、古典コンピューター同様、計算では必ずエラーが起きます

これを訂正しなければ、計算精度は保証できません。量子コンピューターでは、0.1〜数パーセント程度のエラーが発生しますが、現状ではこれを訂正することがほとんどできませんまた、高速に計算できるようになっても、それだけでは必要な答えは得られません。

欲しい答えを得るための量子コンピューター専用のアルゴリズムが必要です。

現在のところ「素因数分解」と大量のデータの中からある条件に合致するデータを見つけるための「量子探査」を高速で計算するアルゴリズムが発見されている程度で、まだまだ研究の途上です。それでも、このアルゴリズムを使えば、暗号の解読や検索が桁違いに早くなり、ビジネスや社会に大きなインパクトを与える可能性があります。

量子コンピュータの登場により、古典コンピュータが不要になることはなく、適材適所で使い分ける時代が来るでしょう。

まだ研究開発の途上ではありますが、近い将来、コンピューティングの常識を根本的に変えてしまうかもしれません。 


メール・BLOG の転送厳禁です!!  よろしくお願いします。