A search procedure used in an attempt to identify the maximum (or minimum) of a function of several variables. An original base point is chosen and the function evaluated. This is followed by exploratory moves, changing the values of one variable at a time, and resulting, in general, in a new base point, with a higher value for the function than the original base point. A pattern move is now made, the new point being dictated by the values of the function at the preceding base points. The alternating sequence of exploratory and pattern moves continues. If the process converges the value obtained may only be a local maximum.