class LBFGSB extends FirstOrderMinimizer[DenseVector[Double], DiffFunction[DenseVector[Double]]] with SerializableLogging

This algorithm is refered the paper "A LIMITED MEMOR Y ALGORITHM F OR BOUND CONSTRAINED OPTIMIZA TION" written by Richard H.Byrd   Peihuang Lu   Jorge Nocedal  and Ciyou Zhu Created by fanming.chen on 2015/3/7 0007. If StrongWolfeLineSearch(maxZoomIter,maxLineSearchIter) is small, the wolfeRuleSearch.minimize may throw FirstOrderException, it should increase the two variables to appropriate value

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LBFGSB
  2. FirstOrderMinimizer
  3. SerializableLogging
  4. Serializable
  5. Minimizer
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new LBFGSB(lowerBounds: DenseVector[Double], upperBounds: DenseVector[Double], maxIter: Int = 100, m: Int = 5, tolerance: Double = 1E-8, maxZoomIter: Int = 64, maxLineSearchIter: Int = 64)

Type Members

  1. case class History(theta: Double, W: DenseMatrix[Double], M: DenseMatrix[Double], yHistory: DenseMatrix[Double], sHistory: DenseMatrix[Double]) extends Product with Serializable

    W

    [Yk theta * Sk]

  2. type State = FirstOrderMinimizer.State[DenseVector[Double], Info, History]
    Definition Classes
    FirstOrderMinimizer

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. val EPS: Double
    Attributes
    protected
  5. def adjust(newX: DenseVector[Double], newGrad: DenseVector[Double], newVal: Double): (Double, DenseVector[Double])
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  6. def adjustFunction(f: DiffFunction[DenseVector[Double]]): DiffFunction[DenseVector[Double]]
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  7. def adjustWithinBound(point: DenseVector[Double]): Unit
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def calculateObjective(f: DiffFunction[DenseVector[Double]], x: DenseVector[Double], history: History): (Double, DenseVector[Double])
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  10. def chooseDescentDirection(state: State, f: DiffFunction[DenseVector[Double]]): DenseVector[Double]
    Attributes
    protected
    Definition Classes
    LBFGSBFirstOrderMinimizer
  11. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  12. val convergenceCheck: ConvergenceCheck[DenseVector[Double]]
    Definition Classes
    FirstOrderMinimizer
  13. def determineStepSize(state: State, f: DiffFunction[DenseVector[Double]], direction: DenseVector[Double]): Double
    Attributes
    protected
    Definition Classes
    LBFGSBFirstOrderMinimizer
  14. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  16. def findAlpha(xCauchy: DenseVector[Double], du: Vector[Double], freeVarIndex: Array[Int]): Double

    xCauchy

    generalize cauchy point

    du

    gradient directiong

    returns

    starAlpha = max{a : a <= 1 and l_i-xc_i <= a*d_i <= u_i-xc_i}

    Attributes
    protected
  17. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  18. def getGeneralizedCauchyPoint(history: History, x: DenseVector[Double], g: DenseVector[Double]): (DenseVector[Double], DenseVector[Double])
    Attributes
    protected
  19. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  20. def infiniteIterations(f: DiffFunction[DenseVector[Double]], state: State): Iterator[State]
    Definition Classes
    FirstOrderMinimizer
  21. def initialHistory(f: DiffFunction[DenseVector[Double]], init: DenseVector[Double]): History
    Attributes
    protected
    Definition Classes
    LBFGSBFirstOrderMinimizer
  22. def initialState(f: DiffFunction[DenseVector[Double]], init: DenseVector[Double]): State
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  23. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  24. def iterations(f: DiffFunction[DenseVector[Double]], init: DenseVector[Double]): Iterator[State]
    Definition Classes
    FirstOrderMinimizer
  25. def logger: LazyLogger
    Attributes
    protected
    Definition Classes
    SerializableLogging
  26. def minimize(f: DiffFunction[DenseVector[Double]], init: DenseVector[Double]): DenseVector[Double]
    Definition Classes
    FirstOrderMinimizerMinimizer
  27. def minimizeAndReturnState(f: DiffFunction[DenseVector[Double]], init: DenseVector[Double]): State
    Definition Classes
    FirstOrderMinimizer
  28. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  29. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  30. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  31. def subspaceMinimization(history: History, xCauchy: DenseVector[Double], x: DenseVector[Double], c: DenseVector[Double], g: DenseVector[Double]): DenseVector[Double]
    Attributes
    protected
  32. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  33. def takeStep(state: State, dir: DenseVector[Double], stepSize: Double): DenseVector[Double]
    Attributes
    protected
    Definition Classes
    LBFGSBFirstOrderMinimizer
  34. def toString(): String
    Definition Classes
    AnyRef → Any
  35. def updateHistory(newX: DenseVector[Double], newGrad: DenseVector[Double], newVal: Double, f: DiffFunction[DenseVector[Double]], oldState: State): History
    Attributes
    protected
    Definition Classes
    LBFGSBFirstOrderMinimizer
  36. def updateSkYkHessianApproxMat(history: History, newS: DenseVector[Double], newY: DenseVector[Double]): History
    Attributes
    protected
  37. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  38. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  39. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from SerializableLogging

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped