投稿日
量子コンピュータチュートリアル 初級編
Qniチームは、ブラウザ上で量子コンピュータプログラミングを手軽に学べる「Qniチュートリアル初級編」を公開しました。
チュートリアルの特長は次の3つです。
- 必要最低限の数学しか使いません
- ブラウザですべてできます
- オープンソース、無料です
チュートリアルのターゲットは、量子コンピューター未経験のエンジニアです。現在インターネット上にはさまざまな量子コンピュータチュートリアルや解説記事がすでに溢れています。しかし、高度な数式を使った専門的なものや、逆にたとえ話に終始するあまり要点をつかみにくいものがほとんどです。そこで本チュートリアルでは、使う数式はごく最低限にしつつ、正確さや厳密さを損なわずに量子プログラミングの「いろは」を紹介します。PythonやJavaScriptなどのプログラミング解説記事が読める人であれば、難なく進められるレベルに調整してあります。
チュートリアル内には所どころに “Mini Qni” を使ったハンズオン(実践)が組み込まれています。Mini Qniは、読者がチュートリアルで学んだことをブラウザ上ですぐ実験できるよう、量子コンピュータシミュレータQniをhtmlドキュメント内に埋め込んだ実験環境です。これによって、数式や量子プログラミングライブラリを使った間接的な実験ではなく、「ブラウザ上で直接量子プログラムを触る」ことによって、初心者にとって貴重な試行錯誤の経験を重ねられるようになっています。
チュートリアル全体はGitHubでOSSとして公開しています。チュートリアル中で分からない点やコメントは、GitHub上のIssuesやDiscussionsにフィードバックをお願いします(すでにベータ版読者によって大量のイシューが登録されています)。いただいたフィードバックは、チュートリアル項目の追加や、続く中級編(2022年半ば公開予定)へのアップデートに活かします。
今回は初級編ということで、量子ビットや量子ゲート(量子コンピューターの命令)といった基礎から始まり、超密度符号化や量子テレポーテーションなどの基本的で重要なアルゴリズムまでを扱っています。これを読めば、「量子重ね合わせ」や「量子もつれ」といった量子プログラミングに不可欠な概念と、その基本的な使い方を学べます。