amplify.client.FujitsuDAMixedModeSolverClientParameters

class FujitsuDAMixedModeSolverClientParameters

A class that handles the parameters of FujitsuDAMixedModeSolverClient.

__init__(*args, **kwargs)

Methods

__init__(*args, **kwargs)

Attributes

guidance_config

Specifies the initial values of variables.

noise_model

Method of judging state transition.

number_iterations

Number of searchs in one annealing.

number_runs

Number of repeats of annealing.

offset_increase_rate

Cumulative energy increment when no new state is selected.

solution_mode

Specifies how solutions are returned.

temperature_decay

Annealing temperature decay rate.

temperature_interval

Interval of temperature change during annealing.

temperature_mode

Model of annealing temperature change.

temperature_start

Start temperature of annealing.

property guidance_config

Specifies the initial values of variables. The initial configuration of the variables are expressed in terms of a dictionary. The key is the index of a variable in the string form, and the corresponding value is the initial value of the variable expressed as True or False.

Type:

dict

Example

from amplify import BinarySymbolGenerator
from amplify.client import FujitsuDAMixedModeSolverClient

gen = BinarySymbolGenerator()
q = gen.array(3)
f = 2 * q[0] * q[1] - q[0] - q[2] + 1

client = FujitsuDAMixedModeSolverClient()
client.token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
client.parameters.number_iterations = 1000000
client.parameters.guidance_config = {"0": True, "2": False}

result = client.solve(f)
>>> f
2 q_0 q_1 - q_0 - q_2 + 1
>>> print([f"energy = {s.energy}, q = {q.decode(s.values)}" for s in result])
['energy = -1.0, q = [1. 0. 1.]',
 'energy = 1.0, q = [0. 0. 0.]']

注釈

Modifying each element of guidance_config by direct reference is not supported. If you need to replace one or more elements, the entire dictionary needs to be redefined.

from amplify.client import FujitsuDAMixedModeSolverClient

client = FujitsuDAMixedModeSolverClient(token="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")
client.parameters.guidance_config = {"0": True, "1": True}
>>> client.parameters.guidance_config
{'1': True, '0': True}
>>> client.parameters.guidance_config["0"] = False # Dictionary elements cannot be replaced by direct reference.
>>> client.parameters.guidance_config
{'1': True, '0': True}
>>> client.parameters.guidance_config= {"0": False, "1": False}  # Redefition of the entire dictionary can replace dictionary elements.
>>> client.parameters.guidance_config
{'1': False, '0': False}
property noise_model

Method of judging state transition. Specified from "METROPOLIS" or "GIBBS". If not specified, set to "METROPOLIS" as the default. METROPOLIS is recommended.

Type:

str

property number_iterations

Number of searchs in one annealing. An integer greater than or equal to 1 should be specified.

Type:

int

property number_runs

Number of repeats of annealing. An integer greater than or equal to 1 should be specified.

Type:

int

property offset_increase_rate

Cumulative energy increment when no new state is selected. An integer greater than or equal to 0 should be specified.

Type:

int

property solution_mode

Specifies how solutions are returned. Can be set to "COMPLETE" or "QUICK". "COMPLETE" is set as the default if no value is specified.

  • COMPLETE: Returns all results obtained by the number of annealing specified by number_runs, but combines the same results into one and returns with the total number of occurrence as frequency.

  • QUICK: Returns one result with the lowerst energy.

Type:

str

property temperature_decay

Annealing temperature decay rate.

Type:

float

property temperature_interval

Interval of temperature change during annealing. An integer greater than or equal to 1 should be specified. If not specified, it is set to 100 as the default.

Type:

int

property temperature_mode

Model of annealing temperature change. Specified from "EXPONENTIAL", "INVERSE", or "INVERSE_ROOT". If not specified, "EXPONENTIAL" is set as the default.

Type:

str

property temperature_start

Start temperature of annealing. A number greater than or equal to 0 should be specified.

Type:

float