[racket] Numerical Optimization in Racket (i.e. Finding Local Minima and Maxima)

From: Daniel King (daniel.zidan.king at gmail.com)
Date: Sun Oct 27 14:24:20 EDT 2013


I've been using R to solve some machine learning problems, but I'd
really prefer to use Racket. In order to do so, I need probability
distributions, accurate definitions of some mathematical functions
like the Gamma and the log of the Gamma function, a decent plotting
library, and a numerical optimizer.

I think Racket has the first three features (the math library looks
awesome), but AFAICT it lacks a numerical optimizer. Has anyone
written a library that implements something like BFGS? Specifically,
I'm looking for a numerical optimizer that finds local minima or
maxima and makes use of a user-provided gradient.

I'm also interested in libraries developed for personal use but not
yet production ready. The benefits of types and consistent,
understandable semantics that come with Racket would overcome minor
warts in an optimization library. I'm happy to provide bug reports and
perhaps even patches (provided I understand the error).

Dan King

Posted on the users mailing list.