Powell Algorithm

Powell algorithm, similar to Simplex and Dud algorithms, is also an optimization method, which does not require any derivative of the cost function being minimized. In this method, for minimizing a function with N parameters, a user should provide an initial parameter guess as well as N search vectors. The method transforms the multi-dimensional minimization problem into a sequence of one-dimensional minimization problem. It is also an iterative procedure. At each iteration, a new parameter guess is determined by a sequence of line searches, starting from the previous parameter guess. The new parameter guess therefore can be written as a linear combination of all search vectors. Afterwards, the search direction which gives the largest impact is replaced by a new search direction. The iteration is performed until convergence. The line search implemented in OpenDa is the so called Brent's method.