class BacktrackingLineSearch extends ApproximateLineSearch
Implements the Backtracking Linesearch like that in LBFGS-C (which is (c) 2007-2010 Naoaki Okazaki under BSD)
Basic idea is that we need to find an alpha that is sufficiently smaller than f(0), and also possibly requiring that the slope of f decrease by the right amount (wolfe conditions)
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- BacktrackingLineSearch
- ApproximateLineSearch
- MinimizingLineSearch
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
- new BacktrackingLineSearch(initfval: Double, maxIterations: Int = 20, shrinkStep: Double = 0.5, growStep: Double = 2.1, cArmijo: Double = 1E-4, cWolfe: Double = 0.9, minAlpha: Double = 1E-10, maxAlpha: Double = 1E10, enforceWolfeConditions: Boolean = true, enforceStrongWolfeConditions: Boolean = true)
Type Members
-
final
case class
State(alpha: Double, value: Double, deriv: Double) extends Product with Serializable
- Definition Classes
- ApproximateLineSearch
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
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
getClass(): Class[_]
- 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
iterations(f: DiffFunction[Double], init: Double = 1.0): Iterator[State]
- Definition Classes
- BacktrackingLineSearch → ApproximateLineSearch
-
def
minimize(f: DiffFunction[Double], init: Double = 1.0): Double
- Definition Classes
- ApproximateLineSearch → MinimizingLineSearch
-
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()
-
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( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )