

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

# シミュレーターへの量子タスクの送信
<a name="braket-submit-tasks-simulators"></a>

Amazon Braket は、量子タスクをテストできる複数のシミュレーターへのアクセスを提供します。単一の量子タスクを個別に送信・実行することも、[複数のプログラムを実行](https://docs.aws.amazon.com/braket/latest/developerguide/braket-batching-tasks.html)することもできます。

 **シミュレーター** 
+  **密度マトリックスシミュレーター、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 の可用性ウィンドウ中は正常にキャンセルされないことに注意してください。

**Topics**
+ [ローカル状態ベクトルシミュレーター (`braket_sv`)](#braket-simulator-sv)
+ [ローカル密度マトリックスシミュレーター (`braket_dm`)](#braket-simulator-dm)
+ [ローカル AHS シミュレーター (`braket_ahs`)](#braket-simulator-ahs-local)
+ [状態ベクトルシミュレーター (SV1)](#braket-simulator-sv1)
+ [密度マトリックスシミュレーター (DM1)](#braket-simulator-dm1)
+ [テンソルネットワークシミュレーター (TN1)](#braket-simulator-tn1)
+ [埋め込みシミュレーターについて](embedded-simulator.md)
+ [Amazon Braket シミュレーターの比較](choose-a-simulator.md)
+ [Amazon Braket での量子タスクの例](braket-submit-tasks-to-braket.md)
+ [ローカルシミュレーターを使用した量子タスクのテスト](braket-send-to-local-simulator.md)

## ローカル状態ベクトルシミュレーター (`braket_sv`)
<a name="braket-simulator-sv"></a>

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

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

**注記**  
このローカルシミュレーターは高度な OpenQASM 機能をサポートしていますが、高度な OpenQASM 機能は QPU デバイスやその他のシミュレーターではサポートされていない場合があります。サポートされている機能の詳細については、「[OpenQASM Local Simulator notebook](https://github.com/aws/amazon-braket-examples/blob/main/examples/braket_features/Simulating_Advanced_OpenQASM_Programs_with_the_Local_Simulator.ipynb)」に記載されている例を参照してください。

シミュレーターを使用する方法については、「[Amazon Braket の例](https://github.com/aws/amazon-braket-examples/blob/main/examples/getting_started/1_Running_quantum_circuits_on_simulators/1_Running_quantum_circuits_on_simulators.ipynb)」を参照してください。

## ローカル密度マトリックスシミュレーター (`braket_dm`)
<a name="braket-simulator-dm"></a>

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

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

`braket_dm` ローカルシミュレーターでは、指定した shots 数を指定すると、次の結果が得られます。
+ 縮約密度マトリックス: Shots = 0

**注記**  
このローカルシミュレーターは高度な OpenQASM 機能をサポートしていますが、高度な OpenQASM 機能は QPU デバイスやその他のシミュレーターではサポートされていない場合があります。サポートされている機能の詳細については、「[OpenQASM Local Simulator notebook](https://github.com/aws/amazon-braket-examples/blob/main/examples/braket_features/Simulating_Advanced_OpenQASM_Programs_with_the_Local_Simulator.ipynb)」に記載されている例を参照してください。

ローカル密度マトリックスシミュレーターの詳細については、「[Braket 入門ノイズシミュレーターの例](https://github.com/aws/amazon-braket-examples/blob/main/examples/braket_features/Simulating_Noise_On_Amazon_Braket.ipynb)」を参照してください。

## ローカル AHS シミュレーター (`braket_ahs`)
<a name="braket-simulator-ahs-local"></a>

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

ローカルシミュレーターは、1 つの均一な駆動場、1 つの (不均一な) 移動磁場、および任意の原子配置について、AHS プログラムをサポートしています。詳細については、Braket の「[AHS class](https://github.com/aws/amazon-braket-sdk-python/blob/main/src/braket/ahs/analog_hamiltonian_simulation.py#L29)」と Braket の「[AHS program schema](https://github.com/aws/amazon-braket-schemas-python/blob/main/src/braket/ir/ahs/program_v1.py)」を参照してください。

ローカル AHS シミュレーターの詳細については、「[Hello AHS: 初めてのアナログハミルトニアンシミュレーションを実行する](braket-get-started-hello-ahs.md)」ページと「[Analog Hamiltonian Simulation example notebooks](https://github.com/aws/amazon-braket-examples/tree/main/examples/analog_hamiltonian_simulation)」を参照してください。

## 状態ベクトルシミュレーター (SV1)
<a name="braket-simulator-sv1"></a>

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

結果の詳細については、「[結果タイプ](https://docs.aws.amazon.com/braket/latest/developerguide/braket-result-types.html)」を参照してください。

 SV1 は常に利用可能で、オンデマンドで回路を実行し、複数の回路を並列に実行できます。実行時間は、オペレーションの数に応じて線形にスケールされ、qubits 数とともに指数関数的にスケールされます。shots 数は、実行時間へは少ししか影響しません。詳細については、「[シミュレーターを比較する](https://docs.aws.amazon.com/braket/latest/developerguide/braket-devices.html#choose-a-simulator)」を参照してください。

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

## 密度マトリックスシミュレーター (DM1)
<a name="braket-simulator-dm1"></a>

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

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

 ** DM1 の結果** 

 DM1 で以下の左の各結果を得るには、以下の右の shots 数を指定する必要があります。
+ 標本: Shots > 0
+ 期待値: Shots >= 0
+ 分散: Shots >= 0
+ 確率: Shots > 0
+ 縮約密度マトリックス: Shots = 0、最大 qubits 数 = 8 

結果の詳細については、「[結果タイプ](https://docs.aws.amazon.com/braket/latest/developerguide/braket-result-types.html)」を参照してください。

 DM1 は常に利用可能で、オンデマンドで回路を実行し、複数の回路を並列に実行できます。実行時間は、オペレーションの数に応じて線形にスケールされ、qubits 数とともに指数関数的にスケールされます。shots 数は、実行時間へは少ししか影響しません。詳細については、「[シミュレーターを比較する](https://docs.aws.amazon.com/braket/latest/developerguide/braket-devices.html#choose-a-simulator)」を参照してください。

 **ノイズゲートと制限事項** 

```
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)
<a name="braket-simulator-tn1"></a>

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

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

 ** TN1 の結果** 

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

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

結果タイプは次のとおりです。
+ サンプル
+ 期待
+ 分散

結果の詳細については、「[結果タイプ](https://docs.aws.amazon.com/braket/latest/developerguide/braket-result-types.html)」を参照してください。

 TN1 は常に利用可能で、オンデマンドで回路を実行し、複数の回路を並列に実行できます。詳細については、「[シミュレーターを比較する](https://docs.aws.amazon.com/braket/latest/developerguide/braket-devices.html#choose-a-simulator)」を参照してください。

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

TN1 を開始するには、Amazon Braket GitHub リポジトリの「[TN1 example notebook](https://github.com/aws/amazon-braket-examples/blob/main/examples/braket_features/Using_the_tensor_network_simulator_TN1.ipynb)」を参照してください。

 **TN1 を使用するためのベストプラクティス** 
+ オールツーオール回路は避けてください。
+ TN1 の回路の「難易度」を学ぶために、shots数が少ない回路クラスまたは新しい回路をテストします。
+ 大きな shot のシミュレーションは複数の量子タスクに分割します。