class IntegerGoldenSectionLS extends AnyRef
The IntegerGoldenSectionLS
class performs a line search on 'f(x)' to find a
minimal value for 'f'. It requires no derivatives and only one functional
evaluation per iteration. A search is conducted from 'x1' (often 0) to 'xmax'.
A guess for 'xmax' must be given, but can be made larger during the expansion phase,
that occurs before the recursive golden section search is called. It works on
scalar functions
- See also
IntegerGoldenSectionLSTest2.
IntegerGoldenSectionLSTest. If starting with a vector function 'f(x)', simply define a new function 'g(y) = x0 + direction * y'.
- Alphabetic
- By Inheritance
- IntegerGoldenSectionLS
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
IntegerGoldenSectionLS(f: (Int) ⇒ Double)
- f
the scalar objective function to minimize
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
- @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
gsection(left: Boolean, x1: Int, x2: Int, x3: Int, f2: Double): Int
A recursive golden section search requiring only one functional evaluation per call.
A recursive golden section search requiring only one functional evaluation per call. It works by comparing two center points x2 (given) and x4 computed.
- left
whether to search left (true) or right (false) side of last interval
- x1
the left-most point
- x2
the center point (.618 across for left and .382 across for right)
- x3
the right-most point
- f2
the functional value for the x2 center point
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
printGolden(): Unit
Print the golden ratio and the golden section.
-
def
solve(xmax: Int = 5, x1: Int = 1): Int
Perform a Line Search (LS) using the Integer Golden Search Algorithm.
Perform a Line Search (LS) using the Integer Golden Search Algorithm. Two phases are used: an expansion phase (moving the end-point) to find a down-up pattern, followed by a traditional golden section search.
- xmax
a rough guess for the right end-point of the line search
- x1
the left (smallest) anchor point for the search (usually 1)
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )