ポッドキャスト

マイクロソフトのVincent van Wingerden氏とのポッドキャスト

29
9月
,
2021

今日のゲストは、マイクロソフトのデータ&AI担当テクニカルアーキテクト、ヴィンセント・ヴァン・ヴィンガーデンさんです。ヴィンセントと私は、量子インスパイアード・コンピューティング、オープンソースのQuantum Katas教育プロジェクトなどについて話しました。

インサイトのページで「ポッドキャスト」を選択すると、その他のエピソードを聴くことができます。

全記録は以下の通り。

ユヴァル・ボーガー(Classiq):こんにちは、ヴィンセント。今日はありがとうございます。

ヴィンセント・ヴァ・ヴィンガーデン(マイクロソフト):こんにちは、ユヴァル。ここに来られてとてもうれしいです。

ユヴァル:よろしくお願いします。あなたは誰で、どんな仕事をしているのですか?

ヴィンセント:私の名前はヴィンセント・ファン・ヴィンガーデンです。マイクロソフトのオランダ法人に勤務しており、データとAIの分野で多忙な日々を送っています。量子コンピュータが登場すれば、基本的に私たちの生活は一変しますが、それだけではなく、量子コンピュータが今日もたらす影響や、量子アルゴリズムで今日達成できることについても、お客様やパートナーにお話ししています。

ユヴァル:顧客のところに行って、量子とは何かを説明し、量子について考えるように説得する必要があると感じますか?それとも、顧客が「量子のことを聞いたので、参入したい」と言い出して、会話が始まることがほとんどですか?

ヴィンセント:どちらのタイプのお客さんもいると思います。つまり、本当に最前線にいる顧客がいる。また、すでにそこにいて、すぐに最も大きな影響を与える顧客もいると思います。例えば、量子コンピューターが利用できるようになれば、化学のような産業が大きく変わるでしょう。一方、量子コンピューターがどれほど自分たちの世界を変えるのか、あるいは自分たちの視点を変えるのか気づいていないお客さまは、私たちや他の誰に対してもそれほど積極的ではないかもしれません。私たちはそのようなお客さまのところに行くのです。

例えば、物流会社がその良い例だと思います。例えば、ある荷物をAからBまでできるだけ効率的に運ぶにはどうすればいいかという輸送ルートの最適化について話している場合、量子コンピュータが大きな違いをもたらすソリューションとは必ずしも見なされません。しかし、量子コンピュータが大きな変化をもたらす可能性のある分野であり、また、古典的なハードウェアで実行可能な量子にインスパイアされたアルゴリズムが、すでに大きな変化をもたらす可能性のある分野でもあるのです。このようなタイプの企業はどちらも存在すると思います。つまり、私たちが積極的にアプローチする企業と、アプローチしてくる顧客です。

ユヴァル:あなたは量子インスパイアード・コンピューティングについて言及しましたね。私はあなたのブログでそれを見ましたが、他の多くの場所でそれを聞いたかどうかはわかりません。それが何なのか説明していただけますか?

ヴィンセント:ええ、もちろんです。量子力学や量子の概念は、科学の分野ではすでに長い間研究されてきた。そして、私たちはすべての仕組みについて理解しています。量子インスパイアードは、量子力学や量子コンピューティングの原理を古典的なハードウェア上で実行するものです。それは例えば、非常に大規模なクラスター上のCPUであったり、FPGAであったりする。例えば、最適化についてもう一度考えてみましょう。先ほどの例、物流に戻ってみましょう。この問題を解くのは非常に難しい。特に、大量の車を所有している場合、最適なルートを求めるのは至難の業です。訪問したい住所がたくさんある場合、最適なルートや最適な配送スケジュールの探索空間は非常に大きくなります。

このようなタイプの問題は、古典的なアルゴリズムで解くことができるが、たいていの場合、最適なルートや最適なスケジュールを見つけるには時間がかかりすぎる。その結果、必ずしも理想的なルートやスケジュールが得られるとは限らない。では、量子コンピュータに何ができるだろうか?量子力学や量子コンピューティングから学んだこれらのコンセプトを、古典的なハードウェア上で実行することができる。そして、基本的にはそのスケジュールを改良することができる。つまり、今スケジュールを作成している間に、より効率的なスケジュールを作成したり、より少ない時間で今と同じくらい効率的なスケジュールを作成したりすることができる。マイクロソフトが公開している参考例ですが、例えば、このテクノロジーを使ってMRIスキャンを作成することができます。

MRI検査は基本的に病院で行われ、特定の関節をスキャンしたり、脳をスキャンしたりする。スキャナーの最適な経路を作るには、いくつかの計算と数学が必要です。量子インスパイアードの最適化テクニックを使えば、問題を解く時間が同じであれば、より効率的なスキャン経路を作成することができます。量子インスパイアードは、量子力学や量子コンピューティングから学んだことを生かせる分野です。また、今すぐにでも始めることができます。Python開発者であれば、これらの素晴らしいアルゴリズムやソルバーを今すぐ利用することができるのです。

ユヴァル:それはデジタル・アニーリングと呼ばれることもあるのですか?量子アニーリングの概念を デジタル・コンピューターで実行することですか?

ヴィンセント:そう。量子アニーラーと同じ目的ですね。

ユヴァル:さて、量子コンピュータの約束の一つは、古典コンピュータよりもはるかに複雑な多次元問題を解くことができるということです。しかし、量子コンピュータにインスパイアされた概念を古典コンピュータで実行すると、量子コンピュータが解決するはずだったのと同じ限界にぶつかることになりませんか?

ヴィンセント:ええ。もちろん、現時点での量子コンピュータは、量子コンピュータほど強力ではありません。ですから、いずれ大規模で耐障害性のある量子コンピュータができれば、今ある量子に触発されたソルバーよりもはるかに効率的になるでしょう。しかし、現時点ではそのような大規模な耐障害性量子コンピューターはありません。ですから、量子力学や量子コンピューターに関する知識を活用したいのであれば、これは素晴らしいツールなのです。また、フォールト・トレラントで大規模な量子コンピュータができるまでにはかなりの時間がかかることを考えると、これはその間の素晴らしいステップとなる。また、このステップのために、人々や企業を準備し、人々を量子の領域に引き込み、ソルバーがどのように新しいタイプのソルバーが、現在使用しているソルバーとは対照的に、すでに大きな利点をもたらすことができるかを理解させる。

ユヴァル:Pythonの開発者は今すぐにでもこれらの最適化を使い始めることができるとおっしゃいましたが、先のことを考えると、量子コンピューティングの利点を利用するためには、概念的な再教育や、プログラミング言語のちょっとした違いによる再教育が必要になるとお考えですか?あなたが教育プロジェクトに携わっていることは知っています。

ヴィンセント:ええ、私はQuantum Katasというプロジェクトに携わっていて、GitHubのオープンソースプロジェクトなんです。github.com/microsoft/quantumkatasに行けば、素晴らしい学習リソースが見つかります。そこで、このプロジェクトの背景と、それが何なのかを少し説明しよう。基本的に、量子カタスは量子コンピューティングのゼロからヒーローになるための練習問題集です。ですから、基本的には完全に最初から始めます。線形代数とその始め方について話しています。数学の部分はすべてPythonで行います。基本的には、特定の概念に慣れてもらうために演習を行い、行列の掛け算や行列の随伴から始めます。量子コンピューティングに関わる数学の基本を学んでもらいます。それから、実際のキュービットについて話し始めます。Qubitはどのように機能するのか?Qubitで何ができるのか?それはもうPythonではできません。

そこで、Q#と呼ばれる言語に切り替えます。これはマイクロソフトのドメイン特化型言語で、ドメイン特化型なので、量子コンピュータをプログラムするために特別に設計されています。つまり、古典的なプログラミングには使用されません。このQ#言語ですが、基本的にマイクロソフトがQ#言語を作り始めた理由は、例えばPythonライブラリを作るのではなく、Q#言語を作り始めたからです。量子コンピュータのプログラミングは、通常のコンピュータのプログラミングとは大きく異なります。そして、Q#という1つの言語があれば、複数のハードウェア・アーキテクチャをターゲットにできるということです。例えば、現在Q#でコードを書き始めると、IonQマシンやAzure QuantumのHoneywellマシンをターゲットにすることができます。

だから量子カタで使っているのはこの言語なんだ。ですから、最初はPythonで数学の概念を学び、それからQ#に移行します。そしてQ#言語から本格的にレベルアップしていきます。つまり、量子ビットとは何かという基本的な概念から始めて、より高度な概念へと進んでいく。ゲートの使い方、測定の仕方、共同測定の仕方、複数の量子ビットの使い方、そして最終的にはアルゴリズム設計へと進みます。グルーバー・アルゴリズムはどう動くのか?Shorアルゴリズムはどう動くのか?そこからさらに高度なテーマへと進んでいく。

つまり、一連のプログラミングの練習です。基本的には、量子コンピューターで人々を動かし、特定のアルゴリズムがどのように機能するのかを教えるために、私たちは基本的にQ#でそのアルゴリズムを書くように求めます。もちろん、それはステップバイステップなので、ゼロから「グローバーのアルゴリズムを書きなさい」というわけではありません。しかし、小さなステップから始め、小さなオラクルを作り始め、グローバー探索を使って、例えば、ある最適解を見つけたり、グローバー探索を使って解を見つけたりします。

つまり、量子コンピュータの世界に人々を引き込み、Q#を使って量子コンピュータをプログラミングする方法を教えようというのがカタスのアイデアなんだ。このプロジェクトは、マリアという私の同僚によって始められました。彼女はもうかなり前からこのプロジェクトに取り組んでいる。彼女は量子カタだけでなく、量子コンピュータのプログラミング方法を人々に教えるために、他のクールなコンセプトにも取り組んでいます。将来的にはいいゲストになるかもしれないね。しかし、カタスの話に戻り、古典的な開発者から量子開発者に変わるべきかどうかという質問に戻ると、最終的にはゲートのプログラミング方法や回路のプログラミング方法を知る必要はないと思います。

現在のように、古典的なコンピューターでプログラミングをする場合、アセンブリコードをプログラムする必要はない。使用するすべてのゲートをプログラムする必要はない。マイクロソフトがQ#でやろうとしていることもそうです。私たちは、高レベルのライブラリ機能を、量子の特定の領域にも追加しようとしています。例えば、化学や機械学習などです。そのため、ゲートを使ったり、難しい低レベルの処理をしたりする必要はなく、より高レベルのライブラリ機能を使うことができます。つまり、人々は最終的に、もちろん仕事のやり方を変える必要はあるが、ゲートレベルで実際に何をすべきかを知る必要はないのだ。

より大規模で耐障害性に優れた量子コンピュータが登場すれば、開発者が量子プログラムを開発するのも少しは簡単になると思います。しかしもちろん、GPUが登場したときのように、新しいライブラリの使い方を学び、量子コンピューターが何をするのかを理解しなければ、量子コンピューターが提供するものをフルに活用することはできません。これは量子コンピューターと比較するのに適していると思う。GPUは、特定のワークロードを高速化するための使い方を学ばなければなりません。量子コンピューターでも同じことが起こると思います。化学であれ物流であれ何であれ、ワークロードを加速させるためにこのアクセラレーターをどう使うかを知る必要がある。量子コンピュータの仕組みを学ぶための素晴らしいツールのひとつが、私たちが構築している量子カタス・プロジェクトです。

ユヴァル:量子の世界に入りたいと考えている人のバックグラウンドとして、どのようなものが望ましいですか?ある企業にアドバイスをしているとして、その企業が「量子チームを立ち上げたい。そのために3人を雇うか、再利用したい。"Pythonができるオープンマインドな優秀なプログラマーがいいのか、量子情報システムの博士号を持っている人がいいのか、それともコンピュータサイエンスではなく物理学を専攻している人がいいのか。

ヴィンセント:そうですね、私にはそのようなバックグラウンドがないので、答えるのが難しい質問だと思います。私は経済学を学びました。しかし、この分野ではオープンマインドであることが非常に重要だと思います。現在、私たちは非常に多くの変化を目の当たりにしていますし、量子の領域でも多くのことが起きています。ですから、もし3人を選ぶとしたら、おそらくそれらの組み合わせになるでしょう。Q#のような新しい言語を学びたい、あるいはPythonのライブラリを学びたいという優れたプログラマーは、本当に量子コンピュータをプログラミングすることができますが、量子力学がボンネットの下でどのように働いているのかをよく理解していることが非常に重要です。

だから、量子コンピューターができること、アルゴリズムを活用する方法、そして実際に量子アルゴリズムを構築する方法を本当に理解している人がいれば、例えば量子力学の博士号を持っているような人は、現時点ではプログラマーよりも簡単で、より適していると思います。だから、その両方を組み合わせれば完璧だと思う。量子の現状では、どちらの職業も量子プログラマーになれると思います。つまり、バックグラウンドに関係なく、チュートリアルの数やインターネット上で入手可能な知識の量は非常に多いので、どちらも優れた量子プログラマーになれるのです。

ユヴァル:アカデミアからプロダクションに移行する将来を少し考えて、2~3年のタイムフレームで考えてみましょう。その間に量子力学で真のビジネス価値を提供できるアプリケーションとして、あなたが最も期待しているものは何ですか?

ヴィンセント:ええ、2、3年という時間枠の中で、いろいろなことが起こるでしょう?より大きな量子コンピュータが登場するのは素晴らしいことです。しかし、おそらく本格的なフォールトトレラントにはまだならないでしょう。そのため、多少の誤差を許容するアルゴリズムを開発する必要があります。このようなアルゴリズムはエラーを許容し、量子コンピュータの価値を引き出すことができます。しかし、誰もが待ち望んでいるような大規模なアプリケーション、例えば、ショーのアルゴリズムをその時間枠内で実行するのは難しいでしょう。

ですから、この2、3年という時間枠は、まだ多くの学界、多くの人々をこの分野に取り込み、大規模な量子コンピューターが完成した後の準備を整える期間であると同時に、量子にインスパイアされた期間でもあると思います。大きな一歩が踏み出されるまでの間に、私たちはどのようにこの時間を使い、このステップを利用して、この技術を活用することができるのでしょうか?そして、量子コンピュータという大きなスタイルが実現すれば、もちろん、誰もがショールのアルゴリズムが光を放ち、最初の鍵を破り始めるのを待っている。しかし、その準備が整うまでにはまだ時間がかかると思います。

ユヴァル:わかりました。あなたの経歴をお聞きしたいのですが、経済学とおっしゃいましたが、現在は量子を研究されていますね。最もエキゾチックな場所はどこですか?

ヴィンセント:うん、僕は自由な時間に旅行するのが好きなんだ。今のところ、一番エキゾチックな場所はグリーンランドで、10日間ほどハイキングの旅をしたんだ。アラスカでは、人里離れた場所で、僕らとクマ数頭を見ただけだった。

ユヴァル:それはすごい。量子力学的な意味での複数の場所について考えると、巡回セールスマンや巡回ハイカーの問題が思い浮かびます。今日のコンピュータの処理能力を考えると、どのくらいの規模のTSP問題を解くことができると思いますか?

ヴィンセント:量子コンピュータのことですか、それとも従来のコンピュータですか?

ユヴァル:量子コンピューターについて考えていたんだが、両方に答えてくれて嬉しいよ。

ヴィンセント:では量子コンピュータから始めましょう。TSP問題(巡回セールスマン問題)の最大の問題は、そこまで到達しません。すべての可能な経路の情報を暗号化するには、量子ビットが必要です。だから、この問題を解くには...かなり小さくなるでしょう。つまり、10か所か20か所くらいで、それほど大きくはないでしょう。だから、従来のコンピューターでも解決できるだろう。正直に言うと、これは量子に触発された最も効率的な使い方ではありませんが、価値を示す最も簡単な方法だと思います。

というのも、例えば10~15%効率的なルートを作ることができれば、車の走行距離や船の航行距離がどれだけ減るかを想像してみてください。

ユヴァル:TSPに関する最後の質問ですが、話が終わりに近づいたので、量子インスパイアード・コンピューティングで50ストップのTSPの解を得るのに、どれくらいの時間がかかりますか?

ヴィンセント:ブログの記事にも書いたと思うんだけど、僕の頭の中では20秒くらいだったと思う。でも、調べないといけないけど、圧倒的に効率的な実装ではなかった。でも、量子コンピューティングの使い方をみんなに知ってもらうにはいい方法だったと思う。

ユヴァル:私もそう思います。ではヴィンセント、クオンタムカタやあなたがやっている他の仕事についてもっと知りたい人は、どうすればあなたと連絡を取ることができますか?

ヴィンセント:そう。TSPの問題やその他のことを書いているブログで、Vincent.frlと呼ばれています。でも、僕と連絡を取るにはLinkedInを使うのが一番だと思う。LinkedInのVincent van Wingerdenという名前は、おそらくポッドキャストのタイトルにも入っていると思います。それが僕と連絡を取る一番簡単な方法だろう。

ユヴァル:素晴らしい。今日はありがとうございました。

ヴィンセント:もちろん、どういたしまして。


今日のゲストは、マイクロソフトのデータ&AI担当テクニカルアーキテクト、ヴィンセント・ヴァン・ヴィンガーデンさんです。ヴィンセントと私は、量子インスパイアード・コンピューティング、オープンソースのQuantum Katas教育プロジェクトなどについて話しました。

インサイトのページで「ポッドキャスト」を選択すると、その他のエピソードを聴くことができます。

全記録は以下の通り。

ユヴァル・ボーガー(Classiq):こんにちは、ヴィンセント。今日はありがとうございます。

ヴィンセント・ヴァ・ヴィンガーデン(マイクロソフト):こんにちは、ユヴァル。ここに来られてとてもうれしいです。

ユヴァル:よろしくお願いします。あなたは誰で、どんな仕事をしているのですか?

ヴィンセント:私の名前はヴィンセント・ファン・ヴィンガーデンです。マイクロソフトのオランダ法人に勤務しており、データとAIの分野で多忙な日々を送っています。量子コンピュータが登場すれば、基本的に私たちの生活は一変しますが、それだけではなく、量子コンピュータが今日もたらす影響や、量子アルゴリズムで今日達成できることについても、お客様やパートナーにお話ししています。

ユヴァル:顧客のところに行って、量子とは何かを説明し、量子について考えるように説得する必要があると感じますか?それとも、顧客が「量子のことを聞いたので、参入したい」と言い出して、会話が始まることがほとんどですか?

ヴィンセント:どちらのタイプのお客さんもいると思います。つまり、本当に最前線にいる顧客がいる。また、すでにそこにいて、すぐに最も大きな影響を与える顧客もいると思います。例えば、量子コンピューターが利用できるようになれば、化学のような産業が大きく変わるでしょう。一方、量子コンピューターがどれほど自分たちの世界を変えるのか、あるいは自分たちの視点を変えるのか気づいていないお客さまは、私たちや他の誰に対してもそれほど積極的ではないかもしれません。私たちはそのようなお客さまのところに行くのです。

例えば、物流会社がその良い例だと思います。例えば、ある荷物をAからBまでできるだけ効率的に運ぶにはどうすればいいかという輸送ルートの最適化について話している場合、量子コンピュータが大きな違いをもたらすソリューションとは必ずしも見なされません。しかし、量子コンピュータが大きな変化をもたらす可能性のある分野であり、また、古典的なハードウェアで実行可能な量子にインスパイアされたアルゴリズムが、すでに大きな変化をもたらす可能性のある分野でもあるのです。このようなタイプの企業はどちらも存在すると思います。つまり、私たちが積極的にアプローチする企業と、アプローチしてくる顧客です。

ユヴァル:あなたは量子インスパイアード・コンピューティングについて言及しましたね。私はあなたのブログでそれを見ましたが、他の多くの場所でそれを聞いたかどうかはわかりません。それが何なのか説明していただけますか?

ヴィンセント:ええ、もちろんです。量子力学や量子の概念は、科学の分野ではすでに長い間研究されてきた。そして、私たちはすべての仕組みについて理解しています。量子インスパイアードは、量子力学や量子コンピューティングの原理を古典的なハードウェア上で実行するものです。それは例えば、非常に大規模なクラスター上のCPUであったり、FPGAであったりする。例えば、最適化についてもう一度考えてみましょう。先ほどの例、物流に戻ってみましょう。この問題を解くのは非常に難しい。特に、大量の車を所有している場合、最適なルートを求めるのは至難の業です。訪問したい住所がたくさんある場合、最適なルートや最適な配送スケジュールの探索空間は非常に大きくなります。

このようなタイプの問題は、古典的なアルゴリズムで解くことができるが、たいていの場合、最適なルートや最適なスケジュールを見つけるには時間がかかりすぎる。その結果、必ずしも理想的なルートやスケジュールが得られるとは限らない。では、量子コンピュータに何ができるだろうか?量子力学や量子コンピューティングから学んだこれらのコンセプトを、古典的なハードウェア上で実行することができる。そして、基本的にはそのスケジュールを改良することができる。つまり、今スケジュールを作成している間に、より効率的なスケジュールを作成したり、より少ない時間で今と同じくらい効率的なスケジュールを作成したりすることができる。マイクロソフトが公開している参考例ですが、例えば、このテクノロジーを使ってMRIスキャンを作成することができます。

MRI検査は基本的に病院で行われ、特定の関節をスキャンしたり、脳をスキャンしたりする。スキャナーの最適な経路を作るには、いくつかの計算と数学が必要です。量子インスパイアードの最適化テクニックを使えば、問題を解く時間が同じであれば、より効率的なスキャン経路を作成することができます。量子インスパイアードは、量子力学や量子コンピューティングから学んだことを生かせる分野です。また、今すぐにでも始めることができます。Python開発者であれば、これらの素晴らしいアルゴリズムやソルバーを今すぐ利用することができるのです。

ユヴァル:それはデジタル・アニーリングと呼ばれることもあるのですか?量子アニーリングの概念を デジタル・コンピューターで実行することですか?

ヴィンセント:そう。量子アニーラーと同じ目的ですね。

ユヴァル:さて、量子コンピュータの約束の一つは、古典コンピュータよりもはるかに複雑な多次元問題を解くことができるということです。しかし、量子コンピュータにインスパイアされた概念を古典コンピュータで実行すると、量子コンピュータが解決するはずだったのと同じ限界にぶつかることになりませんか?

ヴィンセント:ええ。もちろん、現時点での量子コンピュータは、量子コンピュータほど強力ではありません。ですから、いずれ大規模で耐障害性のある量子コンピュータができれば、今ある量子に触発されたソルバーよりもはるかに効率的になるでしょう。しかし、現時点ではそのような大規模な耐障害性量子コンピューターはありません。ですから、量子力学や量子コンピューターに関する知識を活用したいのであれば、これは素晴らしいツールなのです。また、フォールト・トレラントで大規模な量子コンピュータができるまでにはかなりの時間がかかることを考えると、これはその間の素晴らしいステップとなる。また、このステップのために、人々や企業を準備し、人々を量子の領域に引き込み、ソルバーがどのように新しいタイプのソルバーが、現在使用しているソルバーとは対照的に、すでに大きな利点をもたらすことができるかを理解させる。

ユヴァル:Pythonの開発者は今すぐにでもこれらの最適化を使い始めることができるとおっしゃいましたが、先のことを考えると、量子コンピューティングの利点を利用するためには、概念的な再教育や、プログラミング言語のちょっとした違いによる再教育が必要になるとお考えですか?あなたが教育プロジェクトに携わっていることは知っています。

ヴィンセント:ええ、私はQuantum Katasというプロジェクトに携わっていて、GitHubのオープンソースプロジェクトなんです。github.com/microsoft/quantumkatasに行けば、素晴らしい学習リソースが見つかります。そこで、このプロジェクトの背景と、それが何なのかを少し説明しよう。基本的に、量子カタスは量子コンピューティングのゼロからヒーローになるための練習問題集です。ですから、基本的には完全に最初から始めます。線形代数とその始め方について話しています。数学の部分はすべてPythonで行います。基本的には、特定の概念に慣れてもらうために演習を行い、行列の掛け算や行列の随伴から始めます。量子コンピューティングに関わる数学の基本を学んでもらいます。それから、実際のキュービットについて話し始めます。Qubitはどのように機能するのか?Qubitで何ができるのか?それはもうPythonではできません。

そこで、Q#と呼ばれる言語に切り替えます。これはマイクロソフトのドメイン特化型言語で、ドメイン特化型なので、量子コンピュータをプログラムするために特別に設計されています。つまり、古典的なプログラミングには使用されません。このQ#言語ですが、基本的にマイクロソフトがQ#言語を作り始めた理由は、例えばPythonライブラリを作るのではなく、Q#言語を作り始めたからです。量子コンピュータのプログラミングは、通常のコンピュータのプログラミングとは大きく異なります。そして、Q#という1つの言語があれば、複数のハードウェア・アーキテクチャをターゲットにできるということです。例えば、現在Q#でコードを書き始めると、IonQマシンやAzure QuantumのHoneywellマシンをターゲットにすることができます。

だから量子カタで使っているのはこの言語なんだ。ですから、最初はPythonで数学の概念を学び、それからQ#に移行します。そしてQ#言語から本格的にレベルアップしていきます。つまり、量子ビットとは何かという基本的な概念から始めて、より高度な概念へと進んでいく。ゲートの使い方、測定の仕方、共同測定の仕方、複数の量子ビットの使い方、そして最終的にはアルゴリズム設計へと進みます。グルーバー・アルゴリズムはどう動くのか?Shorアルゴリズムはどう動くのか?そこからさらに高度なテーマへと進んでいく。

つまり、一連のプログラミングの練習です。基本的には、量子コンピューターで人々を動かし、特定のアルゴリズムがどのように機能するのかを教えるために、私たちは基本的にQ#でそのアルゴリズムを書くように求めます。もちろん、それはステップバイステップなので、ゼロから「グローバーのアルゴリズムを書きなさい」というわけではありません。しかし、小さなステップから始め、小さなオラクルを作り始め、グローバー探索を使って、例えば、ある最適解を見つけたり、グローバー探索を使って解を見つけたりします。

つまり、量子コンピュータの世界に人々を引き込み、Q#を使って量子コンピュータをプログラミングする方法を教えようというのがカタスのアイデアなんだ。このプロジェクトは、マリアという私の同僚によって始められました。彼女はもうかなり前からこのプロジェクトに取り組んでいる。彼女は量子カタだけでなく、量子コンピュータのプログラミング方法を人々に教えるために、他のクールなコンセプトにも取り組んでいます。将来的にはいいゲストになるかもしれないね。しかし、カタスの話に戻り、古典的な開発者から量子開発者に変わるべきかどうかという質問に戻ると、最終的にはゲートのプログラミング方法や回路のプログラミング方法を知る必要はないと思います。

現在のように、古典的なコンピューターでプログラミングをする場合、アセンブリコードをプログラムする必要はない。使用するすべてのゲートをプログラムする必要はない。マイクロソフトがQ#でやろうとしていることもそうです。私たちは、高レベルのライブラリ機能を、量子の特定の領域にも追加しようとしています。例えば、化学や機械学習などです。そのため、ゲートを使ったり、難しい低レベルの処理をしたりする必要はなく、より高レベルのライブラリ機能を使うことができます。つまり、人々は最終的に、もちろん仕事のやり方を変える必要はあるが、ゲートレベルで実際に何をすべきかを知る必要はないのだ。

より大規模で耐障害性に優れた量子コンピュータが登場すれば、開発者が量子プログラムを開発するのも少しは簡単になると思います。しかしもちろん、GPUが登場したときのように、新しいライブラリの使い方を学び、量子コンピューターが何をするのかを理解しなければ、量子コンピューターが提供するものをフルに活用することはできません。これは量子コンピューターと比較するのに適していると思う。GPUは、特定のワークロードを高速化するための使い方を学ばなければなりません。量子コンピューターでも同じことが起こると思います。化学であれ物流であれ何であれ、ワークロードを加速させるためにこのアクセラレーターをどう使うかを知る必要がある。量子コンピュータの仕組みを学ぶための素晴らしいツールのひとつが、私たちが構築している量子カタス・プロジェクトです。

ユヴァル:量子の世界に入りたいと考えている人のバックグラウンドとして、どのようなものが望ましいですか?ある企業にアドバイスをしているとして、その企業が「量子チームを立ち上げたい。そのために3人を雇うか、再利用したい。"Pythonができるオープンマインドな優秀なプログラマーがいいのか、量子情報システムの博士号を持っている人がいいのか、それともコンピュータサイエンスではなく物理学を専攻している人がいいのか。

ヴィンセント:そうですね、私にはそのようなバックグラウンドがないので、答えるのが難しい質問だと思います。私は経済学を学びました。しかし、この分野ではオープンマインドであることが非常に重要だと思います。現在、私たちは非常に多くの変化を目の当たりにしていますし、量子の領域でも多くのことが起きています。ですから、もし3人を選ぶとしたら、おそらくそれらの組み合わせになるでしょう。Q#のような新しい言語を学びたい、あるいはPythonのライブラリを学びたいという優れたプログラマーは、本当に量子コンピュータをプログラミングすることができますが、量子力学がボンネットの下でどのように働いているのかをよく理解していることが非常に重要です。

だから、量子コンピューターができること、アルゴリズムを活用する方法、そして実際に量子アルゴリズムを構築する方法を本当に理解している人がいれば、例えば量子力学の博士号を持っているような人は、現時点ではプログラマーよりも簡単で、より適していると思います。だから、その両方を組み合わせれば完璧だと思う。量子の現状では、どちらの職業も量子プログラマーになれると思います。つまり、バックグラウンドに関係なく、チュートリアルの数やインターネット上で入手可能な知識の量は非常に多いので、どちらも優れた量子プログラマーになれるのです。

ユヴァル:アカデミアからプロダクションに移行する将来を少し考えて、2~3年のタイムフレームで考えてみましょう。その間に量子力学で真のビジネス価値を提供できるアプリケーションとして、あなたが最も期待しているものは何ですか?

ヴィンセント:ええ、2、3年という時間枠の中で、いろいろなことが起こるでしょう?より大きな量子コンピュータが登場するのは素晴らしいことです。しかし、おそらく本格的なフォールトトレラントにはまだならないでしょう。そのため、多少の誤差を許容するアルゴリズムを開発する必要があります。このようなアルゴリズムはエラーを許容し、量子コンピュータの価値を引き出すことができます。しかし、誰もが待ち望んでいるような大規模なアプリケーション、例えば、ショーのアルゴリズムをその時間枠内で実行するのは難しいでしょう。

ですから、この2、3年という時間枠は、まだ多くの学界、多くの人々をこの分野に取り込み、大規模な量子コンピューターが完成した後の準備を整える期間であると同時に、量子にインスパイアされた期間でもあると思います。大きな一歩が踏み出されるまでの間に、私たちはどのようにこの時間を使い、このステップを利用して、この技術を活用することができるのでしょうか?そして、量子コンピュータという大きなスタイルが実現すれば、もちろん、誰もがショールのアルゴリズムが光を放ち、最初の鍵を破り始めるのを待っている。しかし、その準備が整うまでにはまだ時間がかかると思います。

ユヴァル:わかりました。あなたの経歴をお聞きしたいのですが、経済学とおっしゃいましたが、現在は量子を研究されていますね。最もエキゾチックな場所はどこですか?

ヴィンセント:うん、僕は自由な時間に旅行するのが好きなんだ。今のところ、一番エキゾチックな場所はグリーンランドで、10日間ほどハイキングの旅をしたんだ。アラスカでは、人里離れた場所で、僕らとクマ数頭を見ただけだった。

ユヴァル:それはすごい。量子力学的な意味での複数の場所について考えると、巡回セールスマンや巡回ハイカーの問題が思い浮かびます。今日のコンピュータの処理能力を考えると、どのくらいの規模のTSP問題を解くことができると思いますか?

ヴィンセント:量子コンピュータのことですか、それとも従来のコンピュータですか?

ユヴァル:量子コンピューターについて考えていたんだが、両方に答えてくれて嬉しいよ。

ヴィンセント:では量子コンピュータから始めましょう。TSP問題(巡回セールスマン問題)の最大の問題は、そこまで到達しません。すべての可能な経路の情報を暗号化するには、量子ビットが必要です。だから、この問題を解くには...かなり小さくなるでしょう。つまり、10か所か20か所くらいで、それほど大きくはないでしょう。だから、従来のコンピューターでも解決できるだろう。正直に言うと、これは量子に触発された最も効率的な使い方ではありませんが、価値を示す最も簡単な方法だと思います。

というのも、例えば10~15%効率的なルートを作ることができれば、車の走行距離や船の航行距離がどれだけ減るかを想像してみてください。

ユヴァル:TSPに関する最後の質問ですが、話が終わりに近づいたので、量子インスパイアード・コンピューティングで50ストップのTSPの解を得るのに、どれくらいの時間がかかりますか?

ヴィンセント:ブログの記事にも書いたと思うんだけど、僕の頭の中では20秒くらいだったと思う。でも、調べないといけないけど、圧倒的に効率的な実装ではなかった。でも、量子コンピューティングの使い方をみんなに知ってもらうにはいい方法だったと思う。

ユヴァル:私もそう思います。ではヴィンセント、クオンタムカタやあなたがやっている他の仕事についてもっと知りたい人は、どうすればあなたと連絡を取ることができますか?

ヴィンセント:そう。TSPの問題やその他のことを書いているブログで、Vincent.frlと呼ばれています。でも、僕と連絡を取るにはLinkedInを使うのが一番だと思う。LinkedInのVincent van Wingerdenという名前は、おそらくポッドキャストのタイトルにも入っていると思います。それが僕と連絡を取る一番簡単な方法だろう。

ユヴァル:素晴らしい。今日はありがとうございました。

ヴィンセント:もちろん、どういたしまして。


"キュービット・ガイのポッドキャスト "について

The Qubit Guy(弊社最高マーケティング責任者ユヴァル・ボーガー)がホストを務めるこのポッドキャストは、量子コンピューティングのオピニオンリーダーをゲストに迎え、量子コンピューティングエコシステムに影響を与えるビジネスや技術的な疑問について議論します。ゲストは、量子コンピュータのソフトウェアやアルゴリズム、量子コンピュータのハードウェア、量子コンピューティングの主要なアプリケーション、量子産業の市場調査などについて興味深い見解を提供します。

ポッドキャストへのゲスト推薦をご希望の方は、こちらまでご連絡ください。

こちらも参照

該当する項目はありません。

量子ソフトウェア開発を開始

お問い合わせ