QUDORAยถ
Uses QUDORA trapped-ion quantum computers and their cloud simulators for circuit evaluation.
Available as QUDORAClient.
Note
An API token is required.
Either obtain a free trial API token by registering with Fixstars Amplify, or obtain an API token from your own QUDORA Cloud account.
- Solver specification:
Client class
Depends on the algorithm
Depends on the algorithm
Depends on the algorithm
Quantum computer type
Gate-based, trapped-ion
API method
REST API (JSON)
API reference
The variable types and polynomial degree accepted for the input problem depend on the chosen algorithm.
When QAOA is specified as the client argument
Binary
Ising
Integer
Real
Objective function
-
Nth degree*
-
-
Equality constraint
-
**
-
-
Inequality constraint
-
-
-
-
*: Problems of arbitrary degree are supported. However, depending on the qubit connectivity of the quantum computer, the required number of qubits may increase.
**: When Constrained QAOA is selected via QAOA type, N-HOT constraints are supported.
When RQAOA is specified as the client argument
Binary
Ising
Integer
Real
Objective function
-
Nth degree*
-
-
Equality constraint
-
-
-
-
Inequality constraint
-
-
-
-
*: Problems of arbitrary degree are supported. However, depending on the qubit connectivity of the quantum computer, the required number of qubits may increase.
- Client class:
The client class has the following attributes and methods.
Attribute
Data type
Details
The API token used for authentication.
The endpoint URL to connect to.
The QUDORA device name on which the circuit will be executed. Default:
"Qamelion"The Qiskit
qiskit.transpiler.PassManagerused to transpile the circuit. With the default (...), one is generated automatically by generate_preset_pass_manager. Set this toNoneto skip transpilation.- Backend-specific metadata:
Detailed sampling information is available via QAOAโs sampling_meta.
meta = client_result.history[0].sampling_meta meta.circuit # The executed circuit object
- Configuration example:
from amplify import QAOA, QUDORAClient # Create the client client = QUDORAClient(QAOA) # Set the API token client.token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # Set QAOA parameters client.parameters.reps = 1 client.parameters.shots = 100
- Execution example:
from amplify import Model, VariableGenerator, solve # Create decision variables and the objective function g = VariableGenerator() q = g.array("Binary", 2) f = q[0] * q[1] + q[0] - q[1] + 1 # Create a model model = Model(f) # Run the solver result = solve(model, client)
Obtain the backend version:
>>> client.version()