Definition

The MM algorithm is an iterative optimization method which exploits the convexity of a function in order to find its maxima or minima. The MM stands for Majorize-Minimization or Minorize-Maximization, depending on whether the desired optimization is a minimization or a maximization.
The MM algorithm works by finding a surrogate function that minorizes or majorizes the objective function. Optimizing the surrogate function will monotonically improve the value of the objective function.
Algorithm
Consider Minorize-Maximization algorithm for a maximization problem of a function .
- Find a surrogate function (minorized ) satisfying:
- Find a point maximizes the surrogate function Then,
- Use the maximum point as the next point.
- Re-evaluate the surrogate function at the new point and repeat Iteration until convergence to a (local) maximum.