2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

<簡単>(最新2025年3月版)量子ソフトウェアの始め方

Last updated at Posted at 2025-02-17

2024年5月にIBMのQuantumLabが廃止になり、無償の量子ソフトウェアが使えるPython3のクラウド開発環境は無くなりました。
またIBM QuantumはQiskit1.0以降で、クラウド環境にあったシミュレータを廃止し、シミュレータもローカルマシンで走る方式になりました。

これにより、ローカルマシンでシミュレータを利用するとローカルマシンへの計算負荷が掛かり、ローカルマシンにも十分なリソースを必要とするようになりました。

とはいえ、安定する開発環境が容易に準備出来ないことは、量子コンピュータが普及しない理由の一つにもなっていると思います。
そこで、現在無償で利用出来る開発環境と量子ソフトウェアを使えるところまでの準備方法を検証しました。

2025年2月時点で安定してどこからも誰でも使えて構築も簡単な無償の量子コンピュータの開発環境は、以下の2つがある事がわかりました。

1.IBM Quantum LearningのComposerを使う

事前にIBMアカウントの登録が必要です。無料で利用出来ます。Operationにあるアイコンがそれぞれどういう動きをするかは、qiskitのマニュアルであるqiskit textで確認して作ります。画面右上のSetup and runボタンでは、稼働中のIBM Quantumを選択出来ます。

2025年現在は、GUIコンポーネントをドラッグして量子ゲートを表現する形になりますので複雑な事は実装出来なかったのですが、下図の右ペイン(Qiskitと表示されているもの)ではQiskit(Python3)はReadOnlyなので編集出来ません。しかしComposerはOpenQASM2.0は、編集可能であるため、OpenQASM2.0を記述出来るとプログラミング出来ます。但しComporser下部のグラフは、5Qbit以上は表示出来ません。表示出来ないだけで量子コンピュータでの実行は可能です。

Composer右上の「Setup and run」で動かしたい量子コンピュータを選択し、量子コンピュータ実機での実行をさせることが可能です。

※現在のComposerの問題点としては、IBM Quantumの実機環境しか使えないので、多くの人がタスクを投げるとIBM Quantumが数分から数時間のWait状態となることです。残念ながら体感的なスピード感は味わえません。
image.png

image.png
OpenQASM2.0へ変換したShorのアルゴリズムをコピペした例
Setup and runを実行しても表面上はほとんど何も変わらないので、量子コンピュータ実機で動いたのかを履歴で確認します。下記にログインしてください。このShorのアルゴリズムの計算結果を履歴で確認出来ます。

image.png
Quantum履歴表示:Shorのアルゴリズムは大きいので、Web表示がタイムアウトを多発し安定しませんが、通常のアルゴリズムでは使えると思います。
このように、量子コンピュータの計算をOpenQASM2.0で書いて量子コンピュータで検証させることが可能です。

PythonをOpenQASM2.0に変換したサンプルコードを下記のページに掲載しました。このサンプルコードでIBM Composerから量子コンピュータを使ってみよう!
https://qiita.com/jg1mnv/items/1d9d21ebcadacfb13a4e

2.qBraidを使う

2023年11月末からqBraidと言う現存する量子コンピュータ全てにアクセス可能なGUIツールが提供されています。

引用元:qBraid LabでQiskitを使う手順

https://qiita.com/kifumi/items/0bf725b9686c15201f27

利用するqBraidクラウドマシンのスペックによって、無料、有料が決まってます。利点はIBM Quantumを含む全世界のクラウド型量子コンピュータにアクセス出来ます。まあシステム表示は全て英語ですが、コメントやJupyterNotebook名に日本語も使えます。
また、qBraidログインにはGoogleアカウント連携が使えます。個人のGoogleアカウント利用が禁じられている会社からはメールアドレス認証が良いでしょう。

※Googleアカウント連携のメリットは、GoogleDriveをqBraidからアクセス、マウント出来る事ですが、qBraid自体が、ファイル共有していますので、1つのアカウントでどこからでも同じ環境画面にアクセス出来る事は変わらないので、特にこのメリットを使う事はないと思います。

※ブラウザは、GoogleChrome、MicrosoftEdgeがGoogleアカウントにブラウザ自体ログイン出来てしまう事と、セッションの維持方法が異なる為にqBraidではバックグラウンドでGoogleアカウントログインされてしまい、認証に失敗しますが、画面表面にそのような痕跡が残らないと言うのが不安定になる要因と思われるので、Googleアカウントのログインに縁がないFireFox、Vivaldiなどを使うことで今のところ安定している。2025年1月~2月の毎日起動しているが安定して起動するのでアカウント連携のしがらみがないブラウザはお勧め。ちなみにmacOSのSafariも安定的に起動出来る事を確認している。特にM3以降のMacはPython3の互換性問題があるのでこういったブラウザで利用出来るクラウド環境はMacやLinuxでも開発出来るメリットがあります。

image.png
このLaunchLab

image.png

image.png
EnvironmentsでADDするPythonセットで「QDC 2024(IBM Quantum Developer Conference)」と言うPython3.11.0のセットを使うと最新のQiskit1.2.4の環境が数分で構築出来ます。JupyterNotebookのシート単位で、このPythonモジュールを切り替えて利用出来ます。これは便利!最近Qiskit1.3.2のセットも追加になりました。このボックスの下部にあるMoreボタンでモジュールの追加も可能です!
image.png
ここでもAdd Package出来ます。この画面がOQC Toshiko用の接続モジュールをインストールした画面です。ここでインストール出来なくてもqBraidのTerminalからインストール出来ます。

私は頑張ってローカルにminiconda環境を作ってしまいましたが、英語という事を除けば、とても手軽に利用出来ますね!(そもそもminicondaのJupyterNotebookは英語しか表示しない)それにIBM含めたほとんどゲート型、アニーリング型など、すべての量子コンピュータに繋げます。もちろん有料のものはそれぞれのサイトで有償契約、支払が必要です。今年(2025年)以降は量子コンピュータにとってそういう時代になったと言う事ですね。

2025年の追加情報:qBraidは、使っているといくつか問題に遭遇しますが、これらを抑えると、最も使いやすい無料のクラウド環境となります。

今のところ確認されている問題は2件です。

1、qBraidはログインしてLaunch Labをクリックするだけだが、すぐに上がって来るはずのJupyterNotebook画面が起動しない。

前提として利用するブラウザが結構重要です。私はMicrosoft Edge、Google Chromeで最初はTryしており、qBraidのGoogleアカウント認証も利用していましたが、実はこれがqBraidの起動が不安定になる原因と推定されます。ブラウザはFireFox、VivaldiなどのブラウザにGoogleアカウント認証が付いていないものを利用し、Googleアカウント連携は利用しない事がqBraid安定起動の条件と思われます。(2024年12月~2025年3月13日時点で安定起動を確認しています。)

また、必ず、起動途中で止まる現象が出ますが、焦らず止まっていることを1~2分確認後、「ブラウザ更新」をすると、止まっていた画面のタブ名がJupyterNotebookまたはqBraid Labと表示され起動します。これで安定的に利用可能になります。

※私は毎回起動時にこの操作をするようになりましたが、安定して使えるようになりました。

image.png

安定起動させる必殺技は、

ここから入り直すことです。入り直しと再描画の2つでほぼ99%起動出来ます。(2ヵ月間ほぼ毎日検証)

2、qBraidのPythonパッケージにモジュールを追加したいがコマンドプロンプトの出し方がわからない。

 ⇒ qBraid Lab画面のメニューでFile⇒New Launcherから新たなJupyterNotebookを表示し、この中のOther⇒「Terminal」アイコンをクリックするとmini condaでもお馴染みのコマンドプロンプトが表示されます。注意が必要なのは、これは仮想環境なので、実際に使っているPython環境がbase環境ではない事です。

image.png

これで量子コンピュータに限らず、いろいろなPython実装を検証出来ます。オンライン学習のPython3演習などと併せての活用も良いと思います。

またPythonモジュールセットはいろいろと選択出来、自分オリジナルのモジュールセットを作ることも出来ます。
正に箱庭状態です。
このqBraidでは世の中で使われている有力な量子コンピュータ全てを利用可能にするモジュールセットが有料でも提供されています。話題のエラー検出まで可能にした量子コンピュータもエントリーされています。

量子コンピュータは未来の技術すぎて関係者も実感がわかなくなっているのですが、今は、こんなに簡単に量子コンピュータに触れるんです!2025年今が始め時ですよ!

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?