⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 graphimproved.m

📁 自己做的毕设
💻 M
字号:
global N M   %%N:未知节点数目,M:信标节点数目
N=10;M=4;
radius=5;
%%actualunknownnodecoor=10*rand(N,2);
actualunknownnodecoor=8*rand(N,2)+ones(N,2);
%%refnodecoor=10*rand(M,2);
refnodecoor=[0 0;10 0;10 10;0 10];
undis=L2_distance(actualunknownnodecoor',actualunknownnodecoor');
refdis=L2_distance(actualunknownnodecoor',refnodecoor');
CN=zeros(N);
CNM=zeros(N,M);
for i=1:N
    for j=1:N
        if(i~=j&&undis(i,j)<=radius)
            CN(i,j)=1;
        end
    end
end
for i=1:N
    for j=1:M
        if(refdis(i,j)<=radius)
            CNM(i,j)=1;
        end
    end
end

iterative_time=60;
absolute_error_value=0.0001;
 initial_value=10*randn(N,2);
%%initial_value=10*zeros(N,2);
a0 = initial_value;
e = calcuEmax(a0,refnodecoor,undis,refdis,CN,CNM);
for i = 0:10
    e = e-e/10*i;
    k = 0;
    [a1,segmaX0] = DistanceSmoothOptimal(a0,refnodecoor,undis,refdis,CN,CNM,e);
    segmaX1 = segmaX0;
    while(k==0|(segmaX0-segmaX1>absolute_error_value&&k<=iterative_time))
          k = k+1;
          segmaX0 = segmaX1;
          a0 = a1;
          [a1,segmaX1] = DistanceSmoothOptimal(a0,refnodecoor,undis,refdis,CN,CNM,e);
    end
end
calcoor = a1;
rectangle('Position',[0,0,10,10]);
axis auto;
grid on;
hold on;
plot(actualunknownnodecoor(:,1),actualunknownnodecoor(:,2),'r*');
plot(refnodecoor(:,1),refnodecoor(:,2),'ko');
plot(calcoor(:,1),calcoor(:,2),'bd');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -