[PYTHON] J'ai essayé d'implémenter VQE avec Blueqat

VQE n'est-il pas à l'ère du NISQ? (Est-ce vraiment à venir ...?) J'ai donc essayé d'implémenter un problème simple avec Blueqat. Cette fois, je vais essayer de résoudre un problème d'optimisation de combinaison trivial afin de vérifier le fonctionnement du programme.

Le problème résolu cette fois

Résolvez les combinaisons suivantes de $ q (0) $ et $ q (1) $ qui minimisent le hamiltonien $ H . $ H = 1 - q(0) - q(1) $$ Notez que $ q (0) $ et $ q (1) $ valent 0 ou 1. Dans ce paramètre de problème, lorsque $ q (0) = q (1) = 1 $, hamiltonien $ H = -1 $ prend la valeur minimale.

Information supplémentaire

À propos, l'hamiltonien prend les valeurs suivantes pour toutes les combinaisons de $ q (0) et q (1) $.

Code source


from blueqat.pauli import qubo_bit as q
from blueqat.vqe import Vqe, QaoaAnsatz

#Hamiltonian
h = 1.0 - q(0) - q(1)

ansatz = QaoaAnsatz(h, 10)
runner = Vqe(ansatz)
result = runner.run()

print("mode:")
print(result.most_common())
print("minimum value:")
print(runner.ansatz.get_energy(result.circuit, runner.sampler))

Je n'expliquerai pas les détails du code source, mais c'est assez facile à écrire.

Résultat d'exécution

mode:
(((1, 1), 0.9999999999996781),)
minimum value:
-0.9999999999996781

Une combinaison de solutions de $ (1,1) \ rightarrow q (0) = 1, q (1) = 1 $

$ 0.999999999996781 \ rightarrow (1,1) $ Probabilité d'apparence (le résultat change à chaque exécution)

finalement

C'était vraiment facile à mettre en œuvre! Dans le futur, j'aimerais faire quelques applications.

Recommended Posts

J'ai essayé d'implémenter VQE avec Blueqat
Qiskit: j'ai implémenté VQE
J'ai essayé d'implémenter Attention Seq2Seq avec PyTorch
J'ai essayé d'implémenter la régularisation Shake-Shake (ShakeNet) avec PyTorch
J'ai implémenté CycleGAN (1)
J'ai implémenté ResNet!
J'ai joué avec wordcloud!
J'ai essayé de mettre en œuvre le co-filtrage (recommandation) avec redis et python
J'ai essayé fp-growth avec python
J'ai essayé de gratter avec Python
J'ai écrit GP avec numpy
J'ai essayé Learning-to-Rank avec Elasticsearch!
J'ai fait un blackjack avec du python!
Implémentation de word2vec avec Theano + Keras
J'ai essayé le clustering avec PyCaret
Implémentation de SMO avec Python + NumPy
J'ai essayé d'implémenter l'algorithme FloodFill avec TRON BATTLE de CodinGame
Implémentation du GAN conditionnel avec chainer
Je ne peux pas effectuer de recherche avec # google-map. ..
Implémentation d'un GAN efficace avec keras
J'ai essayé d'implémenter Extreme Learning Machine
J'ai mesuré l'IMC avec tkinter
J'ai essayé gRPC avec Python
J'ai créé COVID19_simulator avec JupyterLab
J'ai essayé de gratter avec du python
Implémentation de SmoothGrad avec Chainer v2
J'ai créé Word2Vec avec Pytorch
J'ai fait un blackjack avec Python.
Zura avec fonction softmax implémentée
J'ai créé wordcloud avec Python.
[Classification de texte] J'ai essayé d'implémenter des réseaux de neurones convolutifs pour la classification des phrases avec Chainer
J'ai essayé d'implémenter Deep VQE
Téléchargement de fichiers implémenté avec Python + Bottle
pyenv-vertualenv n'installe pas correctement la série python3
J'ai essayé de résumer des phrases avec summpy
J'ai essayé l'apprentissage automatique avec liblinear
J'ai essayé webScraping avec python.
J'ai essayé de déplacer de la nourriture avec SinGAN
[Python] J'ai essayé d'implémenter un échantillonnage de Gibbs marginalisé
Action que mysql-connector-python ne peut pas être installé avec anaconda
J'ai fait une loterie avec Python.
J'ai envoyé un SMS avec Python
J'ai comparé Qiskit et Blueqat (débutant)
J'ai essayé de mettre en œuvre un réseau de neurones à deux couches
J'ai essayé d'implémenter DeepPose avec PyTorch
J'ai aimé le tweet avec python. ..
J'ai essayé la détection de visage avec MTCNN
J'ai joué avec PyQt5 et Python3
Je ne peux pas utiliser le japonais avec pyperclip
Je veux faire ○○ avec les Pandas
J'ai joué avec Mecab (analyse morphologique)!
Je ne pourrais pas faire de gunicorn un démon avec Fabric
Je veux déboguer avec Python
J'ai essayé d'exécuter prolog avec python 3.8.2.
J'ai créé un démon avec Python
J'ai essayé la communication SMTP avec Python
J'ai essayé la génération de phrases avec GPT-2
J'ai essayé d'apprendre LightGBM avec Yellowbrick