Gauss-Newton and Conjugate-Gradient optimization

This code implements a Gauss-Newton optimization of objective functions that can be iteratively approximated by quadratics. This approach is particularly appropriate for least-squares inversions of moderately non-linear transforms. You will also find code for conjugate-gradient and line-search optimizations.

Get documentation of the algorithm here: [ ../../papers/inv/inv.html ] [ ../../papers/inv.pdf ] [ ../../papers/inv.ps.gz ]

Several papers describe ways to use this code: [ ../../papers/regularization.pdf ] [ ../../papers/regularization/ ] [ ../../papers/neural.pdf ] [ ../../papers/neural/ ] [ ../../papers/rmsinv.pdf ] [ ../../papers/rmsinv/ ]

See an older C++ version [ ../conjugate_gradients/ ]

See the java documentation in the documentation subdirectory [ documentation ] .

The current version of this code is now a part of the Mines Java Toolkit at https://github.com/dhale/jtk in the edu.mines.jtk.opt package, with code in https://github.com/dhale/jtk/tree/master/src/main/java/edu/mines/jtk/opt/ and documentation in https://github.com/dhale/jtk/tree/master/doc/opt_package/

An older public version is available from http://code.google.com/p/optimal/


File:   Bytes:   Modified:
Almost.java     14382   2015-03-29 13:02:26
AlmostTest.java     6298   2012-11-20 21:19:21
ArrayMath.java     469   2015-03-29 13:02:27
ArrayVect1.java     4859   2015-03-29 13:02:27
ArrayVect1Test.java     2282   2012-11-20 21:19:21
CleanFormatter.java     5031   2015-03-29 13:02:27
CleanFormatterTest.java     3109   2012-11-20 21:19:21
CleanHandler.java     4429   2015-03-29 13:02:27
CleanHandler.properties     31   2015-03-29 13:02:26
CoordinateTransform.java     6601   2015-03-29 13:02:27
CoordinateTransformTest.java     3301   2012-11-20 21:19:21
GaussNewtonSolver.java     10575   2015-03-29 13:02:27
GaussNewtonSolverTest.java     11540   2012-11-20 21:19:21
license.txt     11922   2012-11-20 21:19:21
LinearTransform.java     2083   2015-03-29 13:02:27
LinearTransformWrapper.java     1688   2015-03-29 13:02:27
Localize_ch.properties     88   2015-03-29 13:02:26
Localize_de.properties     106   2015-03-29 13:02:26
Localize_es.properties     102   2015-03-29 13:02:26
Localize.java     12049   2015-03-29 13:02:27
Localize.properties     102   2015-03-29 13:02:26
LocalizeTest.java     3924   2012-11-20 21:19:21
LoggerStream.java     3089   2015-03-29 13:02:27
LogMonitor_ch.properties     120   2015-03-29 13:02:26
LogMonitor_de.properties     126   2015-03-29 13:02:26
LogMonitor_es.properties     118   2015-03-29 13:02:26
LogMonitor.java     9909   2015-03-29 13:02:27
LogMonitor.properties     124   2015-03-29 13:02:26
MathPlus.java     390   2015-03-29 13:02:27
Monitor.java     1759   2015-03-29 13:02:27
PartialMonitor.java     1821   2015-03-29 13:02:27
Quadratic.java     1455   2015-03-29 13:02:27
QuadraticSolver.java     7369   2015-03-29 13:02:27
QuadraticSolverTest.java     5230   2012-11-20 21:19:21
README     1245   2012-02-25 15:29:15
ScalarSolver.java     16170   2015-03-29 13:02:27
ScalarSolverTest.java     7951   2012-11-20 21:19:21
src.tar.gz     38289   2015-03-29 13:02:27
Transform.java     3493   2015-03-29 13:02:27
TransformQuadratic.java     9402   2015-03-29 13:02:27
VectConst.java     1610   2015-03-29 13:02:27
Vect.java     3741   2015-03-29 13:02:27
VectUtil.java     8918   2015-03-29 13:02:27

Directories:
documentation


Return to parent directory.