PSwarm is a global
optimization solver for bound and linear constrained problems (for which the
derivatives of the objective function are unavailable, inaccurate or
expensive).

The algorithm
combines pattern search and particle swarm. Basically, it applies a
directional direct search in the poll step (coordinate search in the
pure simple bounds case) and particle swarm in the search step.

PSwarm makes no use
of derivative information of the objective function. It has been shown
to be efficient and robust for smooth and nonsmooth problems, both in
serial and in parallel.

The code is written
in both MATLAB and C. It provides an interface with
AMPL, Python and R. The C code
includes a parallel version using MPI. PSwarm can also be run through
the NEOS
server (under the
Global Optimization
category). You can use PSwarm with Python problems using the
OpenOpt
framework.