本发明涉及一种移动通信技术领域中锚节点选择方法,特别是涉及一种移动自组织网络中锚节点选择方法。
背景技术:
移动自组织网络具有快速组网、不依赖于基础设施等优点,在紧急服务、灾后搜救、智能交通及工厂自动化等多个领域中得到了广泛地应用。移动自组织网络的结构可分为平面型结构与分层结构等,其中分层结构能够有效地减少平面型结构所带来的端到端通信时延高、网络通信负载不均衡等问题,同时可以提高网络的可扩展性。在移动自组织网络中,分层结构的提出主要是出于降低网络中节点总能耗与通信负载等目的,需要将网络中组网节点(可以为人、机器人、车辆等,以下简称为节点)进行角色划分,如典型的两层结构中将节点划分为锚节点与用户节点,即锚节点组成上层,而用户节点组成下层;通过锚节点可以实现对用户节点的合理资源调度如计算任务的分配等,用户节点依赖于锚节点来实现功能如通过与锚节点的测距通信实现对自身的定位等。移动自组织网络中多层结构的形成即为两层结构的扩展形式。因此,对于移动自组织网络中锚节点的合理选择问题受到了越来越多的关注。
在移动自组织网络中,节点之间具有相同的特质,即每一个节点均可实现相同的功能,如通过GPS(global positioning system,全球定位系统)进行自我定位等。若要在移动自组织网络中形成分层结构以提高网络的性能,则需要从这些节点中选择出一定数目的节点作为锚节点。而锚节点的分布情况影响着移动自组织网络的性能,如网络中节点总能耗、网络中可与锚节点通信的用户节点比例以及锚节点的通信负载,以及网络提供的服务相应的实现情况;因此,选择出分布合理的锚节点有利于提高移动自组织网络中的性能以及改善网络提供的服务质量;例如,在以定位用户节点作为主要业务的移动自组织网络中,合理的锚节点分布能够提高网络中可被定位的用户节点数目以及针对用户节点的定位过程所能达到的定位精度,由此可见移动自组织网络中锚节点选择问题的重要性。
经对现有技术的检索发现,目前关于移动自组织网络中锚节点选择的方案中包括均匀分布、随机分布等方案。均匀分布是指在已知网络中所有节点初始位置的情况下,规划出所需数目的锚节点在网络中均匀分布时的位置,并将网络中最接近这些位置的节点选择为锚节点;随机分布是指随机地从所有节点中选择出所需数目的节点作为锚节点;这两种方案需要网络中存在中央控制器对锚节点选择过程进行统筹控制,而在所有节点初始角色相同的移动自组织网络中,选择出符合均匀分布或者随机分布的锚节点难以实现,因此需要一种分布式的方法来选择出在网络中分布合理的锚节点。
技术实现要素:
本发明所要解决的技术问题是提供一种移动自组织网络中锚节点选择方法,其能够在网络中选择出分布合理的锚节点,进而有利于提高网络的性能,操作简单。
本发明是通过下述技术方案来解决上述技术问题的:一种移动自组织网络中锚节点选择方法,其包括以下步骤:
步骤一,根据需要的锚节点数目,确定需要在移动自组织网络中形成的聚类数目以及需要额外选择的锚节点数目,将网络中所有节点分布式地进行合理聚类,获得所需数目的聚类;
步骤二,基于步骤一中所获得的聚类情况,在每一个聚类中,其簇头节点根据该聚类中每一个节点与聚类质心之间距离值情况,选择出与聚类质心之间距离适中的一些节点,作为该聚类中所选择出的锚节点待选集合;
步骤三,根据步骤二中得到的各个聚类对应的锚节点待选集合,针对每一个聚类,其簇头节点从对应的锚节点待选集合中,选择出分布最接近正三角形的三个节点作为该聚类中所选择出的锚节点;
步骤四,存在需要额外选择的锚节点,则需要通过网络中每个聚类的簇头节点之间的通信,汇集处于节点部署区域边界处的各个聚类中最接近部署区域边界的节点,从这些节点中随机选择出需要额外选择的锚节点,至此,获得指定数目且在整个网络中具有合理分布的锚节点。
优选地,所述步骤一包括以下步骤:
步骤十,移动自组织网络中节点总数为N,根据所需选择的锚节点数目Na,计算出需要形成的聚类数目如下式所示:其中为的向下取整值;同时计算出需要额外选择的锚节点数目如下式所示:Na′=Na-3×Ncluster;
步骤十一,利用相似度传播聚类算法对移动自组织网络中节点进行聚类,该聚类算法为分布式算法,仅依赖于不同节点之间的相似度值及节点自身的相似度值,其中,将节点i与节点j(i,j=1,...,N,j≠i)之间的欧式距离的负值作为二者之间的相似度值,节点i与节点j之间距离如下式所示:其中,初始时刻节点i的二维位置如下式所示:Pi=[xi,yi]T,节点i与节点j之间的相似度如下式所示:s(i,j)=-dij.,对于节点i,通过与网络内其他节点分别进行测距通信,获得其与其他节点之间的距离集合为Di,dmedian为Di的中值,将节点i自身的相似度置如下式所示:s(i,i)=-dmedian·fscale,,其中,fscale为乘积因子,通过调节fscale的取值,可以改变s(i,i)的取值,进而在聚类过程中可以得到不同数目的聚类;
步骤十二,在将节点聚类的过程中,形成聚类的同时也获得了每个聚类中的簇头节点,针对每个聚类中的锚节点选取过程由该聚类的簇头节点控制进行,通过各个聚类的簇头节点之间的通信,获得需要额外选择的锚节点。
优选地,所述步骤二包括以下步骤:
步骤二十,基于步骤一中得到的聚类情况,针对聚类Cm(m=1,...,Ncluster),其中第k个节点表示为Cmk(k=1,...,Nm),Nm为Cm中节点数目;聚类的质心为om;簇头节点收集聚类内所有节点的初始位置,根据下式所示:计算出下式所示
步骤二十一,Cm的簇头节点计算聚类内每个节点Cmk与om之间距离值dko,并组成集合Do,dmed与dmax分别为Do中的中值与最大值;
步骤二十二,提取出Do中处于如下式所示:(dmed,(dmax+dmed)/2)区间的距离值,这些距离值对应的节点集合即为Cm中的锚节点待选集合Sm。
优选地,步骤三包括以下步骤:
步骤三十,根据步骤二中获得的聚类Cm(m=1,...,Ncluster)的锚节点待选集合Sm,计算Sm中每两个节点之间的距离
步骤三十一,从Sm中选择三个不同节点与其位置分布所组成的三角形面积的通过海伦公式计算如下式所示:其中,p如下式所示:是节点与节点之间的距离;
步骤三十二,一个三角形,其质心到其三个顶点的距离分别被赋值为与则该三角形在成为正三角形时能达到其最大面积,该最大面积计算如下式所示:
步骤三十三,为了评价节点与所组成三角形接近正三角形的程度,定义正三角形相似度如下式所示:
步骤三十四,重复步骤十一、步骤十二和步骤十三,直至将Sm中所有节点以三个节点为组合遍历完成,并得到具有最大正三角形相似度的节点组合,其中包含的三个节点即为聚类Cm中选择出的锚节点;
步骤三十五,设定m=m+1,重复步骤重复步骤十一、步骤十二、步骤十三和步骤十四,直至所有聚类均完成锚节点选择。
优选地,所述步骤四包括以下步骤:
步骤四十,步骤十中得到的Na′不为0,则继续进行步骤四十一和步骤四十二,否则,至此完成移动自组织网络中锚节点选择过程;
步骤四十一,将每个处于节点部署区域边界处的聚类中最接近节点部署区域边界的节点通过这些聚类对应簇头节点之间的通信汇集到接近部署区域中央位置的聚类对应的簇头节点处;
步骤四十二,该簇头节点从汇集到的节点中随机地选择出Na′个锚节点,至此,完成移动自组织网络中锚节点选择过程。
本发明的积极进步效果在于:本发明能够根据需要获得的锚节点数目,对需要在网络中形成的聚类数目及需要额外选择的锚节点数目进行规划;基于网络中各个节点已知的自身初始位置,能够应用分布式聚类方法将整个网络中的节点进行合理的聚类,得到所需数目的聚类,并在每个聚类中选择出具有相对均匀分布的三个节点作为锚节点;在节点部署区域边界附近选择出需要额外选择的锚节点,从而得到整个网络中具有合理分布的锚节点集合。通过大量的计算机仿真以及实际实验证实,由于合理的聚类分布以及各个聚类中所选择节点在相应聚类中分布均匀等,本发明中提出的锚节点选择方法能够在节点初始位置已知的移动自组织网络中分布式地选择出针对具有合理分布的锚节点,有利于提高网络的性能。
附图说明
图1是移动自组织网络中锚节点选择方法的总体架构示意图;
图2是移动自组织网络中锚节点选择方法中所获得的锚节点分布示例图;
图3是基于移动自组织网络中锚节点选择方法所获得的锚节点分布、锚节点均匀分布及锚节点随机分布,利用非参数化置信传播算法对网络中用户节点进行协作定位时所获得的定位精度结果对比。
具体实施方式
下面结合附图给出本发明较佳实施例,以详细说明本发明的技术方案。
如图1所示,本发明移动自组织网络中锚节点选择方法包括以下步骤:
步骤一,根据需要的锚节点数目,确定需要在移动自组织网络中形成的聚类数目(在每个聚类中需要选择出三个锚节点)以及需要额外选择的锚节点数目,将网络中所有节点分布式地进行合理聚类,获得所需数目的聚类;
步骤二,基于步骤一中所获得的聚类情况,在每一个聚类中,其簇头节点根据该聚类中每一个节点与聚类质心之间距离值情况,选择出与聚类质心之间距离适中的一些节点,作为该聚类中所选择出的锚节点待选集合;
步骤三,根据步骤二中得到的各个聚类对应的锚节点待选集合,针对每一个聚类,其簇头节点从对应的锚节点待选集合中,选择出分布最接近正三角形的三个节点作为该聚类中所选择出的锚节点;
步骤四,若存在需要额外选择的锚节点,则需要通过网络中每个聚类的簇头节点之间的通信,汇集处于节点部署区域边界处的各个聚类中最接近部署区域边界的节点(不包括步骤三中已选择出的锚节点),从这些节点中随机选择出需要额外选择的锚节点,至此,获得指定数目且在整个网络中具有合理分布的锚节点。
所述步骤一包括以下步骤:
步骤十,移动自组织网络中节点总数为N,根据所需选择的锚节点数目Na,计算出需要形成的聚类数目Ncluster如下式(1)所示,其中为的向下取整值;同时计算出需要额外选择的锚节点数目N′a如下式(2)所示;
Na′=Na-3×Ncluster......(2)
步骤十一,利用相似度传播聚类算法对移动自组织网络中节点进行聚类,该聚类算法为分布式算法,仅依赖于不同节点之间的相似度值及节点自身的相似度值,其中,将节点i与节点j(i,j=1,...,N,j≠i)之间的欧式距离(以下简称距离)的负值作为二者之间的相似度值,节点i与节点j之间距离如下式(3)所示:
其中,初始时刻节点i的二维位置Pi如下式(4)所示,
Pi=[xi,yi]T......(4)
节点i与节点j之间的相似度如下式(5)所示,
s(i,j)=-dij.......(5)
对于节点i,通过与网络内其他节点分别进行测距通信,获得其与其他节点之间的距离集合为Di,dmedian为Di的中值,将节点i自身的相似度置如下式(6)所示,
s(i,i)=-dmedian·fscale,......(6)
其中,fscale为乘积因子,通过调节fscale的取值,改变s(i,i)的取值,进而在聚类过程中得到不同数目的聚类;
步骤十二,在将节点聚类的过程中,形成聚类的同时也获得了每个聚类中的簇头节点,针对每个聚类中的锚节点选取过程由该聚类的簇头节点控制进行,通过各个聚类的簇头节点之间的通信,获得需要额外选择的锚节点。
所述步骤二包括以下步骤:
步骤二十,基于步骤一中得到的聚类情况,针对聚类Cm(m=1,...,Ncluster),其中第k个节点表示为Cmk(k=1,...,Nm),Nm为Cm中节点数目;聚类的质心为om;簇头节点收集聚类内所有节点的初始位置,根据下式(7)所示计算出下式(8)所示;
步骤二十一,Cm的簇头节点计算聚类内每个节点Cmk与om之间距离值dko,并组成集合Do,dmed与dmax分别为Do中的中值与最大值;
步骤二十二,提取出Do中处于如下式(9)所示区间的距离值,这些距离值对应的节点集合即为Cm中的锚节点待选集合Sm。
(dmed,(dmax+dmed)/2)......(9)
步骤三包括以下步骤:
步骤三十,根据步骤二中获得的聚类Cm(m=1,...,Ncluster)的锚节点待选集合Sm,计算Sm中每两个节点之间的距离
步骤三十一,从Sm中选择三个不同节点与其位置分布所组成的三角形面积的通过海伦公式计算如下式(10)所示,
其中,p如下式(11)所示,是节点与节点之间的距离;
步骤三十二,假设一个三角形,其质心到其三个顶点的距离分别被赋值为与(为节点与Cm的质心om之间的距离),则该三角形在成为正三角形时能达到其最大面积,该最大面积计算如下式(12)所示;
步骤三十三,为了评价节点与所组成三角形接近正三角形的程度,定义正三角形相似度如下式(13)所示;
步骤三十四,重复步骤十一、步骤十二和步骤十三,直至将Sm中所有节点以三个节点为组合遍历完成,并得到具有最大正三角形相似度的节点组合,其中包含的三个节点即为聚类Cm中选择出的锚节点;
步骤三十五,设定m=m+1,重复步骤十一、步骤十二、步骤十三和步骤十四,直至所有聚类均完成锚节点选择。
所述步骤四包括以下步骤:
步骤四十,若步骤十中得到的Na′不为0,则继续进行步骤四十一和步骤四十二,否则,至此完成移动自组织网络中锚节点选择过程;
步骤四十一,将每个处于节点部署区域边界处的聚类中最接近节点部署区域边界的节点通过这些聚类对应簇头节点之间的通信汇集到接近部署区域中央位置的聚类对应的簇头节点处;
步骤四十二,该簇头节点从汇集到的节点中随机地选择出Na′个锚节点,至此,完成移动自组织网络中锚节点选择过程。
本发明所考虑的移动自组织网络中,所有节点的初始位置已知,首先根据需要的锚节点数目,规划出需要在网络中形成的聚类数目以及需要额外选择的锚节点数目;网络内节点之间互相进行测距通信以得到二者之间的距离,以节点之间距离的负值作为节点之间的相似度;利用相似度传播聚类算法对网络内节点进行聚类,其中通过对节点自身相似度的合理赋值能够使聚类过程中得到所需的聚类数目,同时聚类过程中能够得到每个聚类中的簇头节点,每个簇头节点需要负责其所在聚类中的锚节点选取过程等;针对网络中形成的每一个聚类,其簇头节点汇集聚类内节点的初始位置,通过计算这些节点与聚类质心之间的距离,可以从中选择出距离质心适中的节点形成该聚类中的锚节点待选集合;进一步地,在每个聚类中的锚节点待选集合中选择出分布最接近正三角形的三个节点作为在该聚类中选择出的锚节点;若有需要额外选择的锚节点,通过各个聚类对应簇头节点之间进行通信,汇集处于节点部署区域边界处的各个聚类中最接近部署区域边界的节点(不包括各聚类中已选择出的锚节点),并在这些节点中随机选择出需要额外选择的锚节点;至此,移动自组织网络中锚节点选择过程完成。
更为具体地,在本发明的一个优选例中,考虑一个以定位用户节点作为主要业务的移动自组织网络,选择锚节点作为用户节点在协作定位过程时的参考节点,本发明是通过以下技术方案实现的,本发明包括以下步骤:
步骤五十,根据需要选择出的锚节点数目,计算出需要在网络中形成的聚类数目及需要额外选择的锚节点数目;本实施例中所考虑的移动自组织网络包含150个节点,节点部署在100m×100m的正方形区域,需要选择出的锚节点为19个,因此需要在网络中形成6个聚类(每个聚类中选择出3个锚节点)以及1个需要额外选择的锚节点,网络内节点之间进行测距通信,利用相似度传播聚类算法,以节点之间的距离的负值作为对应节点之间的相似度,同时通过给予每个节点合理的自身相似度(fscale=4)以便获得所需的6个聚类;
步骤五十一,获得每个聚类中的锚节点待选集合。针对每个聚类Cm(m=1,...,6),计算出Cm的质心om,然后计算出Cm中每个节点与om之间的距离,获得距离集合Do,并得到Do中的中间值dmed与最大值dmax,选择出那些与om之间的距离处于(dmed,(dmax+dmed)/2)区间内的节点作为Cm中的锚节点待选集合;
步骤五十二,选择出每个聚类中的锚节点。针对每个聚类Cm(m=1,...,6),将其对应的锚节点待选集合Sm中的每三个节点形成组合,并选择出分布最接近正三角形的节点组合,则该组合中的三个节点即为Cm中所选择出的锚节点;
步骤五十三,选择出需要额外选择的锚节点。由于本实施例中有1个需要额外选择的锚节点,则将每个处于节点部署区域边界处的聚类中最接近节点部署区域边界的节点(不包括步骤三中已选择出的锚节点)汇集起来,并从其中随机选择出一个节点作为额外选择出的锚节点,本实施例中选择最接近部署区域左侧边界的节点作为锚节点。至此,移动自组织网络中锚节点选择过程完成;图2示例了本优选例中得到的锚节点分布以及在网络中形成的各个聚类,其中,“○”表示用户节点,“▲”表示所选择出的锚节点,各个聚类由虚线以及部署区域边界围着;从图中可以看出,本优选例中选择出的锚节点在整个部署区域中分布较为均匀。
为了评估本发明提出的移动自组织网络中锚节点选择方法所选择出的锚节点在本实施例中所能达到的性能,本实施例中选择了一种被广泛研究的协作定位算法——非参数化置信传播算法作为针对用户节点的定位算法,并以整个网络中所有用户节点的定位误差情况作为性能指标,其中所述的定位误差由均方根误差(root mean square error,RMSE)进行表示,RMSE的定义为如下式(14)所示,
其中,Na为网络中用户节点的数目;Sa为网络中用户节点的集合;xa为用户节点na的实际位置;为用户节点na在协作定位过程中得到的估计位置。
图3列举了在本发明中提出方法得到的锚节点分布、锚节点随机分布以及锚节点均匀分布情况下,利用非参数化置信传播算法在200个样本条件下对网络中用户节点进行定位时所能达到的定位误差的累积分布(cumulative distribution function,CDF)情况。从图中可以看出,相比于锚节点随机分布的情形,非参数化置信传播算法在基于本发明提出方法得到的锚节点分布时在定位精度方面的性能接近其基于锚节点均匀分布时的定位精度性能,而锚节点均匀分布可被认为是锚节点的最优分布情况,因此可以说明本发明提出的方法能够为以定位用户节点作为主要业务的移动自组织网络选择出合理的锚节点分布,提高定位算法在定位精度方面的性能。
以上所述的具体实施例,对本发明的解决的技术问题、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。