量子コンピュータ活用への道の最短距離を設定したいところですが、光量子コンピュータの活用は技術的な内容が多く、まだ体系的に整理されていないので素人が読むとわけわからん状態な感じです。個人的にはすべてをすっ飛ばして光量子コンピュータで社会問題をまずは解いてみたいのでそのあたりを少しずつ突き詰めています。
以前のブログでは、
https://blueqat.com/yuichiro_minato2/97e11577-7b1b-4601-a506-158d8701564b
基本的な光量子計算向けのチュートリアルや使い方を見てみました。基本的には、
1,位置xと運動量pの平面上の値を操作する。xとpの関係は重り付きのばねと光の特性をイメージする。
2,Fockシミュレータという重たいシミュレータと、特定の計算をしている限りは利用できるGaussianシミュレータというものがある
3,量子ゲート計算なので、基本的には量子ビットのマシンと同じようなプログラミングと計算をする
4,計算結果もいくつか表現方法があるが、xp平面上にWigner関数を使ってプロットするのが目立つ
ということでした。いろいろ調べていくと、とりあえずGaussianシミュレータを使えばいいのかなと考えつつ、いろいろ質問してみるとそうでもないようなので、そのあたりを簡単に読み物としてまとめてみたいと思います。
Gaussian Wigner関数
光量子ゲート計算には、量子ビット計算と同じで、古典コンピュータで効率的に計算できるGaussianゲートと効率的には計算できない非Gaussianゲートがあるようです。量子ビット型の量子コンピュータもクリフォードゲートとnon-クリフォードがあり、後者がないと効率的に古典コンピュータで計算できてしまうことが分かっています。
光量子コンピュータの入門では、非Gaussianゲートはあまりなさそうなので、しばらくはGaussianシミュレータでよいのかと考えていました。しかし、当然ながらそれでは古典コンピュータで効率的に計算できてしまい、光量子コンピュータの高速性は使えないようです。中国が達成した光量子コンピュータでの量子超越は、
中国科技大、光量子コンピュータで「量子超越性」を実証 スパコン富岳で6億年かかる計算を200秒で
https://www.itmedia.co.jp/news/articles/2012/04/news146.html
どうやらこのGaussianシミュレータのみでは実現できないようです。しかし、せっかくなのでいったんGaussianシミュレータとGaussian Wigner関数について学んでみます。
こちらの記事を参照します。
https://qiita.com/ryuNagai/items/b830a4433d317362b9fd
Wigner関数は、
引用:https://qiita.com/ryuNagai/items/b830a4433d317362b9fd
という形で表現されますが(パラメータ類はリンク先参照)、どうやらどんな量子状態でも表現できるわけではないようです。とりあえずガウス状態に限定すると計算が楽になるようです。これがGaussian Wigner関数です。
引用:https://qiita.com/ryuNagai/items/b830a4433d317362b9fd
すでにあきらめそうな雰囲気がありますが、行ける人は頑張っていきましょう。古典のガウス分布と似ている式のようで、パラメータが少なく表現できるのが特徴で、基本的には平均と分散があればよいようです。光量子コンピュータの操作の基本は、xp平面上での確率分布の操作に対応していそうでしたが、平均と分散で、位置と確率分布の形状操作に対応するようで、効率的なシミュレーションがこれで可能になります。
基本的には上記の行列Vについて演算を行うことで光量子ゲート計算ができますが、量子ビット型計算では量子ゲートはユニタリゲートに限定されていますが、光量子ゲートについても条件があるようです。今回は平易な読み物ですので、詳しくはみませんが、光量子ゲートに採用されるゲートは、ガウス操作のうちで平均に対する操作以外は斜交行列を使う必要があるようです。
引用:https://qiita.com/ryuNagai/items/b830a4433d317362b9fd
このように、Gaussian Wigner関数を使ってガウス状態を少ないパラメータで表現し、Symplectic Matrixをつかって量子状態を操作することで、xp平面上での量子状態を効率的にシミュレートできるようです。
GBSは?
では、このGaussian Wigner関数とSymplectic Matrixを使った計算で中国が行ったGBSを再現できるのでしょうか?どうやらNOのようです。やはり効率的に計算できるものでは再現できないようです。GBSは光子数測定に量子優位性があるらしく、上記のWigner関数を使ったプロットでは再現できないようで、さらなる操作が必要もしくは、Fockシミュレータと呼ばれる別方式のシミュレータが必要のようです。
もっと詳しく見たいので、
中国発の光量子計算による量子アドバンテージで用いられた手法の解説
https://blueqat.com/ryuNagai/d63e091c-427d-41f4-8715-26d2cc2a6cf9
Strawberry Fieldsで光量子計算をする(その4) ボゾンサンプリング
https://qiita.com/ryuNagai/items/bb12dfc0831eff328678
あたりを呼んでみたいと思います。ほかにもハミルトニアン最小化やCat Statesなど面白そうな話題があるので、そちらも見てみたいと思います。以上です。