Loading...
Searching...
No Matches
gtsam::HybridGaussianISAM Class Reference
Hybrid
Inheritance diagram for gtsam::HybridGaussianISAM:

## Public Member Functions

void | update (const HybridGaussianFactorGraph &newFactors, const boost::optional< size_t > &maxNrLeaves=boost::none, const boost::optional< Ordering > &ordering=boost::none, const HybridBayesTree::Eliminate &function=HybridBayesTree::EliminationTraitsType::DefaultEliminate)
| Perform update step with new factors.
Standard Constructors
| HybridGaussianISAM ()
| Create an empty Bayes Tree.
| HybridGaussianISAM (const HybridBayesTree &bayesTree)
| Copy constructor.
Public Member Functions inherited from gtsam::ISAM< HybridBayesTree >
| ISAM ()
| Create an empty Bayes Tree.
| ISAM (const Base &bayesTree)
| Copy constructor.
void | update (const FactorGraphType &newFactors, const Eliminate &function=EliminationTraitsType::DefaultEliminate)
| update the Bayes tree with a set of new factors, typically derived from measurements
void | updateInternal (const FactorGraphType &newFactors, Cliques *orphans, const Eliminate &function=EliminationTraitsType::DefaultEliminate)
| updateInternal provides access to list of orphans for drawing purposes
Public Member Functions inherited from gtsam::HybridBayesTree
| HybridBayesTree ()=default
| Default constructor, creates an empty Bayes tree.
bool | equals (const This &other, double tol=1e-9) const
| Check equality.
GaussianBayesTree | choose (const DiscreteValues &assignment) const
| Get the Gaussian Bayes Tree which corresponds to a specific discrete value assignment.
HybridValues | optimize () const
| Optimize the hybrid Bayes tree by computing the MPE for the current set of discrete variables and using it to compute the best continuous update delta.
VectorValues | optimize (const DiscreteValues &assignment) const
| Recursively optimize the BayesTree to produce a vector solution.
void | prune (const size_t maxNumberLeaves)
| Prune the underlying Bayes tree.
Public Member Functions inherited from gtsam::BayesTree< HybridBayesTreeClique >
size_t | size () const
| number of cliques
bool | empty () const
| Check if there are any cliques in the tree.
const Nodes & | nodes () const
| Return nodes.
sharedClique | operator[] (Key j) const
| Access node by variable.
const Roots & | roots () const
| return root cliques
const sharedClique & | clique (Key j) const
| alternate syntax for matlab: find the clique that contains the variable with Key j
BayesTreeCliqueData | getCliqueData () const
| Gather data on all cliques.
size_t | numCachedSeparatorMarginals () const
| Collect number of cliques with cached separator marginals.
sharedConditional | marginalFactor (Key j, const Eliminate &function=EliminationTraitsType::DefaultEliminate) const
| Return marginal on any variable.
sharedFactorGraph | joint (Key j1, Key j2, const Eliminate &function=EliminationTraitsType::DefaultEliminate) const
| return joint on two variables Limitation: can only calculate joint if cliques are disjoint or one of them is root
sharedBayesNet | jointBayesNet (Key j1, Key j2, const Eliminate &function=EliminationTraitsType::DefaultEliminate) const
| return joint on two variables as a BayesNet Limitation: can only calculate joint if cliques are disjoint or one of them is root
void | dot (std::ostream &os, const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
| Output to graphviz format, stream version.
std::string | dot (const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
| Output to graphviz format string.
void | saveGraph (const std::string &filename, const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
| output to file with graphviz format.
Key | findParentClique (const CONTAINER &parents) const
| Find parent clique of a conditional.
void | clear ()
| Remove all nodes.
void | deleteCachedShortcuts ()
| Clear all shortcut caches - use before timing on marginal calculation to avoid residual cache data.
void | removePath (sharedClique clique, BayesNetType *bn, Cliques *orphans)
| Remove path from clique to root and return that path as factors plus a list of orphaned subtree roots.
void | removeTop (const KeyVector &keys, BayesNetType *bn, Cliques *orphans)
| Given a list of indices, turn "contaminated" part of the tree back into a factor graph.
Cliques | removeSubtree (const sharedClique &subtree)
| Remove the requested subtree.
void | insertRoot (const sharedClique &subtree)
| Insert a new subtree with known parent clique.
void | addClique (const sharedClique &clique, const sharedClique &parent_clique=sharedClique())
| add a clique (top down)
void | addFactorsToGraph (FactorGraph< FactorType > *graph) const
| Add all cliques in this BayesTree to the specified factor graph.
void | print (const std::string &s="", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
| print

## Static Public Member Functions

static Ordering | GetOrdering (HybridGaussianFactorGraph &factors, const HybridGaussianFactorGraph &newFactors)
| Helper method to get an ordering given the existing factors and any new factors added.

## Public Types

typedef ISAM< HybridBayesTree > | Base
typedef HybridGaussianISAM | This
typedef boost::shared_ptr< This > | shared_ptr
Public Types inherited from gtsam::ISAM< HybridBayesTree >
typedef HybridBayesTree | Base
typedef Base::BayesNetType | BayesNetType
typedef Base::FactorGraphType | FactorGraphType
typedef Base::Clique | Clique
typedef Base::sharedClique | sharedClique
typedef Base::Cliques | Cliques
Public Types inherited from gtsam::HybridBayesTree
typedef HybridBayesTree | This
typedef boost::shared_ptr< This > | shared_ptr
Public Types inherited from gtsam::BayesTree< HybridBayesTreeClique >
typedef HybridBayesTreeClique | Clique
| The clique type, normally BayesTreeClique.
typedef boost::shared_ptr< Clique > | sharedClique
| Shared pointer to a clique.
typedef Clique | Node
| Synonym for Clique (TODO: remove).
typedef sharedClique | sharedNode
| Synonym for sharedClique (TODO: remove).
typedef HybridBayesTreeClique::ConditionalType | ConditionalType
typedef boost::shared_ptr< ConditionalType > | sharedConditional
typedef HybridBayesTreeClique::BayesNetType | BayesNetType
typedef boost::shared_ptr< BayesNetType > | sharedBayesNet
typedef HybridBayesTreeClique::FactorType | FactorType
typedef boost::shared_ptr< FactorType > | sharedFactor
typedef HybridBayesTreeClique::FactorGraphType | FactorGraphType
typedef boost::shared_ptr< FactorGraphType > | sharedFactorGraph
typedef FactorGraphType::Eliminate | Eliminate
typedef HybridBayesTreeClique::EliminationTraitsType | EliminationTraitsType
typedef FastList< sharedClique > | Cliques
| A convenience class for a list of shared cliques.
typedef ConcurrentMap< Key, sharedClique > | Nodes
| Map from keys to Clique.
typedef FastVector< sharedClique > | Roots
| Root cliques.

## Additional Inherited Members

Protected Types inherited from gtsam::BayesTree< HybridBayesTreeClique >
typedef BayesTree< HybridBayesTreeClique > | This
typedef boost::shared_ptr< This > | shared_ptr
Protected Member Functions inherited from gtsam::BayesTree< HybridBayesTreeClique >
This & | operator= (const This &other)
| Assignment operator.
| BayesTree ()
| Create an empty Bayes Tree.
| BayesTree (const This &other)
| Copy constructor.
void | dot (std::ostream &s, sharedClique clique, const KeyFormatter &keyFormatter, int parentnum=0) const
| private helper method for saving the Tree to a text file in GraphViz format
void | getCliqueData (sharedClique clique, BayesTreeCliqueData *stats) const
| Gather data on a single clique.
void | removeClique (sharedClique clique)
| remove a clique: warning, can result in a forest
void | fillNodesIndex (const sharedClique &subtree)
| Fill the nodes index for a subtree.
bool | equals (const This &other, double tol=1e-9) const
| check equality
Protected Attributes inherited from gtsam::BayesTree< HybridBayesTreeClique >
Nodes | nodes_
| Map from indices to Clique.
Roots | roots_
| Root cliques.

## Member Function Documentation

## GetOrdering()

Ordering gtsam::HybridGaussianISAM::GetOrdering | ( | HybridGaussianFactorGraph & | factors,
|  | const HybridGaussianFactorGraph & | newFactors )

static

Helper method to get an ordering given the existing factors and any new factors added.

Parameters

  factors | The existing factors in the BayesTree.
  newFactors | New factors added during the update step.

Returns
  Ordering

## update()

void gtsam::HybridGaussianISAM::update | ( | const HybridGaussianFactorGraph & | newFactors,
|  | const boost::optional< size_t > & | maxNrLeaves = boost::none,
|  | const boost::optional< Ordering > & | ordering = boost::none,
|  | const HybridBayesTree::Eliminate & | function = HybridBayesTree::EliminationTraitsType::DefaultEliminate )

Perform update step with new factors.

Parameters

  newFactors | Factor graph of new factors to add and eliminate.
  maxNrLeaves | The maximum number of leaves to keep after pruning.
  ordering | Custom elimination ordering.
  function | Elimination function.

The documentation for this class was generated from the following files:

- /build/gtsam-Xg031d/gtsam-4.2.0+dfsg/gtsam/hybrid/HybridGaussianISAM.h
- /build/gtsam-Xg031d/gtsam-4.2.0+dfsg/gtsam/hybrid/HybridGaussianISAM.cpp