
Interior-point methods (also referred to as barrier methods or IPMs) are a certain class of
algorithms that solve linear and nonlinear
convex optimization problems.
An interior point method was discovered by Soviet mathematician I. I. Dikin in 1967 and reinvented in the U.S. in the mid-1980s.
In 1984,
Narendra Karmarkar developed a method for
linear programming
Linear programming (LP), also called linear optimization, is a method to achieve the best outcome (such as maximum profit or lowest cost) in a mathematical model whose requirements are represented by linear function#As a polynomial function, li ...
called
Karmarkar's algorithm Karmarkar's algorithm is an algorithm introduced by Narendra Karmarkar in 1984 for solving linear programming problems. It was the first reasonably efficient algorithm that solves these problems in polynomial time. The ellipsoid method is also po ...
, which runs in provably polynomial time and is also very efficient in practice. It enabled solutions of linear programming problems that were beyond the capabilities of the
simplex method. Contrary to the simplex method, it reaches a best solution by traversing the interior of the
feasible region. The method can be generalized to convex programming based on a
self-concordant barrier function used to encode the
convex set.
Any convex optimization problem can be transformed into minimizing (or maximizing) a
linear function over a convex set by converting to the
epigraph form. The idea of encoding the
feasible set using a barrier and designing barrier methods was studied by Anthony V. Fiacco, Garth P. McCormick, and others in the early 1960s. These ideas were mainly developed for general
nonlinear programming, but they were later abandoned due to the presence of more competitive methods for this class of problems (e.g.
sequential quadratic programming).
Yurii Nesterov, and
Arkadi Nemirovski came up with a special class of such barriers that can be used to encode any convex set. They guarantee that the number of
iterations of the algorithm is bounded by a polynomial in the dimension and accuracy of the solution.
Karmarkar's breakthrough revitalized the study of interior-point methods and barrier problems, showing that it was possible to create an algorithm for linear programming characterized by
polynomial complexity and, moreover, that was competitive with the simplex method.
Already
Khachiyan's
ellipsoid method was a polynomial-time algorithm; however, it was too slow to be of practical interest.
The class of primal-dual path-following interior-point methods is considered the most successful.
Mehrotra's predictor–corrector algorithm provides the basis for most implementations of this class of methods.
Primal-dual interior-point method for nonlinear optimization
The primal-dual method's idea is easy to demonstrate for constrained
nonlinear optimization.
For simplicity, consider the all-inequality version of a nonlinear optimization problem:
:minimize
subject to
where
This inequality-constrained optimization problem is then solved by converting it into an unconstrained objective function whose minimum we hope to find efficiently.
Specifically, the logarithmic
barrier function associated with (1) is
:
Here
is a small positive scalar, sometimes called the "barrier parameter". As
converges to zero the minimum of
should converge to a solution of (1).
The barrier function
gradient is
:
where
is the gradient of the original function
, and
is the gradient of
.
In addition to the original ("primal") variable
we introduce a
Lagrange multiplier-inspired
dual
Dual or Duals may refer to:
Paired/two things
* Dual (mathematics), a notion of paired concepts that mirror one another
** Dual (category theory), a formalization of mathematical duality
*** see more cases in :Duality theories
* Dual (grammatical ...
variable
:
(4) is sometimes called the "perturbed complementarity" condition, for its resemblance to "complementary slackness" in
KKT conditions.
We try to find those
for which the gradient of the barrier function is zero.
Applying (4) to (3), we get an equation for the gradient:
:
where the matrix
is the
Jacobian
In mathematics, a Jacobian, named for Carl Gustav Jacob Jacobi, may refer to:
*Jacobian matrix and determinant
*Jacobian elliptic functions
*Jacobian variety
*Intermediate Jacobian
In mathematics, the intermediate Jacobian of a compact Kähler m ...
of the constraints
.
The intuition behind (5) is that the gradient of
should lie in the subspace spanned by the constraints' gradients. The "perturbed complementarity" with small
(4) can be understood as the condition that the solution should either lie near the boundary
, or that the projection of the gradient
on the constraint component
normal should be almost zero.
Applying
Newton's method
In numerical analysis, Newton's method, also known as the Newton–Raphson method, named after Isaac Newton and Joseph Raphson, is a root-finding algorithm which produces successively better approximations to the roots (or zeroes) of a real-valu ...
to (4) and (5), we get an equation for
update
:
:
where
is the
Hessian matrix of
,
is a
diagonal matrix of
, and
is a diagonal matrix with
.
Because of (1), (4) the condition
:
should be enforced at each step. This can be done by choosing appropriate
:
:
See also
*
Affine scaling
In mathematical optimization, affine scaling is an algorithm for solving linear programming problems. Specifically, it is an interior point method, discovered by Soviet mathematician I. I. Dikin in 1967 and reinvented in the U.S. in the mid-1980 ...
*
Augmented Lagrangian method
*
Penalty method
*
Karush–Kuhn–Tucker conditions
In mathematical optimization, the Karush–Kuhn–Tucker (KKT) conditions, also known as the Kuhn–Tucker conditions, are first derivative tests (sometimes called first-order necessary conditions) for a solution in nonlinear programming to be ...
References
Bibliography
*
*
*
*
*
*
*
*
{{Optimization algorithms, convex
Optimization algorithms and methods