-
Notifications
You must be signed in to change notification settings - Fork 4
Random related useful links
This is just a collection of useful links.
Parallel LSQR v3 (PLSQR3) seems to support matrix-free abstract linear operators
https://github.com/rickli92/PLSQR3.2013.09
Conjugate Gradient for Least Squares in CUDA (can do matrix-free)
https://github.com/foges/cgls_cuda
lsq_linear from Python SciPy can solve matrix-free non-negative (bound-constrained) linear least-squares
http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.lsq_linear.html
http://docs.scipy.org/doc/scipy/reference/generated/scipy.sparse.linalg.LinearOperator.html#scipy.sparse.linalg.LinearOperator
scipy.optimize.minimize from Python SciPy can be provided with callable jacobin and hessian functions meaning it can do non-linear least squares with custom matrix-free implementation of the product of a vector with the hessian
http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.minimize.html
Eigen has some initial support for matrix-free, no linear least-squares though
http://eigen.tuxfamily.org/dox/group__MatrixfreeSolverExample.html
Matrix-Free Convex Optimisation Modeling, in python
http://stanford.edu/%7Eboyd/papers/abs_ops.html
Ceres provides many nonlinear least-squares solvers and an implementation of l-BFGS
http://ceres-solver.org
libLBFGS provides a c implementation of L-BFGS and OWL-QN (for L1 regularisation)
http://www.chokkan.org/software/liblbfgs/
NLopt provides several (mostly MIT licensed) non-linear optimisers
http://ab-initio.mit.edu/wiki/index.php/NLopt
CppOptimizationLibrary also provides a few non-linear optimisers in c++ under an MIT license
https://github.com/PatWie/CppNumericalSolvers
COINS-OR has a number of solvers and is licensed under the Eclipse Public License (EPL). It notably has a c++ implementation of PDCO and LSQR as part of their Clp sub package:
http://www.coin-or.org
https://projects.coin-or.org/Clp
https://github.com/ampl/coin/blob/master/Clp/src/ClpPdco.hpp
https://projects.coin-or.org/Ipopt
BCLS (L-GPL) relies on LSQR to implement bound constraints:
http://www.cs.ubc.ca/~mpf/bcls/index.html
A BSD C implementation of L-BFGS-B:
https://github.com/stephenbeckr/L-BFGS-B-C