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.