Skip to content
This repository has been archived by the owner on Apr 11, 2024. It is now read-only.

Numerical optimizers for decomposing unitary ops, or Hamiltonian parameter sweeping

License

Notifications You must be signed in to change notification settings

Pitt-JonesLab/slam_decomposition

Repository files navigation

SLAM [Speed-Limit Analysis decoMposition]

Numerical optimizers for decomposing unitary ops, or Hamiltonian parameter sweeping.

☠️ This repository is no longer maintained

@inproceedings{mckinney2023parallel,
  author = {McKinney, Evan and Zhou, Chao and Xia, Mingkang and Hatridge, Michael and Jones, Alex K.},
  title = {Parallel Driving for Fast Quantum Computing Under Speed Limits},
  year = {2023},
  isbn = {9798400700958},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3579371.3589075},
  doi = {10.1145/3579371.3589075},
  booktitle = {Proceedings of the 50th Annual International Symposium on Computer Architecture},
  articleno = {40},
  numpages = {13},
  keywords = {basis gate, transpilation, weyl chamber},
  location = {Orlando, FL, USA},
  series = {ISCA '23}
}

Tests Format Check


⚠️ README & documentation is deprecated Current package refactor is breaking main with some relative import statemetns, use isca_23 branch instead.

Example Usage:

from basis import CircuitTemplate
basis = CircuitTemplate(maximum_span_guess=4, preseed=False)
from cost_function import BasicCost
objective = BasicCost()
from optimizer import TemplateOptimizer
optimizer = TemplateOptimizer(basis=basis, objective=objective, use_callback=True)
from sampler import HaarSample
sampler = HaarSample(n_samples=1)
ret = optimizer.approximate_from_distribution(sampler=sampler)
INFO:root:Starting sample iter 0
INFO:root:Begin search: (0.58941013, 0.22184674, 0.11209285)
INFO:root:Starting opt on template size 1
INFO:root:Starting opt on template size 2
INFO:root:Break on cycle 2
INFO:root:Loss=1.0999245958487336e-10
INFO:root:Success: (0.58941013, 0.22184674, 0.11209285)
INFO:root:Saving data back to file
from utils.visualize import optimizer_training_plot
optimizer_training_plot(*ret)

image


About

Numerical optimizers for decomposing unitary ops, or Hamiltonian parameter sweeping

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published