All Projects → theochem → procrustes

theochem / procrustes

Licence: GPL-3.0 License
Python library for finding the optimal transformation(s) that makes two matrices as close as possible to each other.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to procrustes

a-tour-of-pytorch-optimizers
A tour of different optimization algorithms in PyTorch.
Stars: ✭ 46 (-4.17%)
Mutual labels:  optimization, optimization-algorithms
Pygmo2
A Python platform to perform parallel computations of optimisation tasks (global and local) via the asynchronous generalized island model.
Stars: ✭ 134 (+179.17%)
Mutual labels:  optimization, optimization-algorithms
Cppnumericalsolvers
a lightweight C++17 library of numerical optimization methods for nonlinear functions (Including L-BFGS-B for TensorFlow)
Stars: ✭ 638 (+1229.17%)
Mutual labels:  optimization, optimization-algorithms
Awesome Robotics
A curated list of awesome links and software libraries that are useful for robots.
Stars: ✭ 478 (+895.83%)
Mutual labels:  optimization, optimization-algorithms
Argmin
Mathematical optimization in pure Rust
Stars: ✭ 234 (+387.5%)
Mutual labels:  optimization, optimization-algorithms
Pagmo2
A C++ platform to perform parallel computations of optimisation tasks (global and local) via the asynchronous generalized island model.
Stars: ✭ 540 (+1025%)
Mutual labels:  optimization, optimization-algorithms
Optimviz
Visualize optimization algorithms in MATLAB.
Stars: ✭ 106 (+120.83%)
Mutual labels:  optimization, optimization-algorithms
ForBES
Generic and efficient MATLAB solver for nonsmooth optimization problems
Stars: ✭ 19 (-60.42%)
Mutual labels:  optimization, optimization-algorithms
Fewshotlearning
Pytorch implementation of the paper "Optimization as a Model for Few-Shot Learning"
Stars: ✭ 223 (+364.58%)
Mutual labels:  optimization, optimization-algorithms
Python Mip
Collection of Python tools for the modeling and solution of Mixed-Integer Linear programs
Stars: ✭ 202 (+320.83%)
Mutual labels:  optimization, optimization-algorithms
Ensmallen
A header-only C++ library for numerical optimization --
Stars: ✭ 436 (+808.33%)
Mutual labels:  optimization, optimization-algorithms
zoofs
zoofs is a python library for performing feature selection using a variety of nature-inspired wrapper algorithms. The algorithms range from swarm-intelligence to physics-based to Evolutionary. It's easy to use , flexible and powerful tool to reduce your feature size.
Stars: ✭ 142 (+195.83%)
Mutual labels:  optimization, optimization-algorithms
Optim
OptimLib: a lightweight C++ library of numerical optimization methods for nonlinear functions
Stars: ✭ 411 (+756.25%)
Mutual labels:  optimization, optimization-algorithms
Solid
🎯 A comprehensive gradient-free optimization framework written in Python
Stars: ✭ 546 (+1037.5%)
Mutual labels:  optimization, optimization-algorithms
Ojalgo
oj! Algorithms
Stars: ✭ 336 (+600%)
Mutual labels:  optimization, optimization-algorithms
Pyswarms
A research toolkit for particle swarm optimization in Python
Stars: ✭ 742 (+1445.83%)
Mutual labels:  optimization, optimization-algorithms
qpmad
ROS-compatible Eigen-based Goldfarb-Idnani quadratic programming solver
Stars: ✭ 41 (-14.58%)
Mutual labels:  optimization, optimization-algorithms
dfogn
DFO-GN: Derivative-Free Optimization using Gauss-Newton
Stars: ✭ 20 (-58.33%)
Mutual labels:  optimization, optimization-algorithms
Sporco
Sparse Optimisation Research Code
Stars: ✭ 164 (+241.67%)
Mutual labels:  optimization, optimization-algorithms
geneal
A genetic algorithm implementation in python
Stars: ✭ 47 (-2.08%)
Mutual labels:  optimization, optimization-algorithms

Procrustes

GPLv3 License GitHub Actions CI Tox Status Documentation Status Binder Language grade: Python

The Procrustes library provides a set of functions for transforming a matrix to make it as similar as possible to a target matrix. For more information, visit Procrustes Documentation.

Citation

Please use the following citation in any publication using Procrustes library:

@article{Meng2022procrustes,
title = {Procrustes: A python library to find transformations that maximize the similarity between matrices},
author = {Fanwang Meng and Michael Richer and Alireza Tehrani and Jonathan La and Taewon David Kim and Paul W. Ayers and Farnaz Heidar-Zadeh},
journal = {Computer Physics Communications},
volume = {276},
number = {108334},
pages = {1--37},
year = {2022},
issn = {0010-4655},
doi = {https://doi.org/10.1016/j.cpc.2022.108334},
url = {https://www.sciencedirect.com/science/article/pii/S0010465522000522},
keywords = {Procrustes analysis, Orthogonal, Symmetric, Rotational, Permutation, Softassign},
}

Dependencies

The following dependencies are required to run Procrustes properly,

Installation

To install Procrustes using the conda package management system, install miniconda or anaconda first, and then:

    # Create and activate myenv conda environment (optional, but recommended)
    conda create -n myenv python=3.6
    conda activate myenv

    # Install the stable release.
    conda install -c theochem qc-procrustes

To install Procrustes with pip, you may want to create a virtual environment, and then:

    # Install the stable release.
    pip install qc-procrustes

See https://procrustes.qcdevs.org/usr_doc_installization.html for full details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].