【量子コンピュータ101】Pythonで体感する量子コンピューティング

カテゴリー: 量子コンピュータ
ウィッシュリスト Share
Share Course
Page Link
Share On Social Media
コース情報
Curriculum

コースについて

「量子コンピュータ」は量子力学の原理を応用したコンピュータです。量子特有のふるまいである「量子重ね合わせ」や「量子もつれ」といった性質を応用することで、従来のコンピュータで数十年を要する計算をより高速により効率よく実行することが期待されています。

このコースでは、パソコンから、無償で使用できる(2021年1月現在)IBM Quantum サービスを介して、ゲート型量子コンピュータに接続し、Qiskit(オープンソースの量子コンピュータ用のソフトウェア開発キット)を使ったPythonのサンプルコードを使って量子ビットを操作します。

量子コンピュータは量子力学や高度な数学にもとづく技術ですが、このコースでは量子論や数式には触れずにまずは動かしてみることにフォーカスして量子コンピューティングの基礎的なしくみの理解を目指します。

量子コンピュータは難解な量子力学にもとづいているため近寄りがたい印象があるかもしれませんが、講師と一緒に実際に動かしながら量子ゲートを読み解き、そのしくみを探っていきましょう!

【ハンズオン概要】

IBM Quantum Experienceを介してパソコンからゲート型量子コンピュータに接続し、Pythonのサンプルコードを使って量子ビットに代表的なゲート(NOTゲート、アダマールゲート、CNOTゲート)を適用し、量子ビットを「反転」、「重ね合わせ」、「もつれ」状態にします。いずれのハンズオンもパソコンでシミュレーションしてから、実機で量子ビットを操作する手順で実施します。

また、量子コンピュータ版コインフリップゲームを動かすことで、量子コンピュータがその能力を発揮するための重要な要素である「重ね合わせ」の力を実感します。

そして、「量子もつれ」を実機で試すことで、暗号鍵の交換にも利用されている、「もつれ」という、量子力学の不思議な力の一端にも触れます。

実用的な用途の一端に触れるため、セキュアな情報通信に利用できるアルゴリズム、量子テレポーテーションにもチャレンジします。

一連のハンズオンを通して量子ゲートに対する理解を深めるとともに、従来のコンピュータとは全く異なるしくみで動作する量子コンピューティングを体感し、量子コンピュータの理解へのはじめの一歩とします。

【このコースの対象者】

このコースは、量子コンピューティング(量子ゲート方式)を実際に手を動かして体験する、量子コンピュータ初学者のためのコースです。量子コンピューティングに関心を持つITエンジニアの方、量子コンピュータのプログラミングを体験してみたいソフトウェアエンジニアの方に適したコースです。

What Will You Learn?

  • ゲート型量子コンピュータのコンピューティングの基礎的な原理がわかります。
  • 代表的な量子ゲート(NOT, アダマール, CNOT)の動作がわかります。
  • 簡単な量子回路の見方がわかります。
  • キュビット(量子ビット)の表記方法の1つのブロッフォ球の見方が分かります。
  • ゲート型量子コンピュータのキュビットとはなにかを説明できるようになります。
  • キュビットの「重ね合わせ」や「もつれ」とはなにか、その基本を説明できるようになります。
  • キュビットとビットの違いを説明できるようになります。
  • 従来のコンピュータとゲート型量子コンピュータの違いを説明できるようになります。

Course Curriculum

セクション1 このコースについて

  • コース概要
    00:6:47

セクション2 ハンズオン準備
ハンズオンを実施するための環境を構築します。

  • セクション概要
  • Anacondaをダウンロードしよう(Mac)
    00:2:5
  • Anacondaをダウンロードしよう(Windows)
    00:2:13
  • Anacondaをインストールしよう(Mac)
    00:1:33
  • Anacondaをインストールしよう(Windows)
    00:1:26
  • Anacondaを起動しよう(Mac)
    00:00:45
  • Anacondaを起動しよう(Windows)
    00:00:33
  • Qiskitをインストールしよう(Mac)
    00:6:52
  • Qiskitをインストールしよう(Windows)
    00:7:47

セクション3 量子コンピュータとは
量子コンピュータの概要を解説します。

  • セクション概要
  • 身近なコンピュータCPUの基本
    00:13:38
  • 量子コンピュータ概要
    00:5:37
  • ゲート型量子コンピュータ概要
    00:8:56
  • ハンズオンで使用する量子コンピュータ概要
    00:4:18
  • ゲート型量子コンピュータのプログラミング言語OpenQASM
    00:1:54

セクション4 ハンズオンの概要とノートブックのダウンロード
このコースで実施するハンズオンの概要をお話します。また、サンプルプログラムをダウンロードします。

  • セクション概要
  • ハンズオンの構成と概要
    00:1:37
  • ノートブックのダウンロード
    00:1:11

セクション5 NOTゲートで量子の状態を反転させよう
量子の波の性質や確率、ブロッフォ球などに触れた後、量子コンピュータの実機でNOTゲートを動かします。

  • はじめに
    00:1:22
  • NOTゲートと量子の波の性質について
    00:6:38
  • 確率の波とブロッホ球
    00:4:27
  • NOTゲートを動かそう(シミュレーション)
    00:10:28
  • IBM Q Experienceトークンのパソコンへの保存
    00:4:7
  • NOTゲートを動かそう(量子コンピュータ)
    00:11:12

セクション6 アダマールゲートでキュビットを1と0の「重ね合わせ」状態にしよう
アダマールゲートによるキュビットの操作イメージをおさえます。また、ハンズオンを通してキュビット特有の性質である「重ね合わせ」を体感します。

  • セクション概要
  • アダマールゲートと波の干渉
    00:4:52
  • アダマールゲートを動かしてキュビットを重ね合わせ状態にしよう(シミュレーション)
    00:6:57
  • アダマールゲートを動かしてキュビットを重ね合わせ状態にしよう(量子コンピュータ)
    00:6:14
  • 重ね合わせキュビットとアダマールゲート
    00:5:9
  • アダマールゲートで重ね合わせ状態のキュビットの状態を変えよう(シミュレーション)
    00:6:13
  • アダマールゲートで重ね合わせ状態のキュビットの状態を変えよう(量子コンピュータ)
    00:9:46

セクション7 量子コインフリップゲームのトリック「重ね合わせ」の力を実感
量子コンピュータのコインフリップゲームのトリックを見ることで、キュビットの操作をより実感します。

  • セクション概要
  • コインフリップゲームの概要
    00:3:58
  • 量子コインフリップゲームを動かしてみよう(シミュレーション)
    00:11:24
  • 量子コインフリップゲームを動かしてみよう(量子コンピュータ)
    00:8:2
  • コインフリップトリックを紐解こう
    00:5:40

セクション8 キュビットを量子もつれ状態にしよう
キュビット特有の性質である「もつれ」のしくみをおさえます。また、実際にキュビットにゲートを適用してもつれ状態にさせることで、量子コンピューティングを体感します。

  • セクション概要
  • キュビットの「量子もつれ」とは
    00:3:19
  • 量子もつれを作るCNOT
    00:8:3
  • 2つのキュビットをもつれさせてみよう(シミュレーション)
    00:5:11
  • 2つのキュビットをもつれさせてみよう(量子コンピュータ)
    00:4:57

セクション9 量子テレポーテーションにチャレンジ
実用的な用途の一端に触れるため、セキュアな情報通信に利用できるアルゴリズム、量子テレポーテーションに挑戦してみます。

  • セクション概要
  • 量子テレポーテーション概要
    00:8:12
  • 量子テレポーテーション(シミュレーション)
    00:17:37
  • 量子テレポーテーション(量子コンピュータ)
    00:10:40
  • ステップバイステップ量子テレポーテーション
    00:19:15
  • セクションのまとめ
    00:3:29

セクション10 コースのまとめ
このコースで体験したことをふり返ります。

  • プログラミング言語の歴史から見た量子コンピューティングの今
    00:4:34
  • コースのまとめ
    00:4:37
¥7800

要件

  • 必須ではありませんが、プログラミング経験があると理解しやすいと思います。
  • IBMidのアカウント登録が必要です。
  • パソコンに無償版のAnaconda NavigatorおよびJupyter Notebookをインストールしていただきます。

Audience

  • 最新のコンピュータ・テクノロジーに触れてみたい方
  • ゲート型量子コンピュータに関心を持つ量子コンピュータ初学者のITエンジニアの方
  • ゲート型量子コンピュータのプログラミングを体験してみたい量子コンピュータ初学者のソフトウェアエンジニアの方