nikcleju@16
|
1 % Run GAP and save parameters and solutions as reference test data
|
nikcleju@16
|
2 % to check if other algorithms are correct
|
nikcleju@16
|
3
|
nikcleju@28
|
4 % numA = 10;
|
nikcleju@28
|
5 % numY = 100;
|
nikcleju@28
|
6 %
|
nikcleju@28
|
7 % sizesA{1} = [50 100];
|
nikcleju@28
|
8 % sizesA{2} = [20 25];
|
nikcleju@28
|
9 % sizesA{3} = [10 120];
|
nikcleju@28
|
10 % sizesA{4} = [15 100];
|
nikcleju@28
|
11 % sizesA{5} = [70 100];
|
nikcleju@28
|
12 % sizesA{6} = [80 100];
|
nikcleju@28
|
13 % sizesA{7} = [90 100];
|
nikcleju@28
|
14 % sizesA{8} = [99 100];
|
nikcleju@28
|
15 % sizesA{9} = [100 100];
|
nikcleju@28
|
16 % sizesA{10} = [250 400];
|
nikcleju@28
|
17 % for i = 1:numA sizesA{i} = fliplr(sizesA{i}); end
|
nikcleju@28
|
18 %
|
nikcleju@28
|
19 % for i = 1:numA
|
nikcleju@28
|
20 % sz = sizesA{i};
|
nikcleju@28
|
21 % cellA{i} = randn(sz);
|
nikcleju@28
|
22 % m = round((0.2 + 0.6*rand)*sz(2));
|
nikcleju@28
|
23 % cellM{i} = randn(m,sz(2));
|
nikcleju@28
|
24 % cellY{i} = randn(m, numY);
|
nikcleju@28
|
25 % cellXinit{i} = zeros(sz(2), numY);
|
nikcleju@28
|
26 % for j = 1:numY
|
nikcleju@28
|
27 % cellEps{i}(j) = rand / 100; % restrict from 0 to 1% of measurements
|
nikcleju@28
|
28 % end
|
nikcleju@28
|
29 % end
|
nikcleju@28
|
30 % opt_num_iteration = 1000;
|
nikcleju@28
|
31 % opt_greedy_level = 0.9;
|
nikcleju@28
|
32 % opt_stopping_coefficient_size = 1e-4;
|
nikcleju@28
|
33 % opt_l2solver = 'pseudoinverse';
|
nikcleju@16
|
34
|
nikcleju@28
|
35 load GAPtestdata
|
nikcleju@16
|
36 tic
|
nikcleju@16
|
37 for i = 1:numA
|
nikcleju@16
|
38 for j = 1:numY
|
nikcleju@16
|
39 gapparams.num_iteration = opt_num_iteration;
|
nikcleju@16
|
40 gapparams.greedy_level = opt_greedy_level;
|
nikcleju@16
|
41 gapparams.stopping_coefficient_size = opt_stopping_coefficient_size;
|
nikcleju@16
|
42 gapparams.l2solver = opt_l2solver;
|
nikcleju@16
|
43 gapparams.noise_level = cellEps{i}(j);
|
nikcleju@16
|
44
|
nikcleju@16
|
45 cellXr{i}(:,j) = GAP(cellY{i}(:,j), cellM{i}, cellM{i}', cellA{i}, cellA{i}', gapparams, cellXinit{i}(:,j));
|
nikcleju@16
|
46 end
|
nikcleju@16
|
47 end
|
nikcleju@16
|
48 toc
|
nikcleju@16
|
49
|
nikcleju@28
|
50 % save GAPtestdata |