net.finmath.optimizer.StochasticOptimizer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of finmath-lib Show documentation
Show all versions of finmath-lib Show documentation
finmath lib is a Mathematical Finance Library in Java.
It provides algorithms and methodologies related to mathematical finance.
/*
* (c) Copyright Christian P. Fries, Germany. Contact: [email protected].
*
* Created on 29.05.2015
*/
package net.finmath.optimizer;
import net.finmath.stochastic.RandomVariable;
/**
* @author Christian Fries
*
* @version 1.0
*/
public interface StochasticOptimizer {
/**
* The interface describing the objective function of a StochasticOptimizer
.
*
* @author Christian Fries
*/
interface ObjectiveFunction {
void setValues(RandomVariable[] parameters, RandomVariable[] values) throws SolverException;
}
/**
* Get the best fit parameter vector.
*
* @return The best fit parameter.
*/
RandomVariable[] getBestFitParameters();
/**
* @return the the root mean square error achieved with the the best fit parameter
*/
double getRootMeanSquaredError();
/**
* Get the number of iterations.
*
* @return The number of iterations required
*/
int getIterations();
/**
* Runs the optimization.
*
* @throws SolverException Thrown if the valuation fails, specific cause may be available via the cause()
method.
*/
void run() throws SolverException;
}