Skip to content

Tutorial on Variational Quantum Eigensolver (VQE). Originally created for QOSF Mentorship Screening Task Submission (Task 4, batch 2020).

Notifications You must be signed in to change notification settings

stfnmangini/VQE_from_scratch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Variational Quantum Eigensolver (VQE) from scratch

A Variational Quantum Eigensolver (VQE for short), is a hybrid classical-quantum algorithm for finding eigenvalues of a matrix, first proposed in [1]. This notebook is a tutorial on how to build a VQE from scratch, and use it to find the lowest eigenvalue of a 4x4 matrix.
(Sooner or later, I'll publish a blogpost explaining more in detail what is a VQE, I promise 🙏).

NOTE: This notebook was originally created for the screening task of the Quantum Open Source Foundation (QOSF) Mentorship Program (second batch, 2020). If you don't know already, QOSF is a fantastic project aiming to support and help with the development of open-source codes for the quantum computing community. For more information, great learning resources, and a list of supported projects, visit https://qosf.org/

[1] Peruzzo, A., McClean, J., Shadbolt, P. et al. A variational eigenvalue solver on a photonic quantum processor. Nat Commun 5, 4213 (2014).


Brief summary

The tutorial is in the form of a Jupyter Notebook.

First there is a more theoretical part discussing the main concepts of the algorithm, and subsequently its actual code implementation properly commented and explained (hope so 😅).

The quantum circuits are built using Qiskit. In addition, Numpy and Scipy are needed for the execution.

If you have any questions, doubts and suggestions, don't hesitate to contact me!

Have fun! 😄

About

Tutorial on Variational Quantum Eigensolver (VQE). Originally created for QOSF Mentorship Screening Task Submission (Task 4, batch 2020).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published