Struct argmin::solver::trustregion::trustregion_method::TrustRegion[][src]

pub struct TrustRegion<R, F> { /* fields omitted */ }

The trust region method approximates the cost function within a certain region around the current point in parameter space. Depending on the quality of this approximation, the region is either expanded or contracted.

The calculation of the actual step length and direction is done by one of the following methods:

This subproblem can be set via set_subproblem(...). If this is not provided, it will default to the Steihaug method.

Example

References:

[0] Jorge Nocedal and Stephen J. Wright (2006). Numerical Optimization. Springer. ISBN 0-387-30303-0.

Implementations

impl<R, F: ArgminFloat> TrustRegion<R, F>[src]

pub fn new(subproblem: R) -> Self[src]

Constructor

pub fn radius(self, radius: F) -> Self[src]

set radius

pub fn max_radius(self, max_radius: F) -> Self[src]

Set maximum radius

pub fn eta(self, eta: F) -> Result<Self, Error>[src]

Set eta

Trait Implementations

impl<R: Clone, F: Clone> Clone for TrustRegion<R, F>[src]

impl<'de, R, F> Deserialize<'de> for TrustRegion<R, F> where
    R: Deserialize<'de>,
    F: Deserialize<'de>, 
[src]

impl<R, F> Serialize for TrustRegion<R, F> where
    R: Serialize,
    F: Serialize
[src]

impl<O, R, F> Solver<O> for TrustRegion<R, F> where
    O: ArgminOp<Output = F, Float = F>,
    O::Param: Default + Clone + Debug + Serialize + ArgminMul<F, O::Param> + ArgminWeightedDot<O::Param, F, O::Hessian> + ArgminNorm<F> + ArgminDot<O::Param, F> + ArgminAdd<O::Param, O::Param> + ArgminSub<O::Param, O::Param> + ArgminZeroLike,
    O::Hessian: Default + Clone + Debug + Serialize + ArgminDot<O::Param, O::Param>,
    R: ArgminTrustRegion<F> + Solver<OpWrapper<O>>,
    F: ArgminFloat
[src]

Auto Trait Implementations

impl<R, F> RefUnwindSafe for TrustRegion<R, F> where
    F: RefUnwindSafe,
    R: RefUnwindSafe

impl<R, F> Send for TrustRegion<R, F> where
    F: Send,
    R: Send

impl<R, F> Sync for TrustRegion<R, F> where
    F: Sync,
    R: Sync

impl<R, F> Unpin for TrustRegion<R, F> where
    F: Unpin,
    R: Unpin

impl<R, F> UnwindSafe for TrustRegion<R, F> where
    F: UnwindSafe,
    R: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized