GroverOptimizer

class GroverOptimizer(num_value_qubits, num_iterations=3, quantum_instance=None, converters=None, penalty=None, sampler=None)[fuente]

Bases: OptimizationAlgorithm

Uses Grover Adaptive Search (GAS) to find the minimum of a QUBO function.

Parámetros:
  • num_value_qubits (int) – The number of value qubits.

  • num_iterations (int) – The number of iterations the algorithm will search with no improvement.

  • quantum_instance (Backend | QuantumInstance | None) – Instance of selected backend, defaults to Aer’s statevector simulator.

  • converters (QuadraticProgramConverter | List[QuadraticProgramConverter] | None) – The converters to use for converting a problem into a different form. By default, when None is specified, an internally created instance of QuadraticProgramToQubo will be used.

  • penalty (float | None) – The penalty factor used in the default QuadraticProgramToQubo converter

  • sampler (BaseSampler | None) – A Sampler to use for sampling the results of the circuits.

Muestra:
  • ValueError – If both a quantum instance and sampler are set.

  • TypeError – When there one of converters is an invalid type.

Attributes

quantum_instance

The quantum instance to run the circuits.

Methods

get_compatibility_msg(problem)

Checks whether a given problem can be solved with this optimizer.

is_compatible(problem)

Checks whether a given problem can be solved with the optimizer implementing this method.

solve(problem)

Tries to solves the given problem using the grover optimizer.