1 @c /augmented_lagrangian.texi/1.2/Wed Sep 27 07:36:26 2006//
3 * Definições para augmented_lagrangian::
6 @node Definições para augmented_lagrangian, , augmented_lagrangian, augmented_lagrangian
7 @section Definições para augmented_lagrangian
9 @deffn {Função} augmented_lagrangian_method (@var{FOM}, @var{xx}, @var{C}, @var{yy})
10 @deffnx {Função} augmented_lagrangian_method (@var{FOM}, @var{xx}, @var{C}, @var{yy}, args_opcionais)
12 Retorna um mínimo aproximado da expressão @var{FOM}
13 com relação às variáveis @var{xx},
14 mantendo restrito o valor de @var{C} a zero.
15 @var{yy} é uma lista de suposições iniciais para @var{xx}.
16 O método utilizado é o método do Lagrangiano aumentado (veja referências [1] e [2]).
18 @code{args_opcionais} representam argumentos adicionais,
19 especificados como @code{@var{símbolo} = @var{valor}}.
20 Os argumentos opcionais que podem ser colocados no lugar de @var{símbolo}:
24 Número de iterações do algoritmo do Langrangiano aumentado
26 Tolerância forneceida a LBFGS (Limited-memory, Broyden, Fletcher, Goldfarb, Shanno)
28 parâmetro IPRINT (uma lista de dois inteiros que controlam o nível de informação) fornecido a LBFGS
30 valor inicial de @code{%lambda} a ser usado durante o cálculo do Lagrangiano aumentado
33 Essa implementação minimiza o Lagrangiano aumentado pela
34 pela aplicação do algoritmo de memória limitada BFGS (LBFGS),
35 que é um algoritmo quasi-Newton.
37 @code{load(augmented_lagrangian)} chama essa função.
39 Veja também @code{lbfgs}.
43 [1] http://www-fp.mcs.anl.gov/otc/Guide/OptWeb/continuous/constrained/nonlinearcon/auglag.html
45 [2] http://www.cs.ubc.ca/spider/ascher/542/chap10.pdf
51 @c load (augmented_lagrangian);
56 @c augmented_lagrangian_method (FOM, xx, C, yy, iprint = [-1, 0]);
60 (%o1) /home/robert/tmp/maxima-release-branch/maxima/share/lbfgs/\
62 (%i2) load (augmented_lagrangian);
63 (%o2) /home/robert/tmp/maxima-release-branch/maxima/share/contri\
64 b/augmented_lagrangian.mac
65 (%i3) FOM: x^2 + 2*y^2;
73 (%i7) augmented_lagrangian_method (FOM, xx, C, yy, iprint = [-1, 0]);
74 (%o7) [[x = 0.6478349888525, y = 0.32391749442625],
75 %lambda = [- 1.267422460983745]]