view toolboxes/FullBNT-1.0.7/bnt/inference/static/@jtree_limid_inf_engine/marginal_nodes.m @ 0:e9a9cd732c1e tip

first hg version after svn
author wolffd
date Tue, 10 Feb 2015 15:05:51 +0000
parents
children
line wrap: on
line source
function [m, pot] = marginal_nodes(engine, query)
% MARGINAL_NODES Compute the marginal on the specified nodes (jtree_limid)
% [m, pot] = marginal_nodes(engine, query)
%
% query should be a subset of a family of a decision node

if isempty(query)
  bnet = bnet_from_engine(engine);
  d = bnet.decision_nodes(1); % pick an arbitrary decision node
  [dummy, big_pot] = marginal_family(engine, d); 
else
  [dummy, big_pot] = marginal_family(engine, query);
end
pot = marginalize_pot(big_pot, query);
m = pot_to_marginal(pot);