Fix bug #1848: taytorat leaks internal gensyms from multivar expansions
[maxima.git] / doc / info / pt / augmented_lagrangian.texi
blobb1e974fe5383b68ccd9dd8c19b170668fbbce5a9
1 @c /augmented_lagrangian.texi/1.2/Wed Sep 27 07:36:26 2006//
2 @menu
3 * Definições para augmented_lagrangian::
4 @end menu
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}:
22 @table @code
23 @item niter
24 Número de iterações do algoritmo do Langrangiano aumentado
25 @item lbfgs_tolerance
26 Tolerância forneceida a LBFGS (Limited-memory, Broyden, Fletcher, Goldfarb, Shanno)
27 @item iprint
28 parâmetro IPRINT (uma lista de dois inteiros que controlam o nível de informação) fornecido a LBFGS
29 @item %lambda
30 valor inicial de @code{%lambda} a ser usado durante o cálculo do Lagrangiano aumentado
31 @end table
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}.
41 References:
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
47 Exemplo:
49 @c ===beg===
50 @c load (lbfgs);
51 @c load (augmented_lagrangian);
52 @c FOM: x^2 + 2*y^2;
53 @c xx: [x, y];
54 @c C: [x + y - 1];
55 @c yy: [1, 1];
56 @c augmented_lagrangian_method (FOM, xx, C, yy, iprint = [-1, 0]);
57 @c ===end===
58 @example
59 (%i1) load (lbfgs);
60 (%o1) /home/robert/tmp/maxima-release-branch/maxima/share/lbfgs/\
61 lbfgs.mac
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;
66                                2    2
67 (%o3)                       2 y  + x
68 (%i4) xx: [x, y];
69 (%o4)                        [x, y]
70 (%i5) C: [x + y - 1];
71 (%o5)                      [y + x - 1]
72 (%o6)                        [1, 1]
73 (%i7) augmented_lagrangian_method (FOM, xx, C, yy, iprint = [-1, 0]);
74 (%o7) [[x = 0.6478349888525, y = 0.32391749442625], 
75                                  %lambda = [- 1.267422460983745]]
76 @end example
78 @end deffn