全2368文字
PR

 カナダD-Wave Systemsの「Leap」は同社の量子アニーリング(QA)マシンをインターネット経由で貸し出すサービスである。Leapに登録すれば、誰でもD-Waveマシンで組合せ最適化問題を解くことができる。記者は今回、2つの簡単な問題をD-Waveのマシンで解いてみた。なお、記事で紹介するイジングモデルや使用したソースコードは、東北大学 教授の大関真之氏のYouTubeにおける講義動画を参考にした。

Python環境でマシン利用が可能

 使用に当たっては、まずLeapに登録してQAマシンへのアクセスに必要なAPIトークンの発行を受ける。登録に必要な情報は氏名や所属、利用目的など。5分もかからずに済む。登録したユーザーは1カ月間無料でマシンを計1分間使える。1分間と言うと短く感じるが、簡単な組合せ最適化問題であれば数µ~数ms程度で解が求まるので、数千回は使用することができる。無料プランの他に、研究開発に使ったり、高度な組合せ最適化問題を解いたりするための有料プランもある。マシンは最新機の「D-Wave Advantage」と前機の「D-Wave 2000Q」、さらに古典コンピューターとのハイブリッドソルバー2種の計4種類から選べる。以下の問題では、いずれもAdvantageを使用した。

(a)Google ColaboratoryでD-Waveの量子アニーリングマシンにアクセス
(a)Google ColaboratoryでD-Waveの量子アニーリングマシンにアクセス
[画像のクリックで拡大表示]
(b)誰でも無料で合計1分間D-Waveマシンを使用可能
(b)誰でも無料で合計1分間D-Waveマシンを使用可能
[画像のクリックで拡大表示]
Webブラウザー経由でD-Waveマシンにアクセス可能
D-Waveの量子アニーリングマシンを利用できるサービス「Leap」(https://cloud.dwavesys.com/leap/login/)の使い方の一例(a)と、Leapにログイン後の使用状況を表す画面キャプチャー(b)を示した。D-Wave のソルバーAPIはPython、MATLAB、Cなどのプログラミング言語に対応している。記者は今回、開発環境としてWebブラウザーからPythonを記述・実行する「Google Colaboratory」(https://colab.research.google.com/)を使用した。Leapには、1カ月間無料でD-Waveマシンを1分間使える試用版がある。変数の数が少ない組合せ最適化問題であれば、1000回以上使える(b)。(図:D-Wave SystemsのWebページをキャプチャーして日経クロステックが加筆)

 D-WaveマシンのソルバーAPIは、PythonやMATLAB、Cなどのプログラミング言語に対応しており、今回はWebブラウザーでPythonの実行環境を利用できる米Googleのクラウドサービス「Google Colaboratory」を使う。D-Waveは、Pythonで動く「Ocean」というオープンソースのSDK(ソフトウエア開発キット)を提供している。Ocean経由でマシン実機にアクセスして、組合せ最適化問題を解いていく。