Purple is a comprehensive class library for numerical optimization in the C++ programming language. It includes many example objective functions and many optimization algorithms, as well as different utilities for the solution of a wide range of problems. The package comes with extensive documentation. Purple is placed under the GNU Lesser General Public License.

The version 0 of Purple includes :

Several example objective functions:
- De Jong's function.
- Rosenbrock's function.
- Rastrigin's function.
- Plane-Cylinder.

Several optimization algorithms:
- Gradient descent.
- Conjugate gradient.
- Newton's method.
- Random search.
- Evolutionary algorithm.

Different Utilities:
- Vector class.
- Matrix class.

The package comes with the following documentation:

Purple 0 User's Guide (PDF).

Purple 0 Reference Manual (HTML).

Purple is written in ANSI C++ and should work on any compiler. So far it has been tested in Linux with gcc and in Windows with Dev-Cpp.

Download Purple A0