Qulacs Simulator¶
A local simulator that uses Qulacs for circuit evaluation.
Available as QulacsClient.
Tip
No registration required.
- Solver specification:
Client class
Depends on the algorithm
Depends on the algorithm
Depends on the algorithm
Quantum computer type
Gate-based simulator
API method
Local simulation (Qulacs)
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:
No client-specific attributes or methods.
- Backend-specific metadata:
Detailed sampling information is available via QAOA’s sampling_meta. Uses
QulacsJobMeta.meta = client_result.history[0].sampling_meta meta.circuit # The executed Qulacs circuit object
- Configuration example:
from amplify import QAOA, QulacsClient # Create the client client = QulacsClient(QAOA) # 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()