Hybrid Optimization Parallel Search PACKage
HOPSPACK solves derivative-free optimization problems in a C++ software framework. The framework enables parallel operation using MPI (for distributed machine architectures) and multithreading (for single machines with multiple processors or cores). Optimization problems can be very general: functions can be noisy, nonsmooth and nonconvex, linear and nonlinear constraints are supported, and variables may be continuous or integer-valued. HOPSPACK is released with two user communities in mind: those who need an optimization problem solved, and those who wish to experiment with writing their own derivative-free solvers.
HOPSPACK 2.0.2 is available at http://www.sandia.gov/hopspack HOPSPACK Download site
- Only function values are required for the optimization.
- The user simply provides a separate program that can evaluate the objective and nonlinear constraint functions at a given point.
- Parallel resources are used and automatically load balanced, on either a cluster of computers or multi-core machines.
- A robust implementation of the Generating Set Search (GSS) solver is supplied, including the capability to handle linear constraints.
- Souce code builds on Linux, Windows, and Mac OSX using native compilers.
- Multiple solvers can run simultaneously and are easily configured to share information.
- Solvers share a cache of computed function and constraint evaluations to eliminate duplicate work.
- Solvers can initiate and control subproblems.
- Source is freely available under terms of the GNU Lesser General Public License.