Interface IterativeOptimization
-
- All Superinterfaces:
- java.io.Serializable
- All Known Subinterfaces:
- LineSearch, UnconstrainedLeastSquares, UnconstrainedMinimization
- All Known Implementing Classes:
- CommonLineSearch, LevenbergDampened_to_UnconstrainedLeastSquares, LineSearchFletcher86, LineSearchMore94, QuasiNewtonBFGS_to_UnconstrainedMinimization, TrustRegionLeastSquares_to_UnconstrainedLeastSquares
public interface IterativeOptimization extends java.io.SerializableInterface for iterative optimization classes. One iteration is performed in the search by invoking the
iterate()function. When the optimization has terminated iterate() will return true. All implementers of this class must terminate within a finite number of steps. The process can terminate because it has converged or no more progress can be made.Implementers of this class will provide a function that returns the best set of parameters found so far. This allows the progress to be terminated early if it is taking an excessive amount of time. All implementations are also
Serializable, allowing intermediate progress to be saved and resumed.- See Also:
UtilOptimize
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description java.lang.StringgetWarning()Provides feed back if something went wrong, but still produced a solution.booleanisConverged()Indicates if iteration stopped due to convergence or not.booleanisUpdated()True if the parameter(s) being optimized have been updatedbooleaniterate()Updates the search.
-
-
-
Method Detail
-
iterate
boolean iterate() throws OptimizationExceptionUpdates the search. If the search has terminated true is returned. After the search has terminated invoke
isConverged()to see if a solution has been converged to or if it stopped for some other reason.NOTE: The optimization parameters might not be modified after iterate() is called. An internal book keeping step might have been done. To see if parameters have changed call
isUpdated().- Returns:
- true if it has converged or that no more progress can be made.
- Throws:
OptimizationException
-
isUpdated
boolean isUpdated()
True if the parameter(s) being optimized have been updated- Returns:
- True if parameters have been updated
-
isConverged
boolean isConverged()
Indicates if iteration stopped due to convergence or not.- Returns:
- True if iteration stopped because it converged.
-
getWarning
java.lang.String getWarning()
Provides feed back if something went wrong, but still produced a solution. If there is no message then null is returned. The meaning and type of messages are implementation specific.- Returns:
- Additional info on the computed solution.
-
-
DataMelt 3.0 © DataMelt by jWork.ORG