Skip to main content

jax inteface to a C++ implementation of the mixsqp algorithm

Project description

MIXSQPX: A Jax-compatible interface to the mixSQP algorithm

This package provides a jax-compatible interface to the mixSQP algorithm described in,

Kim, Y., Carbonetto, P., Stephens, M., & Anitescu, M. (2020). A Fast Algorithm for Maximum Likelihood Estimation of Mixture Proportions Using Sequential Quadratic Programming. Journal of Computational and Graphical Statistics, 29(2), 261–273.

The implementation of the mixSQP algorithm in this package was ported from the R implementation by the authors of this paper which uses the Rarmadillo package as an interface to the Armadillo C++ library.

This package (misxqpx) provides a function mixsolve, which can can be transformed with Jax transformations such as jit.

Installation

We use the Pixi package manager to handle installation and dependencies.

Linux Installation

# Install pixi if you don't have it already
curl -fsSL https://pixi.sh/install.sh | bash

# Clone the repository
git clone https://github.com/pdiegert/mixsqpx.git
cd mixsqpx

# Install dependencies and build the package
pixi install

Windows Installation

# Install pixi if you don't have it already
iwr -useb https://pixi.sh/install.ps1 | iex

# Clone the repository
git clone https://github.com/pdiegert/mixsqpx.git
cd mixsqpx

# Install dependencies and build the package
pixi install

Verification

Run the test suite to verify your installation:

pixi run test

License

This project is licensed under the MIT License - see the LICENCE file for details.

Acknowledgements

This project includes code adapted from the mixSQP project, which is available under the MIT license. We thank the original authors (Youngseok Kim, Peter Carbonetto, Matthew Stephens and Mihai Anitescu) for their work.

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.

mixsqpx-0.1.3.dev1-cp312-abi3-win_amd64.whl (7.4 MB view details)

Uploaded CPython 3.12+Windows x86-64

mixsqpx-0.1.3.dev1-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (54.9 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

File details

Details for the file mixsqpx-0.1.3.dev1-cp312-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for mixsqpx-0.1.3.dev1-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 62aa5ef765866a4dba7f8b70a132b82d44d9b6ed63ba56ebe8d8cc07ca5221ef
MD5 293b1beb9aa5132366fba598de046767
BLAKE2b-256 a2e88bdb941d554cc3c0f9dc6b31d8afa6ba7b055d171814a2f5e08745d4e54e

See more details on using hashes here.

File details

Details for the file mixsqpx-0.1.3.dev1-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mixsqpx-0.1.3.dev1-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9561df2a7bcb13741a9eae191913a848938edabe72634b0be210f025da401e2b
MD5 d6f71a2895b7d813e11b8b86fdd88b57
BLAKE2b-256 d8138088c1ba8097d3d54dea3fea7794b12a0f89b0a69e17c752e7ede339e73c

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