Package space.kscience.kmath.optimization
Types
Link copied to clipboard
class FunctionOptimization<T>(features: FeatureSet<OptimizationFeature>, expression: DifferentiableExpression<T>) : OptimizationProblem<T>
Content copied to clipboard
Link copied to clipboard
class FunctionOptimizationBuilder<T>(expression: DifferentiableExpression<T>) : OptimizationBuilder<T, FunctionOptimization<T>>
Content copied to clipboard
Link copied to clipboard
enum FunctionOptimizationTarget : Enum<FunctionOptimizationTarget> , OptimizationFeature
Content copied to clipboard
Link copied to clipboard
Link copied to clipboard
class OptimizationCovariance<T>(covariance: Matrix<T>) : OptimizationFeature
Content copied to clipboard
Link copied to clipboard
Link copied to clipboard
class OptimizationLog(loggable: Loggable) : Loggable, OptimizationFeature
Content copied to clipboard
Link copied to clipboard
class OptimizationParameters(symbols: List<Symbol>) : OptimizationFeature
Content copied to clipboard
Link copied to clipboard
interface OptimizationPrior<T> : OptimizationFeature, DifferentiableExpression<T>
Content copied to clipboard
Link copied to clipboard
Link copied to clipboard
open class OptimizationResult<T>(point: Map<Symbol, T>) : OptimizationFeature
Content copied to clipboard
Link copied to clipboard
open class OptimizationStartPoint<T>(point: Map<Symbol, T>) : OptimizationFeature
Content copied to clipboard
Link copied to clipboard
Link copied to clipboard
Specify the way to compute distance from point to the curve as DifferentiableExpression
Link copied to clipboard
Compute a wight of the point. The more the weight, the more impact this point will have on the fit. By default, uses Dispersion^-1
Link copied to clipboard
An optimizer based onf Fyodor Tkachev's quasi-optimal weights method. See the article.
Link copied to clipboard
Link copied to clipboard
class XYFit(data: XYColumnarData<Double, Double, Double>, model: DifferentiableExpression<Double>, features: FeatureSet<OptimizationFeature>, pointToCurveDistance: PointToCurveDistance, pointWeight: PointWeight, xSymbol: Symbol) : OptimizationProblem<Double>
Content copied to clipboard
A fit problem for X-Y-Yerr data. Also known as "least-squares" problem.
Link copied to clipboard
class XYOptimizationBuilder(data: XYColumnarData<Double, Double, Double>, model: DifferentiableExpression<Double>) : OptimizationBuilder<Double, XYFit>
Content copied to clipboard
Functions
Link copied to clipboard
suspend fun <I : Any, A : ExtendedField<I>, ExpressionAlgebra<Double, I>> XYColumnarData<Double, Double, Double>.fitWith(optimizer: Optimizer<Double, XYFit>, processor: AutoDiffProcessor<Double, I, A>, startingPoint: Map<Symbol, Double>, vararg features: OptimizationFeature = emptyArray(), xSymbol: Symbol = Symbol.x, pointToCurveDistance: PointToCurveDistance = PointToCurveDistance.byY, pointWeight: PointWeight = PointWeight.byYSigma, model: A.(I) -> I): XYFit
Content copied to clipboard
Fit given dta with
Link copied to clipboard
fun <T> FunctionOptimization(expression: DifferentiableExpression<T>, builder: FunctionOptimizationBuilder<T>.() -> Unit): FunctionOptimization<T>
Content copied to clipboard
Link copied to clipboard
inline fun <F : OptimizationFeature> OptimizationProblem<*>.getFeature(): F?
Content copied to clipboard
Link copied to clipboard
suspend fun Optimizer<Double, FunctionOptimization<Double>>.maximumLogLikelihood(problem: XYFit): XYFit
Content copied to clipboard
Optimize given XY (least squares) problem using this function Optimizer. The problem is treated as maximum likelihood problem and is done via maximizing logarithmic likelihood, respecting possible weight dependency on the model and parameters.
suspend fun Optimizer<Double, FunctionOptimization<Double>>.maximumLogLikelihood(data: XYColumnarData<Double, Double, Double>, model: DifferentiableExpression<Double>, builder: XYOptimizationBuilder.() -> Unit): XYFit
Content copied to clipboard
Link copied to clipboard
suspend fun <T> DifferentiableExpression<T>.optimizeWith(optimizer: Optimizer<T, FunctionOptimization<T>>, vararg startingPoint: Pair<Symbol, T>, builder: FunctionOptimizationBuilder<T>.() -> Unit = {}): FunctionOptimization<T>
Content copied to clipboard
suspend fun <T> DifferentiableExpression<T>.optimizeWith(optimizer: Optimizer<T, FunctionOptimization<T>>, startingPoint: Map<Symbol, T>, builder: FunctionOptimizationBuilder<T>.() -> Unit = {}): FunctionOptimization<T>
Content copied to clipboard
suspend fun <T : Any> DifferentiableExpression<T>.optimizeWith(optimizer: Optimizer<T, FunctionOptimization<T>>, startingPoint: Map<Symbol, T>, vararg features: OptimizationFeature): FunctionOptimization<T>
Content copied to clipboard
Optimizes differentiable expression using specific optimizer form given startingPoint.
Link copied to clipboard
Link copied to clipboard
fun <T> FunctionOptimization<T>.withFeatures(vararg newFeature: OptimizationFeature): FunctionOptimization<T>
Content copied to clipboard
Link copied to clipboard
fun XYOptimization(data: XYColumnarData<Double, Double, Double>, model: DifferentiableExpression<Double>, builder: XYOptimizationBuilder.() -> Unit): XYFit
Content copied to clipboard