Skip to main content

OpenQAOA is a python open-source multi-backend Software Development Kit to create, customise and execute the Quantum Approximate Optimisation Algorithm (QAOA) on Noisy Intermediate-Scale Quantum (NISQ) devices, and simulators

Project description

OpenQAOA

build test Documentation Status PyPI version arXiv License Contributor Covenant Downloads Binder Discord Website

OpenQAOA-Core

OpenQAOA is a multi-backend python library for quantum optimization using QAOA on Quantum computers and Quantum computer simulators. This package is part of a set of OpenQAOA plug-ins and forms the core functionality of the package. It includes all backend agnostic elements of the QAOA process. Along with other OpenQAOA plug-in extensions enables users to seemlessly run QAOA computations across multiple Quantum Computers. Additionally, it also comes bundled with Entropica's fast QAOA simulator called vectorized and a unit-depth QAOA analytical simulator (you can find more details in the Getting Started section). Check out OpenQAOA website https://openqaoa.entropicalabs.com/

OpenQAOA is currently in OpenBeta.

Please, consider joining our discord if you want to be part of our community and participate in the OpenQAOA's development.

Installation instructions

Install via PyPI

You can install the latest version of openqaoa-core directly from PyPi. We recommend creating a virtual environment with python>=3.8 first and then simply pip install openqaoa-core with the following command.

pip install openqaoa-core

Installation instructions for Developers

OpenQAOA-Core does not yet support developer install as a standalone package. If you wish to work in developer mode, please install the entire library. Instructions are available here

Should you face any issue during the installation, please drop us an email at openqaoa@entropicalabs.com or open an issue!

Getting started

The documentation for OpenQAOA-Core can be found here.

We also provide a set of tutorials to get you started. Among the many, perhaps you can get started with the following ones:

Key Features

  • Build advanced QAOAs. Create complex QAOAs by specifying custom parametrisation, mixer hamiltonians, classical optimisers and execute the algorithm on either simulators or QPUs.

  • Recursive QAOA. Run RQAOA with fully customisable schedules on simulators and QPUs alike.

  • QPU access. Built in access for IBM Quantum, Rigetti QCS, Amazon Braket and Azure Quantum (Please install the OpenQAOA plugin corresponding to the QPU platform for running QAOA on these devices).

Available devives

Devices are serviced both locally and on the cloud. For the IBM Quantum experience, the available devices depend on the specified credentials. For QCS and Amazon Braket, the available devices are listed in the table below:

Device location Device Name
local ['vectorized', 'analytical_simulator']

Running the tests

TODO

Contributing and feedback

If you find any bugs or errors, have feature requests, or code you would like to contribute, feel free to open an issue or send us a pull request on GitHub.

We are always interested to hear about projects built with EntropicaQAOA. If you have an application you'd like to tell us about, drop us an email at openqaoa@entropicalabs.com.

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

openqaoa_core-0.2.6.tar.gz (312.8 kB view details)

Uploaded Source

Built Distribution

openqaoa_core-0.2.6-py3-none-any.whl (291.4 kB view details)

Uploaded Python 3

File details

Details for the file openqaoa_core-0.2.6.tar.gz.

File metadata

  • Download URL: openqaoa_core-0.2.6.tar.gz
  • Upload date:
  • Size: 312.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for openqaoa_core-0.2.6.tar.gz
Algorithm Hash digest
SHA256 1af1645cd3697300e3ac3e8381b1c02acffddb67d4c86de286f4a1472ae574f2
MD5 87dd55192fbce27cd371e4456cb2b30c
BLAKE2b-256 a65475952161077b6c72d3c18c230cda70604a7740c45536ce8900104e415b15

See more details on using hashes here.

File details

Details for the file openqaoa_core-0.2.6-py3-none-any.whl.

File metadata

File hashes

Hashes for openqaoa_core-0.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 0356bbb0c392a95bf3d2f9037b5de9fcc1e13885d4c9b114f2ed2627357c8a6e
MD5 658532ffded8ecc87ee06f6ff1b3975d
BLAKE2b-256 a15cb642700e3a4f03c1161d9851e8f5d16447e720a44511753415a4e5a7b102

See more details on using hashes here.

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