update wrapper for LM with Ordering parameter
parent
6f66d04f14
commit
0d058100e5
|
|
@ -333,6 +333,7 @@ hybridElimination(const HybridGaussianFactorGraph &factors,
|
|||
const auto &factor = pair.second;
|
||||
if (!factor) return 1.0; // TODO(dellaert): not loving this.
|
||||
|
||||
// Logspace version of:
|
||||
// exp(-factor->error(kEmpty)) / pair.first->normalizationConstant();
|
||||
return -factor->error(kEmpty) - pair.first->logNormalizationConstant();
|
||||
};
|
||||
|
|
@ -345,6 +346,7 @@ hybridElimination(const HybridGaussianFactorGraph &factors,
|
|||
AlgebraicDecisionTree probabilities = DecisionTree<Key, double>(
|
||||
logProbabilities,
|
||||
[&max_log](const double x) { return exp(x - max_log); });
|
||||
// probabilities.print("", DefaultKeyFormatter);
|
||||
probabilities = probabilities.normalize(probabilities.sum());
|
||||
|
||||
return {
|
||||
|
|
|
|||
|
|
@ -378,17 +378,22 @@ typedef gtsam::GncOptimizer<gtsam::GncParams<gtsam::LevenbergMarquardtParams>> G
|
|||
#include <gtsam/nonlinear/LevenbergMarquardtOptimizer.h>
|
||||
virtual class LevenbergMarquardtOptimizer : gtsam::NonlinearOptimizer {
|
||||
LevenbergMarquardtOptimizer(const gtsam::NonlinearFactorGraph& graph,
|
||||
const gtsam::Values& initialValues);
|
||||
const gtsam::Values& initialValues,
|
||||
const gtsam::LevenbergMarquardtParams& params =
|
||||
gtsam::LevenbergMarquardtParams());
|
||||
LevenbergMarquardtOptimizer(const gtsam::NonlinearFactorGraph& graph,
|
||||
const gtsam::Values& initialValues,
|
||||
const gtsam::LevenbergMarquardtParams& params);
|
||||
const gtsam::Ordering& ordering,
|
||||
const gtsam::LevenbergMarquardtParams& params =
|
||||
gtsam::LevenbergMarquardtParams());
|
||||
|
||||
double lambda() const;
|
||||
void print(string s = "") const;
|
||||
};
|
||||
|
||||
#include <gtsam/nonlinear/ISAM2.h>
|
||||
class ISAM2GaussNewtonParams {
|
||||
ISAM2GaussNewtonParams();
|
||||
ISAM2GaussNewtonParams(double _wildfireThreshold = 0.001);
|
||||
|
||||
void print(string s = "") const;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue