Recent Releases of alpaqa
alpaqa - 1.1.0a1
Major changes:
- Renamed problem functions (e.g.
eval_f()becomeseval_objective(),get_n()becomesget_num_variables()) See https://kul-optec.github.io/alpaqa/1.1.0a1/Doxygen/page-problem-formulations.html for details. - Renamed some solver statistics (e.g.
lbfgs_failuresbecomesdirection_failures) - Installing the alpaqa Python package no longer requires CasADi.
If you intend to use alpaqa with CasADi, usepip install --pre "alpaqa[casadi]"
Other changes: - New interface for defining custom inner solvers in Python - Expose Ipopt solver to Python - Use Conan package manager for installing dependencies - Simplified installation from source - CI maintenance - Added Python 3.14 support - Dropped CentOS 7 support - Dropped Python 3.8 support
Full Changelog: https://github.com/kul-optec/alpaqa/compare/1.0.0a20...1.1.0a1
- C++
Published by tttapa 10 months ago
alpaqa - 1.0.0a18
This release adds a casadi::external function loader that does not depend on the CasADi C++ library. This simplifies the installation and reduces the binary size.
The ALPAQA_WITH_CASADI option now enables this loader by default. To enable the full CasADi loader, which also supports other types of casadi::Function objects (e.g. symbolic expressions or serialized functions), use ALPAQA_WITH_EXTERNAL_CASADI (this requires CasADi to be installed).
Full Changelog: https://github.com/kul-optec/alpaqa/compare/1.0.0a17...1.0.0a18
- C++
Published by tttapa about 2 years ago
alpaqa - 1.0.0a17
- New dynamic loading API (#10)
- Add TypeErasedProblem::get_name
- Convex Newton direction provider
- Clang 18 support
- Parameter JSON export
- Optimized parameter getters/setters
- More checks in gradient-checker
- Better Python type hints MinimizationProblemDescription
- Add CMake and Ninja as Python dependencies
- Improved documentation
Full Changelog: https://github.com/kul-optec/alpaqa/compare/1.0.0a16...1.0.0a17
- C++
Published by tttapa about 2 years ago
alpaqa - 1.0.0a16
DLProblemsupport on Windows- Bash and Zsh completion for
alpaqa-driverand solver options - Support for complex matrices, prox of complex ℓ₁ norm
- Allow problems to link to OpenMP (with
ALPAQA_WITH_OPENMP) - Improvements to
DLProblem,TypeErasedandprint_csv
- C++
Published by tttapa over 2 years ago
alpaqa - 1.0.0a15
- Improved documentation
- Eigen 3.4.0 support
- Support comments in CSV files, support reading integers
- Improved Conan support
- CMake component support
- Improved packaging
- Conan + CMake example project
Full Changelog: https://github.com/kul-optec/alpaqa/compare/1.0.0a14...1.0.0a15
- C++
Published by tttapa over 2 years ago
alpaqa - 1.0.0a14
- Added experimental MATLAB/MEX interface (https://kul-optec.github.io/alpaqa/1.0.0a14/Sphinx/reference/matlab-api.html)
- Support specifying parameters using JSON
- ASCII aliases for parameter names
- Driver reports more problem information
- Document benchmarking strategies
- Added FISTA solver
- Improved L-BFGS-B solver
- Expose FISTASolver and LBFGSBSolver in Python
- Improved Clang and MSVC compatibility
- Improved Conan support
- Upgrade CasADi to 3.6.4
- Various minor improvements bug fixes
Full Changelog: https://github.com/kul-optec/alpaqa/compare/1.0.0a13...1.0.0a14
- C++
Published by tttapa over 2 years ago
alpaqa - 1.0.0a13
- Support for non-owning TypeErased references
ALPAQA_STANDALONEoption that configures relative RPATHs- Improved performance
SparsityConverter - Verify Hessian-vector products in gradient checker
- Improved documentation
- Updated Python examples
- Added alpaqa for NMPC presentation slides
- More solver progress information
- Support alternative CUTEst collections
- Windows support for alpaqa-driver (no
DLProblemsupport yet) - Support Python CasADi problems without pre-compilation
- Parallel compilation for CasADi problems
- Improved
py::objectproblem interface
Full Changelog: https://github.com/kul-optec/alpaqa/compare/1.0.0a12...1.0.0a13
- C++
Published by tttapa over 2 years ago
alpaqa - 1.0.0a12
- New sparse matrix representation:
get_xyz_num_nonzeros()→get_xyz_sparsity() - Conversions between sparsity patterns
- Add
ALPAQA_DEBUG_CHECKS_EIGENCMake option to control Eigen macros - Fix option name in Python examples
- Expose DL and CUTEst loaders in Python on Linux
- Expose Hessian and Jacobian matrices in Python
Full Changelog: https://github.com/kul-optec/alpaqa/compare/1.0.0a11...1.0.0a12
- C++
Published by tttapa over 2 years ago
alpaqa - 1.0.0a10
- More consistent QUB backtrack across algorithms
- Add
ALPAQA_WITH_OPENMPoption to enable (limited) parallelization - Improved CUTEst loader
- Link to CUTEst as shared library
- Add
alpaqa::proxandalpaqa::prox_step - Initial set of proximal operators in
alpaqa::functions(Indicator of box, ℓ₁-norm, nuclear norm) - Update Python dependencies
- Disable
float32Python bindings by default - GCC 10 and Clang 14 support
- Improved documentation
Full Changelog: https://github.com/kul-optec/alpaqa/compare/1.0.0a9...1.0.0a10
- C++
Published by tttapa almost 3 years ago
alpaqa - 1.0.0a9
- Improved CUTEst problem loader and adapter
- Return upper-triangular Hessian CUTEst adapter instead of lower (API break)
- QPALM solver interface, added to
alpaqa-driver - Sparse logistic regression example
- Improve dynamic loading API, support exception propagation (ABI break)
- Configurable float types for smaller binaries, faster compile times
- Support modifying
alpaqa::DefaultConfig - Add optional in/out parameter penalties ALM
- More PANTR statistics
- Improved
UnconstrProblem, expose in Python API - Add
alpaqa-gradient-checkerutility - Improved documentation
- Updated installation instructions
- Improved CI with Valgrind testing
- More testing for PANOC with Anderson acceleration
- Improved Python packaging and metadata
Full Changelog: https://github.com/kul-optec/alpaqa/compare/1.0.0a8...1.0.0a9
- C++
Published by tttapa almost 3 years ago