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.
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]
impl<R, F: ArgminFloat> TrustRegion<R, F>
[src]Trait Implementations
impl<R: Clone, F: Clone> Clone for TrustRegion<R, F>
[src]
impl<R: Clone, F: Clone> Clone for TrustRegion<R, F>
[src]fn clone(&self) -> TrustRegion<R, F>
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<'de, R, F> Deserialize<'de> for TrustRegion<R, F> where
R: Deserialize<'de>,
F: Deserialize<'de>,
[src]
impl<'de, R, F> Deserialize<'de> for TrustRegion<R, F> where
R: Deserialize<'de>,
F: Deserialize<'de>,
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl<R, F> Serialize for TrustRegion<R, F> where
R: Serialize,
F: Serialize,
[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]
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]const NAME: &'static str
[src]
fn init(
&mut self,
op: &mut OpWrapper<O>,
state: &IterState<O>
) -> Result<Option<ArgminIterData<O>>, Error>
[src]
&mut self,
op: &mut OpWrapper<O>,
state: &IterState<O>
) -> Result<Option<ArgminIterData<O>>, Error>
fn next_iter(
&mut self,
op: &mut OpWrapper<O>,
state: &IterState<O>
) -> Result<ArgminIterData<O>, Error>
[src]
&mut self,
op: &mut OpWrapper<O>,
state: &IterState<O>
) -> Result<ArgminIterData<O>, Error>
fn terminate(&mut self, _state: &IterState<O>) -> TerminationReason
[src]
fn terminate_internal(&mut self, state: &IterState<O>) -> TerminationReason
[src]
Auto Trait Implementations
impl<R, F> RefUnwindSafe for TrustRegion<R, F> where
F: RefUnwindSafe,
R: RefUnwindSafe,
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> 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> 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> Unpin for TrustRegion<R, F> where
F: Unpin,
R: Unpin,
impl<R, F> UnwindSafe for TrustRegion<R, F> where
F: UnwindSafe,
R: UnwindSafe,
impl<R, F> UnwindSafe for TrustRegion<R, F> where
F: UnwindSafe,
R: UnwindSafe,
Blanket Implementations
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]impl<T> SendSyncUnwindSafe for T where
T: Send + Sync + UnwindSafe + ?Sized,
[src]
impl<T> SendSyncUnwindSafe for T where
T: Send + Sync + UnwindSafe + ?Sized,
[src]impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,