add probPrime to HybridBayesNet

release/4.3a0
Varun Agrawal 2022-11-07 15:42:59 -05:00
parent 551cc0d32b
commit 07a616dcda
2 changed files with 17 additions and 0 deletions

View File

@ -273,4 +273,10 @@ AlgebraicDecisionTree<Key> HybridBayesNet::error(
return error_tree;
}
AlgebraicDecisionTree<Key> HybridBayesNet::probPrime(
const VectorValues &continuousValues) const {
AlgebraicDecisionTree<Key> error_tree = this->error(continuousValues);
return error_tree.apply([](double error) { return exp(-error); });
}
} // namespace gtsam

View File

@ -144,6 +144,17 @@ class GTSAM_EXPORT HybridBayesNet : public BayesNet<HybridConditional> {
*/
AlgebraicDecisionTree<Key> error(const VectorValues &continuousValues) const;
/**
* @brief Compute unnormalized probability for each discrete assignment,
* and return as a tree.
*
* @param continuousValues Continuous values at which to compute the
* probability.
* @return AlgebraicDecisionTree<Key>
*/
AlgebraicDecisionTree<Key> probPrime(
const VectorValues &continuousValues) const;
/// @}
private: