Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.
Important

IBM Quantum Platform is moving and this version will be sunset on July 1. To get started on the new platform, read the migration guide.

VQEAdapt

class VQEAdapt(operator, var_form_base, optimizer, initial_point=None, excitation_pool=None, threshold=1e-05, delta=1, max_evals_grouped=1, aux_operators=None, quantum_instance=None)

GitHub

The Adaptive VQE algorithm.

See https://arxiv.org/abs/1812.11173

Parameters

  • operator (LegacyBaseOperator) – Qubit operator
  • var_form_base (VariationalForm) – base parameterized variational form
  • optimizer (Optimizer) – the classical optimizer algorithm
  • initial_point (Optional[ndarray]) – optimizer initial point
  • excitation_pool (Optional[List[WeightedPauliOperator]]) – list of excitation operators
  • threshold (float) – absolute threshold value for gradients, has a min. value of 1e-15.
  • delta (float) – finite difference step size for gradient computation, has a min. value of 1e-5.
  • max_evals_grouped (int) – max number of evaluations performed simultaneously
  • aux_operators (Optional[List[LegacyBaseOperator]]) – Auxiliary operators to be evaluated at each eigenvalue
  • quantum_instance (Union[QuantumInstance, BaseBackend, None]) – Quantum Instance or Backend

Raises

  • ValueError – if var_form_base is not an instance of UCCSD.
  • See also – qiskit/chemistry/components/variational_forms/uccsd_adapt.py

Attributes

backend

Type: qiskit.providers.basebackend.BaseBackend

Returns backend.

Return type

BaseBackend

initial_point

Type: Optional[numpy.ndarray]

Returns initial point

Return type

Optional[ndarray]

optimal_params

returns optimal parameters

optimizer

Type: Optional[qiskit.aqua.components.optimizers.optimizer.Optimizer]

Returns optimizer

Return type

Optional[Optimizer]

quantum_instance

Type: Union[None, qiskit.aqua.quantum_instance.QuantumInstance]

Returns quantum instance.

Return type

Optional[QuantumInstance]

random

Return a numpy random.

var_form

Type: Optional[Union[qiskit.circuit.quantumcircuit.QuantumCircuit, qiskit.aqua.components.variational_forms.variational_form.VariationalForm]]

Returns variational form

Return type

Union[QuantumCircuit, VariationalForm, None]


Methods

cleanup_parameterized_circuits

VQEAdapt.cleanup_parameterized_circuits()

set parameterized circuits to None

find_minimum

VQEAdapt.find_minimum(initial_point=None, var_form=None, cost_fn=None, optimizer=None, gradient_fn=None)

Optimize to find the minimum cost value.

Parameters

  • initial_point (Optional[ndarray]) – If not None will be used instead of any initial point supplied via constructor. If None and None was supplied to constructor then a random point will be used if the optimizer requires an initial point.
  • var_form (Union[QuantumCircuit, VariationalForm, None]) – If not None will be used instead of any variational form supplied via constructor.
  • cost_fn (Optional[Callable]) – If not None will be used instead of any cost_fn supplied via constructor.
  • optimizer (Optional[Optimizer]) – If not None will be used instead of any optimizer supplied via constructor.
  • gradient_fn (Optional[Callable]) – Optional gradient function for optimizer

Returns

Optimized variational parameters, and corresponding minimum cost value.

Return type

dict

Raises

ValueError – invalid input

get_optimal_circuit

VQEAdapt.get_optimal_circuit()

get optimal circuit

get_optimal_cost

VQEAdapt.get_optimal_cost()

get optimal cost

get_optimal_vector

VQEAdapt.get_optimal_vector()

get optimal vector

get_prob_vector_for_params

VQEAdapt.get_prob_vector_for_params(construct_circuit_fn, params_s, quantum_instance, construct_circuit_args=None)

Helper function to get probability vectors for a set of params

get_probabilities_for_counts

VQEAdapt.get_probabilities_for_counts(counts)

get probabilities for counts

run

VQEAdapt.run(quantum_instance=None, **kwargs)

Execute the algorithm with selected backend.

Parameters

Returns

results of an algorithm.

Return type

dict

Raises

AquaError – If a quantum instance or backend has not been provided

set_backend

VQEAdapt.set_backend(backend, **kwargs)

Sets backend with configuration.

Return type

None

Was this page helpful?
Report a bug or request content on GitHub.