An object-oriented toolbox for studying optimization problems

The CWP Object-Oriented Optimization Library (COOOL) is a collection of C++ classes for studying and solving optimization problems. It was developed using the freely available GNU compiler gcc. The library contains the basic building blocks for the efficient design of numerical linear algebra and optimization software; it also comes with a variety of unconstrained optimization algorithms and test objective functions drawn from our own research. The only requirement for using one of the optimization methods is that a simple model of communication be followed. This allows us to use exactly the same code to optimize functions tailored for a variety of hardware, no matter what programming language is used. Further, since we have provided class libraries containing building blocks for general purpose optimization and numerical linear algebra software, the development of new algorithms should be greatly aided.