Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
オンラインワークショップ資料
Search
hiroki8080
January 12, 2017
Programming
0
200
オンラインワークショップ資料
量子コンピュータもどきをつくろう第1回の資料です。
hiroki8080
January 12, 2017
Tweet
Share
More Decks by hiroki8080
See All by hiroki8080
オンラインワークショップ資料
hiroki8080
0
220
オンラインワークショップ資料
hiroki8080
0
240
ワークショップまとめ資料3
hiroki8080
0
160
ワークショップまとめ資料2
hiroki8080
0
140
ワークショップまとめ資料
hiroki8080
0
200
Other Decks in Programming
See All in Programming
RDoc meets YARD
okuramasafumi
4
170
AIでLINEスタンプを作ってみた
eycjur
1
230
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
1
430
Reading Rails 1.0 Source Code
okuramasafumi
0
190
ProxyによるWindow間RPC機構の構築
syumai
3
1.2k
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.4k
デザイナーが Androidエンジニアに 挑戦してみた
874wokiite
0
410
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
110
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
300
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
370
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
530
Rancher と Terraform
fufuhu
2
400
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Building an army of robots
kneath
306
46k
Designing for humans not robots
tammielis
253
25k
Writing Fast Ruby
sferik
628
62k
GraphQLとの向き合い方2022年版
quramy
49
14k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
Transcript
オンライン ワークショップ テーマ:量子コンピュータもどきをつくろう
目次 概要 基礎情報① 基礎情報② 最近の動向 どうやって量子コンピュータもどきを作るか
概要 人工知能の開発での活用が期待される量子コンピュータの仕組みについて勉強 します。 また、量子物理学なんかは全くわからない所から量子コンピュータもどきが作れ ないか模索します。 (相当難しいので何も出来上がらないかもしれません。)
基礎情報① • 従来のコンピュータ→1と0でどちらかの状態を保持 • 量子コンピュータ→1と0の両方の状態を保持 • 1と0の両方の状態を観測するとどちらの値なのかが決まるらしい • (シュレディンガーの猫っぽい) •
全ての状態を保有するのでどれが正しいかを探すだけでよい • 例えば、最大値を求める計算は少ない回数で済むが、組み合わせを 求める計算は回数が大きくなるため、従来のコンピュータではどうして も時間がかかってしまう • 量子コンピュータなら簡単にいうと複数の状態を同時に計算できるよ うになるので、速度が早い • 参考:http://codezine.jp/article/detail/9491 • 参考:http://gigazine.net/news/20151210-quantum-computers- explained/
基礎情報② • 量子コンピュータのアルゴリズムはいくつかあるが、グローバーのア ルゴリズムが最適らしい? • PythonのSymPyにグローバーのアルゴリズムの実装がある • 量子コンピュータ用のプログラミング言語もある • 有名なのはQCL
• 参考: https://ja.wikipedia.org/wiki/%E3%82%B0%E3%83%AD %E3%83%BC%E3%83%90%E3%83%BC%E3%81%AE %E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA %E3%82%BA%E3%83%A0 • 参考: http://docs.sympy.org/dev/modules/physics/quantum/grover.html
最近の動向 • D-Wave Systemsが商用量子コンピュータを発売 • http://www.dwavesys.com/ • IBMが誰もが量子コンピュータを実験できるサービスを公開 • http://www.research.ibm.com/quantum/
どうやって量子コンピュータもどきを作るか • 量子の挙動を実装 • 観測の仕組みを実装 • 結果算出の仕組みを実装 • 現状の課題(仮) •
アルゴリズムの計算式がさっぱりわからない • とりあえずSymPyを使えば良さそう • 結果の読み方、算出法がわからない • ブラケット記法の読み方がわかれば・・ • グローバーのアルゴリズムで求められるのはベクトルの集 合?みたいなので、並列計算をすれば良い??