Cirq:NISQ型量子コンピュータのためのオープンソースフレームワーク

Cirq:NISQ型量子コンピュータのためのオープンソースフレームワーク

1.Cirq:NISQ型量子コンピュータのためのオープンソースフレームワークまとめ

・Googleが量子コンピュータのシミュレーションが出来るフレームワークを発表
・Cirqと名付けられたこのフレームワークはPythonで実装されている
・将来的にはGoogleの量子プロセッサであるBristleconeプロセッサ上で動くようになる予定

2.Cirqとは?

以下、ai.googleblog.comの「Announcing Cirq: An Open Source Framework for NISQ Algorithms」の意訳です。

ここ数年、量子コンピューティングは、量子ハードウェアの開発だけでなく、量子アルゴリズムの開発においても進歩してきました。

NISQ型量子コンピュータ(Noisy Intermediate Scale Quantum:50~100の量子ビットと高性能な量子ゲートを持つ量子コンピュータ)が利用可能になるにつれて、これらの量子コンピュータのパワーを有効活用する事ができるアルゴリズムの開発はますます重要になっています。

しかし、NISQプロセッサで利用可能な量子アルゴリズムを設計する際に共通する問題は、量子コンピュータの制限の中でその性能をどれだけ引き出す事ができるかです。アルゴリズムとハードウェア間の貧弱なマッピングが引き起こすオーバーヘッドではありません。

いくつかの量子プロセッサは、複雑な幾何学的制約等を有し、これらを何とかしなければ量子計算が不完全になるか、間違えます。

本日、「量子ソフトウェアと量子コンピュータによる機械学習(QSML:Quantum Software and Quantum Machine Learning)」の第1回国際ワークショップで、Google AI QuantumチームがNISQ型コンピュータのオープンソースPythonフレームワークであるCirqのパブリックアルファを発表しました

Cirqは最近の問題に焦点を当てており、NISQ量子コンピュータが実用上重要な計算上の問題を解決できるかどうかを研究者が理解する事を助けます。CirqはApache 2のライセンスで提供されており、貴方は商用またはオープンソースのパッケージにCirqを変更または埋め込むことができます。

Cirqをインストールすると、研究者は特定の量子プロセッサ用に量子アルゴリズムを書くことができます。 Cirqを使うとユーザは、量子回路に対する微調整、ネイティブゲートを使ったゲート動作の指定、デバイスへの適切なゲートの配置、量子ハードウェアの制約内でのこれらのゲートタイミングのスケジューリングを行う事ができます。

データ構造は、ユーザがNISQアーキテクチャを最大限に活用できるように、量子回路の書き込みとコンパイルに最適化されています。

Cirqはこれらのアルゴリズムをローカル環境のシミュレータ上で実行することをサポートし、将来の量子ハードウェアまたはクラウドを介してより大きなシミュレータに容易に移行きるように設計されています。

また、Cirqベースのアプリケーションの一例であるOpenFermion-Cirqのリリースを発表しています。OpenFermionは化学問題を扱う量子アルゴリズムを開発するためのプラットフォームであり、OpenFermion-Cirqは量子シミュレーションアルゴリズムをCirqにコンパイルするオープンソースライブラリです。

新しいライブラリは、量子化学問題を扱う最新の研究である低深度量子アルゴリズムを使用し、ユーザーが化学的な問題の詳細ではなく、高度に最適化された量子回路の問題に移行できるようにします。例えば、このライブラリを使用すると、分子や複雑な材料の特性をシミュレートするための量子アルゴリズムを簡単に構築できます。

量子コンピュータの潜在能力を最大限に発揮させるためには、強力な業界横断的および学術的な共同作業が必要です。Cirqを構築するにあたり、私たちは初期のテスターと協力して、NISQコンピュータのアルゴリズム設計のフィードバックと洞察を得ました。これらの早期テスターとの共同作業で得られたCirqの機能例を以下に示します。

・Zapata Computing
量子オートエンコーダのシミュレーション(サンプルコード、ビデオチュートリアル)

・QC Ware
QAOAの実装とQC WareのAQUAプラットフォームへの統合(サンプルコード、ビデオチュートリアル)

・Quantum Benchmark
ハードウェア機能の評価と拡張のためにTrue-Qソフトウェアツールの統合(ビデオチュートリアル)

・Heisenberg Quantum Simulations
Andersonモデルのシミュレーション

・Cambridge Quantum Computing
独自の量子コンパイラの統合ticket(ビデオチュートリアル)

・NASA
QAOAのためのアーキテクチャ対応コンパイラ(スライド)と量子コンピュータのシミュレータ(スライド)

CirqがどのようにNISQアルゴリズムを可能にしているかの詳細については、初期テスターが実装した多くのサンプルソースコードを参照してください。

現在、Google AI QuantumチームはCirqを使用してGoogleのBristleconeプロセッサ上で動作する回路を作成しています。将来的には、このプロセッサをクラウドで利用できるようにする予定であり、Cirqはユーザーがこのプロセッサ用のプログラムを書くためのインターフェイスになります。

その間、CirqはNISQアルゴリズム開発者と研究者の生産性をどこにでも向上させることを願っています。 CirqとOpenFermion-CirqのGitHubリポジトリを参照してください。
プログラムの修正の提案も歓迎します!

3.Cirq:NISQ型量子コンピュータのためのオープンソースフレームワーク関連リンク

1)ai.googleblog.com
Announcing Cirq: An Open Source Framework for NISQ Algorithms