Fixstars Amplify¶
Fixstars Amplify Annealing Engine¶
The QUBO solver provided by Fixstars Amplify uses an algorithm based on Simulated Annealing implemented on GPUs.
Tip
A free API token is available upon user registration.
- Solver specification:
Client class
API method
REST API (JSON)
API reference
Binary variable
Ising variable
Integer variable
Real variable
Objective function
2nd
-
-
-
Equality constraint
2nd*
-
-
-
Inequality constraint
2nd*
-
-
-
*: must give a penalty function.
- Client class:
In addition to the common interface of the client class, it has the following attributes.
- Configuration example:
from amplify import FixstarsClient from datetime import timedelta client = FixstarsClient() # Set API token client.token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # Set timeout to 1 second client.parameters.timeout = timedelta(milliseconds=1000) # Set the number of GPUs to use to 1 client.parameters.num_gpus = 1 # Get all solutions obtained during the search client.parameters.outputs.num_outputs = 0
- Execution example:
from amplify import Model, VariableGenerator, solve # Define 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 solver version:
>>> client.version 'v0.8.5-V100'
Obtain detailed execution time:
>>> result.client_result.execution_time FixstarsClient.Result.ExecutionTime({ "annealing_time": 9988.965504, "queue_time": 0.047615, "cpu_time": 0.19356399999999996, "time_stamps": [ 8.764683 ] })
Obtain runtime parameter information:
>>> result.client_result.execution_parameters FixstarsClient.Result.ExecutionParameters({ "num_gpus": 1, "timeout": 10000, "num_iterations": 585, "penalty_calibration": false, "penalty_multipliers": [], "version": "v0.8.7-V100" })