142
142
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
144
144
<a name="augmented_005flagrangian"></a>
145
<a name="SEC173"></a>
145
<a name="SEC176"></a>
146
146
<table cellpadding="1" cellspacing="1" border="0">
147
<tr><td valign="middle" align="left">[<a href="maxima_41.html#SEC172" title="Previous section in reading order"> < </a>]</td>
148
<td valign="middle" align="left">[<a href="#SEC174" title="Next section in reading order"> > </a>]</td>
147
<tr><td valign="middle" align="left">[<a href="maxima_41.html#SEC175" title="Previous section in reading order"> < </a>]</td>
148
<td valign="middle" align="left">[<a href="#SEC177" title="Next section in reading order"> > </a>]</td>
149
149
<td valign="middle" align="left"> </td>
150
<td valign="middle" align="left">[<a href="maxima_41.html#SEC169" title="Beginning of this chapter or previous chapter"> << </a>]</td>
150
<td valign="middle" align="left">[<a href="maxima_41.html#SEC172" title="Beginning of this chapter or previous chapter"> << </a>]</td>
151
151
<td valign="middle" align="left">[<a href="maxima.html#SEC_Top" title="Up section"> Up </a>]</td>
152
<td valign="middle" align="left">[<a href="maxima_43.html#SEC175" title="Next chapter"> >> </a>]</td>
152
<td valign="middle" align="left">[<a href="maxima_43.html#SEC178" title="Next chapter"> >> </a>]</td>
153
153
<td valign="middle" align="left"> </td>
154
154
<td valign="middle" align="left"> </td>
155
155
<td valign="middle" align="left"> </td>
156
156
<td valign="middle" align="left"> </td>
157
157
<td valign="middle" align="left">[<a href="maxima.html#SEC_Top" title="Cover (top) of document">Top</a>]</td>
158
158
<td valign="middle" align="left">[<a href="maxima_toc.html#SEC_Contents" title="Table of contents">Contents</a>]</td>
159
<td valign="middle" align="left">[<a href="maxima_77.html#SEC300" title="Index">Index</a>]</td>
159
<td valign="middle" align="left">[<a href="maxima_79.html#SEC320" title="Index">Index</a>]</td>
160
160
<td valign="middle" align="left">[<a href="maxima_abt.html#SEC_About" title="About (help)"> ? </a>]</td>
162
162
<h1 class="chapter"> 42. augmented_lagrangian </h1>
164
164
<table class="menu" border="0" cellspacing="0">
165
<tr><td align="left" valign="top"><a href="#SEC174">42.1 Functions and Variables for augmented_lagrangian</a></td><td> </td><td align="left" valign="top">
165
<tr><td align="left" valign="top"><a href="#SEC177">42.1 Functions and Variables for augmented_lagrangian</a></td><td> </td><td align="left" valign="top">
169
<p><a name="Item_003a-Functions-and-Variables-for-augmented_005flagrangian"></a>
170
171
<a name="Functions-and-Variables-for-augmented_005flagrangian"></a>
171
<a name="SEC174"></a>
172
<a name="SEC177"></a>
172
173
<table cellpadding="1" cellspacing="1" border="0">
173
<tr><td valign="middle" align="left">[<a href="#SEC173" title="Previous section in reading order"> < </a>]</td>
174
<td valign="middle" align="left">[<a href="maxima_43.html#SEC175" title="Next section in reading order"> > </a>]</td>
174
<tr><td valign="middle" align="left">[<a href="#SEC176" title="Previous section in reading order"> < </a>]</td>
175
<td valign="middle" align="left">[<a href="maxima_43.html#SEC178" title="Next section in reading order"> > </a>]</td>
175
176
<td valign="middle" align="left"> </td>
176
<td valign="middle" align="left">[<a href="#SEC173" title="Beginning of this chapter or previous chapter"> << </a>]</td>
177
<td valign="middle" align="left">[<a href="#SEC173" title="Up section"> Up </a>]</td>
178
<td valign="middle" align="left">[<a href="maxima_43.html#SEC175" title="Next chapter"> >> </a>]</td>
177
<td valign="middle" align="left">[<a href="#SEC176" title="Beginning of this chapter or previous chapter"> << </a>]</td>
178
<td valign="middle" align="left">[<a href="#SEC176" title="Up section"> Up </a>]</td>
179
<td valign="middle" align="left">[<a href="maxima_43.html#SEC178" title="Next chapter"> >> </a>]</td>
179
180
<td valign="middle" align="left"> </td>
180
181
<td valign="middle" align="left"> </td>
181
182
<td valign="middle" align="left"> </td>
182
183
<td valign="middle" align="left"> </td>
183
184
<td valign="middle" align="left">[<a href="maxima.html#SEC_Top" title="Cover (top) of document">Top</a>]</td>
184
185
<td valign="middle" align="left">[<a href="maxima_toc.html#SEC_Contents" title="Table of contents">Contents</a>]</td>
185
<td valign="middle" align="left">[<a href="maxima_77.html#SEC300" title="Index">Index</a>]</td>
186
<td valign="middle" align="left">[<a href="maxima_79.html#SEC320" title="Index">Index</a>]</td>
186
187
<td valign="middle" align="left">[<a href="maxima_abt.html#SEC_About" title="About (help)"> ? </a>]</td>
188
189
<h2 class="section"> 42.1 Functions and Variables for augmented_lagrangian </h2>
191
<p><a name="Item_003a-augmented_005flagrangian_005fmethod"></a>
191
193
<dt><u>Function:</u> <b>augmented_lagrangian_method</b><i> (<var>FOM</var>, <var>xx</var>, <var>C</var>, <var>yy</var>)</i>
192
<a name="IDX1404"></a>
194
<a name="IDX1418"></a>
194
196
<dt><u>Function:</u> <b>augmented_lagrangian_method</b><i> (<var>FOM</var>, <var>xx</var>, <var>C</var>, <var>yy</var>, optional_args)</i>
195
<a name="IDX1405"></a>
197
<a name="IDX1419"></a>
199
<dt><u>Function:</u> <b>augmented_lagrangian_method</b><i> ([<var>FOM</var>, <var>grad</var>], <var>xx</var>, <var>C</var>, <var>yy</var>)</i>
200
<a name="IDX1420"></a>
202
<dt><u>Function:</u> <b>augmented_lagrangian_method</b><i> ([<var>FOM</var>, <var>grad</var>], <var>xx</var>, <var>C</var>, <var>yy</var>, optional_args)</i>
203
<a name="IDX1421"></a>
197
205
<dd><p>Returns an approximate minimum of the expression <var>FOM</var>
198
206
with respect to the variables <var>xx</var>,
200
208
<var>yy</var> is a list of initial guesses for <var>xx</var>.
201
209
The method employed is the augmented Lagrangian method (see Refs [1] and [2]).
211
<p><var>grad</var>, if present, is the gradient of <var>FOM</var> with respect to <var>xx</var>,
212
represented as a list of expressions,
213
one for each variable in <var>xx</var>.
214
If not present, the gradient is constructed automatically.
216
<p><var>FOM</var> and each element of <var>grad</var>, if present,
217
must be ordinary expressions, not names of functions or lambda expressions.
203
219
<p><code>optional_args</code> represents additional arguments,
204
220
specified as <code><var>symbol</var> = <var>value</var></code>.
205
221
The optional arguments recognized are:
253
269
(%o7) [[x = 0.66665984108002, y = 0.33334027245545],
254
270
%lambda = [- 1.333337940892525]]
272
<p>Same example as before, but this time the gradient is supplied as an argument.
274
<pre class="example">(%i1) load (lbfgs)$
275
(%i2) load (augmented_lagrangian)$
276
(%i3) FOM: x^2 + 2*y^2;
279
(%i4) FOM: x^2 + 2*y^2;
284
(%i6) grad : [2*x, 4*y];
286
(%i7) C: [x + y - 1];
290
(%i9) augmented_lagrangian_method ([FOM, grad], xx, C, yy, iprint = [-1, 0]);
291
(%o9) [[x = 0.666659841080025, y = .3333402724554462],
292
%lambda = [- 1.333337940892543]]
294
<div class=categorybox>
297
<p>Categories: <a href="maxima_93.html#Category_003a-Numerical-methods">Numerical methods</a>
299
<a href="maxima_93.html#Category_003a-Share-packages">Share packages</a>
301
<a href="maxima_93.html#Category_003a-Package-augmented_005flagrangian">Package augmented_lagrangian</a>
309
<p><a name="Item_003a-bode"></a>
260
311
<table cellpadding="1" cellspacing="1" border="0">
261
<tr><td valign="middle" align="left">[<a href="#SEC173" title="Beginning of this chapter or previous chapter"> << </a>]</td>
262
<td valign="middle" align="left">[<a href="maxima_43.html#SEC175" title="Next chapter"> >> </a>]</td>
312
<tr><td valign="middle" align="left">[<a href="#SEC176" title="Beginning of this chapter or previous chapter"> << </a>]</td>
313
<td valign="middle" align="left">[<a href="maxima_43.html#SEC178" title="Next chapter"> >> </a>]</td>
263
314
<td valign="middle" align="left"> </td>
264
315
<td valign="middle" align="left"> </td>
265
316
<td valign="middle" align="left"> </td>