基于leader-follower算法的超级节点研究(3)

来源:网络(转载) 作者:王小娟 周竹荣 发表于:2012-01-26 13:45  点击:
【关健词】超级节点P2P网;超级节点;语义;分裂算法;相似簇;合并排序
input arr[] mergeSort(arr) void MergeSort(Type a[],int left,int right){ if(left int i=(left+right)/2 mergeSort(a,left,i)

  input arr[]
  mergeSort(arr)
  void MergeSort(Type a[],int left,int right){
  if(left  int i=(left+right)/2
  mergeSort(a,left,i)
  mergeSort(a,i+1,right)
  merge(a,b,left,i,right)
  copy(a,b,left,right)}}
  output Merit[Sn1],Merit[Sn2],…,Merit[Sni]
  
  缺乏两个"}",请补充。
  程序后
  
  2.2.3 分裂算法
  本文引入通用类节点GN,如果新加入节点和超级节点之间语义不匹配,则交由通用类节点管理。为通用类节点GN设定一个最大值Max,当通用类节点GN中的新节点数超过这个值,根据语义相似聚簇后分裂。进行分裂时,采用合并排序方法选择性能最优超级节点,这个超级节点管辖该新簇中的普通节点。没有语义聚簇的节点继续由通用类节点管理,当节点数超过Max值,调用分裂算法,根据语义相似聚簇后再分裂出来。具体分裂算法如算法3。
  算法3 分裂算法。
  
  程序前
  
  Let C represent the set of GN
  if(|C|>Max)//GN中的节点数目超过设定的Max
  then initialize η,θ
  sim(vi,vj)=max IC(v)=max[-lg p(v)]//根据语义相似聚簇
  Do 接受sim(vi,vj)
  if sim(vi,vj)≥θ
  then Wi←Wi+ηx//x代表和Wi语义相似的任意节点,Wi表示聚簇中心
  Until 没有语义相似的节点
  mergeSort(Wi)//从类的节点中选择超级节点
  Merit[vi]=α×capacity+β×uptimeAVE
  ClusterID=get Clusterid from Sn id (SnID)
  Return ClusterID
  End
  程序后
  
  
  3 实验仿真
  
  3.1 实验目的和方法
  本实验的目的是测试基于I_LF算法的节点聚簇效率。算法使用UCI数据集中Iris数据集来检验算法的性能。Iris是模式识别中一个经典的数据集,记录的是一些植物的特征数据。共有150条数据和3种决策值,这些数据简单记为0,1,3,…,149。其中0~49、50~99、100~149分别对应一种决策。对数据集分别用leader-follower算法和I_LF算法进行聚簇,分析两种算法的聚类结果,比较两种算法选择出来的超级节点的性能和聚簇的数目。
  
  3.2 实验内容与仿真
  
  3.2.1 聚类结果测试
  由于leader-follower算法和I_LF算法都涉及到参数,因此参数设置不同,最后得到的聚簇结果也不一样。本文设置了合适的参数,使得两种算法得到的聚簇结果都是3类,而且聚簇效果比较好。
  下面分别给出两种算法得到的聚簇结果。设阈值分别为0.026,0.037,0.043,在此条件下得到两种算法的聚簇结果。
  1) leader-follower算法聚簇结果。
  ①第1类结果如下(共50个数据项)。
  1,2,3,4,5,6,147,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,49,122,125。
  ②第2类结果如下(共50个数据项)。
  50,51,52,53,148,128,129,55,56,57,58,59,60,61,108,62,63,64,65,109,66,67,68,69,118,70,71,72,73,145,74,75,76,77,149,78,79,80,81,126,82,83,84,85,127,86,87,88,89,124。
  
  ③第3类结果如下。
  100,101,102,103,104,105,106,107,90,91,92,93,94,95,96,97,98,99,108,109,110,111,112,113,114,115,116,117,118,119,120,121,128,123,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,146,150。
  2)I_LF算法的聚簇结果。
  ①第1类结果如下(共50个数据项)。
  1,2,3,4,5,6,147,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,49,122,125。
  ②第2类结果如下(共50个数据项)。
  50,51,52,53,148,128,129,55,56,57,58,59,60,61,108,62,63,64,65,109,66,67,68,69,118,70,71,72,73,145,74,75,76,77,149,78,79,80,81,126,82,83,84,85,127,86,87,88,89,124。
  ③第3类结果如下。
  100,101,102,103,104,105,106,107,90,91,92,93,94,95,96,97,98,99,108,109,110,111,112,113,114,115,116,117,118,119,120,121,128,123,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,146,150。
  由此可得出,两种算法聚簇结果是一样的,I_LF算法继承了原算法的优点。
  
  3.2.2 I_LF算法
  本文采用计算能力、存储能力和在线时长这三个参数来衡量超级节点的性能,用式(6)计算出各个节点的性能。
  为了验证实验,本文有如下三元组(节点ID,节点性能,节点语义相似度)数据。其中节点的性能和语义相似度分别通过式(6)和式(4)计算得来的数值,如下所示:
  (1,4,0.64),(2,6,0.53),(3,7,0.63),(4,6,0.50),(5,7,0.63),(6,8,0.66),(7,9,0.92),(8,5,0.89),(9,4,0.67),(10,5,0.74),(11,6,0.42),(12,6,0.41),(13,6,0.44),(14,7,0.40),(15,9,0.44),(16,6,0.43),(17,3,0.31),(18,6,0.21),(19,6,0.95),(20,7,0.93),(21,8,0.90),(22,5,0.86),…
分析数据,根据相似性判断标准,ID=1,3,5,6,9的节点,ID=2,4的节点,ID=7,19,20,21的节点,ID=11,12,13,14,15,16的节点,它们各自语义匹配,因此聚为一簇。ID=17,ID=18,ID=10,ID=22语义互不匹配,因此单独是一簇。下面从两方面比较分析leader-follower算法和I_LF算法。 (责任编辑:南粤论文中心)转贴于南粤论文中心: http://www.nylw.net(南粤论文中心__代写代发论文_毕业论文带写_广州职称论文代发_广州论文网)
顶一下
(0)
0%
踩一下
(0)
0%


版权声明:因本文均来自于网络,如果有版权方面侵犯,请及时联系本站删除.