そもそも量子コンピューターを動かすのが難しく、
普通はシミュレーター環境でためすというか、
そもそも量子コンピューターには2種類あり
量子アニーリング方式は、できることが限られているし
量子ゲート方式は、今はそこまで速くない
なんてことを
基礎から応用やトレンドまで学ぶ量子コンピューティング入門セミナー
https://liberal-arts-for-tech.connpass.com/event/120222/
で聞いてきたのでメモ
量子コンピューティング入門
・自己紹介
オープンソース OpenQL Project
量子コンピューターとは
物理的な量子現象(量子状態)を計算のための情報として扱う計算機
→でも、きまりはない。勝手に思い浮かべてる
アニーリング方式(特化型)
ゲート方式(汎用型)
物理的な量子現象、量子状態というのがある。
それを計算機に使う
表現方法に、アニーリング方式とゲート方式がある
量子状態:いろんなところにある。
→ちがうデバイスを使って作ろうとしている
物理的には、いろんなのあり得る
例:イオントラップ:原子1個をレーザーでトラップする
トポロジカルナノワイヤー:マイクロソフト→発展途上
セミコンダクター くうぉんたむ どっと:半導体に不純物→量子状態として動く
NVセンター ダイヤモンド:ダイアモンドの中に窒素(N) 空洞(V)を作る
フォトンレーザー:光子1個分
スーパーコンダクティング=超電導→一番ポピュラー
アニーリング型とゲート型:できることが違う
アニーリング型:組み合わせ最適化
ゲート型:理論上、すべての計算(古典コンピューターの上位互換)
→全く違うもの
暗号解読に役に立つのは、ゲート方式
断熱量子計算機まで量子アニーリング式が進化すれば、ゲート方式になる可能性がある
→可能性だけね・・・
アニーリングは超電導とレーザーしかない(超電導、レーザーはゲートも作れる)
それ以外は基本的ゲート型。世界的にはゲート型
アニーリングをやっているのは
スーパーコンダクティングは、D-Waveが量子アニーリングしてる
QNNはレーザー
→記者が間違えている。メーカーはそのへん、ちゃんと出してる。
量子コンピューター:アルゴリズムを動かせば早くなる(ステップ短い)
今の粒子コンピューターは、ほぼほぼたいしたことない。
みんなが量子コンピューターとおもっているのは、無冷媒希釈「冷凍機」
その先っぽにあるのが、量子コンピューター:めちゃめちゃ、温度冷やす→超電導
外からの信号入れる(パルス電流)ので、シャンデリアみたいになっている
回路2マイクロメートル:量子ビット
●どんなところが、量子コンピューターやってるの?
カオスマップ:日本は富士通ぐらい、アニーリングは一部
重要企業は、マイクロソフト、IBM、グーグル
IBM Q:無償でクラウド提供
→量子コンピューターを提供しているのはIBMだけ
Google:高精度な量子コンピューター 72ビット(大規模)を作っている
→なかなかリリースできていない:これがでたらやばい
マイクロソフト:フルスタックソリューション
チップ・アプリ・応用:ナノワイヤー できれば高性能(論文は出てる)
ソフトウェア:各社
Cirq(さーく)
IBM QISKit
マイクロソフト: Q# →Visual Studio Codeで動く
●世界の動向
日本:大学がハード(国の予算:Q-LEAP きゅーりーぷ JST主導、超電導型)
日本はアニーリングもしている:理論を作った
かなだ:D-Wave:アニーリング ハードを作った。
US:ベンチャー
中国:通信
オーストラリア:半導体
ヨーロッパ:いろいろ
●いまの量子コンピューターは、
コンピューターのENIACに似たような感じ
●量子コンピューターを使うためのソフトウェア構造
ファームウェア:アセンブリ:アプリケーション
PC 量子プログラミングは作れる→クラウドを介して動かす
マイクロソフトはシミュレーターを提供
→お勉強はできる
アセンブリレベ(QASM)ルの技術で書くことは
コンパイラ=さかん、物理が得意な人が作ろうとしている
→ヨーロッパは融合できている。日本は今から
QASM:いろいろ提案
●量子アセンブリ言語
命令は3つ(OPENQASM(おーぷんかすむ)で定義されているのは)
ライブラリはある。
QISKit
PyQuil
QuTip
ProjectQ
Cirq
Q#
量子化学計算、最適化問題のライブラリはある
●やるには
・ライブラリを入れる→クラウドの先に計算できる
真似事はできる(シミュレーター)
・ディープラーニングの量子計算→ビジネスは疑問、研究では有望
やってますって、いっちゃう人が多い
宣言した人に乗っかる
GPUを量子コンピューターにする?テンソルフロー
やってみないとわからない
リスク:量子コンピューターが動かない。ソフトがGPUに勝てない
くおんたむ すぷれーましーSupremasy)スパコンを超える
●量子計算の裏側
シュレージンガー方程式
量子:波と量子の性質 量子の運動を記述するための方程式
量子状態→運動方程式で書く:時間を分割→ユニタリオペレーターを掛けていく
これを利用する
量子ゲート回路図
オペレーションは、波長で操作する
量子計算は、複素行列の演算として扱える
手順は4つ
1.量子ビットを用意して初期化する
2.ユニタリ行列で記述する
3.ユニタリ行列を量子ビットに作用する
4.測定する
ゲートは行列で書ける
1.量子ビットを用意しましょう
複素ベクトルを用意する:ケットベクトルと呼ぶ→1量子ビットはぶろっふぉ球であらわす
N量子
2のN乗の複素確率で表す
2量子ビット 00 01 10 11 の複素確率で表せる
→確率:たすと1
複素確率:
ユニタリ行列:球面上の任意の点に移していく
基本セット→任意回転
行列の掛け算がアセンブリ(3つの行列)
次々に→普通の行列
並んでいる→テンソル積
測定:係数→複素確率
測定すると、状態が1つになる:どっちかの答えが出る。何回かやるとパーセントが分かる
高確率になるような計算をさせる
どこかの状態になります。:射影で求める→長さの比 が確率
→射影にも軸がある
●GPUのほうが早くない?
・量子重ね合わせ状態が作れる。
・エンタングルメント:量子もつれ
積情報では表せない状態:積状態 エンタングルメント状態と積状態がある
アルゴリズム
・量子コンピューターを量子コンピューターらしく使う
Quantum Algorithm Zooというところにアルゴリズムがある
今
NISQ:ノイズあって中規模
量子・古典コンピューター
アルゴリズム3つの潮流
ショアに続く素晴らしアルゴリズム
NISQハイブリッド
Quantum Spremacy
Groverのアルゴリズム、SWAP Test
周期性を見つける:波の周期が図れれば計算できる
量子化学計算:分子の軌道 VQEで量子科学計算を行う→シュレーディンガー方程式の実験機
・OpenQLの紹介