![]() |
aGrUM
0.16.0
|
Class building the essential graph from a BN. More...
#include <agrum/BN/algorithms/essentialGraph.h>
Class building the essential graph from a BN.
Essential graph is a mixed graph (Chain Graph) that represents the class of markov equivalent Bayesian Networks (with the same independency model).
The main goal of this class is to nest the algorithm to build the essential graph from a BN and to encapsulate the representation (as a MixedGraph) of the essential graph.
gum::operator<<(std::ostream&, const BayesNet<GUM_SCALAR>&).
Definition at line 57 of file essentialGraph.h.
|
default |
|
explicit |
Definition at line 37 of file essentialGraph.cpp.
References __buildEssentialGraph().
gum::EssentialGraph::EssentialGraph | ( | const DAGmodel & | m, |
const MixedGraph & | mg | ||
) |
Definition at line 41 of file essentialGraph.cpp.
gum::EssentialGraph::EssentialGraph | ( | const EssentialGraph & | g | ) |
Definition at line 43 of file essentialGraph.cpp.
References __buildEssentialGraph(), and __dagmodel.
gum::EssentialGraph::~EssentialGraph | ( | ) |
Definition at line 55 of file essentialGraph.cpp.
|
private |
Definition at line 57 of file essentialGraph.cpp.
References __dagmodel, __mg, __strongly_protected(), gum::DiGraph::addArc(), gum::UndiGraph::addEdge(), gum::NodeGraphPart::addNodeWithId(), gum::DAGmodel::arcs(), gum::ArcGraphPart::children(), gum::MixedGraph::clear(), gum::ArcGraphPart::eraseArc(), gum::DAGmodel::nodes(), and gum::DAGmodel::topologicalOrder().
Referenced by EssentialGraph(), and operator=().
Definition at line 81 of file essentialGraph.cpp.
References __mg, gum::EdgeGraphPart::existsEdge(), gum::Set< Key, Alloc >::insert(), gum::EdgeGraphPart::neighbours(), gum::ArcGraphPart::parents(), size(), and gum::Set< Key, Alloc >::size().
Referenced by __buildEssentialGraph().
INLINE const ArcSet & gum::EssentialGraph::arcs | ( | ) | const |
wrapping MixedGraph::arcs()
Definition at line 52 of file essentialGraph_inl.h.
References __mg, and gum::ArcGraphPart::arcs().
Referenced by skeleton().
wrapping MixedGraph::parents(id)
Definition at line 41 of file essentialGraph_inl.h.
References __mg, and gum::ArcGraphPart::children().
INLINE const EdgeSet & gum::EssentialGraph::edges | ( | ) | const |
wrapping MixedGraph::edges()
Definition at line 56 of file essentialGraph_inl.h.
References __mg, and gum::EdgeGraphPart::edges().
Referenced by skeleton().
INLINE MixedGraph gum::EssentialGraph::mixedGraph | ( | ) |
Definition at line 35 of file essentialGraph_inl.h.
References __mg.
wrapping MixedGraph::parents(id)
Definition at line 45 of file essentialGraph_inl.h.
References __mg, and gum::EdgeGraphPart::neighbours().
INLINE const NodeGraphPart & gum::EssentialGraph::nodes | ( | ) | const |
wrapping MixedGraph::nodes()
Definition at line 62 of file essentialGraph_inl.h.
References __mg, and gum::NodeGraphPart::nodes().
Referenced by skeleton().
EssentialGraph & gum::EssentialGraph::operator= | ( | const EssentialGraph & | g | ) |
Definition at line 47 of file essentialGraph.cpp.
References __buildEssentialGraph(), and __dagmodel.
wrapping MixedGraph::parents(id)
Definition at line 37 of file essentialGraph_inl.h.
References __mg, and gum::ArcGraphPart::parents().
INLINE Size gum::EssentialGraph::size | ( | ) | const |
wrapping MixedGraph::size()
Definition at line 60 of file essentialGraph_inl.h.
References __mg, and gum::NodeGraphPart::size().
Referenced by __strongly_protected().
INLINE Size gum::EssentialGraph::sizeArcs | ( | ) | const |
wrapping MixedGraph::sizeArcs()
Definition at line 50 of file essentialGraph_inl.h.
References __mg, and gum::ArcGraphPart::sizeArcs().
INLINE Size gum::EssentialGraph::sizeEdges | ( | ) | const |
wrapping MixedGraph::sizeEdges()
Definition at line 54 of file essentialGraph_inl.h.
References __mg, and gum::EdgeGraphPart::sizeEdges().
INLINE Size gum::EssentialGraph::sizeNodes | ( | ) | const |
wrapping MixedGraph::sizeNodes()
Definition at line 58 of file essentialGraph_inl.h.
References __mg, and gum::NodeGraphPart::sizeNodes().
UndiGraph gum::EssentialGraph::skeleton | ( | ) | const |
Definition at line 146 of file essentialGraph.cpp.
References gum::UndiGraph::addEdge(), gum::NodeGraphPart::addNodeWithId(), arcs(), edges(), and nodes().
std::string gum::EssentialGraph::toDot | ( | ) | const |
Definition at line 113 of file essentialGraph.cpp.
References __dagmodel, __mg, gum::ArcGraphPart::children(), gum::List< Val, Alloc >::exists(), gum::List< Val, Alloc >::insert(), gum::Variable::name(), gum::EdgeGraphPart::neighbours(), gum::NodeGraphPart::nodes(), and gum::DAGmodel::variable().
|
private |
Definition at line 109 of file essentialGraph.h.
Referenced by __buildEssentialGraph(), EssentialGraph(), operator=(), and toDot().
|
private |
Definition at line 110 of file essentialGraph.h.
Referenced by __buildEssentialGraph(), __strongly_protected(), arcs(), children(), edges(), mixedGraph(), neighbours(), nodes(), parents(), size(), sizeArcs(), sizeEdges(), sizeNodes(), and toDot().