Skip to main content

This is a software package to support the mapping of combinatorial optimization problems to quantum computing interfaces via QUBO and Ising problems.

Project description

quark - QUantum Application Reformulation Kernel

pipeline status

This is a software package to support the mapping of combinatorial optimization problems to quantum computing interfaces via QUBO and Ising problems.

Documentation

The full documentation can be found here.

Description of the Basic Ideas

The combinatorial optimization problem is rewritten as a single (quadratic unconstrained binary) objective function. The usual way to build it up is to use the following structure: In the Instance we describe the problem defining parameters. From the instance, we construct the ObjectiveTerms, containing the different contributions to the objective function, in particular the ones derived from problem constraints. The objective terms can be implemented directly or derived from a ConstrainedObjective, which contains the objective function and multiple constraints, implemented as ConstraintBinary. The objective terms can now be used to create the Objective by summing up the single terms weighted with a certain so-called penalty weight.

All objective objects contain Polynomials representing the functions. There are special polynomials, PolyBinary and PolyIsing, which take advantage of the restriction to either binary (0 or 1) or spin (-1 or 1) variables.

The ScipModel is an interface to the classical MILP solver SCIP, which can solve a ConstrainedObjective or a (small enough) Objective for comparison. In Solution, we store not only the optimal variable assignment but also further information, like runtime etc., which are obtained during the solving process.

Furthermore, we have the HardwareAdjacency and the Embedding, which are useful when dealing with actual hardware.

All mentioned objects also provide methods to store and load their information in and from hdf5 files.

License

This project is Apache-2.0 licensed.

Copyright © 2025 German Aerospace Center (DLR) - Institute of Software Technology (SC).

Please find the individual contributors here and information for citing this package here.

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

dlr_sc_quark-1.2.tar.gz (119.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dlr_sc_quark-1.2-py3-none-any.whl (180.4 kB view details)

Uploaded Python 3

File details

Details for the file dlr_sc_quark-1.2.tar.gz.

File metadata

  • Download URL: dlr_sc_quark-1.2.tar.gz
  • Upload date:
  • Size: 119.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.13

File hashes

Hashes for dlr_sc_quark-1.2.tar.gz
Algorithm Hash digest
SHA256 5fec359bc4d3c81616e281a80541f9af05802b67818545fc58380ad542af1e3c
MD5 60ed7964895d758fbf9704f3bf2e37b4
BLAKE2b-256 143333c120e791d1e1d2ed2d187fce2ea4a1111f7707aa9a8bb825c8923a8053

See more details on using hashes here.

File details

Details for the file dlr_sc_quark-1.2-py3-none-any.whl.

File metadata

  • Download URL: dlr_sc_quark-1.2-py3-none-any.whl
  • Upload date:
  • Size: 180.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.13

File hashes

Hashes for dlr_sc_quark-1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7cbc0a5895afbc32b7f6b1ebe25034c1c5009f96429441fdc706df0decf919c9
MD5 213764a8987b978f8d82fdb6d12aa490
BLAKE2b-256 040c1b243662e0270eae21afb383c39fdee97f6c5f20bc440be98976587762b0

See more details on using hashes here.

Supported by

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