Class/Object

breeze.optimize

LBFGSB

Related Docs: object LBFGSB | package optimize

Permalink

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

Linear Supertypes
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)

    Permalink

Type Members

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

    Permalink

    W

    [Yk theta * Sk]

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

    Permalink
    Definition Classes
    FirstOrderMinimizer

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. val EPS: Double

    Permalink
    Attributes
    protected
  5. def adjust(newX: DenseVector[Double], newGrad: DenseVector[Double], newVal: Double): (Double, DenseVector[Double])

    Permalink
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  6. def adjustFunction(f: DiffFunction[DenseVector[Double]]): DiffFunction[DenseVector[Double]]

    Permalink
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  7. def adjustWithinBound(point: DenseVector[Double]): Unit

    Permalink
  8. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  9. def calculateObjective(f: DiffFunction[DenseVector[Double]], x: DenseVector[Double], history: History): (Double, DenseVector[Double])

    Permalink
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  10. def chooseDescentDirection(state: State, f: DiffFunction[DenseVector[Double]]): DenseVector[Double]

    Permalink
    Attributes
    protected
    Definition Classes
    LBFGSBFirstOrderMinimizer
  11. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @throws( ... )
  12. val convergenceCheck: ConvergenceCheck[DenseVector[Double]]

    Permalink
    Definition Classes
    FirstOrderMinimizer
  13. def determineStepSize(state: State, f: DiffFunction[DenseVector[Double]], direction: DenseVector[Double]): Double

    Permalink
    Attributes
    protected
    Definition Classes
    LBFGSBFirstOrderMinimizer
  14. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  16. def findAlpha(xCauchy: DenseVector[Double], du: Vector[Double], freeVarIndex: Array[Int]): Double

    Permalink

    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[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  18. def getGeneralizedCauchyPoint(history: History, x: DenseVector[Double], g: DenseVector[Double]): (DenseVector[Double], DenseVector[Double])

    Permalink
    Attributes
    protected
  19. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  20. def infiniteIterations(f: DiffFunction[DenseVector[Double]], state: State): Iterator[State]

    Permalink
    Definition Classes
    FirstOrderMinimizer
  21. def initialHistory(f: DiffFunction[DenseVector[Double]], init: DenseVector[Double]): History

    Permalink
    Attributes
    protected
    Definition Classes
    LBFGSBFirstOrderMinimizer
  22. def initialState(f: DiffFunction[DenseVector[Double]], init: DenseVector[Double]): State

    Permalink
    Attributes
    protected
    Definition Classes
    FirstOrderMinimizer
  23. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  24. def iterations(f: DiffFunction[DenseVector[Double]], init: DenseVector[Double]): Iterator[State]

    Permalink
    Definition Classes
    FirstOrderMinimizer
  25. def logger: LazyLogger

    Permalink
    Attributes
    protected
    Definition Classes
    SerializableLogging
  26. def minimize(f: DiffFunction[DenseVector[Double]], init: DenseVector[Double]): DenseVector[Double]

    Permalink
    Definition Classes
    FirstOrderMinimizerMinimizer
  27. def minimizeAndReturnState(f: DiffFunction[DenseVector[Double]], init: DenseVector[Double]): State

    Permalink
    Definition Classes
    FirstOrderMinimizer
  28. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  29. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  30. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  31. def subspaceMinimization(history: History, xCauchy: DenseVector[Double], x: DenseVector[Double], c: DenseVector[Double], g: DenseVector[Double]): DenseVector[Double]

    Permalink
    Attributes
    protected
  32. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  33. def takeStep(state: State, dir: DenseVector[Double], stepSize: Double): DenseVector[Double]

    Permalink
    Attributes
    protected
    Definition Classes
    LBFGSBFirstOrderMinimizer
  34. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  35. def updateHistory(newX: DenseVector[Double], newGrad: DenseVector[Double], newVal: Double, f: DiffFunction[DenseVector[Double]], oldState: State): History

    Permalink
    Attributes
    protected
    Definition Classes
    LBFGSBFirstOrderMinimizer
  36. def updateSkYkHessianApproxMat(history: History, newS: DenseVector[Double], newY: DenseVector[Double]): History

    Permalink
    Attributes
    protected
  37. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from SerializableLogging

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped