从不完整的噪声距离测量中实现"本地化"纸

时间:2015-05-19 10:09:58

标签: matlab cvx

我想提一下我是CVX社区的新手。所以,我怀疑可能是愚蠢的。由于我无法弄清楚我的代码问题,我决定在这里发布。我正在尝试实现文章中所述的算法,标题为 -

  

不完整的噪声距离测量的本地化。 (Link of the paper)

如果纸张无法访问,我也会在我的google drive link

上传算法的快照

我正在处理无噪声场景中的完整图表。所以根据理论,我应该得到完美的重建。但它并没有给我正确的结果,而且误差值非常高。

我写的代码如下 -



    % E: n-by-n matrix where (i,j)th element represents the distance between ith and jth node
    % N: Number of nodes
    % d: dimension of the space where nodes are embedded
    %% Calling CVX Package
    Q = zeros(N,N);
    Mij = zeros(N,N);
    cvx_precision best;
    cvx_begin
    variable Q(N,N) semidefinite                       % Defining variables
    minimize(trace(Q))                                 % Objective function
    subject to
    % Constraints
    for i = 1:N-1
        for j = i:N
            if E(i,j) ~= 0
                Mij = Mij-Mij;
                Mij(i,j) = -1;
                Mij(j,i) = -1;
                Mij(i,i) = 1;
                Mij(j,j) = 1;
                trace(Mij*Q) == square_pos(E(i,j));
            end
        end
    end
    cvx_end
    [U,S,~] = svd(Q);
    X_est = U(:,1:d)*sqrt(S(1:d,1:d));
    X_est = X_est';




算法基于SDP的本地化算法

0 个答案:

没有答案