前提:
・量子コンピュータの演習をするにあたって、まずは全て無料で検証を始めたい
・難しい理屈は分からないが、量子コンピュータを使って何か作って楽しみたい(下記のイメージ)
1、量子コンピュータ(シュミュレータ)演習環境の準備
・Anaconda3は商用の利用が禁じられているので、将来的な商用の利用も考えて、Python3.5later+JupyterNotebookを使って構築する。
(1)Python3だけ単体でダウンロードしてインストールする(今はパスもインストール時に設定出来る)
(2)pip install jupyterでJupyterNotebookをインストールする。
Windowsで下記に「cmd」と入れるとコマンドプロンプト画面が表示される
C:\Users\<自分のコンピュータ名>>pip install jupyter
但し、この方法でインストールするとコマンドラインで毎回jupyter notebookと打たないとjupyter notebookは起動出来ない。もちろんWindowsメニューにもアイコンも登録されない。
デスクトップにBatchファイルを作り、中身は、下記の2行を記載する。
cd C:\Users\<自分のコンピュータ名>\
jupyter notebook
デスクトップ表示イメージ。(Windowsに紐付ける開くアプリによってアイコンは変化する)
(3)gitだけ単体でダウンロードしてインストールする。→この時Python3だけは再起動が必要
これでPython3の実行環境は整った。デスクトップアイコンからjupyter notebookでJupyter Notebookが起動すれば問題ありません。(コマンドプロンプト画面が立ち上がり、Windowsの優先ブラウザにJupyter Notebook画面が表示されます。
続けてブラウザ上に立ち上がるJupyter Notebook画面
※デフォルトでは、ディレクトリが自動作成されませんので、上記のようにPythonプログラムなどを収納しておきたい場所を事前に作成します。デフォルト表示されるのは、C:\Users\<自分のコンピュータ名>\が表示されます。もちろん任意の場所に移動できますしファイルも使えますが、デフォルトがここなのでこの直下が操作性も便利です。
・qiskit(量子コンピュータ操作用のモジュール)をインストールする。
(1)pip install qiskit これだけでは、GUIとかモジュールが足りないので次もインストールする
(2)pip install matplotlib
(3)pip install pylatexenc
・初級の演習では上記で足りるが、量子コンピュータ実機にアクセスしたりする中級、上級になると次のモジュールも必要。
(1)pip install git+https://github.com/qiskit-community/qiskit-textbook.git#subdirectory=qiskit-textbook-src
(2)pip install numexpr
これで下記の演習は実施可能になる。(昔、月刊マイコンを買ってマシン語を入力した事を思い出す。楽しい!)
https://qiskit.org/textbook/ja/preface.html
2、量子コンピュータのシミュレータが3つ入っているのでシミュレータを利用して量子コンピュータの検証が出来ます。
シミュレータを利用するメリットは、比較的処理速度が速い事です。シミュレータの名前を指定して実行すると自分のパソコンに入った量子コンピュータのエミュレータで処理されます。
3、インターネット上に公開されている量子コンピュータに接続して検証が出来ます。
実機を利用するには、WebAPI登録をして空いている量子コンピュータを検索し、空いている量子コンピュータでの処理依頼をする形になります。利用する時間帯によってはレスポンスが著しく遅くなったりエラーになったりしますので時間を変えて根気よく検証を行う必要があります。
手順:
1、まず、IBM Quantumにログインすると、WelcomeページにAPI Tokenが表示されるのでこれをコピーする。
上図の左下部に表示されるView allを開くと下図のような表が表示される。
これは、利用出来るIBM Quantumを一覧表示しており、水色の鍵マークがあるものは有料と言う事でロックが掛かっており、利用しようとしてもエラーになります。ロックが掛かっていないものが利用可能です。
2、Jupyter Notebookで下記を実行する。1回実行するだけで良い。(overwrite=Trueを設定すると、API Tokenを更新してしまっても再度登録し直しが出来る。実行するパソコンにTokenが書き込み禁止で登録される仕様らしいのでパラメータ追加はオススメ)
from qiskit import IBMQ
IBMQ.save_account('<コピーしたAPI Token>')
from qiskit import IBMQ
IBMQ.save_account('<コピーしたAPI Token>' overwrite=True)
3、ここまで終わっていないと、量子コンピュータ実機(IBM Quantum)の検索と処理依頼は出来ないので注意する。※シミュレータは1、2を実施せずとも利用可能です。
※量子コンピュータ実機(IBM Quantum)の検索方法はこちら
https://qiita.com/jg1mnv/items/ed38e925cd12e619cf4c
これで簡単にqiskit textbookの演習を行うことが出来る。