Interior-point method for NLP
Author names: Cindy Chen
Steward: Dajun Yue and Fengqi You
The interior point (IP) method for nonlinear programming was pioneered by Anthony V. Fiacco and Garth P. McCormick in the early 1960s. The basis of IP method restricts the constraints into the objective function (duality) by creating a barrier function. This limits potential solutions to iterate in only the feasible region, resulting in a much more efficient algorithm with regards to time complexity.
To ensure the program remains within the feasible region, a perturbation factor, , is added to "penalize" close approaches to the boundaries. This approach is analogous to the use of an invisible fence to keep dogs in an unfenced yard. As the dog moves closer to the boundaries, the more shock he will feel. In the case of the IP method, the amount of shock is determined by . A large value of gives the analytic center of the feasible region. As decreases and approaches 0, the optimal value is calculated by tracing out a central path. With small incremental decreases in during each iteration, a smooth curve is generated for the central path. This method is accurate, but time consuming and computationally intense. Instead, Newton's method is often used to approximate the central path for non-linear programming. Using one Newton step to estimate each decrease in for each iteration, a polynomial ordered time complexity is achieved, resulting in a small zig-zag central path and convergence to the optimal solution.
The logarithmic barrier function is based on the logarithmic interior function:
The IP method for NLP have been commonly used to solve Optimal Power Flow (OPF) problems, where a set of nonlinear equations are used to find the optimal solution of a power network in terms of speed and reliability. To solve these problems, the perturbation factor is used in addition to the typical Karush-Kuhn-Tucker (KKT) methods.
Starting with a general optimization problem:
Modify the KKT conditions by adding convergence properties with slack variables and the perturbation factor:
Solve the nonlinear equations iteratively by Newton's methods. First determine and with reduced linear equations.
Next, calculate slack variables and corresponding multipliers with:
To solve optimization problems through the IPM for
Nonlinear Programming (NLP) a perturbation parameter is introduced in the complementarily Karush-Kuhn-Tucker (KKT) condition . In the present work, it is shown that several versions of the IPMs can be used to the calculation of this parameter. Depending on the approach adopted for this calculation, it is possible to decrease the number of iterations and to improve the convergence characteristics in both simples and complex problems. In this work, the performance of five algorithms of nonlinear OPF is analyzed, with basis on results obtained for test-systems and real size networks
The IP method was later adapted for linear programming by Karmarkar in 1984. As a polynomial-time linear programming method, it solved complex linear problems 50 times faster than the simplex method. Multiple solvers utilize the IP method for non-linear programming, such as IPOPT and KNITRO, both of which were developed by IEMS professors at Northwestern University. Although successful, the IP method is no longer as popular since the creation of more competitive methods, such as sequential quadratic programming.
1. Forsgren, Anders; Gill, Philip E.; Wright, Margaret H. "Interior Methods for Nonlinear Optimization." Society for Industrial Applied Mathematics Review. 44.4: 525-597. Link.
2. Shanno, David. "Who Invented the Interior Point Method?" Documenta Mathematica Extra Volume ISMP (2012): 55-64. Link