オープンソースCirqフレームワークによる量子コンピューティングの紹介

私たちが議論を始めようとしていることをタイトルが示唆しているように、この記事は、科学技術研究を加速するために、Quantum Computingにどのくらい近づいたか、そしてどこに向かっているかを理解する努力です。サーキット

まず、量子コンピューティングの世界を紹介します。 Cirqが将来のQuantum Computingで重要な役割を果たすようになるかどうかを検討する前に、同じことの背後にある基本的な考え方を説明するために最善を尽くします。 ご存知かもしれませんが、Cirqはこの分野で最新のニュースを発表してきました。このOpen Scienceの記事では、その理由を探ります。

Quantum Computingとは何かについて始める前に、Quantumという用語、つまり既知の最小の実体を指す素粒子について知ることが不可欠です。 Quantumという単語はラテン語のQuantusに基づいています。これは、この短いビデオで説明されているように、「どの程度」という意味です。

最初にそれをClassical Computingと比較することによって、Quantum Computingを理解することはより簡単になるでしょう。 クラシックコンピューティングとは、今日の従来のコンピュータがどのように動作するように設計されているかを指します。 あなたが今この記事を読んでいるデバイスは、Classical Computing Deviceと呼ぶこともできます。

古典的なコンピューティング

クラシカルコンピューティングは、従来のコンピュータがどのように機能するのかを説明するもう1つの方法です。 それらはバイナリシステムを介して動作します。つまり、情報は1か0のどちらかを使って格納されます。

コンピュータ内部の文字通りの用語では、トランジスタはオン(1)またはオフ(0)のいずれかです。 入力した情報がすべて0と1に変換されるため、コンピューターはその情報を理解して保存できます。 すべてが0と1の組み合わせの助けを借りて表現されています。

量子コンピューティング

一方、Quantum Computingは、Classical Computingのような「オンまたはオフ」モデルには従いません。 代わりに、重ね合わせとエンタングルメントと呼ばれる2つの現象を利用して複数の状態の情報を同時に処理できるため、はるかに速い速度でコンピューティングが高速化され、情報ストレージの生産性が向上します。

重ね合わせともつれは同じ現象ではないことに注意してください。

それで、もし私たちが古典的計算にビットを持っていれば、それから量子計算の場合には、代わりにキュビット(または量子ビット)があるでしょう。 両者の大きな違いについてもっと知るためには、説明のために上の写真が得られたところからこのページをチェックしてください。

量子コンピュータは私達の古典的なコンピュータを取り替えるつもりはない。 しかし、私たちの古典的なコンピュータでは決して達成できない、そしてそれが量子コンピュータが非常に有能であることを証明するであろうということは確かに面倒な仕事があります。 次のビデオでは、量子コンピュータがどのように動作するかについても説明しながら、同じことを詳しく説明しています。

これまでのQuantum Computingの進歩に関する包括的なビデオ。

騒々しい中間スケール量子

ごく最近更新された研究論文(2018年7月31日)によると、「ノイズの多い」という用語は、キュビットの制御が不完全なために不正確な値が生じるために不正確さを意味します。 この不正確さが、近いうちにQuantumデバイスが達成できることに重大な制限がある理由です。

「中規模」とは、今後数年間で利用可能になる量子コンピュータのサイズを指し、量子ビット数は50から数百の範囲になります。 最も強力な既存のデジタルスーパーコンピュータを使用してブルートフォースでシミュレートできるものを超えているため、50キュービットは重要なマイルストーンです。 こちらの論文を読んでください。

Cirqの出現により、多くのことが変わりつつあります。

Cirqとは何ですか?

Cirqは、私達が今話したばかりの、ノイズのある中間スケール量子(NISQ)回路を作成、編集、そして呼び出すためのpythonフレームワークです。 言い換えれば、Cirqは、量子コンピューティングにおける精度の向上とノイズの低減という課題に取り組むことができます。

Cirqは必ずしも実行に実際のQuantum Computerを必要としません。 Cirqは、シミュレータのようなインタフェースを使って量子回路シミュレーションを実行することもできます。

Cirqは、最初のユーザーの1人がZapataで、昨年Harvard大学のQuantum Computingに焦点を当てた科学者たちによって結成され、徐々にペースを上げています。

Linux上のCirqを始めよう

Open Source Cirqライブラリの開発者はvirtualenvのような仮想python環境へのインストールを推奨します。 Linux用の開発者用インストールガイドはこちらにあります。

しかし、次の手順で、Ubuntu 16.04システムに直接Python 3用のCirqをインストールしてテストすることに成功しました。

UbuntuにCirqをインストールする

まず、Cirqをインストールするにはpipまたはpip3が必要です。 PipはPythonパッケージのインストールと管理に推奨されるツールです。

Python 3.xバージョンの場合、Pipは次のコマンドでインストールできます。

sudo apt-get install python3-pip 

Python 3パッケージは以下からインストールできます。

 pip3 install 

Python 3用のPip 3を使ってCirqライブラリをインストールしました。

 pip3 install cirq 

印刷とPDF生成を有効にする(オプション)

pipでインストールできないオプションのシステム依存関係は、次のものでインストールできます。

 sudo apt-get install python3-tk texlive-latex-base latexmk 
  • python3-tkは、プロット機能を有効にするPython独自のグラフィックライブラリです。
  • texlive-latex-baselatexmkは PDFライティング機能を有効にします。

その後、次のコマンドとコードでCirqのテストに成功しました。

 python3 -c 'import cirq; print(cirq.google.Foxtail)' 

結果は次のようになりました。

Cirq用にPycharm IDEを設定する

同じ結果をテストするために、Ubuntu上でPython IDE PyCharmも構成しました。

LinuxシステムにCirq for Python3をインストールしたので、IDE設定でプロジェクトインタプリタへのパスを次のように設定します。

 /usr/bin/python3 

上記の出力では、先ほど設定したプロジェクトインタプリタへのパスが、テストプログラムファイル(test.py)へのパスと一緒に表示されていることがわかります。 終了コード0は、プログラムがエラーなしで正常に実行を終了したことを示します。

それで、それはあなたがPythonでプログラミングを始めて、そして量子回路をシミュレートするためにCirqライブラリをインポートすることができるすぐに使えるIDE環境です。

Cirqを始めよう

まずは、CirqのGithubページで公開されている例を見てください。

開発者は、このチュートリアルをGitHubに含めてCirqの学習を始めました。 あなたがQuantum Computingを学ぶことに真剣であるならば、彼らはNielsenとChuangによる「Quantum Computation and Quantum Information」と呼ばれる優れた本を推薦します。

OpenFermion-Cirq

OpenFermionは、量子コンピュータでのシミュレーションのためにフェルミオン系の表現(Quantum Chemistryを含む)を取得および操作するためのオープンソースライブラリです。 フェルミオン系は、粒子物理学によれば、フェルミディラック統計に従うフェルミオンの生成に関連しています。

OpenFermionは、化学者やQuantum Chemistryに関わる研究者のための優れた実践ツールとして歓迎されています。 量子化学の主な焦点は、化学モデルの物理モデルと実験における量子力学の応用です。 量子化学は、分子量子力学とも呼ばれます。

Cirqの登場により、OpenFermionは、Cirqを使用してQuantumシミュレーションアルゴリズム用の回路をコンパイルおよび構成するためのルーチンおよびツールを提供することによって、その機能を拡張することが可能になりました。

Google Bristlecone

2018年3月5日、Googleはロサンゼルスで開催された毎年恒例のAmerican Physical Societyの会議で、新しいQuantumプロセッサであるBristleconeを発表しました。 ゲートベースの超伝導システムは、量子シミュレーション、最適化、および機械学習のアプリケーションとともに、システムのエラー率とGoogleの量子ビット技術のスケーラビリティを研究するためのテストプラットフォームを提供します。

近い将来、グーグルは72キュビットのBristlecone Quantumプロセッサクラウドをアクセス可能にしたいと考えています。 Bristleconeは徐々にClassical Supercomputerが合理的な時間内に完了することができないだろうというタスクを実行することができるようになるでしょう。

Cirqは研究者がBristleconeのプログラムをクラウド上で直接書くことをより簡単にし、リアルタイムのQuantumプログラミングとテストのための非常に便利なインターフェースとして役立つでしょう。

Cirqは私たちに次のことを可能にします。

  • 量子回路の微調整制御
  • ネイティブゲートを使用してゲート動作を指定します。
  • 装置のゲートを適切に置きます。
  • これらの門のタイミングを決めなさい。

Cirqに関するオープンサイエンスの展望

CirqがGitHubのオープンソースであることを私たちが知っているように、オープンソース科学コミュニティ、特にQuantum Researchに焦点を当てているコミュニティへの追加は、エラー率を減らす新しい方法を開発することによって今日のQuantum Computingにおける現在の課題を解決するために効率的に協力できるそして既存のQuantumモデルの精度を向上させます。

Cirqがオープンソースモデルに従わなかったならば、物事は間違いなくもっとずっと挑戦的だったでしょう。 大きなイニシアチブは見逃されていたでしょうし、私たちは量子コンピューティングの分野で一歩近づいたことはなかったでしょう。

概要

最後にまとめると、最初に量子コンピューティングの概念を既存のクラシックコンピューティングの手法と比較して紹介し、その後昨年以降の量子コンピューティングの最近の開発上の更新に関する非常に重要なビデオを紹介しました。 それから我々は簡単にCircularが特に構築されているものである、騒々しい中間スケール量子について議論した。

UbuntuシステムにCirqをインストールしてテストする方法を見ました。 また、IDE環境でのインストールの有用性をテストし、いくつかのリソースを使って概念を学びました。

最後に、私達はまたCirqがQuantum Computingの研究の発展においてどうやって本質的な利点となるかという二つの例、すなわちOpenFermionとBristleconeを見ました。 私たちはCirqについてのいくつかの考えをOpen Science Perspectiveで強調することによって議論を終えました。

Cirqを使った量子コンピューティングについて、わかりやすい方法で紹介してください。 あなたが同じことに関連したフィードバックをお持ちの場合は、コメント欄にお知らせください。 読んでくれてありがとう、そして我々は次のOpen Scienceの記事であなたに会えるのを楽しみにしている。

推奨されます

UbuntuとLinux MintにJavaをインストールする方法
2019
42ドル相当のLinuxシェルスクリプティングeBookを学ぶ
2019
中国政府、Ubuntu Kylinでオープンソースを推進
2019