Releases: kul-optec/alpaqa
1.0.0a19
Improved Python stub generation and documentation.
Full Changelog: 1.0.0a18...1.0.0a19
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: 1.0.0a17...1.0.0a18
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: 1.0.0a16...1.0.0a17
1.0.0a16
DLProblem
support on Windows- Bash and Zsh completion for
alpaqa-driver
and solver options - Support for complex matrices, prox of complex ℓ₁ norm
- Allow problems to link to OpenMP (with
ALPAQA_WITH_OPENMP
) - Improvements to
DLProblem
,TypeErased
andprint_csv
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: 1.0.0a14...1.0.0a15
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: 1.0.0a13...1.0.0a14
1.0.0a13
- Support for non-owning TypeErased references
ALPAQA_STANDALONE
option 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
DLProblem
support yet) - Support Python CasADi problems without pre-compilation
- Parallel compilation for CasADi problems
- Improved
py::object
problem interface
Full Changelog: 1.0.0a12...1.0.0a13
1.0.0a12
- New sparse matrix representation:
get_xyz_num_nonzeros()
→get_xyz_sparsity()
- Conversions between sparsity patterns
- Add
ALPAQA_DEBUG_CHECKS_EIGEN
CMake 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: 1.0.0a11...1.0.0a12
1.0.0a11
- Fixed
alpaqa::prox
forNuclearNorm
andL1Norm
- Improved handling of
L > L_max
in PANOC and ZeroFPR - Added
alpaqa::prox_step
example
Full Changelog: 1.0.0a10...1.0.0a11
1.0.0a10
- More consistent QUB backtrack across algorithms
- Add
ALPAQA_WITH_OPENMP
option to enable (limited) parallelization - Improved CUTEst loader
- Link to CUTEst as shared library
- Add
alpaqa::prox
andalpaqa::prox_step
- Initial set of proximal operators in
alpaqa::functions
(Indicator of box, ℓ₁-norm, nuclear norm) - Update Python dependencies
- Disable
float32
Python bindings by default - GCC 10 and Clang 14 support
- Improved documentation
Full Changelog: 1.0.0a9...1.0.0a10