量子ファームウェアとは?
みなさんは、「量子ファームウェア」というもの聞きなれないと思います。
誤解を恐れずに一言でまとめるならば、「量子ビットを制御するシステム一式」のことであります。
例えば、古典コンピュータ(ノイマン型コンピュータ)でいえば、CPU内部の古典ビット「0」と「1」を制御するシステム一式です。具体的にはトランジスタを制御する部分で、実際にどのような操作を行っているかといえば「電圧のOn/Off操作」となります。これにより、古典ビットの「0」と「1」を表し、操作することにより、計算を行っています。
そして、これに相当するものを、量子情報の世界では「量子ファームウェア」と呼んでいます。
では、これはどのようにして、物理的に実現されているのでしょうか?
そもそも、量子ビットとはなんでしょうか?量子ビットとは、さまざまの状態を重ね合わせて保持されているビットです。すなわち、「0」と「1」を確率的に保持している状態、例えば「0」を20%「1」を80%の状態で保持、という感じで表すビットです。
すなわち、「電源のOn/Off」というような2状態しかないものでは操作できません。では、どのように操作しているのかというと、、、
「電波」
により制御されています。
具体的には、電波の強さ(量子ビットに与えるエネルギー量)によって、量子ビットの状態を変化させることにより、制御しています。これにより、古典ビットのような離散的な操作ではなく、連続的な操作となり確率的な表現ができるのです。
そのため、現在の量子ファームウェア(量子ビットを制御するシステム)は、電波(無線)系の測定器をコアとして構成されています。ここに現在の量子ファームウェアの問題点があります。
ずばり、非常に高価であり、融通が利かないという点です。イメージが付きにくい方は、測定器の一種であるオシロスコープを想定してもらえればと思います。今のシステムでは、オシロスコープのようなものの集合体であるため、それらを操作し、連携させて、量子ビットを操作しないとならないわけです。
そこで、本プロジェクトの一つの成果として、SDR(ソフトウェア無線機)を用いることで、
量子ファームウェアの機能をソフトウェア的に変更・制御・操作が可能なシステム~非常に安価でソフトウェアラブルな「量子ファームウェア」~
を作成することを目的としています。
たぶん、ここまでの話のイメージもつきにくいと思いますので、最後にちょっとだけ、具体的な量子ファームウェアをお見せします。
この図は、SDR(ソフトウェア無線機)用の信号処理ソフトウェアの一つである「GNURadio」を用いて実装した「量子ファームウェア」としての一番簡単な例です。
上部の「AM_VOLUME」スライダーを左右に動かすことで、量子ビットの状態を変えることができます。「AM_VOLUME」とは、その名の通り、ボリュームであり、電波の強さそのものです。これを操作することで、量子ビットの状態を操作するのです。これにより、理想の量子ビット(≒シミュレーター上)であれば、これだけで操作可能なのです。(ただし、このままでは実際の量子ビットを操作することは不可能です。)
以上から、本プロジェクトの「量子ファームウェア」の最初の成果としては、このような「理想的な量子ビット向けファームウェア」と「理想的な量子ビットシミュレーター」を予定しています。
(Noritsuna)
1件の返信
[…] 今回は、前回の「量子ファームウェアとは?」の続きとなります。具体的な内容としては、実際に行うGNURadioの拡張について、解説していきます。 […]