SuanShu, a Java numerical and statistical library

com.numericalmethod.suanshu.optimization.unconstrained.steepestdescent
Class FirstOrder

java.lang.Object
  extended by com.numericalmethod.suanshu.optimization.unconstrained.steepestdescent.SteepestDescent
      extended by com.numericalmethod.suanshu.optimization.unconstrained.steepestdescent.FirstOrder
All Implemented Interfaces:
Minimizer, UnconstrainedMinimizer

public class FirstOrder
extends SteepestDescent

This implements the steepest descent search using the first order expansion of the Taylor's series. Specifically, we search along the negative gradient direction.

See Also:

Nested Class Summary
static class FirstOrder.Method
          the methods available to do line search
 
Nested classes/interfaces inherited from class com.numericalmethod.suanshu.optimization.unconstrained.steepestdescent.SteepestDescent
SteepestDescent.LineSearch
 
Field Summary
 
Fields inherited from class com.numericalmethod.suanshu.optimization.unconstrained.steepestdescent.SteepestDescent
f, g, tol
 
Constructor Summary
FirstOrder()
          Construct an instance of FirstOrder to minimize a function f, using Fletcher's inexact line search method.
FirstOrder(FirstOrder.Method method)
          Construct an instance of FirstOrder to minimize a function f.
 
Method Summary
protected  SteepestDescent.LineSearch getLineSearch()
           
 
Methods inherited from class com.numericalmethod.suanshu.optimization.unconstrained.steepestdescent.SteepestDescent
minimum, search, solve, solve, solve
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FirstOrder

public FirstOrder(FirstOrder.Method method)
Construct an instance of FirstOrder to minimize a function f.

Parameters:
method - the method to do line search, c.f., FirstOrder.Method

FirstOrder

public FirstOrder()
Construct an instance of FirstOrder to minimize a function f, using Fletcher's inexact line search method.

Method Detail

getLineSearch

protected SteepestDescent.LineSearch getLineSearch()
Specified by:
getLineSearch in class SteepestDescent

SuanShu, a Java numerical and statistical library

Copyright © 2011 Numerical Method Inc. Ltd. All Rights Reserved.