SimulatedAnnealingSampler beta range
Hello,
By reading the documentation, I have seen:
beta_range: A 2-tuple or list defining the beginning and end of the beta schedule. The schedule is interpolated within this range according to the value specified by beta_schedule_type. Default range is set based on the total bias associated with each node.
Would it be possible to have the details of used algorithm to find the range given a QUBO ?
Thank you.
Best regards.
Julien.
Comments
Hello,
Please also refer to our SimulatedAnnealingSampler documentation here:
https://docs.ocean.dwavesys.com/en/stable/docs_samplers/reference.html#simulated-annealing
It references the following paper that describes the underlying method used in the SimulatedAnnealingSampler:
Kirkpatrick, S.; Gelatt Jr, C. D.; Vecchi, M. P. (1983). “Optimization by Simulated Annealing”. Science. 220 (4598): 671–680
Beta is defined as the inverse Temperature and the Boltzmann constant.
You can also take a look at the source code for the SimulatedAnnealingSampler here:
https://github.com/dwavesystems/dwave-samplers/blob/1.2.0/dwave/samplers/sa/sampler.py#L41
In particular the code for finding the beta_range can be found here:
https://github.com/dwavesystems/dwave-samplers/blob/1.2.0/dwave/samplers/sa/sampler.py#L445
This code is for finding the range for an ising model, so you would need to convert from QUBO to ising first:
https://docs.ocean.dwavesys.com/en/latest/docs_dimod/reference/generated/dimod.utilities.qubo_to_ising.html
I hope this helps answer your question. Thank you for your patience and understanding.
Please sign in to leave a comment.