[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Índice] [ ? ]

43. augmented_lagrangian


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Índice] [ ? ]

43.1 Definitions for augmented_lagrangian

Option variable: niter

Default value: 10

Number of iterations for augmented_lagrangian_method.

Function: augmented_lagrangian_method (FOM, xx, constraints, yy)

Augmented Lagrangian method for constrained optimization. FOM is the figure of merit expression, xx is a list of variables over which to minimize, constraints is a list of expressions to be held equal to zero, and yy is a list of initial guesses for xx.

At present this code minimizes the augmented Lagrangian by solving for a stationary point of its gradient. That's pretty weak, and the code could be improved by plugging in a conjugate gradient or quasi-Newton minimization algorithm.

For references see

 
http://www-fp.mcs.anl.gov/otc/Guide/OptWeb/continuous/constrained/nonlinearcon/auglag.html

and

 
http://www.cs.ubc.ca/spider/ascher/542/chap10.pdf

Package mnewton (to solve grad L = 0) has to be loaded before calling augmented_lagrangian_method.

Example:

 
(%i1) load (mnewton)$

(%i2) load("augmented_lagrangian")$

(%i3) FOM: x^2 + 2*y^2;
                           2    2
(%o3)                   2 y  + x
(%i4) xx: [x, y];
(%o4)                     [x, y]
(%i5) C: [x + y - 1];
(%o5)                  [y + x - 1]
(%i6) yy: [1, 1];
(%o6)                     [1, 1]
(%i7) augmented_lagrangian_method (FOM, xx, C, yy);
(%o7)          [0.6478349834, 0.3239174917]

To use this function write first load("mnewton") and load("augmented_lagrangian"). See also niter.


[ << ] [ >> ]           [Top] [Contents] [Índice] [ ? ]

This document was generated by root on Outubro, 18 2006 using texi2html 1.76.