Skip to main content

Clarabel Conic Interior Point Solver for Rust / Python

Project description


Interior Point Conic Optimization for Rust and Python

FeaturesInstallationLicenseDocumentation

Clarabel.rs is a Rust implementation of an interior point numerical solver for convex optimization problems using a novel homogeneous embedding. Clarabel.rs solves the following problem:

$$ \begin{array}{r} \text{minimize} & \frac{1}{2}x^T P x + q^T x\\[2ex] \text{subject to} & Ax + s = b \\[1ex] & s \in \mathcal{K} \end{array} $$

with decision variables $x \in \mathbb{R}^n$, $s \in \mathbb{R}^m$ and data matrices $P=P^\top \succeq 0$, $q \in \mathbb{R}^n$, $A \in \mathbb{R}^{m \times n}$, and $b \in \mathbb{R}^m$. The convex set $\mathcal{K}$ is a composition of convex cones.

For more information see the Clarabel Documentation (stable | dev).

Clarabel is also available in a Julia implementation. See here.

Features

  • Versatile: Clarabel.rs solves linear programs (LPs), quadratic programs (QPs) and second-order cone programs (SOCPs). Future versions will provide support for problems involving positive semidefinite, exponential and power cones.
  • Quadratic objectives: Unlike interior point solvers based on the standard homogeneous self-dual embedding (HSDE), Clarabel.rs handles quadratic objectives without requiring any epigraphical reformulation of the objective. It can therefore be significantly faster than other HSDE-based solvers for problems with quadratic objective functions.
  • Infeasibility detection: Infeasible problems are detected using a homogeneous embedding technique.
  • Open Source: Our code is available on GitHub and distributed under the Apache 2.0 License

Installation

Clarabel can be imported to Cargo based Rust projects by adding

[dependencies]
clarabel = "0"  

to the project's Cargo.toml file. To install from source, see the Rust Installation Documentation.

To use the Python interface to the solver:

pip install clarabel

To install the Python interface from source, see the Python Installation Documentation.

License 🔍

This project is licensed under the Apache License - see the LICENSE.md file for details.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

clarabel-0.1.0-cp37-abi3-win_amd64.whl (269.6 kB view details)

Uploaded CPython 3.7+Windows x86-64

clarabel-0.1.0-cp37-abi3-win32.whl (251.0 kB view details)

Uploaded CPython 3.7+Windows x86

clarabel-0.1.0-cp37-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.5+ x86-64

clarabel-0.1.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.whl (1.2 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.5+ i686

clarabel-0.1.0-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (749.7 kB view details)

Uploaded CPython 3.7+macOS 10.9+ universal2 (ARM64, x86-64)macOS 10.9+ x86-64macOS 11.0+ ARM64

clarabel-0.1.0-cp37-abi3-macosx_10_7_x86_64.whl (385.7 kB view details)

Uploaded CPython 3.7+macOS 10.7+ x86-64

File details

Details for the file clarabel-0.1.0-cp37-abi3-win_amd64.whl.

File metadata

  • Download URL: clarabel-0.1.0-cp37-abi3-win_amd64.whl
  • Upload date:
  • Size: 269.6 kB
  • Tags: CPython 3.7+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.13

File hashes

Hashes for clarabel-0.1.0-cp37-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 592ba3d7f909d674867a40c4fdb46f3073de7a35a359e640dd4afd578b116ec1
MD5 1b9a4621d1bc469aa9f8b6c8c94fa8ba
BLAKE2b-256 57203f101970a8842c0fe5517238c0ed8e13c54291ef71b41117a6bbc2e19845

See more details on using hashes here.

File details

Details for the file clarabel-0.1.0-cp37-abi3-win32.whl.

File metadata

  • Download URL: clarabel-0.1.0-cp37-abi3-win32.whl
  • Upload date:
  • Size: 251.0 kB
  • Tags: CPython 3.7+, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.13

File hashes

Hashes for clarabel-0.1.0-cp37-abi3-win32.whl
Algorithm Hash digest
SHA256 d19cc0c7ad8c5aca16d86b210211845c96c3b16a134ffe6ccce77f9b0e29868e
MD5 6c693fcbd047724c9ff5a5ec626268bd
BLAKE2b-256 f7e94415692c09436d33d07ae5baa0413f796af4532deb0738794f0cb7be90f8

See more details on using hashes here.

File details

Details for the file clarabel-0.1.0-cp37-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for clarabel-0.1.0-cp37-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 10d8e7630c9a532d09d239518153e49dfe90b32b8e7b4051a21d9e5c10260d05
MD5 5be5fdee463bc8e0398be6eb5d622e3a
BLAKE2b-256 33702bb9c74f5d6bf6d954a9ab1c972eac2e36876cd2b80a9bcd4199a1173402

See more details on using hashes here.

File details

Details for the file clarabel-0.1.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for clarabel-0.1.0-cp37-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 432f8e67cfb2d707b848d4b2d53df8d456a3a564f6371ec617912ee5a1f0f1c0
MD5 65502586984126b80f5a4f6b9a43b5a9
BLAKE2b-256 e4e8e19a7ad64f1c85fe1e114fb32c69e10ff44a6ab2a423c83da4aed22647f0

See more details on using hashes here.

File details

Details for the file clarabel-0.1.0-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for clarabel-0.1.0-cp37-abi3-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 8e56f2801a97baff38e875041d93cd79c8be12d264b62aec1abfd81b7a72fe7b
MD5 0b599cbb49ac059275e4028e806e06a8
BLAKE2b-256 4453097c81191ba320eecab8f19ccfc424b8c765f11d41b262fc1e90f1be4f29

See more details on using hashes here.

File details

Details for the file clarabel-0.1.0-cp37-abi3-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for clarabel-0.1.0-cp37-abi3-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 c2cf2ec4ee3b8882a5d022b3312a76df7278bca94e59505c88289e1c63ce3947
MD5 035854b4f68c0f7dc77cb1d6f2015ebd
BLAKE2b-256 d3567cc113a9e27816191146097a3926811757b7c5aeae2c629d13e168e488b8

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