public class ParameterDerivativeFreeCostMinimizer extends AbstractMinimizerBasedParameterCostMinimizer<VectorizableVectorFunction,DifferentiableEvaluator<Vector,java.lang.Double,Vector>>
Modifier and Type | Class and Description |
---|---|
static class |
ParameterDerivativeFreeCostMinimizer.ParameterCostEvaluatorDerivativeFree
Function that maps the parameters of an object to its inputs, so that
minimization algorithms can tune the parameters of an object against
a cost function.
|
Modifier and Type | Field and Description |
---|---|
static FunctionMinimizer<Vector,java.lang.Double,Evaluator<? super Vector,java.lang.Double>> |
DEFAULT_FUNCTION_MINIMIZER
Default function minimizer, FunctionMinimizerDirectionSetPowell
|
DEFAULT_COST_FUNCTION
DEFAULT_ITERATION, iteration
Constructor and Description |
---|
ParameterDerivativeFreeCostMinimizer()
Creates a new instance of ParameterDerivativeFreeCostMinimizer
|
ParameterDerivativeFreeCostMinimizer(FunctionMinimizer<Vector,java.lang.Double,? super DifferentiableEvaluator<Vector,java.lang.Double,Vector>> minimizer)
Creates a new instance of ParameterDerivativeFreeCostMinimizer
|
Modifier and Type | Method and Description |
---|---|
ParameterDerivativeFreeCostMinimizer |
clone()
This makes public the clone method on the
Object class and
removes the exception that it throws. |
ParameterDerivativeFreeCostMinimizer.ParameterCostEvaluatorDerivativeFree |
createInternalFunction()
Creates the internal function that maps the parameter set of
result as the input to the function, so that the minimization
algorithms can perturb this input in their minimization schemes.
|
getCostFunction, getObjectToOptimize, getPerformance, getResult, learn, setCostFunction, setObjectToOptimize, setResult
algorithmEnded, algorithmStarted, getAlgorithm, getIteration, getMaxIterations, isResultValid, readResolve, setAlgorithm, setMaxIterations, stepEnded, stepStarted, stop
addIterativeAlgorithmListener, fireAlgorithmEnded, fireAlgorithmStarted, fireStepEnded, fireStepStarted, getListeners, removeIterativeAlgorithmListener, setIteration, setListeners
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getMaxIterations, setMaxIterations
addIterativeAlgorithmListener, getIteration, removeIterativeAlgorithmListener
isResultValid, stop
public static final FunctionMinimizer<Vector,java.lang.Double,Evaluator<? super Vector,java.lang.Double>> DEFAULT_FUNCTION_MINIMIZER
public ParameterDerivativeFreeCostMinimizer()
public ParameterDerivativeFreeCostMinimizer(FunctionMinimizer<Vector,java.lang.Double,? super DifferentiableEvaluator<Vector,java.lang.Double,Vector>> minimizer)
minimizer
- Minimization algorithm used to find locally optimal parameterspublic ParameterDerivativeFreeCostMinimizer clone()
AbstractCloneableSerializable
Object
class and
removes the exception that it throws. Its default behavior is to
automatically create a clone of the exact type of object that the
clone is called on and to copy all primitives but to keep all references,
which means it is a shallow copy.
Extensions of this class may want to override this method (but call
super.clone()
to implement a "smart copy". That is, to target
the most common use case for creating a copy of the object. Because of
the default behavior being a shallow copy, extending classes only need
to handle fields that need to have a deeper copy (or those that need to
be reset). Some of the methods in ObjectUtil
may be helpful in
implementing a custom clone method.
Note: The contract of this method is that you must use
super.clone()
as the basis for your implementation.clone
in interface CloneableSerializable
clone
in class AbstractMinimizerBasedParameterCostMinimizer<VectorizableVectorFunction,DifferentiableEvaluator<Vector,java.lang.Double,Vector>>
public ParameterDerivativeFreeCostMinimizer.ParameterCostEvaluatorDerivativeFree createInternalFunction()
AbstractMinimizerBasedParameterCostMinimizer
createInternalFunction
in class AbstractMinimizerBasedParameterCostMinimizer<VectorizableVectorFunction,DifferentiableEvaluator<Vector,java.lang.Double,Vector>>