scalation.optimization.quasi_newtonC

Members list

Type members

Classlikes

The FunctionDescriptors object provides a set of FunctionDescriptors values to model each function contained in the L-BFGS C library.

The FunctionDescriptors object provides a set of FunctionDescriptors values to model each function contained in the L-BFGS C library.

Used by the LBFGS_FFM object when constructing a MethodHandle to access a desired function from the L-BFGS C library shared object.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
case class FunctionOptimizationFFM(objFunction: FunctionV2S, gradFunction: FunctionV2V) extends OptimizationLogicFFM

The FunctionOptimizationFFM case class ...

The FunctionOptimizationFFM case class ...

Attributes

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

The FunctionOptimizationFFM companion case object ...

The FunctionOptimizationFFM companion case object ...

Attributes

Companion
class
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
object LBFGS_FFM

The LBFGS_FFM object provides a set of functions to interact with the L-BFGS C library shared object through the use of Java's FFM abstractions, allowing the user to call the C implementation of the L-BFGS algorithm directly from Scala code.

The LBFGS_FFM object provides a set of functions to interact with the L-BFGS C library shared object through the use of Java's FFM abstractions, allowing the user to call the C implementation of the L-BFGS algorithm directly from Scala code.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
LBFGS_FFM.type
object MethodTypes

The MethodTypes object ...

The MethodTypes object ...

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type

The OptimizationLogicWrapper trait specifies the requirements for the logic to be used in each step of a L-BFGS variable minimization done by the lbfgsMain method of the LBFGS_FFM object. The methods provided in this trait are called as a MethodHandle by the L-BFGS C library shared object, such that pointer arguments are declared with the MemorySegment type.

The OptimizationLogicWrapper trait specifies the requirements for the logic to be used in each step of a L-BFGS variable minimization done by the lbfgsMain method of the LBFGS_FFM object. The methods provided in this trait are called as a MethodHandle by the L-BFGS C library shared object, such that pointer arguments are declared with the MemorySegment type.

Classes extending this trait must implement two methods: evaluate and progress. The evaluate method is used to evaluate the gradients and objective function for a given state of the variables. The progress method is used to report on how the minimization process is progressing.

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
case class OptimizationMethodHandlesFFM(evaluateMethodHandle: MethodHandle, progressMethodHandle: Option[MethodHandle])

The OptimizationMethodHandlesFFM case class ...

The OptimizationMethodHandlesFFM case class ...

Attributes

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

The OptimizationMethodHandlesFFM case object ...

The OptimizationMethodHandlesFFM case object ...

Attributes

Companion
class
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any

Attributes

Supertypes
class Object
trait Matchable
class Any

Value members

Concrete methods

The bohachevsky2FunctionLBFGS_FFMTest main function uses the Bohachevsky 2 Function to test the lbfgsMain method provided by the LBFGS_FFM object. Multiple tests are performed with different values for the variables.

The bohachevsky2FunctionLBFGS_FFMTest main function uses the Bohachevsky 2 Function to test the lbfgsMain method provided by the LBFGS_FFM object. Multiple tests are performed with different values for the variables.

runMain scalation.optimization.quasi_newtonC.bohachevsky2FunctionLBFGS_FFMTest

Attributes

The boothFunctionLBFGS_FFMTest main function uses the Booth Function to test the lbfgsMain method provided by the LBFGS_FFM object. Multiple tests are performed with different values for the variables.

The boothFunctionLBFGS_FFMTest main function uses the Booth Function to test the lbfgsMain method provided by the LBFGS_FFM object. Multiple tests are performed with different values for the variables.

The Booth Function can be described as follows:

  • Input dimension: 2;

  • Function domain: -10 ≤ x,,i,, ≤ 10;

  • Function definition: f(x) = (x,,0,, + 2 * x,,1,, - 7)^2^ + (2 * x,,0,, + x,,1,, - 5)^2^;

  • Global minimum: x* = (1, 3); f(x*) = 0;

This test function can be run on the sbt shell with the following command:

runMain scalation.optimization.quasi_newtonC.boothFunctionLBFGS_FFMTest

Attributes