El algoritmo MM es un método de optimización iterativo que explota la convexidad de una función para encontrar sus máximos o mínimos. MM significa "Mayorizar-Minimizar" o "Minorizar-Maximizar", dependiendo de si la optimización deseada es una minimización o una maximización. A pesar del nombre, MM en sí no es un algoritmo, sino una descripción de cómo construir un algoritmo de optimización .
El algoritmo de maximización de expectativas puede tratarse como un caso especial del algoritmo MM. [1] [2] Sin embargo, en el algoritmo EM generalmente están involucradas expectativas condicionales , mientras que en el algoritmo MM la convexidad y las desigualdades son el foco principal, y es más fácil de entender y aplicar en la mayoría de los casos. [3]
La base histórica del algoritmo MM se remonta al menos a 1970, cuando Ortega y Rheinboldt realizaban estudios relacionados con los métodos de búsqueda de líneas . [4] El mismo concepto continuó reapareciendo en diferentes áreas en diferentes formas. En 2000, Hunter y Lange propusieron "MM" como marco general. [5] Estudios recientes [ ¿quién? ] han aplicado el método en una amplia gama de áreas temáticas, como matemáticas , estadística , aprendizaje automático e ingeniería . [ cita necesaria ]
El algoritmo MM funciona encontrando una función sustituta que minoriza o mayoriza la función objetivo. La optimización de la función sustituta mejorará el valor de la función objetivo o la dejará sin cambios.
Tomando la versión de minorización-maximización, sea la función cóncava objetivo a maximizar. En el paso m del algoritmo, la función construida se llamará versión minorizada de la función objetivo (la función sustituta) en si
Luego, maximice en lugar de y deje que
El método iterativo anterior garantizará que convergerá a un óptimo local o un punto de silla cuando m llegue al infinito. [6] Por la construcción anterior
En la figura se muestra el funcionamiento de las funciones sustitutas y en relación con la función objetivo.
Mayorizar-Minimizar es el mismo procedimiento pero con un objetivo convexo a minimizar.
Se puede utilizar cualquier desigualdad para construir la versión mayorizada/minorizada deseada de la función objetivo. Las opciones típicas incluyen