DWave

BF - Brute Force Solver

Description

The Brute Force Solver utilizes a conventional brute force approach to search through all possible solutions. The solver becomes very slow for problems with more than 17 variables.

Available

Parameters

QPU Provider

None

DS - Dialectic Search Solver

Description

The Dialectic Search Solver uses a path search between two states representing the thesis and antithesis. A greedy search is used to reduce the energy by applying bit flips in an attempt to find the solution.

Parameters

decomposer

size: int

Number of selected variables for the graph search to stop. Default is 10.

min_gain: int, optional

Minimum gain to consider. If None, no minimum gain is enforced.

rolling: bool

Whether to use a rolling window for the decomposer. Default is True.

rolling_history: int

The size of the rolling window. Default is 1.

silent_rewind: bool

Whether to silently rewind the decomposer. Default is True.

traversal: str

The traversal strategy for the decomposer. Default is "energy".

tabu_antithesis

num_reads: int, optional

Number of reads for the tabu search. If None, no limit is enforced.

tenure: int, optional

Tenure for the tabu search. If None, no tenure is enforced.

timeout: int

Timeout for the tabu search in seconds. Default is 20.

initial_states_generator: str

The initial states generator for the tabu search. Default is "random".

tabu_synthesis

num_reads: int, optional

Number of reads for the tabu search. If None, no limit is enforced.

tenure: int, optional

Tenure for the tabu search. If None, no tenure is enforced.

timeout: int

Timeout for the tabu search in seconds. Default is 20.

initial_states_generator: str

The initial states generator for the tabu search. Default is "random".

update: dict

max_iter: int

Maximum number of iterations. Default is 100.

max_tries: int

Maximum number of iterations with unchanged output to terminate algorithm. Default is 100.

max_time: int

Time in seconds after which the algorithm will stop. Default is 5.

target: float, optional

Energy level that the algorithm tries to reach. If None (default), the algorithm will run until any other stopping criterion kicks in.

Available

Parameters

{
  "decomposer": {
    "size": 10,
    "min_gain": None,
    "rolling": True,
    "rolling_history": 1,
    "silent_rewind": True,
    "traversal": "energy"
  },
  "tabu_antithesis": {
    "num_reads": None,
    "tenure": None,
    "timeout": 20,
    "initial_states_generator": "random"
  },
  "tabu_synthesis": {
    "num_reads": None,
    "tenure": None,
    "timeout": 20,
    "initial_states_generator": "random"
  },
  "update": {
    "max_iter": 100,
    "max_tries": 100,
    "max_time": 5
  },
  "target": None
}

QPU Provider

None

K - Kerberos

Description

Kerberos divides the problem into subproblems and solves them using Tabu Search, Simulated Annealing and QPU Subproblem Sampling. These algorithms are executed in parallel and afterwards the best solutions are combined. This procedure is applied iteratively until the best solution is found or a termination criterion is met.

Parameters

TABU

num_reads: int, optional

Number of reads for the tabu search. If None, no limit is enforced. Default is 1.

max_time: int, optional

Maximum time for the tabu search. If None, no limit is enforced.

simulated_annealing

num_reads: int, optional

Number of reads for the simulated annealing. If None, no limit is enforced.

num_sweeps: int

Number of sweeps for the simulated annealing. Default is 1000.

beta_range: Any, optional

Beta range for the simulated annealing. If None, no specific range is enforced.

beta_schedule_type: str

Beta schedule type for the simulated annealing. Default is "geometric".

initial_states_generator: str

The initial states generator for the simulated annealing. Default is "random".

decomposer

size: int

Number of selected variables for the graph search to stop. Default is 10.

min_gain: int, optional

Minimum gain to consider. If None, no minimum gain is enforced.

rolling: bool

Whether to use a rolling window for the decomposer. Default is True.

rolling_history: int

The size of the rolling window. Default is 1.

silent_rewind: bool

Whether to silently rewind the decomposer. Default is True.

traversal: str

The traversal strategy for the decomposer. Default is "energy".

qpu

num_reads: int

Number of reads for the QPU. Default is 100.

num_retries: int

Number of retries for the QPU. Default is 0.

auto_embedding_params: AutoEmbeddingParamsDict

Parameters for the auto embedding in the QPU.

sampling_params

Parameters for the sampling in the QPU.

max_iter: int

Maximum number of iterations. Default is 100.

max_time: int

Time in seconds after which the algorithm will stop. Default is 5.

convergence: int

Number of iterations with unchanged output to terminate algorithm. Default is 3.

target: float, optional

Energy level that the algorithm tries to reach. If None (default), the algorithm will run until any other stopping criterion kicks in.

cpu_count_multiplier: int

Multiplier for the CPU count. Default is 1.

rtol: float

Relative tolerance for convergence.

atol: float

Absolute tolerance for convergence.

Available

Parameters

{
  "TABU": {
    "num_reads": 1,
    "tenure": None,
    "timeout": 20,
    "initial_states_generator": "random",
    "max_time": None
  },
  "simulated_annealing": {
    "num_reads": None,
    "num_sweeps": 1000,
    "beta_range": None,
    "beta_schedule_type": "geometric",
    "initial_states_generator": "random"
  },
  "decomposer": {
    "size": 10,
    "min_gain": None,
    "rolling": True,
    "rolling_history": 1,
    "silent_rewind": True,
    "traversal": "energy"
  },
  "qpu": {
    "num_reads": 100,
    "num_retries": 0,
    "auto_embedding_params": {
      "embedding_parameters": {
        "max_no_improvement": 10,
        "random_seed": None,
        "timeout": 1000,
        "max_beta": None,
        "tries": 10,
        "inner_rounds": None,
        "chainlength_patience": 10,
        "max_fill": None,
        "threads": 1,
        "return_overlap": False,
        "skip_initialization": False,
        "initial_chains": [],
        "fixed_chains": [],
        "restrict_chains": [],
        "suspend_chains": []
      }
    },
    "sampling_params": {
      "anneal_offsets": None,
      "anneal_schedule": None,
      "annealing_time": None,
      "auto_scale": None,
      "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": True
    }
  },
  "max_iter": 100,
  "max_time": 5,
  "convergence": 3,
  "target": None,
  "cpu_count_multiplier": 1,
  "rtol": 1e-05,
  "atol": 1e-08
}

QPU Provider

dwave

LBQM - Leap Hybrid BQM

Description

Leap's quantum-classical hybrid solvers are intended to solve arbitrary application problems formulated as quadratic models. This solver accepts arbitrarily structured, unconstrained problems formulated as BQMs, with any constraints typically represented through penalty models.

Parameters

time_limit: Any, optional

The time limit for the solver.

Available

Parameters

{
  "time_limit": None
}

QPU Provider

dwave

LCQM - Leap Hybrid CQM

Description

Leap's quantum-classical hybrid solvers are intended to solve arbitrary application problems formulated as quadratic models. This solver accepts arbitrarily structured problems formulated as CQMs, with any constraints represented natively.

Parameters

time_limit: Any, optional

The time limit for the solver.

Available

Parameters

{
  "time_limit": None
}

QPU Provider

dwave

PTQ - Parallel Tempering QPU

Description

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.

Parameters

n_replicas: int

Number of replicas for the parallel tempering. Default is 4.

decomposer

size: int

Number of selected variables for the graph search to stop. Default is 10.

min_gain: int, optional

Minimum gain to consider. If None, no minimum gain is enforced.

rolling: bool

Whether to use a rolling window for the decomposer. Default is False.

qpu

anneal_offsets: Any, optional

Anneal offsets for the QPU. If None, no offsets are applied.

anneal_schedule: Any, optional

Anneal schedule for the QPU. If None, a default schedule is used.

annealing_time: Any, optional

Annealing time for the QPU. If None, a default time is used.

auto_scale: Any, optional

Whether to auto scale the QPU. If None, auto scaling is not used.

flux_biases: Any, optional

Flux biases for the QPU. If None, no biases are applied.

flux_drift_compensation: bool

Whether to use flux drift compensation. Default is True.

h_gain_schedule: Any, optional

H gain schedule for the QPU. If None, a default schedule is used.

initial_state: Any, optional

Initial state for the QPU. If None, a default state is used.

max_answers: Any, optional

Maximum number of answers for the QPU. If None, no limit is enforced.

num_reads: int

Number of reads for the QPU. Default is 1.

programming_thermalization: Any, optional

Programming thermalization for the QPU. If None, a default thermalization is used.

readout_thermalization: Any, optional

Readout thermalization for the QPU. If None, a default thermalization is used.

reduce_intersample_correlation: bool

Whether to reduce intersample correlation. Default is False.

reinitialize_state: bool

Whether to reinitialize the state of the QPU. Default is True.

fixed_temperature_sampler

num_sweeps: int

Number of sweeps for the fixed temperature sampler. Default is 10,000.

num_reads: int, optional

Number of reads for the fixed temperature sampler. If None, no limit is enforced.

max_iter: int

Maximum number of iterations. Default is 5.

max_time: int

Time in seconds after which the algorithm will stop. Default is 5.

target: Any, optional

Energy level that the algorithm tries to reach. If None (default), the algorithm will run until any other stopping criterion kicks in.

cpu_count_multiplier: int

Multiplier for the CPU count. Default is 5.

rtol: float

Relative tolerance for convergence. Default is 1.0e-5.

atol: float

Absolute tolerance for convergence. Default is 1.0e-8.

Available

Parameters

{
  "n_replicas": 4,
  "decomposer": {
    "size": 10,
    "min_gain": None,
    "rolling": True,
    "rolling_history": 1,
    "silent_rewind": True,
    "traversal": "energy"
  },
  "qpu": {
    "num_reads": 100,
    "num_retries": 0,
    "auto_embedding_params": {
      "embedding_parameters": {
        "max_no_improvement": 10,
        "random_seed": None,
        "timeout": 1000,
        "max_beta": None,
        "tries": 10,
        "inner_rounds": None,
        "chainlength_patience": 10,
        "max_fill": None,
        "threads": 1,
        "return_overlap": False,
        "skip_initialization": False,
        "initial_chains": [],
        "fixed_chains": [],
        "restrict_chains": [],
        "suspend_chains": []
      }
    },
    "sampling_params": {
      "anneal_offsets": None,
      "anneal_schedule": None,
      "annealing_time": None,
      "auto_scale": None,
      "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": True
    }
  },
  "fixed_temperature_sampler": {
    "num_sweeps": 10000,
    "num_reads": None
  },
  "max_iter": 5,
  "max_time": 5,
  "target": None,
  "cpu_count_multiplier": 5,
  "rtol": 1e-05,
  "atol": 1e-08
}

QPU Provider

dwave

PT - Parallel Tempering

Description

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.

Parameters

n_replicas: int

Number of replicas for the parallel tempering. Default is 2.

fixed_temperature_sampler

Parameters for the fixed temperature sampler.

num_sweeps: int

Number of sweeps for the fixed temperature sampler. Default is 10,000.

num_reads: int, optional

Number of reads for the fixed temperature sampler. If None, no limit is enforced.

max_iter: int

Maximum number of iterations. Default is 3.

max_time: int

Time in seconds after which the algorithm will stop. Default is 5.

target: Any, optional

Energy level that the algorithm tries to reach. If None (default), the algorithm will run until any other stopping criterion kicks in.

cpu_count_multiplier: int

Multiplier for the CPU count. Default is 5.

rtol: float

Relative tolerance for convergence. Default is 1e-05.

atol: float

Absolute tolerance for convergence. Default is 1e-08.

random_swaps_factor: int

Factor for random swaps. Default is 1.

Available

Parameters

{
  "n_replicas": 2,
  "fixed_temperature_sampler": {
    "num_sweeps": 10000,
    "num_reads": None
  },
  "max_iter": 3,
  "max_time": 5,
  "target": None,
  "cpu_count_multiplier": 5,
  "rtol": 1e-05,
  "atol": 1e-08,
  "random_swaps_factor": 1
}

QPU Provider

None

PAQ - Population Annealing QPU

Description

Population Annealing uses a sequential Monte Carlo method to minimize the energy of a population. The population consists of walkers that can explore their neighborhood during the cooling process. Afterwards, walkers are removed and duplicated using bias to lower energy. Eventually, a population collapse occurs where all walkers are in the lowest energy state.

Parameters

decomposer

Parameters for the decomposer, which selects variables for the graph search to stop.

size: int

Number of selected variables for the graph search to stop. Default is 10.

min_gain: int, optional

Minimum gain to consider. If None, no minimum gain is enforced.

rolling: bool

Whether to use a rolling window for the decomposer. Default is True.

rolling_history: int

History size for the rolling window. Default is 1.

silent_rewind: bool

Whether to silently rewind the decomposer. Default is True.

traversal: str

Traversal method for the decomposer. Default is "energy".

qpu

Parameters for the Quantum Processing Unit (QPU).

num_reads: int

Number of reads for the QPU. Default is 100.

num_retries: int

Number of retries for the QPU. Default is 0.

auto_embedding_params: AutoEmbeddingParamsDict

Parameters for the auto embedding.

embedding_parameters

Parameters for the embedding.

max_no_improvement: int

Maximum number of iterations without improvement. Default is 10.

random_seed: int, optional

Random seed for the embedding. If None, a random seed is not used.

timeout: int

Timeout for the embedding. Default is 1000.

max_beta: int, optional

Maximum beta for the embedding. If None, a maximum beta is not used.

tries: int

Number of tries for the embedding. Default is 10.

inner_rounds: int, optional

Number of inner rounds for the embedding. If None, a default number is used.

chainlength_patience: int

Patience for chain length in the embedding. Default is 10.

max_fill: int, optional

Maximum fill for the embedding. If None, a maximum fill is not used.

threads: int

Number of threads for the embedding. Default is 1.

return_overlap: bool

Whether to return overlap in the embedding. Default is False.

skip_initialization: bool

Whether to skip initialization in the embedding. Default is False.

initial_chains: Any, optional

Initial chains for the embedding. If None, initial chains are not used.

fixed_chains: Any, optional

Fixed chains for the embedding. If None, fixed chains are not used.

restrict_chains: Any, optional

Restricted chains for the embedding. If None, restricted chains are not used.

suspend_chains: Any, optional

Suspended chains for the embedding. If None, suspended chains are not used.

sampling_params

Parameters for the sampling.

anneal_offsets: Any, optional

Anneal offsets for the QPU. If None, no offsets are applied.

anneal_schedule: Any, optional

Anneal schedule for the QPU. If None, a default schedule is used.

annealing_time: Any, optional

Annealing time for the QPU. If None, a default time is used.

auto_scale: Any, optional

Whether to auto scale the QPU. If None, auto scaling is not used.

flux_biases: Any, optional

Flux biases for the QPU. If None, no biases are applied.

flux_drift_compensation: bool

Whether to use flux drift compensation. Default is True.

h_gain_schedule: Any, optional

H gain schedule for the QPU. If None, a default schedule is used.

initial_state: Any, optional

Initial state for the QPU. If None, a default state is used.

max_answers: Any, optional

Maximum number of answers for the QPU. If None, no limit is enforced.

num_reads: int

Number of reads for the QPU. Default is 1.

programming_thermalization: Any, optional

Programming thermalization for the QPU. If None, a default thermalization is used.

readout_thermalization: Any, optional

Readout thermalization for the QPU. If None, a default thermalization is used.

reduce_intersample_correlation: bool

Whether to reduce intersample correlation. Default is False.

reinitialize_state: bool

Whether to reinitialize the state of the QPU. Default is True.

fixed_temperature_sampler

Parameters for the fixed temperature sampler.

num_sweeps: int

Number of sweeps for the fixed temperature sampler. Default is 10,000.

num_reads: int, optional

Number of reads for the fixed temperature sampler. If None, no limit is enforced.

max_iter: int

Maximum number of iterations. Default is 20.

target: Any, optional

Energy level that the algorithm tries to reach. If None (default), the algorithm will run until any other stopping criterion kicks in.

timeout: int

Time in seconds after which the algorithm will stop if it hasn't already. Default is 5.

max_time: int

Maximum time in seconds that the algorithm is allowed to run. Default is 2.

Available

Parameters

{
  "decomposer": {
    "size": 10,
    "min_gain": None,
    "rolling": True,
    "rolling_history": 1,
    "silent_rewind": True,
    "traversal": "energy"
  },
  "qpu": {
    "num_reads": 100,
    "num_retries": 0,
    "auto_embedding_params": {
      "embedding_parameters": {
        "max_no_improvement": 10,
        "random_seed": None,
        "timeout": 1000,
        "max_beta": None,
        "tries": 10,
        "inner_rounds": None,
        "chainlength_patience": 10,
        "max_fill": None,
        "threads": 1,
        "return_overlap": False,
        "skip_initialization": False,
        "initial_chains": [],
        "fixed_chains": [],
        "restrict_chains": [],
        "suspend_chains": []
      }
    },
    "sampling_params": {
      "anneal_offsets": None,
      "anneal_schedule": None,
      "annealing_time": None,
      "auto_scale": None,
      "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": True
    }
  },
  "fixed_temperature_sampler": {
    "num_sweeps": 10000,
    "num_reads": None
  },
  "max_iter": 20,
  "target": None,
  "timeout": 5,
  "max_time": 2
}

QPU Provider

dwave

PA - Population Annealing

Description

Population Annealing uses a sequential Monte Carlo method to minimize the energy of a population. The population consists of walkers that can explore their neighborhood during the cooling process. Afterwards, walkers are removed and duplicated using bias to lower energy. Eventually, a population collapse occurs where all walkers are in the lowest energy state.

Parameters

fixed_temperature_sampler

num_sweeps: int

Number of sweeps for the fixed temperature sampler. Default is 10,000.

num_reads: int, optional

Number of reads for the fixed temperature sampler. If None, no limit is enforced.

max_iter: int

Maximum number of iterations. Default is 20.

target: Any, optional

Energy level that the algorithm tries to reach. If None (default), the algorithm will run until any other stopping criterion kicks in.

max_time: int

Maximum time in seconds that the algorithm is allowed to run. Default is 2.

Available

Parameters

{
  "fixed_temperature_sampler": {
    "num_sweeps": 10000,
    "num_reads": None
  },
  "max_iter": 20,
  "target": None,
  "max_time": 2
}

QPU Provider

None

QLQ - QBSolv Like Simulated Annealing QPU

Description

QBSolv Like Simulated Annealing breaks down the problem and solves the parts individually using a classic solver that uses Simulated Annealing. This particular implementation uses hybrid.SimulatedAnnealingSubproblemSampler (https://docs.ocean.dwavesys.com/projects/hybrid/en/stable/reference/ samplers.html#simulatedannealingsubproblemsampler) as a sampler for the subproblems to achieve a QBSolv like behaviour.

Parameters

qbsolv_like

Parameters for the QBSOLV-like solver.

decomposer_size: int

Size of the decomposer. Default is 50.

rolling: bool

Whether to use a rolling history. Default is True.

rolling_history: float

The size of the rolling history. Default is 0.15.

max_iter: int

Maximum number of iterations. Default is 10.

max_time: int

Maximum time for the solver. Default is 5.

convergence: int

Convergence criteria. Default is 3.

target: Any, optional

The target for the solver.

cpu_count_multiplier: int

Multiplier for the CPU count. Default is 1.

rtol: float

Relative tolerance. Default is 1.0e-5.

atol: float

Absolute tolerance. Default is 1.0e-8.

qpu

Parameters for the QPU.

num_reads: int

Number of reads for the QPU. Default is 100.

num_retries: int

Number of retries for the QPU. Default is 0.

auto_embedding_params

Parameters for the auto embedding.

sampling_params

Parameters for the sampling.

Available

Parameters

{
  "qbsolv_like": {
    "decomposer_size": 50,
    "rolling": True,
    "rolling_history": 0.15,
    "max_iter": 10,
    "max_time": 5,
    "convergence": 3,
    "target": None,
    "cpu_count_multiplier": 1,
    "rtol": 1e-05,
    "atol": 1e-08
  },
  "qpu": {
    "num_reads": 100,
    "num_retries": 0,
    "auto_embedding_params": {
      "embedding_parameters": {
        "max_no_improvement": 10,
        "random_seed": None,
        "timeout": 1000,
        "max_beta": None,
        "tries": 10,
        "inner_rounds": None,
        "chainlength_patience": 10,
        "max_fill": None,
        "threads": 1,
        "return_overlap": False,
        "skip_initialization": False,
        "initial_chains": [],
        "fixed_chains": [],
        "restrict_chains": [],
        "suspend_chains": []
      }
    },
    "sampling_params": {
      "anneal_offsets": None,
      "anneal_schedule": None,
      "annealing_time": None,
      "auto_scale": None,
      "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": True
    }
  }
}

QPU Provider

dwave

QLSA - QBSolv Like Simulated Annealing

Description

QBSolv Like Simulated Annealing breaks down the problem and solves the parts individually using a classic solver that uses Simulated Annealing. This particular implementation uses hybrid.SimulatedAnnealingSubproblemSampler (https://docs.ocean.dwavesys.com/projects/hybrid/en/stable/reference/ samplers.html#simulatedannealingsubproblemsampler) as a sampler for the subproblems to achieve a QBSolv like behaviour.

Parameters

qbsolv_like

Parameters for the QBSOLV-like solver.

decomposer_size: int

Size of the decomposer. Default is 50.

rolling: bool

Whether to use a rolling history. Default is True.

rolling_history: float

The size of the rolling history. Default is 0.15.

max_iter: int

Maximum number of iterations. Default is 10.

max_time: int

Maximum time for the solver. Default is 5.

convergence: int

Convergence criteria. Default is 3.

target: Any, optional

The target for the solver.

cpu_count_multiplier: int

Multiplier for the CPU count. Default is 1.

rtol: float

Relative tolerance. Default is DEFAULT_RTOL.

atol: float

Absolute tolerance. Default is DEFAULT_ATOL.

simulated_annealing

Parameters for the Simulated Annealing.

num_reads: int, optional

Number of reads for the Simulated Annealing.

num_sweeps: int

Number of sweeps for the Simulated Annealing. Default is 1000.

beta_range: Any, optional

Beta range for the Simulated Annealing.

beta_schedule_type: str

Beta schedule type for the Simulated Annealing. Default is "geometric".

initial_states_generator: str

Initial states generator for the Simulated Annealing. Default is "random".

Available

True

Parameters

{
  "qbsolv_like": {
    "decomposer_size": 50,
    "rolling": True,
    "rolling_history": 0.15,
    "max_iter": 10,
    "max_time": 5,
    "convergence": 3,
    "target": None,
    "cpu_count_multiplier": 1,
    "rtol": 1e-05,
    "atol": 1e-08
  },
  "simulated_annealing": {
    "num_reads": None,
    "num_sweeps": 1000,
    "beta_range": None,
    "beta_schedule_type": "geometric",
    "initial_states_generator": "random"
  }
}

QPU Provider

None

Description

QBSolv Like Tabu Search breaks down the problem and solves the parts individually using a classic solver that uses Tabu Search. This particular implementation uses hybrid.TabuSubproblemSampler (https://docs.ocean.dwavesys.com/projects/hybrid/en/stable/reference/ samplers.html#tabusubproblemsampler) as a sampler for the subproblems to achieve a QBSolv like behaviour.

Parameters

qbsolv_like Parameters for the QBSOLV-like solver.

decomposer_size: int

Size of the decomposer. Default is 50.

rolling: bool

Whether to use a rolling history. Default is True.

rolling_history: float

The size of the rolling history. Default is 0.15.

max_iter: int

Maximum number of iterations. Default is 10.

max_time: int

Maximum time for the solver. Default is 5.

convergence: int

Convergence criteria. Default is 3.

target: Any, optional

The target for the solver.

cpu_count_multiplier: int

Multiplier for the CPU count. Default is 1.

rtol: float

Relative tolerance. Default is DEFAULT_RTOL.

atol: float

Absolute tolerance. Default is DEFAULT_ATOL.

tabu_search Parameters for the Tabu Search.

timeout: int

Timeout for the Tabu Search. Default is 100.

Available

Parameters

{
  "qbsolv_like": {
    "decomposer_size": 50,
    "rolling": True,
    "rolling_history": 0.15,
    "max_iter": 10,
    "max_time": 5,
    "convergence": 3,
    "target": None,
    "cpu_count_multiplier": 1,
    "rtol": 1e-05,
    "atol": 1e-08
  },
  "tabu_search": {
    "num_reads": None,
    "tenure": None,
    "timeout": 100,
    "initial_states_generator": "random"
  }
}

QPU Provider

None

QA - QuantumAnnealing

Description

The QuantumAnnealing uses a minor embedding to map problems onto a specified D-Wave sampler. The sampler solves the problem with the specified sampler method. With each call of the sampling method, the minor embedding is recalculated.

Parameters

auto_embedding_params Parameters for the auto embedding.

chain_strength: Any, optional

The chain strength for the embedding.

chain_break_method: Any, optional

The method to use for chain breaks.

chain_break_fraction: bool

Whether to use chain break fraction. Default is True.

embedding_parameters

Parameters for the embedding.

max_no_improvement: int

Maximum number of iterations without improvement. Default is 10.

random_seed: int, optional

Random seed for the embedding.

timeout: int

Timeout for the embedding. Default is 1000.

max_beta: int, optional

Maximum beta for the embedding.

tries: int

Number of tries for the embedding. Default is 10.

inner_rounds: int, optional

Number of inner rounds for the embedding.

chainlength_patience: int

Patience for chain length in the embedding. Default is 10.

max_fill: int, optional

Maximum fill for the embedding.

threads: int

Number of threads for the embedding. Default is 1.

return_overlap: bool

Whether to return overlap. Default is False.

skip_initialization: bool

Whether to skip initialization. Default is False.

initial_chains: Any

Initial chains for the embedding.

fixed_chains: Any

Fixed chains for the embedding.

restrict_chains: Any

Restricted chains for the embedding.

suspend_chains: Any

Suspended chains for the embedding.

return_embedding: Any, optional

Whether to return the embedding.

sampling_params_dict

Parameters for the sampling.

anneal_offsets: Any, optional

Anneal offsets for the sampling.

anneal_schedule: Any, optional

Anneal schedule for the sampling.

annealing_time: Any, optional

Annealing time for the sampling.

auto_scale: Any, optional

Whether to auto scale for the sampling.

flux_biases: Any, optional

Flux biases for the sampling.

flux_drift_compensation: bool

Whether to use flux drift compensation. Default is True.

h_gain_schedule: Any, optional

H gain schedule for the sampling.

initial_state: Any, optional

Initial state for the sampling.

max_answers: Any, optional

Maximum number of answers for the sampling.

num_reads: int

Number of reads for the sampling. Default is 1.

programming_thermalization: Any, optional

Programming thermalization for the sampling.

readout_thermalization: Any, optional

Readout thermalization for the sampling.

reduce_intersample_correlation: bool

Whether to reduce intersample correlation. Default is False.

reinitialize_state: bool

Whether to reinitialize state. Default is True.

Available

Parameters

{
  "embedding": {
    "chain_strength": None,
    "chain_break_method": None,
    "chain_break_fraction": True,
    "embedding_parameters": {
      "max_no_improvement": 10,
      "random_seed": None,
      "timeout": 1000,
      "max_beta": None,
      "tries": 10,
      "inner_rounds": None,
      "chainlength_patience": 10,
      "max_fill": None,
      "threads": 1,
      "return_overlap": False,
      "skip_initialization": False,
      "initial_chains": [],
      "fixed_chains": [],
      "restrict_chains": [],
      "suspend_chains": []
    },
    "return_embedding": None
  },
  "sampling_params": {
    "anneal_offsets": None,
    "anneal_schedule": None,
    "annealing_time": None,
    "auto_scale": None,
    "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": True
  }
}

QPU Provider

dwave

RRQA - Repeated Reverse Quantum Annealing

Description

Repeated Reverse Quantum Annealing begins the annealing process from a previously initialized state and increases the temperature from there. Afterwards, the temperature is decreased again until the solution is found. This procedure is repeated several times with this particular solver. (for additional information see: D-Wave Reverse Annealing)

Parameters

anneal_offsets: Any, optional

Anneal offsets for the sampling.

annealing_time: Any, optional

Annealing time for the sampling.

auto_scale: Any, optional

Whether to auto scale for the sampling.

flux_biases: Any, optional

Flux biases for the sampling.

flux_drift_compensation: bool

Whether to use flux drift compensation. Default is True.

h_gain_schedule: Any, optional

H gain schedule for the sampling.

max_answers: Any, optional

Maximum number of answers for the sampling.

programming_thermalization: Any, optional

Programming thermalization for the sampling.

readout_thermalization: Any, optional

Readout thermalization for the sampling.

reduce_intersample_correlation: bool

Whether to reduce intersample correlation. Default is False.

Available

Parameters

{
  "sampling_params": {
    "anneal_offsets": None,
    "annealing_time": None,
    "auto_scale": None,
    "flux_biases": None,
    "flux_drift_compensation": True,
    "h_gain_schedule": None,
    "max_answers": None,
    "programming_thermalization": None,
    "readout_thermalization": None,
    "reduce_intersample_correlation": False
  },
  "initial_states": None,
  "num_reads": 1,
  "beta_schedule": [
    0.5,
    3
  ],
  "timeout": 5,
  "max_iter": 10,
  "target": None,
  "check_trivial": True
}

QPU Provider

dwave

RRSA - Repeated Reverse Simulated Annealing

Description

Repeated Reverse Simulated Annealing finds the solution to a problem using an annealing process. Initially, random states are chosen in the solution landscape. Afterwards, as the temperature decreases, states are chosen that are more energetically favorable. At the end of the complete annealing process, the resulting states make up the solution.

Parameters

simulated_annealing

num_sweeps: int, optional Number of sweeps for the simulated annealing.

num_sweeps_per_beta: int

Number of sweeps per beta for the simulated annealing. Default is 1.

interrupt_function: Any, optional

Interrupt function for the simulated annealing.

beta_schedule: Any, optional

Beta schedule for the simulated annealing.

randomize_order: bool

Whether to randomize order for the simulated annealing. Default is False.

proposal_acceptance_criteria: str

Proposal acceptance criteria for the simulated annealing. Default is "Metropolis".

initial_states : Any, optional

Initial states for the solver.

timeout : int

Timeout for the solver. Default is 5.

max_iter : int

Maximum number of iterations for the solver. Default is 10.

target : Any, optional

The target for the solver.

Available

Parameters

{
  "simulated_annealing": {
    "num_reads": None,
    "num_sweeps": None,
    "beta_range": None,
    "beta_schedule_type": "geometric",
    "initial_states_generator": "random",
    "num_sweeps_per_beta": 1,
    "interrupt_function": None,
    "beta_schedule": None,
    "randomize_order": False,
    "proposal_acceptance_criteria": "Metropolis"
  },
  "initial_states": None,
  "timeout": 5,
  "max_iter": 10,
  "target": None
}

QPU Provider

dwave

SA - Simulated Annealing

Description

Simulated Annealing is a probabilistic technique for approximating the global optimum of a given function. It performs well on problems where approximate global optima are more desirable than exact local optima. For more details, check the DWave website.

Parameters

num_sweeps_per_beta: int

Number of sweeps per beta for the simulated annealing. Default is 1.

seed: Any, optional

Seed for the simulated annealing.

interrupt_function: Any, optional

Interrupt function for the simulated annealing.

beta_schedule: Any, optional

Beta schedule for the simulated annealing.

initial_states: Any, optional

Initial states for the simulated annealing.

randomize_order: bool

Whether to randomize order for the simulated annealing. Default is False.

proposal_acceptance_criteria: str

Proposal acceptance criteria for the simulated annealing. Default is "Metropolis".

Available

Parameters

{
  "num_reads": None,
  "num_sweeps": 1000,
  "beta_range": None,
  "beta_schedule_type": "geometric",
  "initial_states_generator": "random",
  "num_sweeps_per_beta": 1,
  "seed": None,
  "interrupt_function": None,
  "beta_schedule": None,
  "initial_states": None,
  "randomize_order": False,
  "proposal_acceptance_criteria": "Metropolis"
}

QPU Provider

None

Description

Tabu Search is a heuristic optimization method that works with the help of a tabu list. Initially, random states are chosen in the solution landscape. Afterwards, an iterative search for energetically better states in the neighborhood is started from these states. According to a tabu strategy, states are added to the tabu list that are not allowed to be selected as successor states for a tabu duration. The tabu search ends as soon as there are no better successor states in the neighborhood. The resulting state is therefore the solution to the problem.

Parameters

initial_states: Any, optional

Initial states for the solver.

initial_states_generator: str

Initial states generator for the solver. Default is "random".

num_reads: Any, optional

Number of reads for the solver.

seed: Any, optional

Seed for the solver.

tenure: Any, optional

Tenure for the solver.

timeout: int

Timeout for the solver. Default is 20.

num_restarts: int

Number of restarts for the solver. Default is 1_000_000.

energy_threshold: Any, optional

Energy threshold for the solver.

coefficient_z_first: Any, optional

Coefficient z first for the solver.

coefficient_z_restart: Any, optional

Coefficient z restart for the solver.

lower_bound_z: Any, optional

Lower bound z for the solver.

Available

Parameters

{
  "initial_states": None,
  "initial_states_generator": "random",
  "num_reads": None,
  "seed": None,
  "tenure": None,
  "timeout": 20,
  "num_restarts": 1000000,
  "energy_threshold": None,
  "coefficient_z_first": None,
  "coefficient_z_restart": None,
  "lower_bound_z": None
}

QPU Provider

None

Was this page helpful?