Fixstars Amplifyยถ
Fixstars Amplify Annealing Engine v1ยถ
Fixstars Amplify Annealing Engine (Amplify AE) is a solver provided by Fixstars Amplify. It uses heuristic algorithms based on simulated annealing on GPUs, leveraging their parallel computing capabilities to search for solutions with high speed and accuracy.
Tip
A free API token is available upon user registration.
- Solver specification:
Client class
API Method
REST API (JSON)
API reference
When the
solverproperty is set toConstraint(default):
Binary variable
Ising variable
Integer variable
Real variable
Objective function
4th
-
-
-
Equality constraint
4th
-
-
-
Inequality constraint
4th
-
-
-
Binary variable
Ising variable
Integer variable
Real variable
Objective function
4th
-
-
-
Equality constraint
4th*
-
-
-
Inequality constraint
4th*
-
-
-
*: must give a penalty function.
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.
Attribute
Data type
Details
Set the solve mode for Amplify AE. The default is
Constraint. By setting it toPuboorQubo, you can perform solves that emulate the PUBO / QUBO solvers. For details, please refer to the Amplify AE documentation.Compress the requested data before sending. The default is
True; setting it toFalsewill reduce request data compression time, but may increase transmission time.- Configuration example:
Here is an example configuration. For parameter details, please refer to the Amplify AE documentation.
from amplify import AmplifyAEClient from datetime import timedelta client = AmplifyAEClient() # Set API token client.token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # Set the solver mode client.solver = "Constraint" # For general (Default) # client.solver = "Pubo" # For PUBO simulation # client.solver = "Qubo" # For QUBO simulation # Set timeout to 1 second client.parameters.time_limit_ms = 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.duplicate_solutions = True
- 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 and GPU name:
>>> client.version '1.0.0+V100'
Obtain detailed execution time:
# Get GPU annealing time >>> print(result.client_result.execution_time_ms) 0:00:01.008328 # Get queue wait time >>> print(result.client_result.queue_time_ms) 0:00:00.000108 # Get the time of request reception >>> print(result.client_result.submitted_at) 2025-08-25 17:37:38.553593+09:00 # Get the time when the request processing started >>> print(result.client_result.started_at) 2025-08-25 17:37:38.553701+09:00
Obtain runtime parameter information:
# Number of GPUs used for solving >>> result.client_result.num_gpus 1 # Total flip count of all GPUs tried until the execution result is returned >>> result.client_result.num_flips 1567467520 # Number of solutions (samples) obtained until the execution result is returned >>> result.client_result.num_samplings 58
[Deprecated] Fixstars Amplify Annealing Engine v0ยถ
Deprecated
Amplify AE v0 is now deprecated. Accordingly, amplify.FixstarsClient is also deprecated.
For new usage, please use Amplify AE v1 and amplify.AmplifyAEClient.
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" })