qat.qpus.SQAQPU

class qat.qpus.SQAQPU(temp_t=None, n_steps=None, n_trotters=None, seed=None, **kwargs)

A Simulated Quantum Annealing QPU for solving Ising and QUBO formulated problems.

Parameters
  • temp_t (ArithExpression) – temperature-time dependence. It should be produced using the variable ‘t’ created by the class Variable. Default is a linearly decreasing function between temperatures 2.0 and 0.01 from time 0 to tmax with n_steps inbetween. The tmax will be extracted from the Job.

  • n_steps (int, optional) – number of annealing time steps in Gamma(t) and Temp(t) evolution. It will be multiplied by tmax extracted from the Job. Defaults to 5000.

  • n_trotters (int, optional) – number of Trotter slices. Defaults to 3.

  • seed (int, optional) – Randomness seed. The default is random.

Note

For the supported NP problems, some well performing max and min temperatures and n_trotters have been found and could be accessed via the method get_best_parameters of the respective problem class. The parameter n_monte_carlo_updates is also returned, which can help define n_steps as well via the equation n_monte_carlo_updates = n_steps * n_spins * n_trotters upon specifying the number of spins used in the problem.