BFO is an opensource directsearch derivativefree MATLAB solver for boundconstrained mathematical optimization problems.
Its purpose is to find a local minimizer when applied to problems of the form
where f is a function from
to
and the variables contained in the vector x are subject to bound constraints
where these inequalities hold componentwise and where components of l and/or u may be infinite.
As indicated above, using BFO does not require the provision of derivatives of the function f(x). Like all methods of this type it is most efficient on problems involving a relatively small number of variables (not much above 10).
BFO's remarkable features are
 its ability to handle a mix of continuous and discrete variables,
 a novel selftraining option, which may significantly improve the performance of the code on the user's class of problems,
 its capacity to handle multilevel, minmax and equilibrium problems,
 an extremely versatile and easytouse interface.
BFO also provides a number of useroriented features, such as
 checkpointing and restart,
 facilities for specifying variable scaling, thereby improving problem conditioning,
 tools allowing the user to specify a variety of termination conditions.
BFO has been thoroughly tested and is the subject of continued development. It can be downloaded free of charge.

