On this page:

Limited Memory Discrete Gradient Bundle Method

"Results! Why, man, I have gotten a lot of results. I know several thousand things that won't work."
- Thomas A. Edison

LDGB

LDGB is a Fortran95 implementation of the derivative free limited memory discrete gradient bundle method for general, possible nonconvex, nonsmooth (nondifferentiable) minimization. You can also use this code as Fortran 95 version of LMBM (due to some implementational facts it might use less subgradient evaluations than the previous version).

The software is free for academic teaching and research purposes but I ask you to refer at least one of the references given below if you use it.

Code

tldgbm.f95 - main program for LDGB.
initialization.f95 - user-specified initial values for parameters and starting point x.
ldgbm_objfun.f95 - user-specified computation of the objective function value (and the subgradient).
parameters.f95 - modules of parameters.
ldgbm.f95 - limited memory discrete gradient bundle method.
lmbm.f95 - limited memory bundle method.
ldgbm_sub.f - subroutines for limited memory (discrete gradient) bundle method.
Makefile - makefile.

tnsunc.f95 - module of large-scale nonsmooth test problems.

ldgbm.tar.gz - all the above in compressed form.

To use the software modify tldgbm.f95, initialization.f95 and ldgbm_objfun.f95 as needed.

References for LDGB

References for LMBM