qiboteam / boostvqe

Using DBI to boost VQE optimization
4 stars 1 forks source link

Compiling xxz #34

Closed marekgluza closed 4 months ago

marekgluza commented 5 months ago

This PR delivers the current code which compiles into CNOT+R different DBI strategies:

  1. Start by running https://github.com/qiboteam/boostvqe/blob/compiling_XXZ/notebooks/running_boosting.ipynb

  2. You can explore the different settings:

    • loading of different vqe results based on stating the number of qubits and layers etc
    • target epoch of the VQE circuit that will be boosted
    • how many steps will be evaluated
    • you can use different initializations which use different parametrizations of $D=H(B,J=0)$ or $D=H(B,J)$
    • number of gradient epochs
    • the notebook runs on verbose and visual so it will provide plots and outputs about the performance
  3. The goal of this PR is to have a version of the code which will be evaluated on the cluster

  4. This PR doesn't deliver systematic plots and storing - this remains to be done in the load_vqe.py conventions

Please review with priority - we need to run using this stuff asap so that we have results that we can discuss at TII.

Thanks @Sam-XiaoyueLi for helping out!

Also, thanks @khanhuyengiang @jeongrak-son and @shangtai for contributions

khanhuyengiang commented 5 months ago

Hi @marekgluza and @jeongrak-son, I have pushed the concise compiling code, see compiling_XXZ.py and compiling_XXZ_test.py. Please check and let me know if there is any issue. Thanks!

marekgluza commented 4 months ago

For future reference moving here our description of a previous feature:

Following Vatan and Williams https://arxiv.org/pdf/quant-ph/0308006

the 2 qubit Heisenberg gate defined in their notation as $N$ Przechwycenie obrazu ekranu_2024-05-30_05-50-19 can be implemented with the circuit Przechwycenie obrazu ekranu_2024-05-30_05-51-37

This is a simplification from what Kay was trying to use and found a bug.

marekgluza commented 4 months ago

Closing for clarity: we will merge #52 into the master which will be easier to review