シミュレーターへの量子タスクの送信 - Amazon Braket

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

シミュレーターへの量子タスクの送信

Amazon Braket は、量子タスクをテストできる複数のシミュレーターへのアクセスを提供します。単一の量子タスクを個別に送信・実行することも、複数のプログラムを実行することもできます。

シミュレーター

  • 密度マトリックスシミュレーター、DM1: arn:aws:braket:::device/quantum-simulator/amazon/dm1

  • 状態ベクトルシミュレーター、SV1: arn:aws:braket:::device/quantum-simulator/amazon/sv1

  • テンソルネットワークシミュレーター、TN1: arn:aws:braket:::device/quantum-simulator/amazon/tn1

  • ローカルシミュレーター : LocalSimulator()

注記

QPU およびオンデマンドシミュレーターでは、CREATED 状態の量子タスクをキャンセルできます。QPU およびオンデマンドシミュレーターでは、QUEUED 状態の量子タスクをベストエフォートベースでキャンセルできます。QPU の QUEUED 状態の量子タスクは、QPU の可用性ウィンドウ中は正常にキャンセルされないことに注意してください。

ローカル状態ベクトルシミュレーター (braket_sv)

ローカル状態ベクトルシミュレーター (braket_sv) は、お客様のローカル環境で実行される Amazon Braket SDK の構成要素です。Braket ノートブックインスタンスまたはローカル環境のハードウェア仕様に応じた 25 qubitsまでの小型回路でのラピッドプロトタイピングに適しています。

このローカルシミュレーターは Amazon Braket SDK のすべてのゲートをサポートしていますが、QPU デバイスではより小さなサブセットがサポートされています。デバイスのサポートされているゲートは、デバイスのプロパティで確認できます。

注記

このローカルシミュレーターは高度な OpenQASM 機能をサポートしていますが、高度な OpenQASM 機能は QPU デバイスやその他のシミュレーターではサポートされていない場合があります。サポートされている機能の詳細については、「OpenQASM Local Simulator notebook」に記載されている例を参照してください。

シミュレーターを使用する方法については、「Amazon Braket の例」を参照してください。

ローカル密度マトリックスシミュレーター (braket_dm)

ローカル密度マトリックスシミュレーター (braket_dm) は、お客様のローカル環境で実行される Amazon Braket SDK の構成要素です。Braketノートブックインスタンスまたはローカル環境のハードウェア仕様に応じて、ノイズ (最大 12 qubits) の小さな回路でのラピッドプロトタイピングに適しています。

ビットフリップや脱分極誤差などのゲートノイズ演算を使用して、一般的なノイズの多い回路をゼロから構築できます。また、ノイズの有無にかかわらず動作することを意図した既存の回路の特定のqubitsおよびゲートにノイズ演算を適用することもできます。

braket_dm ローカルシミュレーターでは、指定したshots数を指定すると、次の結果が得られます。

  • 縮約密度マトリックス: Shots = 0

注記

このローカルシミュレーターは高度な OpenQASM 機能をサポートしていますが、高度な OpenQASM 機能は QPU デバイスやその他のシミュレーターではサポートされていない場合があります。サポートされている機能の詳細については、「OpenQASM Local Simulator notebook」に記載されている例を参照してください。

ローカル密度マトリックスシミュレーターの詳細については、「Braket 入門ノイズシミュレーターの例」を参照してください。

ローカル AHS シミュレーター (braket_ahs)

ローカル AHS (アナログハミルトニアンシミュレーション) シミュレーター (braket_ahs) は、お客様のローカル環境で実行される Amazon Braket SDK の構成要素です。これを使用することで、AHS プログラムの結果をシミュレートできます。ローカル AHS シミュレーターは、Braket ノートブックインスタンスまたはローカル環境のハードウェア仕様に応じて、最大 10~12 原子の小型レジスターでのプロトタイピングに適しています。

ローカルシミュレーターは、1 つの均一な駆動場、1 つの (不均一な) 移動磁場、および任意の原子配置について、AHS プログラムをサポートしています。詳細については、Braket の「AHS class」と Braket の「AHS program schema」を参照してください。

ローカル AHS シミュレーターの詳細については、「Hello AHS: 初めてのアナログハミルトニアンシミュレーションを実行する」ページと「Analog Hamiltonian Simulation example notebooks」を参照してください。

状態ベクトルシミュレーター (SV1)

SV1 は、オンデマンド、ハイパフォーマンスのユニバーサル状態ベクトルシミュレーターです。最大で 34 qubitsの回路をシミュレートできます。34-qubit、高密度、正方形の回路 (回路の深さ = 34) の完了までは、使用するゲートのタイプやその他の要因に応じて約 1~2 時間かかることが予想されます。オールツーオールゲートを備えた回路は、SV1 に適しています。完全な状態ベクトルや振幅の配列などの形式で結果を返します。

SV1 の最大実行時間は 6 時間です。デフォルトでは、35 個の同時量子タスクを持ち、最大では 100 個の同時量子タスクを持てます (us-west-1 と eu-west-2 で 50 個ずつ)。

SV1 の結果

SV1 で以下の左の各結果を得るには、以下の右のshots数を指定する必要があります。

  • 標本: Shots > 0

  • 期待値: Shots >= 0

  • 分散: Shots >= 0

  • 確率: Shots > 0

  • 振幅: Shots = 0

  • 随伴勾配: Shots = 0

結果の詳細については、「結果タイプ」を参照してください。

SV1 は常に利用可能で、オンデマンドで回路を実行し、複数の回路を並列に実行できます。実行時間は、オペレーションの数に応じて線形にスケールされ、qubits数とともに指数関数的にスケールされます。shots数は、実行時間へは少ししか影響しません。詳細については、「シミュレーターを比較する」を参照してください。

シミュレーターは Braket SDK のすべてのゲートをサポートしますが、QPU デバイスは小さなサブセットをサポートします。デバイスのサポートされているゲートは、デバイスのプロパティで確認できます。

密度マトリックスシミュレーター (DM1)

DM1 は、オンデマンド、ハイパフォーマンスの密度マトリックスシミュレーターです。最大で 17 qubitsの回路をシミュレートできます。

DM1 は、最大実行時間が 6 時間、同時量子タスク数のデフォルトは 35 個、同時量子タスク数の最大値は 50 個です。

DM1 の結果

DM1 で以下の左の各結果を得るには、以下の右のshots数を指定する必要があります。

  • 標本: Shots > 0

  • 期待値: Shots >= 0

  • 分散: Shots >= 0

  • 確率: Shots > 0

  • 縮約密度マトリックス: Shots = 0、最大qubits数 = 8

結果の詳細については、「結果タイプ」を参照してください。

DM1 は常に利用可能で、オンデマンドで回路を実行し、複数の回路を並列に実行できます。実行時間は、オペレーションの数に応じて線形にスケールされ、qubits数とともに指数関数的にスケールされます。shots数は、実行時間へは少ししか影響しません。詳細については、「シミュレーターを比較する」を参照してください。

ノイズゲートと制限事項

AmplitudeDamping Probability has to be within [0,1] BitFlip Probability has to be within [0,0.5] Depolarizing Probability has to be within [0,0.75] GeneralizedAmplitudeDamping Probability has to be within [0,1] PauliChannel The sum of the probabilities has to be within [0,1] Kraus At most 2 qubits At most 4 (16) Kraus matrices for 1 (2) qubit PhaseDamping Probability has to be within [0,1] PhaseFlip Probability has to be within [0,0.5] TwoQubitDephasing Probability has to be within [0,0.75] TwoQubitDepolarizing Probability has to be within [0,0.9375]

テンソルネットワークシミュレーター (TN1)

TN1 は、オンデマンド、ハイパフォーマンスのテンソルネットワークシミュレーターです。TN1 は、qubits数の最大値が 50 で回路の深さが 1,000 個以下である特定の回路タイプをシミュレートできます。TN1は、スパース回路、ローカルゲートを持つ回路、および、量子フーリエ変換 (QFT) 回路など特殊な構造を持つ回路に特に強力です。TN1 は 2 つのフェーズで動作します。まず、リハーサルフェーズは回路の効率的な計算経路を特定しようとします。この特定結果により、TN1 が収縮フェーズと呼ばれる次の段階の実行時間を推定できます。推定収縮時間が TN1 シミュレーションの実行時間制限を超える場合、TN1 は収縮を試みません。

TN1 の実行時間制限は 6 時間です。同時量子タスク数の上限は、最大 10 個 (eu-west-2 では 5 個) です。

TN1 の結果

収縮フェーズは、マトリックスの一連の乗算で構成されます。一連の乗算は、結果に達するまで、または結果に到達できないと判断されるまで継続されます。

: Shotsは > 0 である必要があります。

結果タイプは次のとおりです。

  • 標本

  • 期待値

  • 分散

結果の詳細については、「結果タイプ」を参照してください。

TN1 は常に利用可能で、オンデマンドで回路を実行し、複数の回路を並列に実行できます。詳細については、「シミュレーターを比較する」を参照してください。

シミュレーターは Braket SDK のすべてのゲートをサポートしますが、QPU デバイスは小さなサブセットをサポートします。デバイスのサポートされているゲートは、デバイスのプロパティで確認できます。

TN1 を開始するには、Amazon Braket GitHub リポジトリの「TN1 example notebook」を参照してください。

TN1 を使用するためのベストプラクティス

  • オールツーオール回路は避けてください。

  • TN1 の回路の「難易度」を学ぶために、shots数が少ない回路クラスまたは新しい回路をテストします。

  • 大きなshotのシミュレーションは複数の量子タスクに分割します。