Go to the documentation of this file.
40 public Conditional<DecisionTreeFactor, DiscreteConditional> {
65 const ADT& potentials);
89 const std::vector<double>&
table)
103 const std::string& spec)
114 DiscreteConditional(
const DecisionTreeFactor& joint,
115 const DecisionTreeFactor& marginal);
122 DiscreteConditional(
const DecisionTreeFactor& joint,
123 const DecisionTreeFactor& marginal,
124 const Ordering& orderedKeys);
141 DiscreteConditional
operator*(
const DiscreteConditional&
other)
const;
144 DiscreteConditional marginal(
Key key)
const;
152 const std::string&
s =
"Discrete Conditional: ",
167 const std::string&
s =
"Discrete Conditional: ",
173 using BaseFactor::evaluate;
174 using BaseFactor::operator();
210 std::mt19937_64*
rng =
nullptr)
const;
213 size_t sample(
size_t parent_value, std::mt19937_64*
rng =
nullptr)
const;
221 size_t sample(std::mt19937_64*
rng =
nullptr)
const;
245 std::mt19937_64*
rng =
nullptr)
const;
248 std::vector<DiscreteValues> frontalAssignments()
const;
251 std::vector<DiscreteValues> allAssignments()
const;
259 const Names&
names = {})
const override;
263 const Names&
names = {})
const override;
275 using BaseConditional::operator();
291 double negLogConstant()
const override;
294 virtual void prune(
size_t maxNrAssignments);
311 bool forceComplete)
const;
314 #if GTSAM_ENABLE_BOOST_SERIALIZATION
316 friend class boost::serialization::access;
317 template <
class Archive>
318 void serialize(Archive& ar,
const unsigned int ) {
319 ar& BOOST_SERIALIZATION_BASE_OBJECT_NVP(BaseFactor);
320 ar& BOOST_SERIALIZATION_BASE_OBJECT_NVP(BaseConditional);
DiscreteConditional(const DiscreteKey &key, const DiscreteKeys &parents, const std::vector< double > &table)
double logProbability(const DiscreteValues &x) const
Log-probability is just -error(x).
string markdown(const DiscreteValues &values, const KeyFormatter &keyFormatter, const DiscreteValues::Names &names)
Free version of markdown.
Array< double, 1, 3 > e(1./3., 0.5, 2.)
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
DiscreteConditional(const DiscreteKey &key, const DiscreteKeys &parents, const Signature::Table &table)
const KeyFormatter & formatter
DiscreteKeys is a set of keys that can be assembled using the & operator.
std::shared_ptr< DecisionTreeFactor > shared_ptr
KeyFormatter DefaultKeyFormatter
Assign default key formatter.
Point2 operator*(double s, const Point2 &p)
multiply with scalar
Conditional< BaseFactor, This > BaseConditional
Typedef to our conditional base class.
void print(const Matrix &A, const string &s, ostream &stream)
AlgebraicDecisionTree< Key > ADT
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
signatures for conditional densities
DiscreteConditional This
Typedef to this class.
const gtsam::Symbol key('X', 0)
std::shared_ptr< This > shared_ptr
shared_ptr to this class
Point2(* f)(const Point3 &, OptionalJacobian< 2, 3 >)
double logProbability(const HybridValues &x) const override
< HybridValues version
std::shared_ptr< DiscreteFactor > shared_ptr
shared_ptr to this class
void printSignature(const std::string &s="Discrete Conditional: ", const KeyFormatter &formatter=DefaultKeyFormatter) const
print index signature only
std::pair< Key, size_t > DiscreteKey
DiscreteConditional(const DiscreteKey &key, const std::string &spec)
No-parent specialization; can also use DiscreteDistribution.
DiscreteConditional()
Default constructor needed for serialization.
string html(const DiscreteValues &values, const KeyFormatter &keyFormatter, const DiscreteValues::Names &names)
Free version of html.
DecisionTreeFactor BaseFactor
Typedef to our factor base class.
std::uint64_t Key
Integer nonlinear key type.
DiscreteConditional(const DiscreteKey &key, const DiscreteKeys &parents, const std::string &spec)
static const T & choose(int layout, const T &col, const T &row)
gtsam
Author(s):
autogenerated on Wed May 28 2025 03:01:13