|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object edu.jhu.bme.smile.commons.optimize.LineSearchNDDifferentiable
public class LineSearchNDDifferentiable
Uses Diffentiable 1D optimizers to optimize a Differentiable ND function. It optimizes in one dimension at a time. Once the extrema has been found in one dimension, it goes onto the next dimension and optimizes that one. It keeps changing dimensions until all of them converge to one extrema.
Constructor Summary | |
---|---|
LineSearchNDDifferentiable()
Default constructor. |
|
LineSearchNDDifferentiable(Optimizer1DContinuousDifferentiable alg)
Constructor to specify what 1D optimizer to use. |
|
LineSearchNDDifferentiable(Optimizer1DContinuousDifferentiable alg,
int maxIter)
Contructor to specify optimizer and maximum iterations |
Method Summary | |
---|---|
double[] |
getExtrema()
Gets the extrema that was found |
int |
getIterations()
Gets the number of iterations done. |
java.util.ArrayList<double[]> |
getLog()
Gets the logged data |
void |
initialize(OptimizableNDContinuousDifferentiable function)
Initialize the optimizer with the Differentiable ND function |
void |
initialize(OptimizableNDContinuousDifferentiable function,
double[] init)
Initialize the optimizer with the ND Differentiable function. |
void |
logData(boolean turnOn,
int maxSteps)
Turns on logging for each iteration of the optimization. |
boolean |
optimize(boolean findMinima)
Optimizes the function |
void |
setTolerance(double t)
Sets the tolerance. |
java.lang.String |
statusMessage()
Gets the status message from the optimizing process |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public LineSearchNDDifferentiable()
public LineSearchNDDifferentiable(Optimizer1DContinuousDifferentiable alg)
alg
- your Optimizer1DContinuousDifferentiable algorithmpublic LineSearchNDDifferentiable(Optimizer1DContinuousDifferentiable alg, int maxIter)
alg
- your Optimizer1DContinuousDifferentiable algorithmmaxIter
- maximum number of iterationsMethod Detail |
---|
public void setTolerance(double t)
t
- tolerancepublic void logData(boolean turnOn, int maxSteps)
turnOn
- true if logging, false if notmaxSteps
- maximum number of steps to logpublic java.util.ArrayList<double[]> getLog()
public double[] getExtrema()
getExtrema
in interface OptimizerNDContinuousDifferentiable
public int getIterations()
getIterations
in interface OptimizerNDContinuousDifferentiable
public void initialize(OptimizableNDContinuousDifferentiable function)
initialize
in interface OptimizerNDContinuousDifferentiable
function
- your OptimizableNDContinuousDifferentiable functionpublic void initialize(OptimizableNDContinuousDifferentiable function, double[] init)
function
- your OptimizableNDContinuousDifferentiable functioninit
- starting pointpublic boolean optimize(boolean findMinima)
optimize
in interface OptimizerNDContinuousDifferentiable
findMinima
- true if you want to find the minimum, false if you want to find the maximum
public java.lang.String statusMessage()
statusMessage
in interface OptimizerNDContinuousDifferentiable
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |