Frank–Wolfe algorithm

Frank–Wolfe algorithm

The Frank–Wolfe algorithm, also known as the "convex combination algorithm", is a classic algorithm in operations research (OR). It was originally proposed by Marguerite Frank and Phil Wolfe in 1956 as a procedure for solving quadratic programming problems with linear constraints. At each step the objective function is linearized and then a step is taken in a direction that reduces the objective while maintaining feasibility. The algorithm can be seen as a generalization of the primal simplex algorithm for linear programming. In recent years it has been widely used for determining the equilibrium flows in transportation networks.

Problem statement

:Minimize f(mathbf{x}) = frac{1}{2} mathbf{x}^{mathrm{T Emathbf{x} + mathbf{h}^{mathrm{T mathbf{x} :subject to mathbf{x} epsilon mathbf{P}.Where the n×n matrix E is positive semidefinite, h is an n×1 vector, and mathbf{P} represents a feasible region defined by a mix of linear inequality and equality constraints (for example Ax ≤ b, Cx = d).

Algorithm

Step 1. Initialization. Let k leftarrow 0 and let x_0 ! be any point in mathbf{P}.

Step 2. Convergence test. If abla f(x_k)=0 then Stop, we have found the minimum.

Step 3. Direction-finding subproblem. The approximation of the problem that is obtained by replacing the function f with its first-order Taylor expansion around x_k ! is found. Solve for ar{x}_k::Minimize f(x_k) + abla^T f(x_k) ar{x}_k:Subject to ar{x}_k epsilon mathbf{P}:(note that this is a Linear Program. x_k ! is fixed during Step 3, while the minimization takes place by varying ar{x}_k and is equivalent to minimization of abla^T f(x_k) ar{x}_k).

Step 4. Step size determination. Find lambda ! that minimizes f(x_k+lambda(ar{x}_k-x_k)) subject to 0 le lambda le 1 . If lambda = 0 ! then Stop, we have found the minimum.

Step 5. Update. Let x_{k+1}leftarrow x_k+lambda(ar{x}_k-x_k), let k leftarrow k+1 and go back to Step 2.

Comments

The algorithm generally makes good progress towards the optimum during the first few iterations, but convergence often slows down substantially when close to the minimum point. For this reason the algorithm is perhaps best used to find an approximate solution. It can be shown that the worst case convergence rate is sublinear; however, in practice the convergence rate has been observed to improve in case of many constraints. ["Nonlinear Programming", Dimitri Bertsekas, 2003, page 222. Athena Scientific, ISBN 1-886529-00-0.]

References

*M. Frank and P. Wolfe, "An algorithm for quadratic programming", Naval Research Logistics Quarterly, 3 (1956), pp. 95--110.
* [http://www.math.chalmers.se/Math/Grundutb/CTH/tma946/0203/fw_eng.pdf The Frank-Wolfe algorithm] description
* [http://swutc.tamu.edu/publications/technicalreports/472840-00074-1.pdf Combined Traffic Signal Control and Traffic Assignment: Algorithms, Implementation and Numerical Results] , Chungwon Lee and Randy B. Machemehl, University of Texas at Austin, March 2005

Notes


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Criss-cross algorithm — This article is about an algorithm for mathematical optimization. For the naming of chemicals, see crisscross method. The criss cross algorithm visits all 8 corners of the Klee–Minty cube in the worst case. It visits 3 additional… …   Wikipedia

  • Levenberg–Marquardt algorithm — In mathematics and computing, the Levenberg–Marquardt algorithm (LMA)[1] provides a numerical solution to the problem of minimizing a function, generally nonlinear, over a space of parameters of the function. These minimization problems arise… …   Wikipedia

  • Gauss–Newton algorithm — The Gauss–Newton algorithm is a method used to solve non linear least squares problems. It can be seen as a modification of Newton s method for finding a minimum of a function. Unlike Newton s method, the Gauss–Newton algorithm can only be used… …   Wikipedia

  • Route assignment — Route assignment, route choice, or traffic assignment concerns the selection of routes (alternative called paths) between origins and destinations in transportation networks. It is the fourth step in the conventional transportation forecasting… …   Wikipedia

  • List of numerical analysis topics — This is a list of numerical analysis topics, by Wikipedia page. Contents 1 General 2 Error 3 Elementary and special functions 4 Numerical linear algebra …   Wikipedia

  • List of mathematics articles (F) — NOTOC F F₄ F algebra F coalgebra F distribution F divergence Fσ set F space F test F theory F. and M. Riesz theorem F1 Score Faà di Bruno s formula Face (geometry) Face configuration Face diagonal Facet (mathematics) Facetting… …   Wikipedia

  • Mathematical optimization — For other uses, see Optimization (disambiguation). The maximum of a paraboloid (red dot) In mathematics, computational science, or management science, mathematical optimization (alternatively, optimization or mathematical programming) refers to… …   Wikipedia

  • Linear programming — (LP, or linear optimization) is a mathematical method for determining a way to achieve the best outcome (such as maximum profit or lowest cost) in a given mathematical model for some list of requirements represented as linear relationships.… …   Wikipedia

  • Cutting-plane method — In mathematical optimization, the cutting plane method is an umbrella term for optimization methods which iteratively refine a feasible set or objective function by means of linear inequalities, termed cuts. Such procedures are popularly used to… …   Wikipedia

  • Newton's method in optimization — A comparison of gradient descent (green) and Newton s method (red) for minimizing a function (with small step sizes). Newton s method uses curvature information to take a more direct route. In mathematics, Newton s method is an iterative method… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”