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. Serializable
  6. Minimizer
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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

Inherited from SerializableLogging

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped