Skip to main content

Fast quadratic programming tools (with CUDA support)

Project description

qptools

Fast quadratic programming tools.

中文 | English

Platforms

  • Windows: To Do
  • Linux: Supports CPU and CUDA versions
  • MacOS: Supports CPU version

Dependencies

Installation

CPU version

Install the package without CUDA support

pip install qptools

CUDA version

export CUDA_HOME=(your cuda path)
export USE_CUDA=1
pip install qptools

Solving Quadratic Programming Problems

qp1: Basic Quadratic Programming

$$ \min_{x} \frac12 x^TPx+q^Tx \ \text{s.t. } lb \leq x \leq rb, \ Gx \leq h $$

where $P$ is a $n\times n$ positive definite matrix, $q$ is an $n$-dimensional vector, $G$ is a $g\times n$ matrix, $h$ is a $g$-dimensional vector, and $lb,rb$ are $n$-dimensional vectors defining the lower and upper bounds for variable $x$.

qp2: Quadratic Programming with Standardized Variables

$$ \min_{x} \frac12 x^TPx+q^Tx \ \text{s.t. } lb \leq \frac{x}{\text{sum}(x)} \leq rb, \ Gx \leq h $$

where $P$ is a $(n,n)$ positive definite matrix, $q$ is an $n$-dimensional vector, $G$ is a $(g,n)$ matrix, $h$ is a $g$-dimensional vector, and $lb,rb$ are $n$-dimensional vectors defining the lower and upper bounds for standardized variable $\frac{x}{\sum(x)}$.

Example

References

  1. Nesterov, Y., & Todd, M. J. (1997). Self-scaled barriers and interior-point methods for convex programming. Mathematics of Operations Research, 22(1), 1-42.

  2. Nesterov, Y., & Todd, M. J. (1998). Primal-dual interior-point methods for self-scaled cones. SIAM Journal on Optimization, 8(2), 324-364.

  3. Mehrotra, S. (1992). On the implementation of a primal-dual interior point method. SIAM Journal on Optimization, 2(4), 575-601.

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

qptools-1.0.3.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

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

qptools-1.0.3-cp312-cp312-macosx_11_0_arm64.whl (90.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

File details

Details for the file qptools-1.0.3.tar.gz.

File metadata

  • Download URL: qptools-1.0.3.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for qptools-1.0.3.tar.gz
Algorithm Hash digest
SHA256 b6e8e4e6cda859620e4d42ec24ce1724ae00b1f0f5b6a70b6d58e178a2066b58
MD5 527eaa41ebfcc4b641f549fea0f4ff15
BLAKE2b-256 5198b682c6aad87482de32e2ba8c8df7c9460f1fa97e5bddc1761af1083f5fb5

See more details on using hashes here.

File details

Details for the file qptools-1.0.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for qptools-1.0.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 56cdd6f07327b928d48e771e07d9dbf06ead701c0cd0358ffd961b878ffc08a5
MD5 202614eef7e6fe19c68e12ba5169ef19
BLAKE2b-256 69f7b6ba46eaf9e7d6cfdd6a69dfbeb6877aea63ae3e41e65f60179f105161f3

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