Parallel Tempering QPU
Parallel Tempering uses multiple optimization procedures per temperature. During the cooling process, an exchange of replicas can take place between the parallel procedures, thus enabling higher energy mountains to be overcome.
Note
This solver is only available for commercial and academic licenses.
Compatible Backends
| Backend | Default |
|---|---|
| DWaveQpu |
Initialization
Python
from luna_quantum.solve.parameters.algorithms.base_params.decomposer import Decomposer
from luna_quantum.solve.parameters.algorithms.base_params.quantum_annealing_params import QuantumAnnealingParams
from luna_quantum.solve.parameters.algorithms.quantum_annealing.parallel_tempering_qpu import ParallelTemperingQpu
algorithm = ParallelTemperingQpu(
backend=None,
n_replicas=2,
random_swaps_factor=1,
max_iter=100,
max_time=5,
convergence=3,
target=None,
rtol=1e-05,
atol=1e-08,
num_reads=100,
num_retries=0,
fixed_temp_sampler_num_sweeps=10000,
fixed_temp_sampler_num_reads=None,
quantum_annealing_params=QuantumAnnealingParams(
anneal_offsets=None,
anneal_schedule=None,
annealing_time=None,
auto_scale=None,
fast_anneal=False,
flux_biases=None,
flux_drift_compensation=True,
h_gain_schedule=None,
initial_state=None,
max_answers=None,
num_reads=1,
programming_thermalization=None,
readout_thermalization=None,
reduce_intersample_correlation=False,
reinitialize_state=None
),
decomposer=Decomposer(
size=10,
min_gain=None,
rolling=True,
rolling_history=1.0,
silent_rewind=True,
traversal='energy'
)
)