SuanShu, a Java numerical and statistical library

com.numericalmethod.suanshu.optimization.univariate
Class Fibonacci

java.lang.Object
  extended by com.numericalmethod.suanshu.optimization.univariate.BracketSearch
      extended by com.numericalmethod.suanshu.optimization.univariate.Fibonacci

public class Fibonacci
extends BracketSearch

Fibonacci search is a dichotomous search where a bracketing interval is sub-divided by the Fibonacci ratio.

This particular implementation runs the risk that the next guess may lie outside the bracketing interval.

See Also:
"Algorithm 4.1. Practical Optimization: Algorithms and Engineering Applications. Andreas Antoniou and Wu-Sheng Lu. Springer."

Field Summary
 
Fields inherited from class com.numericalmethod.suanshu.optimization.univariate.BracketSearch
f, tol
 
Constructor Summary
Fibonacci()
           
 
Method Summary
 double search(int maxIterations, double lower, double upper)
          Search for a minimum within the interval [lower, upper].
 double search(int maxIterations, double lower, double initial, double upper)
          
 
Methods inherited from class com.numericalmethod.suanshu.optimization.univariate.BracketSearch
minimum, solve
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Fibonacci

public Fibonacci()
Method Detail

search

public double search(int maxIterations,
                     double lower,
                     double initial,
                     double upper)

Overrides:
search in class BracketSearch
Parameters:
lower - lower bound for the bracketing interval which contains a minimum
initial - lower < initial < upper
upper - upper bound for the bracketing interval which contains a minimum
maxIterations - number of iterations
Returns:
an approximate minimizer

search

public double search(int maxIterations,
                     double lower,
                     double upper)
Search for a minimum within the interval [lower, upper]. The initial guess is somewhere in the interval, computed using the Fibonacci sequence.

Parameters:
maxIterations - number of iterations
lower - lower bound for the bracketing interval which contains a minimum
upper - upper bound for the bracketing interval which contains a minimum
Returns:
an approximate minimizer

SuanShu, a Java numerical and statistical library

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