Tutorial: Runing VQE on Braket backend¶
[1]:
from qiskit.algorithms import VQE
from qiskit.opflow import (
I,
X,
Z,
)
from qiskit.algorithms.optimizers import SLSQP
from qiskit.circuit.library import TwoLocal
from qiskit.utils import QuantumInstance, algorithm_globals
from qiskit_braket_provider import AWSBraketProvider, BraketLocalBackend
seed = 50
algorithm_globals.random_seed = seed
Get backend to run VQE with
[2]:
provider = AWSBraketProvider()
local_simulator = BraketLocalBackend()
local_simulator
[2]:
BraketBackend[sv_simulator]
[4]:
state_vector_simulator_backend = provider.get_backend("SV1")
state_vector_simulator_backend
[4]:
BraketBackend[SV1]
Running VQE
More docs on VQE and algorithms https://qiskit.org/documentation/tutorials/algorithms/01_algorithms_introduction.html#A-complete-working-example
[5]:
H2_op = (
(-1.052373245772859 * I ^ I)
+ (0.39793742484318045 * I ^ Z)
+ (-0.39793742484318045 * Z ^ I)
+ (-0.01128010425623538 * Z ^ Z)
+ (0.18093119978423156 * X ^ X)
)
qi = QuantumInstance(
state_vector_simulator_backend, seed_transpiler=seed, seed_simulator=seed
)
ansatz = TwoLocal(rotation_blocks="ry", entanglement_blocks="cz")
slsqp = SLSQP(maxiter=1)
vqe = VQE(ansatz, optimizer=slsqp, quantum_instance=qi)
result = vqe.compute_minimum_eigenvalue(H2_op)
print(result)
{ 'aux_operator_eigenvalues': None,
'cost_function_evals': 9,
'eigenstate': { '00': 0.7824990015968072,
'01': 0.489139870078079,
'10': 0.3814548629916782,
'11': 0.05412658773652741},
'eigenvalue': (-1.0606393547183097+0j),
'optimal_parameters': { ParameterVectorElement(θ[1]): 4.19301252102391,
ParameterVectorElement(θ[0]): 3.611860069224077,
ParameterVectorElement(θ[2]): 0.6019852007557844,
ParameterVectorElement(θ[3]): 5.949536809130025,
ParameterVectorElement(θ[4]): -3.3070470445355764,
ParameterVectorElement(θ[6]): -5.466043598406607,
ParameterVectorElement(θ[7]): 0.6984088030463615,
ParameterVectorElement(θ[5]): 1.8462931831829383},
'optimal_point': array([ 3.61186007, 4.19301252, 0.6019852 , 5.94953681, -3.30704704,
1.84629318, -5.4660436 , 0.6984088 ]),
'optimal_value': -1.0606393547183097,
'optimizer_evals': None,
'optimizer_time': 54.37140512466431}