LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
mmap_mixture.m
1function MMAP=mmap_mixture(alpha,MAPs)
2% probabilistic composition of MAPs - MAP=map_pcompose(P,MAPs)
3Dk = {};
4I = length(MAPs);
5for j=1:I+2
6 Dk{j}= [];
7end
8for i = 1:I
9 if isempty(MAPs{i})
10 MAPs{i} = map_exponential(1e6);
11 end
12end
13for i = 1:I
14
15 if i==1
16 Dk{1} = MAPs{i}{1};
17 else
18 Dk{1} = blkdiag(Dk{1},MAPs{i}{1});
19 end
20 D1i = alpha(1)*MAPs{i}{2}*e(length(MAPs{i}{2}))*map_pie(MAPs{1});
21 for j=2:I
22 D1i = horzcat(D1i,MAPs{i}{2}*alpha(j)*e(length(MAPs{i}{2}))*map_pie(MAPs{j}));
23 end
24 Dk{2} = vertcat(Dk{2},D1i);
25 for j=1:I
26 if i==j
27 Dk{2+j} = vertcat(Dk{2+j}, D1i);
28 else
29 Dk{2+j} = vertcat(Dk{2+j}, 0*D1i);
30 end
31 end
32end
33
34MMAP = mmap_normalize(Dk);
35end