量子コンピューティングとは
量子コンピューティングは、環境、農業、健康、エネルギー、気候、材料科学などの分野で、地球の最大の課題のいくつかを解決する約束を持っています。 これらの問題の一部では、システムのサイズが大きくなるにつれて、従来のコンピューティングはますます困難になっています。 スケーリングするように設計されている場合、量子システムには、今日の最も強力なスーパーコンピューターを超える機能が備わる可能性があります。
この記事では、量子コンピューティングの原則、従来のコンピューティングと比較する方法、および量子力学の原則を使用する方法について説明します。
量子コンピューティングの歴史
量子コンピューターのアイデアは、従来のコンピューターでは量子システムのシミュレートが困難だったことから生まれました。 1980 年代、リチャード・ファインマンとユーリ・マニンはそれぞれ、量子現象に基づくハードウェアは従来のコンピューターと比べて量子システムのシミュレーションをするのにより効率的である可能性があると提唱しました。
量子力学をシミュレートすることが難しい理由を理解するには、さまざまな方法があります。 最も簡単な方法は、その問題が量子レベルでは可能な多数の配位 (状態と呼ばれます) にあることを確認することです。
量子状態が指数関数的に増加する
可能な場所が 40$ 個ある$電子のシステムについて考えてみましょう。それぞれの場所に電子を持つか持たないかを考えてみましょう。 したがって、システムは 2^{40}$ のいずれかの構成に$含まれる可能性があります (各場所には電子または空の 2 つの構成があるため)。 電子の量子状態を従来のコンピューター メモリに格納するには、130$ GB を超える$メモリが必要です。 可能な場所の数を 41$ に$増やすと、2^{41}$ の構成$が 2 倍になり、量子状態を格納するために 260$ GB を超える$メモリが必要になります。
位置数を増やすこのゲームを、いつまでもプレイし続けることはできません。 数百電子で、システムを格納するために必要なメモリは、宇宙の粒子の数を超えています。したがって、従来のコンピュータでは量子ダイナミクスをシミュレートする希望はありません。
困難をチャンスに変える
この指数関数的成長の観察により、科学者は強力な質問をしました:まったく同じ物理学の法則を悪用するマシンを使用して量子システムをシミュレートできますか? また、そのマシンを使用して、重要な他のタスクを調査できますか? これらの質問は、量子コンピューティングの起源につながりました。
1985 年、デイヴィッド・ドイッチュは、量子コンピューターによってあらゆる物理システムの動作を効率的にシミュレートできることを示しました。 この発見は、従来のコンピューターには手に負えない問題を量子コンピューターを使用して解決するという可能性を示す発端となりました。
1994年、ピーター・ショアは、最もよく知られている古典的アルゴリズムよりもはるかに速く実行される、整数を素因数分解するための量子アルゴリズムを発見しました。 ファクタリングを解決すると、RSA や楕円曲線暗号など、現在の eコマースのセキュリティの基盤となっている公開キー暗号システムの多くを破ることが可能となります。 この発見により、量子コンピューティングへの大きな関心が引き起こされ、他の多くの問題に対する量子アルゴリズムの開発につながりました。
量子ビットとは?
ビットが、従来のコンピューティングにおける情報の基本的オブジェクトであるのと同様に、"量子ビット" (qubit) は、量子コンピューティングにおける情報の基本的オブジェクトです。
量子ビットとは、量子コンピューティングにおける情報の基本単位です。 量子ビットが量子コンピューティングで果たす役割は、古典コンピューティングにおけるビットに似ていますが、両者の振る舞いは大きく異なります。 従来のビットはバイナリであり、0$ または $1$ の$位置しか保持できませんが、量子ビットは考えられるすべての状態の重ね合わせを保持できます。 つまり、量子ビットは、0、1、または 2 つの量子重ね合わせの状態にすることができます。 0 と 1 の無限の重ね合わせがあり、それぞれが有効な量子ビット状態です。
量子コンピューティングでは、情報は状態 0 と 1 の重ね合わせでエンコードされます。 たとえば、8 ビットの場合、256$ 個の異なる値をエンコード$できますが、256 個の値が共存できないため、エンコードする値のいずれかを選択する必要があります。 8 量子ビットでは、256 個の値を同時にエンコードできます。 この動作は、量子ビットがすべての可能な状態の重ね合わせになる可能性があるためです。
詳細については、「量子コンピューティングの量子ビット」を参照してください。
量子コンピューターを構築するための要件は何ですか?
量子コンピューターは、量子力学的現象を利用するコンピューターです。 量子コンピューターでは、物質の量子状態を使用して情報が格納され、計算されます。 彼らは量子することができます &。プログラム&量子;古典的なコンピュータよりも速く、またはより良いことを行う量子現象。
量子コンピューターの構築は、量子力学と最小スケールで量子システムを制御する能力を深く理解する必要がある複雑なエンジニアリングの課題です。 量子コンピューターを構築するときは、量子ビットを作成する方法と、量子ビットを格納する方法、操作する方法、計算の結果を読み取る方法について考える必要があります。
科学者やエンジニアが量子コンピューターを構築するためにさまざまな量子ビット テクノロジに取り組んでいる理由は、各テクノロジに独自の長所と短所があるためです。 最も使用されている量子ビット テクノロジは、トラップ型イオン量子ビット、超電導量子ビット、トポロジカル量子ビットです。 量子ビット ストレージのメソッドには、コヒーレンスを最大化し干渉を抑制するために、量子ビットを収容するユニットの温度を、絶対零度付近に保つものがあります。 量子ビットの他の種類の格納場所では、振動を最小限に抑え、量子ビットを安定させるために真空槽が使用されています。 信号を量子ビットに送信する方法は、マイクロ波、レーザー、電圧など、さまざまなものがあります。
量子コンピューターの 5 つの条件
優れた量子コンピューターには、次の 5 つの機能が必要です。
- スケーラブル:多数の量子ビットを持つことができます。
- 初期化可能:量子ビットを特定の状態 (通常は 0 状態) に設定できます。
- 回復性がある:。重ね合わせ状態の量子ビットを長時間保持できます。
- ユニバーサル:量子コンピューターでは、可能なすべての演算を実行する必要はなく、"ユニバーサル セット" と呼ばれる演算のセットのみを実行します。 一連のユニバーサル量子演算は、他の操作をそれらのシーケンスに分解できるようにするものです。
- 信頼性がある:量子ビットを正確に測定できます。
これら 5 つの条件は、量子計算の Di Vincenzo 基準 と呼ばれることがよくあります。
これらの 5 つの条件を満たすデバイスを構築することは、人類がこれまでに直面した中で最も困難なエンジニアリングの課題の 1 つです。 Azure Quantum は、量子ビット テクノロジが異なるさまざまな量子コンピューティング ソリューションを提供します。 詳細については、Azure Quantum プロバイダーの完全な一覧を参照してください。
量子現象を理解する
量子現象は、量子コンピューティングと古典的なコンピューティングを区別する基本的な原則です。 量子コンピューターがどのように動作し、なぜそのような可能性を持つのかを把握するには、これらの現象を理解することが重要です。 2つの最も重要な量子現象は重ね合わせとエンタングルメントです。
重ね合わせ
あなたがリビング ルームでエクササイズしていると想像してください。 身体を回して完全に左側を向いてから、身体を逆に回して完全に右側を向いてください。 次に、左右同時に向いてください。 これは不可能です (少なくとも体を 2 つに分割しない限り)。 当然ながら、一度にこの両方の状態になる (左右同時に向く) ことはきません。
しかし、あなたが量子粒子であれば、特定の確率で "左側を向き"、かつ特定の確率で "右側を向く" ことができます。これは、重ね合わせ (またはコヒーレンス) と呼ばれる現象によるものです。
古典的な粒子とは異なり、2 つの状態 A と B が量子粒子の有効な量子状態である場合、状態の線形の組み合わせも有効な量子状態 $\text{(量子ビット状態}=\alpha A + \beta B) になります$。$ $$ $ この量子状態 $A と B$ の線形の組み合わせは重ね合わせと$呼$ばれます。 ここで、 $\alpha$ A及び$\beta$$B$の$確率振幅は、それぞれ^{{2}+|\beta|^={2} 1$である$|\alpha|。$
量子コンピューティングの威力を実現できる重ね合わせ状態になることができるのは、イオンや電子、超電導回路のような量子系だけです。 電子のような量子粒子は、独自の"左向きまたは右向き"の特性、すなわち スピンを上下と呼ぶので、電子の量子状態は量子の &重ね合わせです。スピンアップ&クォート; そして &クォート;スピンダウン&量子。.
重ね合わせの詳細と実践を学ぶ場合は、「トレーニング モジュール: 重ね合わせをQ#探索する」 を参照してください。
もつれ
エンタングルメント は、2 つ以上の量子システム間の量子相関関係です。 2 つの量子ビットが絡み合うと、それらの量子ビットは相関し、個々の量子ビットの量子状態を個別に記述できない状態の情報を共有します。 量子エンタングルメントでは、個々の状態ではなく、グローバル システムの量子状態のみを知ることができます。
エンタングル量子システムは、大きな距離で分離された場合でも、この相関関係を維持します。 これは、1 つのサブシステムに適用する演算や処理が他のサブシステムにも相関されることを意味します。 したがって、1 つの量子ビットの状態を測定すると、もう一方の量子ビットの状態に関する情報が提供されます。この特定のプロパティは、量子コンピューティングに非常に役立ちます。
詳細については、「チュートリアル: 量子エンタングルメントをQ#探索する」を参照してください。実際の実装については、「トレーニング モジュール: エンタングルメントを使用して量子ビットをテレポートする」を参照してください。