From cad0a2c7d4702a605d480641441217a78cf647b9 Mon Sep 17 00:00:00 2001 From: "facat@lab.com" Date: Sun, 7 Dec 2014 12:21:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E4=BA=86=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: facat@lab.com --- main.m | 61 ++++++++++++++++++++++++++++++++++++---------------------- 1 file changed, 38 insertions(+), 23 deletions(-) diff --git a/main.m b/main.m index 036d2b7..1ff6f70 100644 --- a/main.m +++ b/main.m @@ -3,34 +3,49 @@ clear close all %先形成初始点 center=[1,1,1,1,1;10,10,10,10,10;100,100,100,100,100;1000,1000,1000,1000,1000]; -dataN=100;% 生成多少个数据 -data=zeros(5,dataN); +center=[1;10;100;1000]; +dataN=50;% 生成多少个数据 +Dim=1; +data=zeros(Dim,dataN); for I=1:dataN - i=round(1+(5-1)*rand()); - data(:,I)=center(i)*( -1+(1+1)*rand(5,1)); + i=round(1+(4-1)*rand()); + data(:,I)=center(i)*( -1+(1+1)*rand(Dim,1)); end -%选一个候选数据 -cddtI=10; -SetS=[]; -SetS=[SetS;cddtI;]; -Cij=0; -for I=1:dataN - if I==cddtI - continue - end - d=data(:,I); - %寻找最短距离 - minD=1e20; - for J=1:length(SetS) - if I==SetS(J) + +SetS=[1;]; + +for clusterI=1:3 + maxG=-100*ones(dataN,1); + for cluster=1:dataN + if sum(ismember(cluster,SetS))>0 continue end - distance=sum((d-data(:,SetS(J))).^2).^.5; - if distance0 + continue + end + d=data(:,J); + %寻找最短距离 + minD=1e20; + for D=1:length(SetS)%between j and the closest object in S. +% if J==cadSetS(D) +% continue +% end + distance=sum((d-data(:,SetS(D))).^2).^.5; + if distance