Solver-o-matic
Decision Tree for Nonsmooth Optimization Software
Your first choice should be
SolvOpt (solver for local nonlinear
optimization problems) with difference approximations. SolvOpt is
an implementation of Shor's r-algorithm by A. Kuntsevich and
F. Kappel. In SolvOpt one can select to use either original
subgradients or difference approximations of them (i.e. you do
not have to code difference approximations but to select one
parameter to do this automatically). The possible
constraints are taken into account by the method of exact
penalization.
The MatLab, C and Fortran source codes for SolvOpt are available.
Not satisfied?