Objective function(s)
qiskit_addon_aqc_tensor.objective
Code for building and evaluating objective functions used for AQC parameter optimization.
Currently, this module provides the simplest possible objective function, MaximizeStateFidelity.
MaximizeStateFidelity
class MaximizeStateFidelity(target, ansatz, settings)
Bases: object
Simplest possible objective function for use with AQC-Tensor.
Its definition is given by Eq. (7) in arXiv:2301.08609v6:
Minimizing this function is equivalent to maximizing the pure-state fidelity between the state prepared by the ansatz circuit at the current parameter point, , and the target state, .
When called with an ndarray of parameters, this object will return (objective_value, gradient) as a tuple[float, numpy.ndarray].
Initialize the objective function.
Parameters
- ansatz (
QuantumCircuit) – Parametrized ansatz circuit. - target (
TensorNetworkState) – Target state in tensor-network representation. - settings (
TensorNetworkSimulationSettings) – Tensor network simulation settings.
loss_function
loss_function(x)
Evaluate (objective_value, gradient) of function at point x.
Return type
Parameters
x (ndarray)
target
Type: TensorNetworkState
Target tensor network.
OneMinusFidelity
class OneMinusFidelity(target, ansatz, settings)
Bases: MaximizeStateFidelity
DEPRECATED objective function, equivalent to MaximizeStateFidelity.
Initialize the objective function.
The OneMinusFidelity class is DEPRECATED since v0.2. Please migrate to MaximizeStateFidelity as soon as possible.
The class qiskit_addon_aqc_tensor.objective.OneMinusFidelity is deprecated as of qiskit-addon-aqc-tensor 0.2.0. It will be removed no earlier than v0.4.0. This class has been renamed to MaximizeStateFidelity.
Parameters
- ansatz (
QuantumCircuit) – Parametrized ansatz circuit. - target (
TensorNetworkState) – Target state in tensor-network representation. - settings (
TensorNetworkSimulationSettings) – Tensor network simulation settings.
__call__
__call__(x)
Evaluate (objective_value, gradient) of function at point x.
This method is DEPRECATED since v0.2. The loss_function() method should be called instead.
Return type
Parameters
x (ndarray)
The method qiskit_addon_aqc_tensor.objective.MaximizeStateFidelity.__call__() is deprecated as of qiskit-addon-aqc-tensor 0.2.0. It will be removed no earlier than v0.4.0. Going forward, the loss_function method should be called instead of calling the instance directly.
loss_function
loss_function(x)
Evaluate (objective_value, gradient) of function at point x.
Return type
Parameters
x (ndarray)
target
Type: TensorNetworkState
Target tensor network.