Método de Nelder-Mead


El método Nelder-Mead (también método simplex cuesta abajo , método ameba o método politopo ) es un método numérico comúnmente aplicado que se utiliza para encontrar el mínimo o máximo de una función objetivo en un espacio multidimensional. Es un método de búsqueda directa (basado en la comparación de funciones) y, a menudo, se aplica a problemas de optimización no lineal para los que es posible que no se conozcan las derivadas. Sin embargo, la técnica de Nelder-Mead es un método de búsqueda heurística que puede converger a puntos no estacionarios [1] en problemas que pueden resolverse con métodos alternativos. [2]

La técnica Nelder-Mead fue propuesta por John Nelder y Roger Mead en 1965, [3] como un desarrollo del método de Spendley et al. [4]

El método utiliza el concepto de simplex , que es un politopo especial de n  + 1 vértices en n dimensiones. Los ejemplos de simples incluyen un segmento de línea en una línea, un triángulo en un plano, un tetraedro en un espacio tridimensional, etc.

El método se aproxima a un óptimo local de un problema con n variables cuando la función objetivo varía suavemente y es unimodal . Las implementaciones típicas minimizan las funciones y maximizamos minimizando .

Por ejemplo, un ingeniero de puentes colgantes tiene que elegir el grosor de cada puntal, cable y pilar. Estos elementos son interdependientes, pero no es fácil visualizar el impacto de cambiar algún elemento específico. La ejecución de la simulación de estructuras tan complicadas a menudo es extremadamente costosa desde el punto de vista computacional, y posiblemente requiera más de horas por ejecución. El método Nelder-Mead requiere, en la variante original, no más de dos evaluaciones por iteración, excepto por la operación de reducción que se describe más adelante, que es atractiva en comparación con algunos otros métodos de optimización de búsqueda directa. Sin embargo, el número total de iteraciones hasta el óptimo propuesto puede ser alto.

Nelder-Mead en n dimensiones mantiene un conjunto de n  + 1 puntos de prueba dispuestos como un simplex . Luego extrapola el comportamiento de la función objetivo medida en cada punto de prueba para encontrar un nuevo punto de prueba y reemplazar uno de los puntos de prueba antiguos por el nuevo, y así la técnica avanza. El enfoque más simple es reemplazar el peor punto con un punto reflejado a través del centroide de los n restantespuntos. Si este punto es mejor que el mejor punto actual, podemos intentar estirarnos exponencialmente a lo largo de esta línea. Por otro lado, si este nuevo punto no es mucho mejor que el valor anterior, entonces estamos cruzando un valle, por lo que encogemos el simplex hacia un mejor punto. Una explicación intuitiva del algoritmo de "Recetas numéricas": [5]


Búsqueda mínima de Nelder-Mead de la función de Simionescu . Los vértices simplex están ordenados por su valor, donde 1 tiene el valor más bajo (mejor).
Método de Nelder-Mead aplicado a la función de Rosenbrock