The Method of Moving Asymptotes (MMA) is an optimization algorithm developed by Krister Svanberg in the 1980s. It's primarily used for solving non-linear programming problems, particularly those related to structural design and topology optimization.[1]
MMA was introduced by Krister Svanberg in a 1987 paper titled, "The method of moving asymptotes—a new method for structural optimization."[2] The method was proposed as an alternative to traditional optimization methods, offering an approach that could handle large-scale problems, especially in the realm of structural design. Another paper was published in 1993 by Svanberg which added some extensions to the method, including mini-max formulations and first and second order dual methods to solve subproblems. Another version that is globally convergent was proposed by Zillober.[3]
The Method of Moving Asymptotes functions as an iterative scheme. The key idea behind MMA is to approximate the original non-linear constraints and objective function with a simpler, convex approximation. This approximation is represented by linear constraints and a convex objective function.
Starting from an initial guess, each iteration consists of the following steps:
x(k)
(k) | |
f | |
i(x |
)
\nabla
(k) | |
f | |
i(x |
)
i=0,1,...,m
P(k)
P
fi
(k) | |
f | |
i |
P(k)
x(k+1)
k=k+1
The moving asymptotes serve as an adaptive mechanism. They shift and change with each iteration, progressively closing in on the optimal solution. This ensures that the approximations become increasingly accurate as the algorithm progresses.
The Method of Moving Asymptotes has been widely applied in various fields including: