Class sym::GncOptimizer¶
-
template<typename BaseOptimizerType>
class GncOptimizer : public BaseOptimizerType¶ Subclass of Optimizer for using Graduated Non-Convexity (GNC)
Assumes the convexity of the cost function is controlled by a hyperparameter mu. When mu == 0 the cost function should be convex and as mu goes to 1 the cost function should smoothly transition to a robust cost.
Public Types
-
using BaseOptimizer = BaseOptimizerType¶
-
using Scalar = typename BaseOptimizer::Scalar¶
Public Functions
-
template<typename ...OptimizerArgs>
inline GncOptimizer(const optimizer_params_t &optimizer_params, const optimizer_gnc_params_t &gnc_params, const Key &gnc_mu_key, OptimizerArgs&&... args)¶ Constructor that copies in factors and keys
-
virtual ~GncOptimizer() = default¶
-
inline void Optimize(Values<Scalar> &values, int num_iterations, bool populate_best_linearization, typename BaseOptimizer::Stats &stats) override¶
-
using BaseOptimizer = BaseOptimizerType¶