1 |
ou.wang |
1.1 |
20171119 |
2 |
|
|
Ou Wang |
3 |
|
|
Jet Propulsion Laboratory |
4 |
|
|
|
5 |
|
|
This directory contains the updated optimization package |
6 |
|
|
used in ECCO Version 4, Release 3. The main difference |
7 |
|
|
between this updated version and that in the MITgcm main |
8 |
ou.wang |
1.2 |
CVS repository is whether to overwrite OPWARMI and OPWARMD |
9 |
ou.wang |
1.1 |
when either of the two Wolfe conditions is not |
10 |
ou.wang |
1.2 |
satisfied. This updated version would not overwrite |
11 |
ou.wang |
1.1 |
OPWARMI and OPWARMD, while that in the main repository |
12 |
|
|
would. |
13 |
|
|
|
14 |
ou.wang |
1.2 |
1) Compile |
15 |
ou.wang |
1.1 |
To compile, one first has to set MAX_INDEPEND in |
16 |
ou.wang |
1.2 |
optim/Makefile to the control vector length of his/her model. |
17 |
ou.wang |
1.1 |
|
18 |
|
|
cd lsopt |
19 |
ou.wang |
1.2 |
make clean |
20 |
ou.wang |
1.1 |
make |
21 |
|
|
cd optim |
22 |
ou.wang |
1.2 |
make clean |
23 |
ou.wang |
1.1 |
make |
24 |
|
|
The executable would be optim.x in optim/. |
25 |
|
|
|
26 |
ou.wang |
1.2 |
2) Check for Wolfe conditions |
27 |
|
|
This updated version will NOT overwrite OPWARMI |
28 |
|
|
and OPWARMD, when either of the two Wolfe |
29 |
|
|
conditions is NOT satisfied. The two Wolfe |
30 |
|
|
conditions are 1) sufficient decrease condition |
31 |
|
|
(Armijo rule) and 2) curvature condition (cf. |
32 |
|
|
Wolfe [1969], [1971]). Suppose we are computing |
33 |
|
|
ecco_ctrl for iteration i (i>1) and we direct the |
34 |
|
|
print-outs to a file called op.txt. If we |
35 |
|
|
found 'Wolfe test 1: failed' or 'Wolfe test 2: failed' |
36 |
|
|
in op.txt, then the previous iteration (i-1) is |
37 |
|
|
NOT a solution. The optimization package will still |
38 |
|
|
generate a new ecco_ctrl file that we would use to |
39 |
|
|
re-do a new iteration. Note that when deriving |
40 |
|
|
iteration one, one would always find |
41 |
|
|
'Wolfe test 1: failed' or 'Wolfe test 2: failed' |
42 |
|
|
in op.txt and need to disregard this message, |
43 |
|
|
since iteration zero is always a solution. |
44 |
|
|
|
45 |
|
|
References: |
46 |
|
|
Wolfe, P. (1969). "Convergence Conditions for Ascent Methods". SIAM Review. |
47 |
|
|
11 (2): 226-235. doi:10.1137/1011036. |
48 |
|
|
Wolfe, P. (1971). "Convergence Conditions for Ascent Methods. II: Some Corrections". |
49 |
|
|
SIAM Review. 13 (2): 185-188. doi:10.1137/1013035 |