Permalink
Browse files

Merge in changes from 5.10.0 release branch.

 - AUTHORS: bring authors list up to date
 - NEWS: paste in short change log for 5.10.0 (and 5.9.3 as well)
 - README.developers-howto: update instructions a little bit
 - README.lisps: mention ports page at Maxima wiki
 - maxima.spec.in: change version number from 1 to 1.fedora2 to indicate Linux version
 - doc/info/augmented_lagrangian.texi: expand and revise
  • Loading branch information...
1 parent caba540 commit b5a3f300434c51eea0df1b3e08da6d69e949ebbc robert_dodier committed Sep 25, 2006
Showing with 112 additions and 37 deletions.
  1. +55 −0 NEWS
  2. +2 −0 README.lisps
  3. +54 −36 doc/info/augmented_lagrangian.texi
  4. +1 −1 maxima.spec.in
View
55 NEWS
@@ -1,3 +1,57 @@
+Release notes for Maxima 5.10.0 (notes compiled 2006/09/10)
+See ChangeLog-5.10.0 for a more detailed list
+
+ * Expand and revise Maxima reference manual (all languages)
+
+ * Maxima Windows installer bundles wxMaxima user interface
+
+ * Fast integer factorization (function ifactors and friends)
+
+ * Improvements to plotting functions
+
+ * Improvements to Xmaxima user interface
+
+ * Several bug fixes to definite integral functions
+
+ * Several new add-on packages
+
+ * Many minor improvements
+
+ * Many bug fixes
+
+
+-----------------------------------------------------------
+Release notes for Maxima 5.9.3 (notes compiled 2006/03/22)
+See ChangeLog-5.9.3 for a more detailed list
+
+ * Expand build system to handle internationalization for Spanish
+ and Portuguese. UTF-8 and Latin-1 locales are supported by
+ Maxima if the underlying Lisp implementation supports the
+ locales. See README.i18n
+
+ * Revision and expansion of linear algebra functions
+ (share/linearalgebra)
+
+ * Revisions of floating-point function evaluation (sqrt,
+ trigonometric functions)
+
+ * Replace existing definition of conjugate with a much more
+ extensive implementation
+
+ * Revision of evaluation and simplification of sum and product
+
+ * Revision and expansion of reference manual (English, Spanish,
+ and Portuguese)
+
+ * Bring Spanish and Portuguese translations of reference manual
+ into the on-line help system
+
+ * New add-on packages
+
+ * Bug fixes
+
+
+-----------------------------------------------------------
Release notes for Maxima 5.9.2 (2005/10/11)
See ChangeLog-5.9.2 for a more detailed list
@@ -23,6 +77,7 @@ See ChangeLog-5.9.2 for a more detailed list
(10) Various source code clean-ups
+
-----------------------------------------------------------
These are the release notes for Maxima 5.9.1. For a detailed list of
changes in this release, see the file ChangeLog.
View
@@ -7,6 +7,8 @@ been fully tested.
Ports to other ANSI Common Lisps should be straightforward
and are welcome; please post a message on the Maxima mailing list
if you are interested in working on a port.
+See also the ports page at the Maxima wiki:
+http://maxima.sourceforge.net/wiki/index.php?Maxima%20ports
When Maxima is recompiled, the Lisp implementation is selected by
an argument of the form `--enable-foolisp' for the configure script.
@@ -5,57 +5,75 @@
@node Definitions for augmented_lagrangian, , augmented_lagrangian, augmented_lagrangian
@section Definitions for augmented_lagrangian
+@deffn {Function} augmented_lagrangian_method (@var{FOM}, @var{xx}, @var{C}, @var{yy})
+@deffnx {Function} augmented_lagrangian_method (@var{FOM}, @var{xx}, @var{C}, @var{yy}, optional_args)
-@defvr {Option variable} niter
-Default value: 10
+Returns an approximate minimum of the expression @var{FOM}
+with respect to the variables @var{xx},
+holding the constraints @var{C} equal to zero.
+@var{yy} is a list of initial guesses for @var{xx}.
+The method employed is the augmented Lagrangian method (see Refs [1] and [2]).
-Number of iterations for @code{augmented_lagrangian_method}.
-@end defvr
+@code{optional_args} represents additional arguments,
+specified as @code{@var{symbol} = @var{value}}.
+The optional arguments recognized are:
+@table @code
+@item niter
+Number of iterations of the augmented Lagrangian algorithm
+@item lbfgs_tolerance
+Tolerance supplied to LBFGS
+@item iprint
+IPRINT parameter (a list of two integers which controls verbosity) supplied to LBFGS
+@item %lambda
+Initial value of @code{%lambda} to be used for calculating the augmented Lagrangian
+@end table
-@deffn {Function} augmented_lagrangian_method (@var{FOM}, @var{xx}, @var{constraints}, @var{yy})
-Augmented Lagrangian method for constrained optimization.
-@var{FOM} is the figure of merit expression,
-@var{xx} is a list of variables over which to minimize,
-@var{constraints} is a list of expressions to be held equal to zero, and
-@var{yy} is a list of initial guesses for @var{xx}.
+This implementation minimizes the augmented Lagrangian by
+applying the limited-memory BFGS (LBFGS) algorithm,
+which is a quasi-Newton algorithm.
-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.
+@code{load(augmented_lagrangian)} loads this function.
-For references see
-@example
-http://www-fp.mcs.anl.gov/otc/Guide/OptWeb/continuous/constrained/nonlinearcon/auglag.html
-@end example
-and
-@example
-http://www.cs.ubc.ca/spider/ascher/542/chap10.pdf
-@end example
+See also @code{lbfgs}.
-Package @code{mnewton} (to solve grad @math{L = 0}) has to be loaded before calling @code{augmented_lagrangian_method}.
+References:
-Example:
-@example
-(%i1) load (mnewton)$
+[1] http://www-fp.mcs.anl.gov/otc/Guide/OptWeb/continuous/constrained/nonlinearcon/auglag.html
-(%i2) load("augmented_lagrangian")$
+[2] http://www.cs.ubc.ca/spider/ascher/542/chap10.pdf
+Example:
+
+@c ===beg===
+@c load (lbfgs);
+@c load (augmented_lagrangian);
+@c FOM: x^2 + 2*y^2;
+@c xx: [x, y];
+@c C: [x + y - 1];
+@c yy: [1, 1];
+@c augmented_lagrangian_method (FOM, xx, C, yy, iprint = [-1, 0]);
+@c ===end===
+@example
+(%i1) load (lbfgs);
+(%o1) /home/robert/tmp/maxima-release-branch/maxima/share/lbfgs/\
+lbfgs.mac
+(%i2) load (augmented_lagrangian);
+(%o2) /home/robert/tmp/maxima-release-branch/maxima/share/contri\
+b/augmented_lagrangian.mac
(%i3) FOM: x^2 + 2*y^2;
- 2 2
-(%o3) 2 y + x
+ 2 2
+(%o3) 2 y + x
(%i4) xx: [x, y];
-(%o4) [x, y]
+(%o4) [x, y]
(%i5) C: [x + y - 1];
-(%o5) [y + x - 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]
+(%o6) [1, 1]
+(%i7) augmented_lagrangian_method (FOM, xx, C, yy, iprint = [-1, 0]);
+(%o7) [[x = 0.6478349888525, y = 0.32391749442625],
+ %lambda = [- 1.267422460983745]]
@end example
-To use this function write first @code{load("mnewton")} and @code{load("augmented_lagrangian")}.
-See also @code{niter}.
@end deffn
View
@@ -32,7 +32,7 @@
Summary: Maxima Symbolic Computation Program
Name: maxima
Version: @VERSION@
-Release: 1
+Release: 1.fedora2
License: GPL
Group: Sciences/Mathematics
URL: http://maxima.sourceforge.net

0 comments on commit b5a3f30

Please sign in to comment.