FunctionEvaluation

scalation.optimization.quasi_newton.FunctionEvaluation
See theFunctionEvaluation companion object
case class FunctionEvaluation(objFunction: FunctionV2S, gradFunction: FunctionV2V) extends EvaluationLogic

The FunctionEvaluation case class to store the definition of a function evaluation in a format that adheres to the evaluation logic format used by the implementation of the Limited memory Broyden–Fletcher–Goldfarb–Shanno (BFGS) for unconstrained optimization (L-BFGS) algorithm.

Value parameters

gradFunction

the gradient vector-valued function (vector -> vector)

objFunction

the multi-variate objective function (vector -> scalar)

Attributes

Companion
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Constructors

def this(objFunction: FunctionV2S)

This constructor uses numerical approximation for the gradient which is less accurate than hard-coded definition of gradient function.

This constructor uses numerical approximation for the gradient which is less accurate than hard-coded definition of gradient function.

Value parameters

objFunction

the object finction to be optimized

Attributes

Concrete methods

def evaluate(instance: Any, x: VectorD, n: Int, step: Double): LBFGSVarEvaluationResults

Evaluates the gradients and objective function according to the state of the variables during the minimization process.

Evaluates the gradients and objective function according to the state of the variables during the minimization process.

Value parameters

instance

user data provided by each call of the lbfgsMain method. Can have Any type defined by the user as long as the same type is utilized in other instances that rely on this EvaluationLogic

n

the number of variables

step

current step chosen by the line search routine.

x

VectorD with the current values of the variables

Attributes

Returns

LBFGSVarEvaluationResults, results obtained from evaluating the variables

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product