To check out this repository please hg clone the following URL, or open the URL using EasyMercurial or your preferred Mercurial client.

Statistics Download as Zip
| Branch: | Revision:

root / _FullBNT / BNT / CPDs / @discrete_CPD / CPD_to_pi.m @ 8:b5b38998ef3b

History | View | Annotate | Download (436 Bytes)

1
function pi = CPD_to_pi(CPD, msg_type, n, ps, msg, evidence)
2
% COMPUTE_PI Compute pi vector (discrete) 
3
% pi = compute_pi(CPD, msg_type, n, ps, msg, evidence)
4
% Pearl p183 eq 4.51
5

    
6
switch msg_type
7
  case 'd',
8
   T = prod_CPT_and_pi_msgs(CPD, n, ps, msg);
9
   pi = pot_to_marginal(marginalize_pot(T, n));
10
   pi = pi.T(:);                   
11
 case 'g', 
12
  error('can only convert discrete CPD to Gaussian pi if observed')
13
end