「クラウド量子計算入門―IBMの量子シミュレーションと量子コンピュータ: 中山茂」
内容紹介:
IBMから提供される無料の量子計算プラットフォームを体験する!大学での講義を想定した豊富な例題、演習、実験で理解を深める。16の量子実験を通して、量子アルゴリズムを学び、量子シミュレーションで実行する。
2016年10月10日刊行、331ページ。
著者について:
中山茂(なかやましげる)
京都生まれ。京都大学大学院工学研究科博士課程修了後、上智大学、英国Reading大学、京都工芸繊維大学、兵庫教育大学、英国Oxford大学、鹿児島大学を経て、2014年に定年退職。京都大学工学博士。
理数系書籍のレビュー記事は本書で329冊目。
昨年9月に「発売情報: クラウド量子計算入門: 中山茂」として紹介したが、ようやく読み始めることができた。先端技術の本ははやく読まないと鮮度が落ちてしまうからだ。
本書は量子論理回路を具体的に紹介したいので1章ずつ記事を書いて紹介する。主要な画面のスクリーンショットを載せて概要がわかるようにしたい。詳しい解説は本書でお読みいただくことにしよう。
まず、ユーザー登録をしよう。ここが入口だ。Sign inをクリックし、ログイン画面に表示されるSignupをクリックして必要事項を英文字で入力する。
IBM Quantum Experience(入口)
http://www.research.ibm.com/quantum/
第1章で紹介されるのは「量子NOTゲート」の動作確認だ。
量子ゲートを構成するためには音楽の五線譜のようなComposerを使う。ComposerタブをクリックしてNewをクリックすると次の画面が開く。そして左のReal Quantum Processorを選択する。Experiment nameは自動生成されるので入力しなくてもよい。(Custom Topologyを選択しても同じような実験ができるが、実際の量子コンピュータを使わないシミュレータとなる。そしてこちらは量子ビットを指定した数だけ使って実験ができるようになる。つまり6つ以上の量子ビットを使えることになる。)
Composerに右の量子論理ゲートのアイコンなどをドラッグして五線譜の上に置き、次のように構成する。横方向は時間軸だ。横方向の5本線はそれぞれ5つの量子ビット0~4に対応している。
黄緑色のXは量子NOTゲート、ピンク色のアイコンは測定アイコンだ。量子ビット0に0を入力し量子NOTゲートを通過した結果を測定するわけ。
実行は「Run」と「Simulate」の2種類ある。このあたりは本書の画面と違う。本を執筆したときから画面が変更されたようだ。
「Simulate」は雑音のない理想的な量子プロセッサで計算させる場合で、「Run」は雑音のある実際の量子プロセッサで計算させる場合である。前者を「量子シミュレータ」、後者を「量子コンピュータ」と呼ぶ。
「Simulte」をクリックすると結果が次のような画面で表示される。いちばん上は「ブロッホ球」、その下は測定結果の確率分布である。
今回は雑音のない理想的な量子プロセッサで実験したので、量子ビットの値 |0> は量子NOTゲートにより反転され値 |1> になる。そしてその確率は100%であることが測定結果に示されている。
次に同じ論理回路を「Run」、つまり雑音のある実際の量子プロセッサで計算させてみよう。「Run」をクリックすると2つの選択肢が表示される。
左側の「Result from Cache」はすでに同じ論理回路を他の人が実験した結果のキャッシュから実行する場合、右側の「New Execution」は新規に実際の量子プロセッサを使って実験する場合だ。
量子コンピュータの資源は有限なので、同じ回路で何度も実行するのは無駄である。貴重な資源を使うのは遠慮して、他の方の実行結果から選ぶことにした。
すると次の画面が表示され、同じ回路が何度か量子コンピュータで実行されていたことがわかる。とりあえず1番上を選択してみた。
結果は次のとおり。雑音が入るため量子ビットの結果が |1> となる確率が100%でないことがわかる。
キャッシュの2つめの結果を表示させてみた。量子ビットの結果が|1> となる確率が100%でないのは1つめの結果のときと同じだが、確率の値が違っている。
今回はキャッシュから実行させたが「New Execution」を選んで、量子コンピュータを実際に実行しても同じような結果が得られる。
ただし、この量子コンピュータは大勢のユーザーが使っているのでジョブはキューに送られ、実行処理が完了するとメールでその旨が連絡され、メールに書かれているリンクから実行結果を確認する手順になっている。
この量子コンピュータはニューヨーク州にあるIBMの施設で維持、管理されている。各量子ビットは冷却され、その状態は論理回路Composerの下の画面で確認できる。メンテナンス中のときはしばらく時間をおいて試してほしい。
第2回の記事に続く。
著者の中山先生は次の本も2年前にお書きになっている。目次を見ると本書の理論的側面を学べる本だということがわかる。合わせてお読みになるとよいだろう。Kindle版は固定レイアウトなのでご注意。
「量子アルゴリズム:中山茂」(Kindle版)(目次)
量子コンピュータ関連の本: Amazonで検索
次の記事に続く。
関連記事:
発売情報: クラウド量子計算入門: 中山茂
http://blog.goo.ne.jp/ktonegaw/e/d360b69100fbe723c5b9410dbf3f5f4d
量子コンピュータ入門:宮野健次郎、古澤明
http://blog.goo.ne.jp/ktonegaw/e/ef75709187cf4b35a12f2d9fdf73a320
ファインマン計算機科学:ファインマン, A.ヘイ, R.アレン
http://blog.goo.ne.jp/ktonegaw/e/4f7f453019fd463ed2bfdeaa7b288d79
量子コンピュータ、量子アルゴリズムを学びたい高校生のために
http://blog.goo.ne.jp/ktonegaw/e/1b2940b648bda682aa27192eb8261972
発売情報:量子プログラミングの基礎: イン・ミンシェン
http://blog.goo.ne.jp/ktonegaw/e/27e4d9a10982d4d69c0029fc4c801708
関連ページ:
IBMの量子コンピュータを使ってみた
http://kadora.hatenablog.com/entry/2016/09/10/230116
従来のPCの1億倍高速な量子コンピューターはどのような仕組みで動いて物理的限界を突破しているのかがわかるムービー
http://gigazine.net/news/20151210-quantum-computers-explained/
わかりやすい量子コンピュータ
http://matome.naver.jp/odai/2133630808407668301
「ITエンジニアのための量子コンピュータ入門」連載一覧
http://codezine.jp/article/corner/629
量子力学の反常識が創りだす量子コンピューティングの世界
—量子コンピュータの頭脳としての量子アルゴリズム—
http://www.kyoto-su.ac.jp/project/st/st14_03.html
米メリーランド大学、世界初となる「汎用計算可能量子コンピュータ」モジュールを開発
http://pc.watch.impress.co.jp/docs/news/1014034.html
関連動画:
量子論、量子テレポーテーション、量子コンピュータ
量子の制御とコンピュータ(量子コンピュータの原理の概要説明)
量子コンピュータ授業 #1(15回の講義。本書で解説される量子ゲート、量子アルゴリズムのほとんどを学ぶことができる。)
15回の講義内容
ブログ執筆のはげみになりますので、1つずつ応援クリックをお願いします。
「クラウド量子計算入門―IBMの量子シミュレーションと量子コンピュータ: 中山茂」
第1章 はじめてのIBMの5量子ビット実験
1.1 IBMの量子シミュレーションと量子コンピュータ実験
1.2 クラウド量子計算に期待されること
1.3 クラウド量子計算への歩み
1.4 はじめてのIBMのクラウド量子計算
1.5 はじめてのIBMの量子シミュレータ
1.6 はじめてのIBMの量子コンピュータ
第2章 パウリゲートの量子実験
2.1 パウリゲートとは
2.2 恒等ゲートとパウリゲートを使った量子シミュレータ実験
第3章 アダマールゲートの量子実験
3.1 アダマール変換とは
3.2 アダマール演算による量子シミュレータ実験
第4章 位相シフトゲートの量子実験
4.1 位相シフト演算とは
4.2 T深度による量子実験
第5章 制御NOTゲートの量子実験
5.1 制御NOTゲートと重ね合わせ状態
5.2 制御NOTゲートによるもつれ状態生成
5.3 制御NOTゲートにおけるパウリ演算子
5.4 制御NOTゲートによる交換ゲート
5.5 制御Uゲートの生成
第6章 トフォリゲートの量子実験
6.1 3量子ビットのもつれ状態
6.2 トフォリゲートの量子実験
6.3 フレッドキンゲートの量子実験
第7章 ドイチ・ジョザ問題の量子実験
7.1 ドイチ問題の量子実験
7.2 ドイチ・ジョザ問題の量子実験
第8章 ベルンシュタイン・ヴァジラニ問題の量子実験
8.1 関数f(x)=x・aの定数aを求めるベルンシュタイン・ヴァジラニ問題
8.2 n=1のベルンシュタイン・ヴァジラニ問題
8.3 n=2のベルンシュタイン・ヴァジラニ問題
8.4 n=3のベルンシュタイン・ヴァジラニ問題
第9章 サイモン問題の量子実験
9.1 サイモン問題とは
9.2 n=2のサイモン問題の量子実験
第10章 量子フーリエ変換の量子実験
10.1 量子フーリエ変換の定義
10.2 量子フーリエ変換に必要な制御Sゲートの作成
10.3 量子フーリエ変換ゲートの実装
10.4 逆量子フーリエ変換ゲート
10.5 量子フーリエ変換によるシフト不変性
第11章 位相・固有値・位数推定問題の量子実験
11.1 位相推定問題の量子実験
11.2 ユニタリ変換の固有値推定アルゴリズムの量子実験
11.3 位数発見アルゴリズムの量子実験
第12章 ショアの素因数分解問題の量子実験
12.1 因数分解とユークリッドの互除法
12.2 ショアの素因数分解アルゴリズム
12.3 ショアの素因数分解のための量子回路
第13章 グローバーの探索問題の量子実験
13.1 グローバーの探索問題とは
13.2 グローバーの振幅増幅手法の量子回路
第14章 量子非局所性の量子実験
14.1 量子非局所性とCHSH不等式
14.2 GHZ状態の量子非局所性実験
第15章 量子通信の量子実験
15.1 量子高密度符号
15.2 量子転送
第16章 量子エラーとスタビライザー測定
16.1 量子エラーとシンドローム診断
16.2 ビットパリティ識別
16.3 符号パリティ識別
第17章 量子誤り訂正の量子実験
17.1 量子誤り訂正のための符号化と複合化
17.2 量子誤り訂正ゲート
内容紹介:
IBMから提供される無料の量子計算プラットフォームを体験する!大学での講義を想定した豊富な例題、演習、実験で理解を深める。16の量子実験を通して、量子アルゴリズムを学び、量子シミュレーションで実行する。
2016年10月10日刊行、331ページ。
著者について:
中山茂(なかやましげる)
京都生まれ。京都大学大学院工学研究科博士課程修了後、上智大学、英国Reading大学、京都工芸繊維大学、兵庫教育大学、英国Oxford大学、鹿児島大学を経て、2014年に定年退職。京都大学工学博士。
理数系書籍のレビュー記事は本書で329冊目。
昨年9月に「発売情報: クラウド量子計算入門: 中山茂」として紹介したが、ようやく読み始めることができた。先端技術の本ははやく読まないと鮮度が落ちてしまうからだ。
本書は量子論理回路を具体的に紹介したいので1章ずつ記事を書いて紹介する。主要な画面のスクリーンショットを載せて概要がわかるようにしたい。詳しい解説は本書でお読みいただくことにしよう。
まず、ユーザー登録をしよう。ここが入口だ。Sign inをクリックし、ログイン画面に表示されるSignupをクリックして必要事項を英文字で入力する。
IBM Quantum Experience(入口)
http://www.research.ibm.com/quantum/
第1章で紹介されるのは「量子NOTゲート」の動作確認だ。
量子ゲートを構成するためには音楽の五線譜のようなComposerを使う。ComposerタブをクリックしてNewをクリックすると次の画面が開く。そして左のReal Quantum Processorを選択する。Experiment nameは自動生成されるので入力しなくてもよい。(Custom Topologyを選択しても同じような実験ができるが、実際の量子コンピュータを使わないシミュレータとなる。そしてこちらは量子ビットを指定した数だけ使って実験ができるようになる。つまり6つ以上の量子ビットを使えることになる。)
Composerに右の量子論理ゲートのアイコンなどをドラッグして五線譜の上に置き、次のように構成する。横方向は時間軸だ。横方向の5本線はそれぞれ5つの量子ビット0~4に対応している。
黄緑色のXは量子NOTゲート、ピンク色のアイコンは測定アイコンだ。量子ビット0に0を入力し量子NOTゲートを通過した結果を測定するわけ。
実行は「Run」と「Simulate」の2種類ある。このあたりは本書の画面と違う。本を執筆したときから画面が変更されたようだ。
「Simulate」は雑音のない理想的な量子プロセッサで計算させる場合で、「Run」は雑音のある実際の量子プロセッサで計算させる場合である。前者を「量子シミュレータ」、後者を「量子コンピュータ」と呼ぶ。
「Simulte」をクリックすると結果が次のような画面で表示される。いちばん上は「ブロッホ球」、その下は測定結果の確率分布である。
今回は雑音のない理想的な量子プロセッサで実験したので、量子ビットの値 |0> は量子NOTゲートにより反転され値 |1> になる。そしてその確率は100%であることが測定結果に示されている。
次に同じ論理回路を「Run」、つまり雑音のある実際の量子プロセッサで計算させてみよう。「Run」をクリックすると2つの選択肢が表示される。
左側の「Result from Cache」はすでに同じ論理回路を他の人が実験した結果のキャッシュから実行する場合、右側の「New Execution」は新規に実際の量子プロセッサを使って実験する場合だ。
量子コンピュータの資源は有限なので、同じ回路で何度も実行するのは無駄である。貴重な資源を使うのは遠慮して、他の方の実行結果から選ぶことにした。
すると次の画面が表示され、同じ回路が何度か量子コンピュータで実行されていたことがわかる。とりあえず1番上を選択してみた。
結果は次のとおり。雑音が入るため量子ビットの結果が |1> となる確率が100%でないことがわかる。
キャッシュの2つめの結果を表示させてみた。量子ビットの結果が|1> となる確率が100%でないのは1つめの結果のときと同じだが、確率の値が違っている。
今回はキャッシュから実行させたが「New Execution」を選んで、量子コンピュータを実際に実行しても同じような結果が得られる。
ただし、この量子コンピュータは大勢のユーザーが使っているのでジョブはキューに送られ、実行処理が完了するとメールでその旨が連絡され、メールに書かれているリンクから実行結果を確認する手順になっている。
この量子コンピュータはニューヨーク州にあるIBMの施設で維持、管理されている。各量子ビットは冷却され、その状態は論理回路Composerの下の画面で確認できる。メンテナンス中のときはしばらく時間をおいて試してほしい。
第2回の記事に続く。
著者の中山先生は次の本も2年前にお書きになっている。目次を見ると本書の理論的側面を学べる本だということがわかる。合わせてお読みになるとよいだろう。Kindle版は固定レイアウトなのでご注意。
「量子アルゴリズム:中山茂」(Kindle版)(目次)
量子コンピュータ関連の本: Amazonで検索
次の記事に続く。
関連記事:
発売情報: クラウド量子計算入門: 中山茂
http://blog.goo.ne.jp/ktonegaw/e/d360b69100fbe723c5b9410dbf3f5f4d
量子コンピュータ入門:宮野健次郎、古澤明
http://blog.goo.ne.jp/ktonegaw/e/ef75709187cf4b35a12f2d9fdf73a320
ファインマン計算機科学:ファインマン, A.ヘイ, R.アレン
http://blog.goo.ne.jp/ktonegaw/e/4f7f453019fd463ed2bfdeaa7b288d79
量子コンピュータ、量子アルゴリズムを学びたい高校生のために
http://blog.goo.ne.jp/ktonegaw/e/1b2940b648bda682aa27192eb8261972
発売情報:量子プログラミングの基礎: イン・ミンシェン
http://blog.goo.ne.jp/ktonegaw/e/27e4d9a10982d4d69c0029fc4c801708
関連ページ:
IBMの量子コンピュータを使ってみた
http://kadora.hatenablog.com/entry/2016/09/10/230116
従来のPCの1億倍高速な量子コンピューターはどのような仕組みで動いて物理的限界を突破しているのかがわかるムービー
http://gigazine.net/news/20151210-quantum-computers-explained/
わかりやすい量子コンピュータ
http://matome.naver.jp/odai/2133630808407668301
「ITエンジニアのための量子コンピュータ入門」連載一覧
http://codezine.jp/article/corner/629
量子力学の反常識が創りだす量子コンピューティングの世界
—量子コンピュータの頭脳としての量子アルゴリズム—
http://www.kyoto-su.ac.jp/project/st/st14_03.html
米メリーランド大学、世界初となる「汎用計算可能量子コンピュータ」モジュールを開発
http://pc.watch.impress.co.jp/docs/news/1014034.html
関連動画:
量子論、量子テレポーテーション、量子コンピュータ
量子の制御とコンピュータ(量子コンピュータの原理の概要説明)
量子コンピュータ授業 #1(15回の講義。本書で解説される量子ゲート、量子アルゴリズムのほとんどを学ぶことができる。)
15回の講義内容
ブログ執筆のはげみになりますので、1つずつ応援クリックをお願いします。
「クラウド量子計算入門―IBMの量子シミュレーションと量子コンピュータ: 中山茂」
第1章 はじめてのIBMの5量子ビット実験
1.1 IBMの量子シミュレーションと量子コンピュータ実験
1.2 クラウド量子計算に期待されること
1.3 クラウド量子計算への歩み
1.4 はじめてのIBMのクラウド量子計算
1.5 はじめてのIBMの量子シミュレータ
1.6 はじめてのIBMの量子コンピュータ
第2章 パウリゲートの量子実験
2.1 パウリゲートとは
2.2 恒等ゲートとパウリゲートを使った量子シミュレータ実験
第3章 アダマールゲートの量子実験
3.1 アダマール変換とは
3.2 アダマール演算による量子シミュレータ実験
第4章 位相シフトゲートの量子実験
4.1 位相シフト演算とは
4.2 T深度による量子実験
第5章 制御NOTゲートの量子実験
5.1 制御NOTゲートと重ね合わせ状態
5.2 制御NOTゲートによるもつれ状態生成
5.3 制御NOTゲートにおけるパウリ演算子
5.4 制御NOTゲートによる交換ゲート
5.5 制御Uゲートの生成
第6章 トフォリゲートの量子実験
6.1 3量子ビットのもつれ状態
6.2 トフォリゲートの量子実験
6.3 フレッドキンゲートの量子実験
第7章 ドイチ・ジョザ問題の量子実験
7.1 ドイチ問題の量子実験
7.2 ドイチ・ジョザ問題の量子実験
第8章 ベルンシュタイン・ヴァジラニ問題の量子実験
8.1 関数f(x)=x・aの定数aを求めるベルンシュタイン・ヴァジラニ問題
8.2 n=1のベルンシュタイン・ヴァジラニ問題
8.3 n=2のベルンシュタイン・ヴァジラニ問題
8.4 n=3のベルンシュタイン・ヴァジラニ問題
第9章 サイモン問題の量子実験
9.1 サイモン問題とは
9.2 n=2のサイモン問題の量子実験
第10章 量子フーリエ変換の量子実験
10.1 量子フーリエ変換の定義
10.2 量子フーリエ変換に必要な制御Sゲートの作成
10.3 量子フーリエ変換ゲートの実装
10.4 逆量子フーリエ変換ゲート
10.5 量子フーリエ変換によるシフト不変性
第11章 位相・固有値・位数推定問題の量子実験
11.1 位相推定問題の量子実験
11.2 ユニタリ変換の固有値推定アルゴリズムの量子実験
11.3 位数発見アルゴリズムの量子実験
第12章 ショアの素因数分解問題の量子実験
12.1 因数分解とユークリッドの互除法
12.2 ショアの素因数分解アルゴリズム
12.3 ショアの素因数分解のための量子回路
第13章 グローバーの探索問題の量子実験
13.1 グローバーの探索問題とは
13.2 グローバーの振幅増幅手法の量子回路
第14章 量子非局所性の量子実験
14.1 量子非局所性とCHSH不等式
14.2 GHZ状態の量子非局所性実験
第15章 量子通信の量子実験
15.1 量子高密度符号
15.2 量子転送
第16章 量子エラーとスタビライザー測定
16.1 量子エラーとシンドローム診断
16.2 ビットパリティ識別
16.3 符号パリティ識別
第17章 量子誤り訂正の量子実験
17.1 量子誤り訂正のための符号化と複合化
17.2 量子誤り訂正ゲート