IBM Quantumで学ぶ量子コンピュータ
現在のコンピュータは、近い未来に性能限界が訪れるといわれており、次世代の「量子コンピューティング」への期待が日に日に高まっています。本書は、IBM Quantumを使い、PythonとQiskitで量子プログラミングの基礎と計算手法を効率的に学べる入門書です。量子力学についての難しい知識がなくても、実際に手を動かしながら学ぶことで、量子コンピュータの計算手法を理解することができます。巻末に「量子ゲート一覧表」付き。
Chapter1 量子コンピュータとは?
01 量子コンピュータとは?
1 量子力学と量子コンピュータ
2 量子コンピュータのハードウェア
3 イオントラップ方式
4 量子コンピュータと古典コンピュータの関係
5 アルゴリズムとソフトウェア
6 量子コンピュータのソフトウェアの活用方法
7 ソフトウェア開発キット
02 量子コンピュータソフトウェアの学び方
1 汎用量子アルゴリズムとは
2 量子古典ハイブリッドアルゴリズム
03 汎用量子アルゴリズムの学び方
1 量子位相推定タイプとは
2 量子振幅増幅・推定タイプとは
04 量子古典ハイブリッドアルゴリズムの学び方
1 量子変分アルゴリズム
2 量子機械学習アルゴリズム
Chapter2 量子コンピュータの数理
01 量子ビット
1 古典コンピュータと量子コンピュータ
2 1量子ビット
3 複数の量子ビット
4 ブラケット記号
5 量子ビットのテンソル積
02 量子ゲート
1 量子ビットの回転操作
2 1量子ビットゲート
3 2量子ビットゲート
4 3量子ビットゲート
5 量子ゲートのテンソル積
6 量子ビットのテンソル積の性質
03 測定
1 標準基底による測定
2 標準基底以外の基底による測定
3 物理量の測定
04 量子のもつれ
1 量子もつれとは
2 GHZ状態
Chapter3 IBM Quantumを使った量子計算
01 量子プログラミングとは
1 量子プログラミングと古典プログラミング
2 量子コンピュータと古典シミュレータ
3 量子プログラミングを行ってみる
4 IBM Quantum Experience のアカウントの作成
02 IBM Quantum実行環境の準備
1 IBM Quantumの実行準備
2 Qiskit実行環境の作成
3 Jupyter notebookでサンプルコードを実行する
03 量子回路の作成
1 量子回路の作成
2 量子回路の実行
04 量子コンピュータとエラー
1 ノイズモデルを用いた計算
05 1量子ビットの計算
1 量子コンピュータによる量子ビット計算
2 トランスパイラによる変換
3 他のゲートセットによる変換
06 2量子ビットの計算
1 量子コンピュータによる2量子ビット計算
Chapter4 Qiskitを使った汎用量子計算
01 量子の重ね合わせ状態
1 数式による説明
2 量子回路の実装
3 多数の量子ビットによる重ね合わせ
02 量子のもつれ状態
1 数式による説明
2 量子回路の実装
03 GHZ状態
1 GHZ状態を生成、測定する
2 数式による説明
3 量子回路の実装
04 量子テレポーテーション
1 アルゴリズムの概要
2 アルゴリズムの理論
3 量子回路の実装
05 Deutsch-Jozsaアルゴリズム
1 アルゴリズムの理論
2 量子回路の実装
06 Bernstein-Vaziraniアルゴリズム
1 アルゴリズムの概要
2 アルゴリズムの理論
3 量子回路の実装
07 Simonのアルゴリズム
1 アルゴリズムの概要
2 アルゴリズムの理論
3 量子回路の実装
08 量子フーリエ変換
1 アルゴリズムの理論
2 量子回路の実装
09 量子位相推定
1 アルゴリズムの概要
2 アルゴリズムの理論
3 量子回路の実装
10 Shorのアルゴリズム
1 アルゴリズムの概要
2 アルゴリズムの理論
3 量子回路の実装
11 HHLアルゴリズム
1 アルゴリズムの理論
2 具体例
3 量子回路の実装
12 グローバーのアルゴリズム
1 アルゴリズムの理論
2 具体例
3 量子回路の実装
13 量子振幅増幅
1 アルゴリズムの導入
2 アルゴリズムの理論
3 具体例
4 量子回路の実装
14 量子振幅推定
1 アルゴリズムの理論
2 具体例
3 量子回路の実装
15 量子数値積分
1 実数空間上の積分
2 アルゴリズムの理論
3 具体例
4 量子回路の実装
Chapter5 量子古典ハイブリッドアルゴリズム
01 量子古典ハイブリッド計算
1 PQC(パラメータ付き量子回路)
2 ハミルトニアンと期待値
3 ハミルトニアンのパウリ行列での表現
4 Z行列での測定
5 X行列、Y行列での測定
6 ハミルトニアンの期待値の計算
02 量子断熱計算とQAOA
1 量子断熱計算を量子ゲートで近似する
2 量子断熱計算の理論
03 イジング模型とQUBO
1 イジング模型
2 QUBO
3 QAOA回路
4 ミキサーを使ったQAOA
5 QAOAの例題を解く
04 QAOAの実問題を解く
1 交通最適化問題
2 制約条件を満たすミキサーを選択する
3 混雑度を定式化
4 実装をする
5 最適化手法を指定する
Chapter6 量子機械学習
01 量子機械学習
1 量子古典ハイブリッド計算
2 入力データの量子状態へのエンコーディング
3 学習用量子回路
4 損失関数
5 回路パラメータ更新
02 量子機械学習の実装例
1 量子機械学習を用いたMNIST分類の実装
Chapter7 これからの量子コンピュータ
01 発展するハードウェアとソフトウェア
1 汎用量子コンピュータの実現に向けて
2 今後の具体的な計画
02 パブリッククラウド利用と量子コンピュータの一般化
1 誰でも使える量子コンピュータへ
2 量子コンピュータと世界的なエコシステムとネットワーク
Appendix 量子ゲート一覧表
01 量子コンピュータとは?
1 量子力学と量子コンピュータ
2 量子コンピュータのハードウェア
3 イオントラップ方式
4 量子コンピュータと古典コンピュータの関係
5 アルゴリズムとソフトウェア
6 量子コンピュータのソフトウェアの活用方法
7 ソフトウェア開発キット
02 量子コンピュータソフトウェアの学び方
1 汎用量子アルゴリズムとは
2 量子古典ハイブリッドアルゴリズム
03 汎用量子アルゴリズムの学び方
1 量子位相推定タイプとは
2 量子振幅増幅・推定タイプとは
04 量子古典ハイブリッドアルゴリズムの学び方
1 量子変分アルゴリズム
2 量子機械学習アルゴリズム
Chapter2 量子コンピュータの数理
01 量子ビット
1 古典コンピュータと量子コンピュータ
2 1量子ビット
3 複数の量子ビット
4 ブラケット記号
5 量子ビットのテンソル積
02 量子ゲート
1 量子ビットの回転操作
2 1量子ビットゲート
3 2量子ビットゲート
4 3量子ビットゲート
5 量子ゲートのテンソル積
6 量子ビットのテンソル積の性質
03 測定
1 標準基底による測定
2 標準基底以外の基底による測定
3 物理量の測定
04 量子のもつれ
1 量子もつれとは
2 GHZ状態
Chapter3 IBM Quantumを使った量子計算
01 量子プログラミングとは
1 量子プログラミングと古典プログラミング
2 量子コンピュータと古典シミュレータ
3 量子プログラミングを行ってみる
4 IBM Quantum Experience のアカウントの作成
02 IBM Quantum実行環境の準備
1 IBM Quantumの実行準備
2 Qiskit実行環境の作成
3 Jupyter notebookでサンプルコードを実行する
03 量子回路の作成
1 量子回路の作成
2 量子回路の実行
04 量子コンピュータとエラー
1 ノイズモデルを用いた計算
05 1量子ビットの計算
1 量子コンピュータによる量子ビット計算
2 トランスパイラによる変換
3 他のゲートセットによる変換
06 2量子ビットの計算
1 量子コンピュータによる2量子ビット計算
Chapter4 Qiskitを使った汎用量子計算
01 量子の重ね合わせ状態
1 数式による説明
2 量子回路の実装
3 多数の量子ビットによる重ね合わせ
02 量子のもつれ状態
1 数式による説明
2 量子回路の実装
03 GHZ状態
1 GHZ状態を生成、測定する
2 数式による説明
3 量子回路の実装
04 量子テレポーテーション
1 アルゴリズムの概要
2 アルゴリズムの理論
3 量子回路の実装
05 Deutsch-Jozsaアルゴリズム
1 アルゴリズムの理論
2 量子回路の実装
06 Bernstein-Vaziraniアルゴリズム
1 アルゴリズムの概要
2 アルゴリズムの理論
3 量子回路の実装
07 Simonのアルゴリズム
1 アルゴリズムの概要
2 アルゴリズムの理論
3 量子回路の実装
08 量子フーリエ変換
1 アルゴリズムの理論
2 量子回路の実装
09 量子位相推定
1 アルゴリズムの概要
2 アルゴリズムの理論
3 量子回路の実装
10 Shorのアルゴリズム
1 アルゴリズムの概要
2 アルゴリズムの理論
3 量子回路の実装
11 HHLアルゴリズム
1 アルゴリズムの理論
2 具体例
3 量子回路の実装
12 グローバーのアルゴリズム
1 アルゴリズムの理論
2 具体例
3 量子回路の実装
13 量子振幅増幅
1 アルゴリズムの導入
2 アルゴリズムの理論
3 具体例
4 量子回路の実装
14 量子振幅推定
1 アルゴリズムの理論
2 具体例
3 量子回路の実装
15 量子数値積分
1 実数空間上の積分
2 アルゴリズムの理論
3 具体例
4 量子回路の実装
Chapter5 量子古典ハイブリッドアルゴリズム
01 量子古典ハイブリッド計算
1 PQC(パラメータ付き量子回路)
2 ハミルトニアンと期待値
3 ハミルトニアンのパウリ行列での表現
4 Z行列での測定
5 X行列、Y行列での測定
6 ハミルトニアンの期待値の計算
02 量子断熱計算とQAOA
1 量子断熱計算を量子ゲートで近似する
2 量子断熱計算の理論
03 イジング模型とQUBO
1 イジング模型
2 QUBO
3 QAOA回路
4 ミキサーを使ったQAOA
5 QAOAの例題を解く
04 QAOAの実問題を解く
1 交通最適化問題
2 制約条件を満たすミキサーを選択する
3 混雑度を定式化
4 実装をする
5 最適化手法を指定する
Chapter6 量子機械学習
01 量子機械学習
1 量子古典ハイブリッド計算
2 入力データの量子状態へのエンコーディング
3 学習用量子回路
4 損失関数
5 回路パラメータ更新
02 量子機械学習の実装例
1 量子機械学習を用いたMNIST分類の実装
Chapter7 これからの量子コンピュータ
01 発展するハードウェアとソフトウェア
1 汎用量子コンピュータの実現に向けて
2 今後の具体的な計画
02 パブリッククラウド利用と量子コンピュータの一般化
1 誰でも使える量子コンピュータへ
2 量子コンピュータと世界的なエコシステムとネットワーク
Appendix 量子ゲート一覧表