- [MOI] fix eval_constraint_jacobian_product (#337)
- [MOI] Add support for nonlinear problems without Hessian (#322)
- [MadNLPGPU] Bug fix for empty Hessian (#326)
- [LinearSolvers] Add support for LDL factorization in CHOLMOD (#321)
- Add an ordering for cuDSS (#317)
- Reexport MadNLP from MadNLP/libs (#325)
- Use GH Action Julia cache (#339)
- [MAdNLPMumps] sarrays removed (#328)
- fix optional arguments in get_index_constraints (#316)
- CuDSS synchronize added (#314)
- Introduce linear solvers with version info (#315)
- Add logos to documentation (#310)
- fix non-deterministic behavior by forcing instantiations (#284)
- LDL factorization improvement (#300)
- add support for MOI.ScalarNonLinearFunction (#280)
- [Linear Solver] Added undocumented cholesky solver (#292)
- ss/init_improve Add supports to CUDSS.jl (#296)
- ss/cudss_option_cholmod [MOI] add support for MOI.Interval{Float64} (#295)
- Update README, OPTIONS, CITATION, and documentation (#304)
- MOI interface moved to ext (#268)
- Improve kkt creation on GPUs (#299)
- CompatHelper: add new compat entry for Metis at version 1 for package MadNLPGPU, (keep existing compat) (#298)
- CompatHelper: add new compat entry for CUDSS at version 0.1 for package MadNLPGPU, (keep existing compat) (#297)
- update documentation (#293)
- [Algorithm] Improve LBFGS performance (#290)
- [API] Expose the options for iterative refinements and quasi-Newton (#287)
- [README] Fix Options.md typo (#291)
- [Options] Deactivate scaling if
nlp_scaling=false
(#289) - [API] Simplify arguments of create_kkt_system (#286)
- [Tests] Remove test nlp_009_010 from MINLPTests tests (#288)
- Simplify API of SparseCallback and DenseCallback (#285)
- [MadNLPHSL] Use HSL.jl (#277)
- add support for CUDA.jl v5 (#283)
- simplify implementation of kernels (#281)
- add proper testing for KKT systems (#278)
- CompatHelper: bump compat for NLPModels to 0.20, (keep existing compat) (#252)
- CompatHelper: bump compat for NLPModels to 0.20 for package MadNLPTests, (keep existing compat) (#253)
- [MadNLPGPU] Migrate to KernelAbstractions 0.9 (#258)
- [MadNLPTests] Remove ADNLPModels in deps (#259)
- Update README.md for JuMP documentation (#260)
- Update for julia v1.9 (#261)
- add dense BFGS and compact LBFGS algorithms (#221)
- Bump CUDA.jl to 0.4 and drop support for CUDA.jl 0.3 in MadNLPGPU (#248)
- Add support for ADNLPModels 0.5 in MadNLPTests (#240)
- Fix URL in README (#236)
- Fix invalid return code in MOI.TerminationStatus (#241)
- Fix potential infinite loop in feasibility restoration (#244)
- Fix initial multipliers when initial KKT has no solution (#243)
- Replace broadcast operators by explicit for loops in IPM kernels to reduce time-to-first-solve (#231)
- Remove allocations in nonlinear callbacks (#230)
- Update MOI wrapper to match new Ipopt's MOI wrapper (#224, #233)
- Add new constructor for custom KKT type (#232)
- Fix detection of number of upper and lower bounds for optimization variables (#211)
- Fix
solve!
function when dual is provided as input (#215) - Update initialization of meta field (#216)
- Fix type stability in MadNLP (#220, #227, #228)
- Doc: Fix typos in quickstart.md (#210)
- Test properly
solve!
function (#219) - Improve error messages when invalid number is detected (#226)
- Change names to follow JSO conventions
AbstractInteriorPointSolver
->AbstractMadNLPSolver
InteriorPointSolver
->MadNLPSolver
IPMOptions
->MadNLPOptions
Counters
->MadNLPCounters
Logger
->MadNLPLogger
- Linear solvers are now defined as a struct, not a module
MadNLPLapackCPU.Solver
->LapackCPUSolver
MadNLPUmfpack.Solver
->UmfpackSolver
MadNLPLapackGPU.Solver
->LapackGPUSolver
MadNLPMa27.Solver
->Ma27Solver
MadNLPMa57.Solver
->Ma57Solver
MadNLPMa77.Solver
->Ma77Solver
MadNLPMa86.Solver
->Ma86Solver
MadNLPMa97.Solver
->Ma97Solver
MadNLPKrylov.Solver
->KrylovIterator
MadNLPMumps.Solver
->MumpsSolver
MadNLPPardiso.Solver
->PardisoSolver
MadNLPPardisoMKL.Solver
->PardisoMKLSolver
- Refactor the way we pass options to MadNLP
- Before:
ips = MadNLP.InteriorPointSolver(nlp; option_dict=sparse_options)
- Now:
ips = MadNLP.MadNLPSolver(nlp; sparse_options...)
- Before:
- Add support for
Float32
- Add support for NLSModels
- Add a function
timing_madnlp
to decompose the time spent in the callbacks and in the linear solver at each iteration - Add a
CuMadNLPSolver
constructor to instantiate MadNLP on CUDA GPU
- Stop overwriting the number of threads used in BLAS
- Use symmetric
mul!
when usingDENSE_CONDENSED_KKT_SYSTEM
on the GPU - Fix unscaling of the constraints during post-processing
- Add a toy nonlinear problem
HS15Model
in MadNLPTests - Improve the build of MadNLPHSL
- Remove
StrideOneVector
alias in MadNLP - Update the documentation
- Improve code coverage