The difference in algorithms of optimizers makes it difficult to select the right method for solving a particular problem. A good starting point for the search for an optimization algorithm is [37]. This book gives a short overview of several algorithms and information of many commercial and free packages is provided. Also the "Linear Programming Frequently Asked Questions" [1] and the "Nonlinear Programming Frequently Asked Questions" [17] give a brief introduction to problem specifications and solutions.
The basic selection criteria depend on the type of the objective function, whether it is differentiable, the derivatives can be calculated directly, or a finite difference approximation has to be performed. Also the existence of equality or inequality constraints in the problem has to be considered.
Using the new technologies available through the World-Wide-Web the selection can be assisted interactively by a decision tree. This is a series of web-pages where the user is asked several questions for classification of the problem and finally the packages are listed that fit these requirements. The following three entry points for software guides give a lot of information about problem categories, algorithms and software packages.