Skip to main content

Quantum Optimization Toolkit

Project description

Quantum Optimization Toolkit

Tests arXiv PyPi version PyPI download month PyPI pyversions PyPI license

This repository contains fast CPU and GPU simulators for benchmarking the Quantum Approximate Optimization Algorithm, as well as scripts for generating matching quantum circuits for execution on hardware. See the examples folder for a demo of this package.

Install

Creating a virtual environment is recommended before installing.

python -m venv qokit
source qokit/bin/activate
pip install -U pip

Install requires python>=3.9 and pip >= 23. It is recommended to update your pip using pip install --upgrade pip before install.

git clone https://github.com/jpmorganchase/QOKit.git
cd QOKit/
pip install -e .

Some optional parts of the package require additional dependencies.

  • Using commercial IP solvers to solve optimizations problems: pip install qokit[solvers]
  • GPU simulation: pip install qokit[GPU]
  • Development: pip install qokit[dev]

If compilation fails, try installing just the Python version using QOKIT_PYTHON_ONLY=1 pip install -e ..

Installation can be verified by running tests using pytest.

MaxCut

For MaxCut, the datasets in qokit/assets/maxcut_datasets must be inflated

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qokit-0.1.3.tar.gz (12.5 MB view hashes)

Uploaded Source

Built Distributions

qokit-0.1.3-pp310-pypy310_pp73-win_amd64.whl (12.8 MB view hashes)

Uploaded PyPy Windows x86-64

qokit-0.1.3-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.7 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

qokit-0.1.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (12.7 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

qokit-0.1.3-pp310-pypy310_pp73-macosx_10_9_x86_64.whl (12.7 MB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

qokit-0.1.3-pp39-pypy39_pp73-win_amd64.whl (12.8 MB view hashes)

Uploaded PyPy Windows x86-64

qokit-0.1.3-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.7 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

qokit-0.1.3-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (12.7 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

qokit-0.1.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl (12.7 MB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

qokit-0.1.3-cp312-cp312-win_amd64.whl (12.8 MB view hashes)

Uploaded CPython 3.12 Windows x86-64

qokit-0.1.3-cp312-cp312-win32.whl (12.8 MB view hashes)

Uploaded CPython 3.12 Windows x86

qokit-0.1.3-cp312-cp312-musllinux_1_1_x86_64.whl (12.8 MB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

qokit-0.1.3-cp312-cp312-musllinux_1_1_i686.whl (12.8 MB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.1+ i686

qokit-0.1.3-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.8 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

qokit-0.1.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (12.8 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

qokit-0.1.3-cp312-cp312-macosx_10_9_x86_64.whl (12.7 MB view hashes)

Uploaded CPython 3.12 macOS 10.9+ x86-64

qokit-0.1.3-cp311-cp311-win_amd64.whl (12.8 MB view hashes)

Uploaded CPython 3.11 Windows x86-64

qokit-0.1.3-cp311-cp311-win32.whl (12.8 MB view hashes)

Uploaded CPython 3.11 Windows x86

qokit-0.1.3-cp311-cp311-musllinux_1_1_x86_64.whl (12.8 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

qokit-0.1.3-cp311-cp311-musllinux_1_1_i686.whl (12.8 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

qokit-0.1.3-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.8 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

qokit-0.1.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (12.8 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

qokit-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl (12.7 MB view hashes)

Uploaded CPython 3.11 macOS 10.9+ x86-64

qokit-0.1.3-cp310-cp310-win_amd64.whl (12.8 MB view hashes)

Uploaded CPython 3.10 Windows x86-64

qokit-0.1.3-cp310-cp310-win32.whl (12.8 MB view hashes)

Uploaded CPython 3.10 Windows x86

qokit-0.1.3-cp310-cp310-musllinux_1_1_x86_64.whl (12.8 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

qokit-0.1.3-cp310-cp310-musllinux_1_1_i686.whl (12.8 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

qokit-0.1.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.8 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

qokit-0.1.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (12.8 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

qokit-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl (12.7 MB view hashes)

Uploaded CPython 3.10 macOS 10.9+ x86-64

qokit-0.1.3-cp39-cp39-win_amd64.whl (12.8 MB view hashes)

Uploaded CPython 3.9 Windows x86-64

qokit-0.1.3-cp39-cp39-win32.whl (12.8 MB view hashes)

Uploaded CPython 3.9 Windows x86

qokit-0.1.3-cp39-cp39-musllinux_1_1_x86_64.whl (12.8 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

qokit-0.1.3-cp39-cp39-musllinux_1_1_i686.whl (12.8 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

qokit-0.1.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.8 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

qokit-0.1.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (12.8 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

qokit-0.1.3-cp39-cp39-macosx_10_9_x86_64.whl (12.7 MB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page