MaximumLikelihoodAmplitudeEstimation¶
- class MaximumLikelihoodAmplitudeEstimation(num_oracle_circuits, a_factory=None, q_factory=None, i_objective=None, likelihood_evals=None, quantum_instance=None)[source]¶
The Maximum Likelihood Amplitude Estimation algorithm.
This class implements the an quantum amplitude estimation (QAE) algorithm without phase estimation, according to https://arxiv.org/abs/1904.10246. In comparison to the original QAE algorithm (https://arxiv.org/abs/quant-ph/0005055), this implementation relies solely on different powers of the Grover algorithm and does not require ancilla qubits. Finally, the estimate is determined via a maximum likelihood estimation, which is why this class in named MaximumLikelihoodAmplitudeEstimation.
- Parameters
num_oracle_circuits (
int
) – The number of circuits applying different powers of the Grover oracle Q. The (num_oracle_circuits + 1) executed circuits will be [id, Q^2^0, …, Q^2^{num_oracle_circuits-1}] A |0>, where A is the problem unitary encoded in the argument a_factory. Has a minimum value of 1.a_factory (
Optional
[CircuitFactory
]) – The CircuitFactory subclass object representing the problem unitary.q_factory (
Optional
[CircuitFactory
]) – The CircuitFactory subclass object representing. an amplitude estimation sample (based on a_factory)i_objective (
Optional
[int
]) – The index of the objective qubit, i.e. the qubit marking ‘good’ solutions with the state |1> and ‘bad’ solutions with the state |0>likelihood_evals (
Optional
[int
]) – The number of gridpoints for the maximum search of the likelihood functionquantum_instance (
Union
[QuantumInstance
,BaseBackend
,None
]) – Quantum Instance or Backend
Attributes
Get the A operator encoding the amplitude a that’s approximated, i.e.
Returns backend.
Get the index of the objective qubit.
Get the Q operator, or Grover-operator for the Amplitude Estimation algorithm, i.e.
Returns quantum instance.
Return a numpy random.
Methods
MaximumLikelihoodAmplitudeEstimation.confidence_interval
(alpha)Compute the alpha confidence interval using the method kind.
MaximumLikelihoodAmplitudeEstimation.construct_circuits
([…])Construct the Amplitude Estimation w/o QPE quantum circuits.
Execute the algorithm with selected backend.
Sets backend with configuration.