class L_BFGS_B extends Minimizer
The L_BFGS_B
the class implements the Limited memory Broyden–Fletcher–
Goldfarb–Shanno for Bound constrained optimization (L-BFGS-B)
Quasi-Newton Algorithm for solving Non-Linear Programming (NLP) problems.
L-BFGS-B determines a search direction by deflecting the steepest descent direction
vector (opposite the gradient) by * multiplying it by a matrix that approximates
the inverse Hessian. Furthermore, only a few vectors represent the approximation
of the Hessian Matrix (limited memory). The parameters estimated are also bounded
within user specified lower and upper bounds.
minimize f(x) subject to g(x) <= 0 [ optionally g(x) == 0 ]
- Alphabetic
- By Inheritance
- L_BFGS_B
- Minimizer
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new L_BFGS_B(f: FunctionV2S, g: FunctionV2S = null, ineq: Boolean = true, exactLS: Boolean = false, l: VectoD = null, u: VectoD = null)
- f
the objective function to be minimized
- g
the constraint function to be satisfied, if any
- ineq
whether the constraint is treated as inequality (default) or equality
- exactLS
whether to use exact (e.g.,
GoldenLS
) or inexact (e.g.,WolfeLS
) Line Search- l
vector of lower bounds for all input parameters
- u
vector of upper bounds for all input parameters
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val EPSILON: Double
- Attributes
- protected
- Definition Classes
- Minimizer
- val MAX_ITER: Int
- Attributes
- protected
- Definition Classes
- Minimizer
- val STEP: Double
- Attributes
- protected
- Definition Classes
- Minimizer
- val TOL: Double
- Attributes
- protected
- Definition Classes
- Minimizer
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def fg(x: VectorD): Double
The objective function f plus a weighted penalty based on the constraint function g.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def lineSearch(x: VectorD, dir: VectorD, step: Double = STEP): Double
Perform an exact 'GoldenSectionLS' or inexact 'WolfeLS' Line Search.
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def setHistorySize(hs_: Int): Unit
Modify the number of historical vectors to store.
Modify the number of historical vectors to store.
- hs_
the new history size
- def solve(x0: VectorD, alphaInit: Double = STEP, toler: Double = TOL): VectorD
Solve the following Non-Linear Programming (NLP) problem using L-BFGS-B: min { f(x) | g(x) <= 0 }.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated