CN108605305A - 用于预测网络距离的方法和装置 - Google Patents
用于预测网络距离的方法和装置 Download PDFInfo
- Publication number
- CN108605305A CN108605305A CN201680019916.9A CN201680019916A CN108605305A CN 108605305 A CN108605305 A CN 108605305A CN 201680019916 A CN201680019916 A CN 201680019916A CN 108605305 A CN108605305 A CN 108605305A
- Authority
- CN
- China
- Prior art keywords
- node
- matrix
- network
- distance
- coordinate system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 239000011159 matrix material Substances 0.000 claims abstract description 521
- 238000000354 decomposition reaction Methods 0.000 claims abstract description 74
- 239000013598 vector Substances 0.000 claims description 63
- 238000005457 optimization Methods 0.000 claims description 24
- 238000013459 approach Methods 0.000 claims description 6
- 230000006854 communication Effects 0.000 description 17
- 238000005259 measurement Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 230000002159 abnormal effect Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 241000233805 Phoenix Species 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000513 principal component analysis Methods 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0284—Relative positioning
- G01S5/0289—Relative positioning of multiple transceivers, e.g. in ad hoc networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
- H04W64/003—Locating users or terminals or network equipment for network management purposes, e.g. mobility management locating network equipment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/023—Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供一种用于预测网络距离的方法和装置,所述方法包括:待定位节点与参考节点进行通信,以确定本地距离矩阵中的至少部分元素的取值;待定位节点根据本地距离矩阵中的至少部分元素的取值,构建本地距离矩阵;待定位节点对本地距离矩阵进行低秩稀疏分解,得到低秩矩阵;待定位节点获取低秩矩阵的第一元素集合中的元素的取值,作为待定位节点和至少两个参考节点的网络距离的目标值;待定位节点与参考节点进行通信,以获取参考节点在网络坐标系统中的坐标;待定位节点根据待定位节点和参考节点的网络距离的目标值,以及参考节点在网络坐标系统中的坐标,确定待定位节点的坐标。本发明实施例能够提高网络距离预测的准确性。
Description
本发明实施例涉及网络坐标系统领域,并且更具体地,涉及一种用于预测网络距离的方法和装置。
网络坐标系统(Network Coordinate System,NCS)是一种具有可扩展性的网络距离预测方案。网络距离的定义方式有多种,例如可以是网络延时,或者可以是网络带宽,或者是其他的可以测量的物理量。如图1所示,一个网络通常包含多个节点,在构建网络坐标系统的过程中,每个参与网络坐标系统构建的节点可以通过少量测量,得到一个或多个d维矢量,该一个或多个d维矢量即为该节点在网络坐标系统中的坐标。以网络坐标系统是基于欧式模型(欧几里得模型)的网络坐标系统为例,在确定图1所示的多个节点在欧式坐标系中的坐标之后,可以将图1中的多个节点转换到欧式坐标系中,得到图2。假设网络距离表示的是两个节点之间的网络延迟,那么通过计算图2中的节点1和节点2之间的距离即可得到图1中的节点1和节点2之间的网络延迟。
网络坐标系统具有高可扩展性和低测量开销的特点,它利用任意两个节点的网络坐标,根据事先定义的计算法则,就可以预测它们之间的网络距离,如网络延时、网络带宽等信息。对于一个包含M个节点的网络系统,其测量复杂度为O(M),因此,网络坐标系统可以通过复杂度为O(M)的测量,预测出M(M-1)条链路之间的网络距离,如延时或带宽,从而可以避免大量的端到端测量。网络坐标系统可以应用于大规模分布式网络系统,能够极大简化节点之间的测量复杂度。
现有技术中,在使用网络坐标系统之前,需要先确定网络系统中的节点在网络坐标系统中的坐标,此外,由于网络系统的情况是动态变化的,网络
坐标系统中的节点也需要不断更新自己在网络坐标系统中的坐标。具体地,待定位节点首先选取多个参考节点(如选取32个参考节点),然后与参考节点进行通信,测量待定位节点与参考节点之间的网络距离,如测量待定位节点和参考节点之间的延迟或带宽。进一步地,待定位节点还会接收参考节点在网络坐标系统中的坐标。这样一来,待定位节点就可以根据参考节点在网络坐标系统中的坐标和测量出的网络距离,拟合出待定位节点在网络坐标系统中的坐标。
但是,受到网络随机延迟污染(即由于网络通信的随机波动造成延时的随机变化)、机器故障、测量误差等因素的影响,待定位节点测量出的网络距离通常包含错误值(error)和异常值(outlier),会导致待定位节点拟合出的坐标不准确,从而导致后续的网络距离的预测误差较大。
发明内容
本申请提供一种用于预测网络距离的方法和装置,以提高网络距离预测的准确性。
第一方面,提供一种用于预测网络距离的方法,包括:网络坐标系统中的待定位节点与至少两个参考节点进行通信,以确定本地距离矩阵中的至少部分元素的取值,所述本地距离矩阵中的一个元素Qij用于记录所述本地距离矩阵的第i行对应的节点和第j列对应的节点的网络距离的初始值,所述待定位节点和所述至少两个参考节点的网络距离的初始值记录在所述本地距离矩阵中的第一元素集合中,i、j为大于或等于0的整数;所述待定位节点根据所述本地距离矩阵中的至少部分元素的取值,构建所述本地距离矩阵;所述待定位节点对所述本地距离矩阵进行低秩稀疏分解,得到低秩矩阵;所述待定位节点获取所述低秩矩阵的第一元素集合中的元素的取值,作为所述待定位节点和所述至少两个参考节点的网络距离的目标值;所述待定位节点与所述至少两个参考节点进行通信,以获取所述至少两个参考节点在所述网
络坐标系统中的坐标;所述待定位节点根据所述待定位节点和所述至少两个参考节点的网络距离的目标值,以及所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述待定位节点在所述网络坐标系统中的坐标,所述待定位节点在所述网络坐标系统中的坐标用于预测所述待定位节点与目标节点的网络距离,所述目标节点是所述网络坐标系统中的除所述待定位节点以外的任意节点。
现有技术中,待定位节点会与参考节点进行通信,对待定位节点和参考节点之间的网络距离进行测量,然后基于参考节点的坐标和测量出的网络距离直接拟合待定位节点的坐标,由于待定位节点的测量过程存在误差,测量出的结果可能会包含错误值和异常值,导致待定位节点拟合出的坐标不准确,从而导致后续的网络距离的预测误差较大。
本发明实施例并非直接基于待定位节点与参考节点通信获得的网络距离拟合待定位节点的坐标,而是将待定位节点和参考节点通信获得的网络距离作为网络距离的初始值,记录在构建出的本地距离矩阵的第一元素集合中,本地距离矩阵是网络坐标系统的全局距离矩阵的子矩阵,可以看成是全局距离矩阵的近似,受到网络坐标系统中的坐标的维度较低的影响,全局距离矩阵是一个低秩矩阵,因此,本地距离矩阵一般也是一个低秩矩阵。以基于矩阵分解模型的网络坐标系统为例,假设网络坐标系统包含M个节点,节点的出向量或入向量的维度为d,则全局距离矩阵其中,UM是M个节点的出向量组成的矩阵,VM是M个节点的入向量组成的矩阵。由于矩阵UM是M×d的矩阵,矩阵VM是d×M的矩阵,矩阵UM和矩阵VM的秩的最大值为d(需要说明的是,d一般远小于M),因此,D的最大秩为d;又如,以基于欧式距离的网络坐标系统为例,假设基于欧式距离的网络坐标系统的坐标是d维向量,则全局距离矩阵的秩的最大值为d+2。但是,受到错误值和异常值的影响,本地距离矩阵的秩一般较高,因此,本发明实施例对本地距离矩阵进行低秩稀疏分解,得到的低秩矩阵相当于将本地距离矩阵
中的错误值和误差值去除之后得到的相对准确的本地距离矩阵,因此,低秩矩阵的第一元素集合中的待定位节点和参考节点之间的网络距离(即网络距离的目标值)与本地距离矩阵的第一元素集合中记录的待定位节点和参考节点之间的网络距离(即网络距离的初始值)相比也更加准确,拟合出的待定位节点在网络坐标系统中的坐标也更加准确,提高了后续网络距离预测的准确性。
结合第一方面,在第一方面的某些实现方式中,所述低秩矩阵的每个元素大于或等于0。例如,可以以低秩矩阵中的每个元素大于或等于0为约束条件对本地距离矩阵进行低秩稀疏分解。低秩矩阵中的元素记录的是网络坐标系统中的网络距离,网络距离表示网络延时、网络带宽等可测量的物理量,这些物理量均具有非负性。本发明实施例将低秩矩阵中的每个元素大于或等于0作为约束条件,对本地距离矩阵进行低秩稀疏分解,保证了低秩矩阵中的每个元素为非负元素,即保证了网络距离的非负性,从而提高了确定出的待定位节点的坐标准确性,进而提高了后续网络距离预测的准确性。
结合第一方面,在第一方面的某些实现方式中,所述本地距离矩阵等于所述低秩矩阵、稀疏矩阵和目标矩阵之和,且所述目标矩阵的所述至少部分元素(为了便于描述,下面将该至少部分元素称为目标元素)的取值为0。
具体地,所述待定位节点对所述本地距离矩阵进行低秩稀疏分解可包括:所述待定位节点以本地距离矩阵等于所述低秩矩阵、稀疏矩阵和目标矩阵之和,且所述目标矩阵的目标元素等于0为约束条件,对所述本地距离矩阵进行低秩稀疏分解。
首先,需要说明的是,本地距离矩阵中的元素记录的是两个节点之间的网络距离,本地距离矩阵记录的节点之间的网络距离可以基于待定位节点与参考节点之间的通信获得。例如,待定位节点可以测量其与参考节点之间的网络距离,进一步地,待定位节点可以获取参考节点在网络坐标系统中的坐标,并基于参考节点在网络坐标系统中的坐标确定参考节点之间的网路距离,
但是,待定位节点与参考节点之间的通信过程存在不稳定性,可能导致某些信息的缺失(如网络距离测量失败,参考节点的坐标获取失败),如果信息缺失,本地距离矩阵中的某些元素的取值就无法确定。为了解决信息缺失的问题,本发明实施例引入变量:目标矩阵,由于本地距离矩阵的至少部分元素(即目标元素)对应的两个节点的网络距离已知,即这些网络距离不存在信息缺失的问题,因此,本发明实施例将目标矩阵的目标元素设置为0,假设本地距离矩阵中的某个元素对应的两个节点的网络距离未知,可以为该元素赋予初始值,初始值可以设置为0或其他任意值,则由于目标矩阵的存在,仍然可以对缺失了部分信息的本地距离矩阵进行低秩稀疏分解,提高了算法的鲁棒性。
结合第一方面,在第一方面的某些实现方式中,所述待定位节点对所述本地距离矩阵进行低秩稀疏分解,得到低秩矩阵,包括:所述待定位节点根据以下最优化模型,对所述本地距离矩阵进行低秩稀疏分解,得到所述低秩矩阵:
其中,Q表示所述本地距离矩阵,A表示所述低秩矩阵,E表示稀疏矩阵,G表示所述目标矩阵,π(G)=0表示所述目标矩阵的所述至少部分元素的取值为0,矩阵B≥0表示所述矩阵B中的每个元素均大于或等于0,||A||*表示矩阵A的核范数,||E||1表示矩阵E的L1范数,λ是权值,且λ大于0。
结合第一方面,在第一方面的某些实现方式中,所述网络坐标系统是基于矩阵分解模型的网络坐标系统。
结合第一方面,在第一方面的某些实现方式中,所述网络坐标系统是基于欧式模型的网络坐标系统。
结合第一方面,在第一方面的某些实现方式中,所述本地距离矩阵还包含第二元素集合,所述本地距离矩阵中的第二元素集合中的元素用于记录所述至少两个参考节点之间的网络距离的初始值,所述确定本地距离矩阵中的至少部分元素的取值,包括:所述待定位节点测量所述待定位节点和所述至少两个参考节点的网络距离的初始值,作为所述本地距离矩阵中的第一元素集合中的元素的取值;所述待定位节点根据所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述至少两个参考节点之间的网络距离的初始值,作为所述本地距离矩阵中的第二元素集合中的元素的取值。
结合第一方面,在第一方面的某些实现方式中,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述低秩矩阵的秩小于或等于d,其中,d表示所述网络坐标系统的坐标的维度。
假设网络坐标系统包含M个节点,节点的出向量或入向量的维度为d,则全局距离矩阵其中,UM是M个节点的出向量组成的矩阵,VM是M个节点的入向量组成的矩阵。由于矩阵UM是M×d的矩阵,矩阵VM是d×M的矩阵,矩阵UM和矩阵VM的秩的最大值为d,因此,D的最大秩为d(需要说明的是,d一般远小于M)。本发明实施例中的本地距离矩阵是用来模拟全局距离矩阵,因此,本地距离矩阵的秩应该小于或等于d,但受到错误值和异常值的影响,本地距离矩阵的秩通常很高,需要对本地距离矩阵进行去错误值和异常值处理,得到低秩矩阵,本发明实施例以低秩矩阵的秩小于或等于d为约束条件,使得求解出的低秩矩阵更加符合实际情况。
结合第一方面,在第一方面的某些实现方式中,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述待定位节点和所述至少两个参考节点的网络距离的目标值包括所述待定位节点和所述至少两个参考节点的入距离的目标值和出距离的目标值,所述入距离用于指示所述至少两个参考节点到所述待定位节点的网络距离,所述出距离用于指示所述待定位节点到所述至少两个参考节点的网络距离,所述待定位节点根据所述待定位节点和所述
至少两个参考节点的网络距离的目标值,以及所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述待定位节点在所述网络坐标系统中的坐标,包括:所述待定位节点根据以下公式,确定所述待定位节点在所述网络坐标系统中的坐标:
其中,Ain表示所述待定位节点和所述至少两个参考节点的入距离的目标值,Aout表示所述待定位节点和所述至少两个参考节点的出距离的目标值,X表示所述待定位节点的用于计算所述出距离的坐标,Y表示所述待定位节点的用于计算所述入距离的坐标,Uout表示所述至少两个参考节点的用于计算所述入距离的坐标组成的向量,Vin表示所述至少两个参考节点的用于计算所述出距离的坐标组成的向量。可替换地,X可以表示所述待定位节点的出向量,Y可以表示所述待定位节点的入向量,Uout可以表示所述至少两个参考节点的出向量组成的向量矩阵,Vin可以表示所述至少两个参考节点的入向量组成的向量矩阵。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:所述待定位节点向所述网络坐标系统中的所述目标节点发送请求信息,所述请求信息用于请求所述目标节点在所述网络坐标系统中的坐标;所述待定位节点根据所述待定位节点在所述网络坐标系统中的坐标和所述目标节点在所述网络坐标系统中的坐标,预测所述待定位节点和所述目标节点之间的网络距离。
结合第一方面,在第一方面的某些实现方式中,所述网络坐标系统中的两个节点之间的网络距离用于衡量所述两个节点之间的网络的质量。可替换地,所述网络坐标系统中的两个节点之间的网络距离可以是用于衡量所述两个节点之间的网络的质量或网络属性的参数。
结合第一方面,在第一方面的某些实现方式中,所述网络坐标系统中的
两个节点之间的网络距离用于指示所述两个节点之间的网络延迟和/或网络带宽。
第二方面,提供一种用于预测网络距离的装置,所述装置为网络坐标系统中的待定位节点,所述装置包括:第一确定单元,用于与至少两个参考节点进行通信,以确定本地距离矩阵中的至少部分元素的取值,所述本地距离矩阵中的一个元素Qij用于记录所述本地距离矩阵的第i行对应的节点和第j列对应的节点的网络距离的初始值,所述待定位节点和所述至少两个参考节点的网络距离的初始值记录在所述本地距离矩阵中的第一元素集合中,i、j为大于或等于0的整数;构建单元,用于根据所述本地距离矩阵中的至少部分元素的取值,构建所述本地距离矩阵;分解单元,用于对所述本地距离矩阵进行低秩稀疏分解,得到低秩矩阵;第一获取单元,用于获取所述低秩矩阵的第一元素集合中的元素的取值,作为所述待定位节点和所述至少两个参考节点的网络距离的目标值;第二获取单元,用于与所述至少两个参考节点进行通信,以获取所述至少两个参考节点在所述网络坐标系统中的坐标;第二确定单元,用于根据所述待定位节点和所述至少两个参考节点的网络距离的目标值,以及所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述待定位节点在所述网络坐标系统中的坐标,所述待定位节点在所述网络坐标系统中的坐标用于预测所述待定位节点与目标节点的网络距离,所述目标节点是所述网络坐标系统中的除所述待定位节点以外的任意节点。
结合第二方面,在第二方面的某些实现方式中,所述低秩矩阵的每个元素大于或等于0。
结合第二方面,在第二方面的某些实现方式中,所述本地距离矩阵等于所述低秩矩阵、稀疏矩阵和目标矩阵之和,且所述目标矩阵的所述至少部分元素的取值为0。
结合第二方面,在第二方面的某些实现方式中,所述分解单元具体用于根据以下最优化模型,对所述本地距离矩阵进行低秩稀疏分解,得到所述低
秩矩阵:
其中,Q表示所述本地距离矩阵,A表示所述低秩矩阵,E表示稀疏矩阵,G表示所述目标矩阵,π(G)=0表示所述目标矩阵的所述至少部分元素的取值为0,矩阵B≥0表示所述矩阵B中的每个元素均大于或等于0,||A||*表示矩阵A的核范数,||E||1表示矩阵E的L1范数,λ是权值,且λ大于0。
结合第二方面,在第二方面的某些实现方式中,所述本地距离矩阵还包含第二元素集合,所述本地距离矩阵中的第二元素集合中的元素用于记录所述至少两个参考节点之间的网络距离的初始值,所述第一确定单元具体用于测量所述待定位节点和所述至少两个参考节点的网络距离的初始值,作为所述本地距离矩阵中的第一元素集合中的元素的取值;根据所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述至少两个参考节点之间的网络距离的初始值,作为所述本地距离矩阵中的第二元素集合中的元素的取值。
结合第二方面,在第二方面的某些实现方式中,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述低秩矩阵的秩小于或等于d,其中,d表示所述网络坐标系统的坐标的维度。
结合第二方面,在第二方面的某些实现方式中,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述待定位节点和所述至少两个参考节点的网络距离的目标值包括所述待定位节点和所述至少两个参考节点的入距离的目标值和出距离的目标值,所述入距离用于指示所述至少两个参考节点到所述待定位节点的网络距离,所述出距离用于指示所述待定位节点到所述至少两个参考节点的网络距离,所述第二确定单元具体用于根据以下公式,确定所述待定位节点在所述网络坐标系统中的坐标:
其中,Ain表示所述待定位节点和所述至少两个参考节点的入距离的目标值,Aout表示所述待定位节点和所述至少两个参考节点的出距离的目标值,X表示所述待定位节点的用于计算所述出距离的坐标,Y表示所述待定位节点的用于计算所述入距离的坐标,Uout表示所述至少两个参考节点的用于计算所述入距离的坐标组成的向量,Vin表示所述至少两个参考节点的用于计算所述出距离的坐标组成的向量。
结合第二方面,在第二方面的某些实现方式中,所述装置还包括:发送单元,用于向所述网络坐标系统中的所述目标节点发送请求信息,所述请求信息用于请求所述目标节点在所述网络坐标系统中的坐标;预测单元,用于根据所述待定位节点在所述网络坐标系统中的坐标和所述目标节点在所述网络坐标系统中的坐标,预测所述待定位节点和所述目标节点之间的网络距离。
结合第二方面,在第二方面的某些实现方式中,所述网络坐标系统中的两个节点之间的网络距离用于衡量所述两个节点之间的网络的质量。
第三方面,提供一种节点,包括存储器、收发器和处理器,所述存储器用于存储程序,所述处理器用于执行所述程序,当所述程序被执行时,所述处理器基于所述收发器执行所述第一方面中的方法。
第四方面,提供一种计算机可读介质,所述计算机可读介质存储用于节点执行的程序代码,所述程序代码包括用于执行第一方面中的方法的指令。
下面将对本发明实施例中所需要使用的附图作简单地介绍。
图1是网络坐标系统的示意图。
图2是图1中的节点在欧式坐标系中的网络距离的示意图。
图3是本发明实施例的应用场景的示例图。
图4是网络坐标系统中的节点的结构示意图。
图5是本发明实施例提供的用于预测网络距离的方法的示意性流程图。
图5a是基于欧式模型的网络坐标系统中的节点的网络距离的示例。
图5b是基于矩阵分解模型的网络坐标系统中的节点的网络距离的示例。
图6是本发明实施提供的用于确定节点坐标的流程的示意图。
图7是本发明实施例提供的待定位节点和N跳参考节点的关系示意图。
图8是低秩稀疏分解算法的流程图。
图9是图8中的步骤806的详细流程图。
图10是本发明实施例提供的用于预测网络距离的装置示意性结构图。
图11是本发明实施例提供的网络坐标系统中的节点的示意性结构图。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
为了便于理解,先结合图3,简单描述本发明实施例的应用场景的示例。如图3所示,网络坐标系统中有许多节点,节点可以是一个独立的网络设备,例如可以是主机,路由器,域名系统(Domain Name System,DNS)服务器,或内容分发网络(Content Delivery Network,CDN)服务器等。图4是网络坐标系统中的节点的结构示意图,参见图4,节点可以包括网卡和处理器,网卡可以用来与网络坐标系统中的其他节点进行通信和数据交换,例如,测量该节点与参考节点之间的网络距离,或者接收参考节点发送的坐标等。节点的处理器可以基于通信得到的信息计算或更新节点在网络坐标系统中的坐标。
在网络坐标系统中,每个节点都有自己的坐标,初始条件下,每个节点的坐标可以随机生成。网络坐标系统的节点之间可以通过通信网络相连,相
互通信。待定位节点为了获知或更新自身在网络坐标系统中的坐标,可以先从网络坐标系统中选取一些参考节点(如图3所示),与这些参考节点进行通信,以测量待定位节点和参考节点之间的网络距离,例如,测量待定位节点和参考节点之间的网络延时或网络带宽。假设参考节点的数量为K,网络坐标系统中的节点的数量为M,通常情况下,K远小于M,以减少节点之间的端到端测量。在一些实施例中,参考节点的数量可以是预先设定的一个参数。进一步地,在一些实施例中,该参数在网络坐标系统中的各节点可以保持一致。
为了便于理解,在详细描述本发明实施例的用于预测网络距离的方法之前,先对网络坐标系统以及网络坐标系统中的一些术语的含义进行描述。
网络坐标系统,又称为互联网坐标系统,是一种具有可扩展性的互联网距离预测方案。对于一个有M个节点的网络,每个参与网络坐标系统的节点通过少量测量,得到一个(或者多个)d维矢量,即为该节点在网络坐标系统中的坐标。利用任意两个节点在网络坐标系统中的坐标,根据事先定义的计算法则,就可以预测该两个节点之间的网络距离。对于包含M个节点的网络坐标系统而言,其测量复杂度为O(N),因此,网络坐标系统可以通过复杂度为O(N)的测量预测N(N-1)条链路的网络距离,从而可以避免大量的端到端测量。这是一种具有高可扩展性的方案,可以应用于大规模分布式网络系统、网格计算。
网络坐标系统的类型多种多样,例如,网络坐标系统可以是基于欧式模型(Euclidean Model,EM)的网络坐标系统,又如,网络坐标系统可以是基于矩阵分解模型(Matrix Factorization Model,MFM)的网络坐标系统,例如可以是Phoenix网络坐标系统。
在基于矩阵分解的网络坐标系统中,每个节点具有坐标X和坐标Y,X也可称为出向量,用于计算该节点到其他节点的网络距离(即待定位节点和其他节点之间的出距离),Y也可称为入向量,用于计算其他节点到该节点
之间的网络距离(即待定位节点和其他节点之间的入距离)。
全局距离矩阵:全局距离矩阵可以包含网络坐标系统中的节点两两之间的网络距离,假设网络坐标系统包含M个节点,则全局距离矩阵可以是M×M的矩阵(即二维数组),全局距离矩阵中的第i行的元素第j列的元素可以表示M个节点中的第i行对应的节点和第j列对应的节点之间的网络距离。
本地距离矩阵:本地距离矩阵可以是全局距离矩阵的近似,可以包含全局距离矩阵中的部分元素,本地距离矩阵中的元素个数越多,本地距离矩阵与全局距离矩阵越近似。
待定位节点:待定位节点可以是网络坐标系统中的任意一个节点,例如,当一个新的节点加入网络坐标系统时,该节点需要先确定自己在网络坐标系统中的坐标,此时,该节点即为待定位节点;又如,网络坐标系统中的节点可能需要不断维护和更新自己在网络坐标系统中的坐标,当某个节点维护和更新自己在网络坐标系统中的坐标时,该节点即为待定位节点。
参考节点:参考节点可以是待定位节点为了确定自己在网络坐标系统中的坐标而选取的用于进行网络距离测量的节点,即待定位节点需要基于其与参考节点之间测量得到的网络距离确定自己在网络坐标系统中的坐标。参考节点可以有待定位节点随机选取,也可以是网络坐标系统中的一些锚节点。
网络距离:网络坐标系统中的两个节点之间的网络距离可用于衡量该两个节点之间的网络的质量。或者,换句话说,网络坐标系统中的两个节点之间的网络距离可以是用于衡量所述两个节点之间的网络的质量或网络属性的参数。例如,可以是两个节点之间的网络延迟和/或网络带宽。
秩:在线性代数中,一个矩阵A的列秩是A的线性独立的纵列的极大数目。类似地,行秩是A的线性独立的横行的极大数目。矩阵的列秩和行秩总是相等的,因此它们可以简单地称作矩阵A的秩。通常表示为r(A),rk(A)或rank A。
低秩稀疏分解:低秩稀疏分解也可称为鲁棒主成分分析(Robust Principal
Component Analysis,RPCA)。在许多实际应用中,给定的数据矩阵(如本发明实施例中的本地距离矩阵)往往是低秩或近似低秩的,但由于分布稀疏的误差的存在,破坏了该数据矩阵的低秩性,为了恢复数据矩阵的低秩结构,可以将数据矩阵分解为两个矩阵之和,即低秩矩阵A和稀疏矩阵E,其中,矩阵A和矩阵E均为变量,但矩阵A是低秩的。低秩稀疏分解的方式可以有很多,低秩稀疏分解通常采用最优化方法求解,如增广拉格朗日乘子(Augmented Lagrange Multiplier,ALM)算法,交替方向乘子(Alternating Direction Method of Multipliers,ADMM)算法,迭代阈值算法等。
稀疏矩阵:在数值分析中,稀疏矩阵(Sparse matrix),是其元素大部分为零的矩阵。反之,如果大部分元素都非零,则这个矩阵是稠密的。
下面结合图5,详细描述本发明实施例的用于预测网络距离的方法的示意性流程图。
图5是本发明实施例的用于预测网络距离的方法的示意性流程图。图5的方法包括:
510、网络坐标系统中的待定位节点与至少两个参考节点进行通信,以确定本地距离矩阵中的至少部分元素的取值,本地距离矩阵中的一个元素Qij用于记录本地距离矩阵的第i行对应的节点和第j列对应的节点的网络距离的初始值,待定位节点和至少两个参考节点的网络距离的初始值记录在本地距离矩阵中的第一元素集合中,i、j为大于或等于0的整数。
具体地,待定位节点和参考节点的网络距离的初始值可以由待定位节点测量得到,例如,待定位节点与参考节点进行通信,测量待定位节点和参考节点之间的网络距离,如网络延迟或网络带宽等。
网络坐标系统的全局距离矩阵中的元素记录网络坐标系统中的节点两两之间的网络距离,本发明实施例中的本地距离矩阵是全局距离矩阵的子矩阵,可以看成是全局距离矩阵的近似,但本发明实施例对本地距离矩阵的具体形式不作限定。
在一些实施例中,本地距离矩阵可以是方阵,例如,本地距离矩阵可以用于记录网络坐标系统中的N个节点两两之间的网络距离,此时,0≤i,j<N,N为大于1的整数。
又如,本地距离矩阵可以用于记录网络坐标系统中的P1个节点与P2个节点之间的网络距离,此时,本地距离矩阵的一行可以对应P1个节点中的一个节点,本地距离矩阵的一列可以对应P2个节点中的一个节点,0≤i<P1,0≤j<P2,P1和P2均为大于1的整数,且P1≠P2。
又如,本地距离矩阵的列可以对应待定位节点的参考节点(可以与待定位节点进行通信的参考节点,也可称为一跳参考节点),本地距离矩阵的行可以对应待定位节点的一跳参考节点的参考节点(可以称为待定位节点的二跳参考节点)。
实际中,只要本地距离矩阵中包含待定位节点和参考节点之间的网络距离对应的元素即可,本发明实施例对本地距离矩阵中的其他元素对应哪些节点之间的网络距离不作具体限定,进一步地,本地距离矩阵中的元素个数越多,本地距离矩阵越接近全局距离矩阵,但为了构建该本地距离矩阵,待定位节点与参考节点之间的通信量也会相应增多,因此,可以在本地距离矩阵与全局距离矩阵之间的近似性以及获取该本地距离矩阵所需的通信量之间进行权衡。例如,假设待定位节点具有K个参考节点,本地距离矩阵可以包含K+1个节点两两之间的网络距离,该K+1个节点包含待定位节点和K个参考节点。又如,假设待定位节点具有K个参考节点,本地距离矩阵可以包含K+1+T个节点两两之间的网络距离,其中,T个节点为K个参考节点的参考节点,此时,可以将K个参考节点称为待定位节点的一跳参考节点,将T个节点称为待定位节点的二跳参考节点。
进一步地,待定位节点可以测量待定位节点与参考节点之间的网络距离,并将测量结果作为待定位节点与参考节点之间的网络距离的初始值记录在第一元素集合的元素中,本发明实施例对本地距离矩阵中的除第一元素集合
之外的其他元素对应的网络距离的获取方式不作具体限定,例如,待定位节点可以获取两个节点在网络坐标系统中的坐标,然后基于该两个节点在网络坐标系统中的坐标确定该两个节点之间的网络距离,并将该两个节点之间的网络距离作为该两个节点之间的网络距离的初始值,记录在本地距离矩阵中;又如,待定位节点可以从参考节点中获取该参考节点测量到的其与其他节点之间的网络距离,并将该网络距离作为参考节点和其他节点之间的网络距离的初始值,记录在本地距离矩阵中。
假设网络坐标系统为基于欧式模型的网络坐标系统,以本地距离矩阵中的元素记录网络坐标系统中的A、B、C三个节点之间的距离为例,假设A、B、C三点的网络距离的关系如图5a所示,则本地距离矩阵为:
假设网络坐标系统为基于矩阵分解模型的网络坐标系统,以本地距离矩阵中的元素记录网络坐标系统中的A、B、C三个节点之间的距离为例,假设A、B、C三点的网络距离的关系如图5b所示,则本地距离矩阵为:
520、待定位节点根据本地距离矩阵中的至少部分元素的取值,构建本地距离矩阵。
530、待定位节点对本地距离矩阵进行低秩稀疏分解,得到低秩矩阵。
540、待定位节点获取低秩矩阵的第一元素集合中的元素的取值,作为待定位节点和参考节点的网络距离的目标值。
550、待定位节点与至少两个参考节点进行通信,以获取至少两个参考节点在网络坐标系统中的坐标。
560、待定位节点根据待定位节点和至少两个参考节点的网络距离的目标值,以及至少两个参考节点在网络坐标系统中的坐标,确定待定位节点在网络坐标系统中的坐标,待定位节点在网络坐标系统中的坐标用于预测待定位节点与目标节点的网络距离,目标节点是网络坐标系统中的除待定位节点
以外的任意节点。
进一步地,在一些实施例中,图5的方法还可包括:待定位节点向所述目标节点发送请求信息,请求信息用于请求目标节点在网络坐标系统中的坐标;待定位节点根据待定位节点在网络坐标系统中的坐标和目标节点在网络坐标系统中的坐标,预测待定位节点和目标节点之间的网络距离。
现有技术中,待定位节点会与参考节点进行通信,对待定位节点和参考节点之间的网络距离进行测量,然后基于参考节点的坐标和测量出的网络距离直接拟合待定位节点的坐标,由于待定位节点的测量过程存在误差,测量出的结果可能会包含错误值和异常值,导致待定位节点拟合出的坐标不准确,从而导致后续的网络距离的预测误差较大。
本发明实施例并非直接基于待定位节点与参考节点通信获得的网络距离拟合待定位节点的坐标,而是将待定位节点和参考节点通信获得的网络距离作为网络距离的初始值,记录在构建出的本地距离矩阵的第一元素集合中,本地距离矩阵是网络坐标系统的全局距离矩阵的子矩阵,可以看成是全局距离矩阵的近似,受到网络坐标系统中的坐标的维度较低的影响,全局距离矩阵是一个低秩矩阵,因此,本地距离矩阵一般也是一个低秩矩阵。
以基于矩阵分解模型的网络坐标系统为例,假设网络坐标系统包含M个节点,节点的出向量或入向量的维度为d,则全局距离矩阵其中,UM是M个节点的出向量组成的矩阵,VM是M个节点的入向量组成的矩阵。由于矩阵UM是M×d的矩阵,矩阵VM是d×M的矩阵,矩阵UM和矩阵VM的秩的最大值为d(需要说明的是,d一般远小于M),因此,D的最大秩为d;又如,以基于欧式距离的网络坐标系统为例,假设基于欧式距离的网络坐标系统的坐标是d维向量,则全局距离矩阵的秩的最大值为d+2。但是,受到错误值和异常值的影响,本地距离矩阵的秩一般较高,因此,本发明实施例对本地距离矩阵进行低秩稀疏分解,得到的低秩矩阵相当于将本地距离矩阵中的错误值和误差值去除之后得到的相对准确的本地距离矩阵,
进而,低秩矩阵的第一元素集合中的待定位节点和参考节点之间的网络距离(即网络距离的目标值)与本地距离矩阵的第一元素集合中记录的待定位节点和参考节点之间的网络距离(即网络距离的初始值)相比也更加准确,拟合出的待定位节点在网络坐标系统中的坐标也更加准确,提高了后续网络距离预测的准确性。
应理解,本发明实施例对网络坐标系统的类型不作具体限定。可选地,在一些实施例中,网络坐标系统可以是基于矩阵分解模型的网络坐标系统,例如可以是Phoenix网络坐标系统。可选地,在另一些实施例中,网络坐标系统可以是基于欧式模型的网络坐标系统。基于距离分解模型的网络坐标系统和基于欧式模型的网络坐标系统是目前被广泛使用的两种网络坐标系统,下面对这两种网络坐标系统进行详细介绍。
在基于欧式模型的网络坐标系统中,每个节点的坐标可以由一个向量表示,由于欧式距离具有非负性,因此,基于欧式模型的网络坐标系统预测出的网络距离具有非负性。网络距离一般对应一种待测的物理量,如网络延时或带宽,物理量具有非负性,从这个角度来看,基于欧式模型的网络坐标系统预测出的网络距离与实际情况正相符。在基于矩阵分解模型的网络坐标系统中,每个节点包含2个坐标:X和Y,每个坐标为一个向量,坐标X可以称为出向量,坐标Y可以称为入向量。假设节点i的坐标为(Xi,Yi),节点j的坐标为(Xj,Yj),则节点i到节点j的距离包括出距离和入距离两种,出距离D(i,j)是指节点i到节点j的距离,D(i,j)=XiYj T,入距离D(j,i)是指节点j到节点i的距离,D(j,i)=XjYi T。在基于矩阵分解模型的网络坐标系统中,由于引入出距离和入距离,节点之间的距离满足非对称性,这与实际情况更相符。以网络距离表示网络延迟为例,受到路由策略等因素的影响,节点1到节点2的延迟与节点2到节点1的延迟可能不相等。
需要说明的是,步骤560的实现方式,即待定位节点的坐标的确定方式与网络坐标系统的类型有关,本发明实施例对此不作具体限定。以网络坐标
系统为基于欧式距离的网络坐标系统为例,可以以待定位节点在网络坐标系统中的坐标为变量,以参考节点在网络坐标系统中的坐标和待定位节点和参考节点的网络距离的目标值为已知量,直接建立方程求解。
以网络坐标系统是基于矩阵分解模型的网络坐标系统为例,待定位节点和至少两个参考节点的网络距离的目标值包括待定位节点和至少两个参考节点的入距离的目标值和出距离的目标值,入距离用于指示至少两个参考节点到待定位节点的网络距离,出距离用于指示待定位节点到至少两个参考节点的网络距离,待定位节点根据待定位节点和至少两个参考节点的网络距离的目标值,以及至少两个参考节点在网络坐标系统中的坐标,确定待定位节点在网络坐标系统中的坐标,包括:待定位节点根据以下公式,确定待定位节点在网络坐标系统中的坐标:
其中,Ain表示待定位节点和至少两个参考节点的入距离的目标值,Aout表示待定位节点和至少两个参考节点的出距离的目标值,X表示待定位节点的用于计算出距离的坐标,Y表示待定位节点的用于计算入距离的坐标,Uout表示至少两个参考节点的用于计算入距离的坐标组成的向量,Vin表示至少两个参考节点的用于计算出距离的坐标组成的向量。
可选地,作为一个实施例,低秩矩阵中的每个元素大于或等于0。具体地,为了实现低秩矩阵中的每个元素大于或等于0的目的,在步骤530中,待定位节点可以以低秩矩阵中的每个元素大于或等于0为约束条件,对本地距离矩阵进行低秩稀疏分解,得到低秩矩阵。
低秩矩阵中的元素记录的是网络坐标系统中的网络距离,网络距离表示网络延时、网络带宽等可测量的物理量,这些物理量均具有非负性。本发明实施例将低秩矩阵中的每个元素大于或等于0作为约束条件,对本地距离矩阵进行低秩稀疏分解,保证了低秩矩阵中的每个元素为非负元素,即保证了
网络距离的非负性,从而提高了确定出的待定位节点的坐标准确性,进而提高了后续网络距离预测的准确性。
需要说明的是,本发明实施例对本地距离矩阵的低秩稀疏分解所采用的最优化模型不作具体限定,例如,可以采用如下最优化模型,对本地距离矩阵进行低秩稀疏分解:
其中,Q表示本地距离矩阵,A表示低秩矩阵,E表示稀疏矩阵,rank(A)表示矩阵A的秩,||E||0表示矩阵E的0范数,A≥0表示矩阵A中的每个元素大于或等于0。
又如,可以采用如下最优化模型,对本地距离矩阵进行低秩稀疏分解:
其中,Q表示本地距离矩阵,A表示低秩矩阵,E表示稀疏矩阵,矩阵A≥0表示矩阵A中的每个元素均大于或等于0,||A||*表示矩阵A的核范数,||E||1表示矩阵E的L1范数,λ是权值,且λ大于0。
进一步地,为了便于在更大的可行域内求解,可以引入松弛变量,即矩阵B,并将矩阵A≥0的约束修改为如下形式:
需要说明的是,本发明实施例的上述优化模型的求解方式可以有多种,例如,可以采用ALM算法,ADMM算法,迭代阈值算法等。
可选地,作为一个实施例,网络坐标系统是基于矩阵分解模型的网络坐标系统,低秩矩阵的秩小于或等于d,其中,d表示网络坐标系统的坐标的
维度。在基于矩阵分解模型的网络坐标系统中,节点包括两个坐标X,Y,X可以称为出向量,Y可以称为入向量,出向量和如向量的维度相同,d可以表示出向量或入向量的维度。
假设网络坐标系统包含M个节点,节点的出向量或入向量的维度为d,则全局距离矩阵其中,UM是M个节点的出向量组成的矩阵,VM是M个节点的入向量组成的矩阵。由于矩阵UM是M×d的矩阵,矩阵VM是d×M的矩阵,矩阵UM和矩阵VM的秩的最大值为d,因此,D的最大秩为d(需要说明的是,d一般远小于M)。本发明实施例中的本地距离矩阵是用来模拟全局距离矩阵,因此,本地距离矩阵的秩应该小于或等于d,但受到错误值和异常值的影响,本地距离矩阵的秩通常很高,需要对本地距离矩阵进行去错误值和异常值处理,得到低秩矩阵,本发明实施例以低秩矩阵的秩小于或等于d为约束条件,使得求解出的低秩矩阵更加符合实际情况。
需要说明的是,如果通过步骤510获取到本地距离矩阵中的全部元素的取值,则目标矩阵的全部元素可以为0;如果通过步骤510未获取到本地距离矩阵中的全部元素的取值(本发明实施例将这种情况称为元素信息的缺失),则可以为未获取到取值的元素赋予默认值,如0,从而将本地距离矩阵填补完成,以便能够进行后续的低秩稀疏分解。在这种情况下,为了解决上述信息缺失问题,本发明实施例可以引入目标矩阵,下面对目标矩阵进行详细描述。
可选地,作为一个实施例,由于步骤510中确定出的是本地距离矩阵的至少部分元素(下称目标元素)的取值,可以将本地距离矩阵设置为等于低秩矩阵、稀疏矩阵和目标矩阵之和,且目标矩阵的该至少部分元素的取值为0。具体地,为了实现本地距离矩阵设置为等于低秩矩阵、稀疏矩阵和目标矩阵之和,且目标矩阵的目标元素的取值为0的目的,在步骤530中,待定位节点可以以本地距离矩阵等于低秩矩阵、稀疏矩阵和目标矩阵之和,且目标矩阵的目标元素等于0为约束条件,对本地距离矩阵进行低秩稀疏分解。
目标矩阵的目标元素的取值为0,相当于在低秩稀疏分解过程中,目标矩阵在目标元素上不起作用,如果本地距离矩阵中的某个元素对应的两个节点的网络距离未知,本发明实施例对目标矩阵在该元素的取值不作限定,相当于目标矩阵仅对本地距离矩阵中的信息缺失部分对应的元素起作用,从而在存在信息缺失问题的情况下,仍可以对本地距离矩阵进行低秩稀疏分解,提高了算法的鲁棒性。
具体地,可以通过如下公式对本地距离矩阵进行低秩稀疏分解:
其中,Q表示本地距离矩阵,A表示低秩矩阵,E表示稀疏矩阵,G表示目标矩阵,π(G)=0表示目标矩阵的目标元素中的元素等于0,矩阵B≥0表示矩阵B中的每个元素均大于或等于0,||A||*表示矩阵A的核范数,||E||1表示矩阵E的L1范数,λ是权值,且λ大于0。
本发明实施例对步骤510的实现方式,即本地距离矩阵的构建方式不作具体限定,下面进行详细描述。
可选地,在一些实施例中,步骤510可包括:本地距离矩阵还包含第二元素集合,本地距离矩阵中的第二元素集合中的元素用于记录至少两个参考节点之间的网络距离的初始值,步骤510可包括:待定位节点测量待定位节点和至少两个参考节点的网络距离的初始值,作为本地距离矩阵中的第一元素集合中的元素的取值;待定位节点根据至少两个参考节点在网络坐标系统中的坐标,确定至少两个参考节点之间的网络距离的初始值,作为本地距离矩阵中的第二元素集合中的元素的取值。
本发明实施例利用参考节点在网络坐标系统中的坐标确定参考节点之间的网路距离,并将该网络距离作为参考节点之间的网络距离的初始值,记
录在本地距离矩阵中,基于坐标确定网络距离的方式实现简单,能够简化本地距离矩阵的构建过程,提高计算效率。
下面结合具体例子,更加详细地描述本发明实施例。应注意,图6至图9的例子仅仅是为了帮助本领域技术人员理解本发明实施例,而非要将本发明实施例限于所例示的具体数值或具体场景。本领域技术人员根据所给出的图6至图9的例子,显然可以进行各种等价的修改或变化,这样的修改或变化也落入本发明实施例的范围内。
图6是本发明实施提供的用于确定节点坐标的流程的示意图。应理解,图6示出的处理步骤或操作仅是示例,本发明实施例还可以执行其它操作或者图6中的各种操作的变形。此外,图6中的各个步骤可以按照与图6呈现的不同的顺序来执行,并且有可能并非要执行图6中的全部操作。图6的方法可以由网络坐标系统中的任意一个节点执行,该节点即可对应于上文中的待定位节点。图6是以基于矩阵分解模型的网络坐标系统,每个节点的坐标包括X(出向量)和Y(入向量)为例进行举例说明的,但本发明实施例不限于此,还可以是其他网络坐标系统,如基于欧式模型的网络坐标系统。此外,在图6的实施例中,为了减少系统的通信开销,可以规定每个节点仅可以选取K个参考节点进行通信和网络距离的测量,K可以是大于1的整数。
图6的方法包括:
602、节点对其在网络坐标系统中的坐标(下称本地坐标)进行初始化。
例如,网络坐标系统中的每个节点可以随机初始化本地坐标X,Y。具体地,可以先设置X或Y的维度d,然后随机生成坐标X,Y的值,并将生成的坐标存储在本地。
604、节点选取K个参考节点。
例如,节点可以随机选择K个参考节点(K可以是预先设定的参考,即可以规定每个节点可以与K个参考节点进行通信,以降低通信开销),并将参考节点的信息存储在本地。参考节点的信息可以包括访问参考节点所需的
信息,如参考节点的网际协议(Internet Protocol,IP)地址。具体地,可以将网络坐标系统中的某个节点作为服务器,存储网络坐标系统中的节点的路由信息,节点可以基于服务器中存储的路由信息选取参考节点,也可以按其它方式自主寻找参考节点。步骤602-604可以称为初始化阶段。
606、节点判断是否第一次测量网络距离,或是否需要更新网络距离。
如果是,则执行步骤608;如果不是,则执行步骤610。
608、节点测量与K个参考节点之间的网络距离。
具体地,节点测量与K个参考节点之间的距离Dout(出距离)和Din(入距离),两个节点之间的网络距离可以表示两个节点之间的网络时延或网络带宽等物理量。
610、节点与K个参考节点进行坐标交换。
具体地,节点可以将自己的坐标X,Y发送给K个参考节点,同时接收K个参考节点的坐标,并基于K个参考节点的坐标构成坐标向量Uout和Vin,并将其存储在本地,其中,Uout是K个参考节点的X坐标组成的向量,Vin是K个参考节点的Y坐标组成的向量。
步骤606-610可以称为数据收集阶段,经过步骤606-610,得到了Dout、Din、Uout和Vin等信息。Dout表示从节点到K个参考节点的网络距离,即出距离,Din表示K个参考节点到节点的网络距离,即入距离。网络距离本身是实际的物理量,如延时或带宽。Dout对应的是节点的出向量X乘以Vin,Din对应的是节点的入向量Y乘以Uout。
需要说明的是,在一些实施例中,节点不但可以选取一跳参考节点(即上述K个参考节点),还可以选取N跳参考节点(即参考节点的参考节点)。节点选取N跳参考节点的目的是为了计算更多节点之间的网络距离,以增大后续构建出的本地距离矩阵中的元素的个数,使其更加接近网络坐标系统的全局距离矩阵。但为了不破坏每个节点与K个参考节点通信的规定,计算N跳参考节点相关的网络距离所需的信息可以从一跳参考节点获取。以图7为
例,v1节点的一跳参考节点可以是v2-v6,其中v2的参考节点包括v7和v8,v3的参考节点包括v9和v10,依次类推。节点v1可以选择v7-v16作为2跳参考节点,节点v1从一跳参考节点获取二跳参考节点的坐标,并可以基于一跳参考节点和二跳参考节点的坐标确定它们之间的网络距离。需要说明的是,选取N跳参考节点的步骤为可选步骤,实际中,每个节点基于该节点和K个参考节点即可构建出本地距离矩阵。
612、节点构建本地距离矩阵Q。
网络坐标系统根据前面两个阶段得到的节点本身的坐标X和Y,K个参考节点的坐标向量Uout和Vin,节点与K个参考节点的距离Dout和Din,通过下式构建本地距离矩阵Q:
其中c=XYT,本地距离矩阵中记录的任意两个节点之间的网络距离可以作为两个节点的网络距离的初始值,Dout和对应的元素组成的集合即为上文描述的第一元素集合,第一元素集合中的元素记录的是信息即为步骤608测量获得的节点与K个参考节点的网络距离的初始值。
614、节点对本地距离矩阵Q进行低秩稀疏分解,得到低秩矩阵A。
上文已经指出,基于矩阵分解模型的网络坐标系统的全局距离矩阵的秩不会超过入向量或出向量的维度d,本发明实施例中的本地距离矩阵Q是全局距离矩阵D的子矩阵,可以看成是全局距离矩阵D的近似,其秩一般也不会超过d。但是,受到错误值和异常值的影响,本地距离矩阵Q的秩往往远远超过d。所以,需要对本地距离矩阵Q进行低秩稀疏分解,从本地距离矩阵Q中抽取低秩矩阵A,并基于低秩矩阵A中的节点和参考节点之间的网络距离的取值拟合节点的坐标,使得拟合出的坐标更加准确。
首先以本地距离矩阵Q为输入,将低秩矩阵A、稀疏矩阵E作为最优化变量(应理解,低秩矩阵A和稀疏矩阵E均是与本地距离矩阵Q大小相同的矩阵),建立最优化模型。
为了在更大的可行域内进行求解,可以引入矩阵B,作为松弛变量。为了能够处理信息缺失问题,可以引入目标矩阵,即矩阵G(目标矩阵的作用参见前文描述,此处不再详述),可以将以上最优化模型修改为成如下多目标最优化模型:
最后,可以使用ALM算法求解该多目标最优化模型,求得的低秩部分A,本发明实施例可以将基于ALM算法求解上述最优化模型的方法称为鲁棒非负矩阵完成(Robust Non-negative Matrix Completion,RNMC)方法。以上多目标最优化模型的求解过程详见图7。
616、确定节点的坐标。
经过步骤614得到的低秩矩阵A可以视为已经去除了错误值和异常值之后的本地距离矩阵,低秩矩阵A的第一元素集合记录的是节点和K个参考节点之间的网络距离的目标值,包括节点和K个参考节点的出距离的目标值Aout,该节点和K个参考节点的入距离的目标值Ain。可以这样理解,本发明实施例并非让与的乘积等于本地距离矩阵Q,而是让与的乘积等于低秩矩阵A,即:
然后,可以基于非负约束的最小二乘计算节点的坐标X和Y,并利用计算出的结果更新经过步骤602得到的坐标X和Y。
具体地,可以利用下式进行非负约束的最小而成拟合:
618、判断是否更新坐标。
如果得到的结果满足预设的条件,则无需继续更新,例如,坐标更新次数达到一定的阈值,或连续两次更新得到的坐标之差小于预设阈值,则无需继续更新,执行步骤620;如果不满足预设的条件,则返回步骤606,继续更新坐标。
图8是低秩稀疏分解算法的流程图。图8的方法包括:
802、建立拉格朗日函数f。
具体地,可以引入两个变量:矩阵B和矩阵G(其中矩阵B为松弛变量,矩阵G为目标矩阵,用于处理信息缺失问题),相应地,可以引入两个拉格朗日乘子W和Z,以建立拉格朗日函数f:
其中,<·>表示两个矩阵的弗罗贝尼乌斯(Frobenius)内积,μ,ν表示惩罚参数,且μ,ν均为正数,||·||F表示矩阵的Frobenius范数。
804、设置A、E、B、G、μ和ν的初始值,设置最优化完成条件。
具体地,A、E、B、G、μ和ν的初始值的设置方式可以有多种,本发明实施例对此不作具体限定,例如,可以将A、E、B、G中的元素的初始值均设置为0,拉格朗日乘子W和Z的初始值也可设置为0,惩罚参数μ和ν的初始值可以设置为大于0的任意值。
然后设置最优化完成条件如下:
其中,B≥0表示B中的每个元素均大于或等于0。
806、更新A、E、B、G。
步骤806的实现方式详见图9。
808、根据A=B和Q=A+E的残差更新W和Z并以固定倍数增大μ和ν。
810、判断是否满足收敛条件。
如果满足最优化完成条件,则执行步骤812;如果不满足最优化完成条件,则执行步骤806,继续优化。应理解,最优化条件可以是f函数连续两次迭代的函数值的差异小于预设阈值,或迭代次数达到预设的阈值。
812、结束。
图9是图8中的步骤806的详细流程图。
902、计算低秩矩阵A。
例如,可以使用低秩软阈值法求解低秩矩阵A。
904、计算稀疏矩阵E。
例如,可以使用稀疏软阈值法求解稀疏矩阵E。
906、计算矩阵B。
具体地,B取原值和零的最大值。
908、计算矩阵G。
具体地,G在Ω位置保持为零,在Ω外保持为残差的相反数,Ω是本地距离矩阵Q中的网络距离已知的元素对应的位置。
910、判断是否满足收敛条件。
如果满足收敛条件,则执行步骤912;如果不满足收敛条件,则从步骤902开始,继续循环。收敛条件可以是计算结果满足卡罗需-库恩-塔克(Karush-Kuhn-Tucker,KKT)条件,也可以是迭代次数达到预设阈值。
912、结束。
下面对本发明的装置实施例进行描述,由于装置实施例可以执行上述方法,因此未详细描述的部分可以参见前面各方法实施例。
图10是本发明实施例提供的用于预测网络距离的装置示意性结构图。图10的装置1000为所述网络坐标系统中的待定位节点,所述装置1000包
括:
第一确定单元1010,用于与至少两个参考节点进行通信,以确定本地距离矩阵中的至少部分元素的取值,所述本地距离矩阵中的一个元素Qij用于记录所述本地距离矩阵的第i行对应的节点和第j列对应的节点的网络距离的初始值,所述待定位节点和所述至少两个参考节点的网络距离的初始值记录在所述本地距离矩阵中的第一元素集合中,i、j为大于或等于0的整数;
构建单元1020,用于根据所述本地距离矩阵中的至少部分元素的取值,构建所述本地距离矩阵;
分解单元1030,用于对所述本地距离矩阵进行低秩稀疏分解,得到低秩矩阵;
第一获取单元1040,用于获取所述低秩矩阵的第一元素集合中的元素的取值,作为所述待定位节点和所述至少两个参考节点的网络距离的目标值;
第二获取单元1050,用于与所述至少两个参考节点进行通信,以获取所述至少两个参考节点在所述网络坐标系统中的坐标;
第二确定单元1060,用于根据所述待定位节点和所述至少两个参考节点的网络距离的目标值,以及所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述待定位节点在所述网络坐标系统中的坐标,所述待定位节点在所述网络坐标系统中的坐标用于预测所述待定位节点与目标节点的网络距离,所述目标节点是所述网络坐标系统中的除所述待定位节点以外的任意节点。
可选地,在一些实施例中,所述低秩矩阵的每个元素大于或等于0。
可选地,在一些实施例中,所述本地距离矩阵等于所述低秩矩阵、稀疏矩阵和目标矩阵之和,且所述目标矩阵的所述至少部分元素的取值为0。
可选地,在一些实施例中,所述分解单元1030具体用于根据以下最优化模型,对所述本地距离矩阵进行低秩稀疏分解,得到所述低秩矩阵:
其中,Q表示所述本地距离矩阵,A表示所述低秩矩阵,E表示稀疏矩阵,G表示所述目标矩阵,π(G)=0表示所述目标矩阵的所述至少部分元素的取值为0,矩阵B≥0表示所述矩阵B中的每个元素均大于或等于0,||A||*表示矩阵A的核范数,||E||1表示矩阵E的L1范数,λ是权值,且λ大于0。
可选地,在一些实施例中,所述本地距离矩阵还包含第二元素集合,所述本地距离矩阵中的第二元素集合中的元素用于记录所述至少两个参考节点之间的网络距离的初始值,所述第一确定单元1010具体用于测量所述待定位节点和所述至少两个参考节点的网络距离的初始值,作为所述本地距离矩阵中的第一元素集合中的元素的取值;根据所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述至少两个参考节点之间的网络距离的初始值,作为所述本地距离矩阵中的第二元素集合中的元素的取值。
可选地,在一些实施例中,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述低秩矩阵的秩小于或等于d,其中,d表示所述网络坐标系统的坐标的维度。
可选地,在一些实施例中,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述待定位节点和所述至少两个参考节点的网络距离的目标值包括所述待定位节点和所述至少两个参考节点的入距离的目标值和出距离的目标值,所述入距离用于指示所述至少两个参考节点到所述待定位节点的网络距离,所述出距离用于指示所述待定位节点到所述至少两个参考节点的网络距离,所述第二确定单元1060具体用于根据以下公式,确定所述待定位节点在所述网络坐标系统中的坐标:
其中,Ain表示所述待定位节点和所述至少两个参考节点的入距离的目标值,Aout表示所述待定位节点和所述至少两个参考节点的出距离的目标值,X表示所述待定位节点的用于计算所述出距离的坐标,Y表示所述待定位节点的用于计算所述入距离的坐标,Uout表示所述至少两个参考节点的用于计算所述入距离的坐标组成的向量,Vin表示所述至少两个参考节点的用于计算所述出距离的坐标组成的向量。
可选地,在一些实施例中,所述装置还包括:发送单元,用于向所述网络坐标系统中的所述目标节点发送请求信息,所述请求信息用于请求所述目标节点在所述网络坐标系统中的坐标;预测单元,用于根据所述待定位节点在所述网络坐标系统中的坐标和所述目标节点在所述网络坐标系统中的坐标,预测所述待定位节点和所述目标节点之间的网络距离。
可选地,在一些实施例中,所述网络坐标系统中的两个节点之间的网络距离用于衡量所述两个节点之间的网络的质量。
图11是本发明实施例提供的用于预测网络距离的节点示意性结构图。图11的节点1100为所述网络坐标系统中的待定位节点,节点1100包括存储器1110,处理器1120和收发器1130(例如,可以是网卡),收发器1130能够实现图10中的第一确定单元1010和第二获取单元1050的与通信相关的功能,处理器1120能够实现图10中的除所述通信相关的功能之外的剩余功能,如构建单元1020、分解单元1030、第一获取单元1040、第二确定单元1060的功能,以及第一确定单元1010中的除通信相关功能之外的剩余功能。
具体地,存储器1110用于存储程序,处理器1120用于执行所述存储器1110中存储的程序,在所述程序被执行时,所述处理器1220通过所述收发器1130与至少两个参考节点进行通信,以确定本地距离矩阵中的至少部分元素的取值,所述本地距离矩阵中的一个元素Qij用于记录所述本地距离矩
阵的第i行对应的节点和第j列对应的节点的网络距离的初始值,所述待定位节点和所述至少两个参考节点的网络距离的初始值记录在所述本地距离矩阵中的第一元素集合中,i、j为大于或等于0的整数;根据所述本地距离矩阵中的至少部分元素的取值,构建所述本地距离矩阵;对所述本地距离矩阵进行低秩稀疏分解,得到低秩矩阵;获取所述低秩矩阵的第一元素集合中的元素的取值,作为所述待定位节点和所述至少两个参考节点的网络距离的目标值;与所述至少两个参考节点进行通信,以获取所述至少两个参考节点在所述网络坐标系统中的坐标;根据所述待定位节点和所述至少两个参考节点的网络距离的目标值,以及所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述待定位节点在所述网络坐标系统中的坐标,所述待定位节点在所述网络坐标系统中的坐标用于预测所述待定位节点与目标节点的网络距离,所述目标节点是所述网络坐标系统中的除所述待定位节点以外的任意节点。
可选地,在一些实施例中,所述低秩矩阵的每个元素大于或等于0。
可选地,在一些实施例中,所述本地距离矩阵等于所述低秩矩阵、稀疏矩阵和目标矩阵之和,且所述目标矩阵的所述至少部分元素的取值为0。
可选地,在一些实施例中,处理器1120具体用于根据以下最优化模型,对所述本地距离矩阵进行低秩稀疏分解,得到所述低秩矩阵:
其中,Q表示所述本地距离矩阵,A表示所述低秩矩阵,E表示稀疏矩阵,G表示所述目标矩阵,π(G)=0表示所述目标矩阵的所述至少部分元素的取值为0,矩阵B≥0表示所述矩阵B中的每个元素均大于或等于0,||A||*表示矩阵A的核范数,||E||1表示矩阵E的L1范数,λ是权值,且λ大于0。
可选地,在一些实施例中,所述本地距离矩阵还包含第二元素集合,所述本地距离矩阵中的第二元素集合中的元素用于记录所述至少两个参考节点之间的网络距离的初始值,处理器1120具体用于测量所述待定位节点和所述至少两个参考节点的网络距离的初始值,作为所述本地距离矩阵中的第一元素集合中的元素的取值;根据所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述至少两个参考节点之间的网络距离的初始值,作为所述本地距离矩阵中的第二元素集合中的元素的取值。
可选地,在一些实施例中,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述低秩矩阵的秩小于或等于d,其中,d表示所述网络坐标系统的坐标的维度。
可选地,在一些实施例中,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述待定位节点和所述至少两个参考节点的网络距离的目标值包括所述待定位节点和所述至少两个参考节点的入距离的目标值和出距离的目标值,所述入距离用于指示所述至少两个参考节点到所述待定位节点的网络距离,所述出距离用于指示所述待定位节点到所述至少两个参考节点的网络距离,处理器1120具体用于根据以下公式,确定所述待定位节点在所述网络坐标系统中的坐标:
其中,Ain表示所述待定位节点和所述至少两个参考节点的入距离的目标值,Aout表示所述待定位节点和所述至少两个参考节点的出距离的目标值,X表示所述待定位节点的用于计算所述出距离的坐标,Y表示所述待定位节点的用于计算所述入距离的坐标,Uout表示所述至少两个参考节点的用于计算所述入距离的坐标组成的向量,Vin表示所述至少两个参考节点的用于计算所述出距离的坐标组成的向量。
可选地,在一些实施例中,所述收发器1130还用于向所述网络坐标系
统中的所述目标节点发送请求信息,所述请求信息用于请求所述目标节点在所述网络坐标系统中的坐标;所述处理器1120还用于根据所述待定位节点在所述网络坐标系统中的坐标和所述目标节点在所述网络坐标系统中的坐标,预测所述待定位节点和所述目标节点之间的网络距离。
可选地,在一些实施例中,所述网络坐标系统中的两个节点之间的网络距离用于衡量所述两个节点之间的网络的质量。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,
也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (18)
- 一种用于预测网络距离的方法,其特征在于,包括:网络坐标系统中的待定位节点与至少两个参考节点进行通信,以确定本地距离矩阵中的至少部分元素的取值,所述本地距离矩阵中的一个元素Qij用于记录所述本地距离矩阵的第i行对应的节点和第j列对应的节点的网络距离的初始值,所述待定位节点和所述至少两个参考节点的网络距离的初始值记录在所述本地距离矩阵中的第一元素集合中,i、j为大于或等于0的整数;所述待定位节点根据所述本地距离矩阵中的至少部分元素的取值,构建所述本地距离矩阵;所述待定位节点对所述本地距离矩阵进行低秩稀疏分解,得到低秩矩阵;所述待定位节点获取所述低秩矩阵的第一元素集合中的元素的取值,作为所述待定位节点和所述至少两个参考节点的网络距离的目标值;所述待定位节点与所述至少两个参考节点进行通信,以获取所述至少两个参考节点在所述网络坐标系统中的坐标;所述待定位节点根据所述待定位节点和所述至少两个参考节点的网络距离的目标值,以及所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述待定位节点在所述网络坐标系统中的坐标,所述待定位节点在所述网络坐标系统中的坐标用于预测所述待定位节点与目标节点的网络距离,所述目标节点是所述网络坐标系统中的除所述待定位节点以外的任意节点。
- 如权利要求1所述的方法,其特征在于,所述低秩矩阵的每个元素大于或等于0。
- 如权利要求1或2所述的方法,其特征在于,所述本地距离矩阵等于所述低秩矩阵、稀疏矩阵和目标矩阵之和,且所述目标矩阵的所述至少部分元素的取值为0。
- 如权利要求1-3中任一项所述的方法,其特征在于,所述待定位节 点对所述本地距离矩阵进行低秩稀疏分解,得到低秩矩阵,包括:所述待定位节点根据以下最优化模型,对所述本地距离矩阵进行低秩稀疏分解,得到所述低秩矩阵:其中,Q表示所述本地距离矩阵,A表示所述低秩矩阵,E表示稀疏矩阵,G表示所述目标矩阵,π(G)=0表示所述目标矩阵的所述至少部分元素的取值为0,矩阵B≥0表示所述矩阵B中的每个元素均大于或等于0,||A||*表示矩阵A的核范数,||E||1表示矩阵E的L1范数,λ是权值,且λ大于0。
- 如权利要求1-4中任一项所述的方法,其特征在于,所述本地距离矩阵还包含第二元素集合,所述本地距离矩阵中的第二元素集合中的元素用于记录所述至少两个参考节点之间的网络距离的初始值,所述确定本地距离矩阵中的至少部分元素的取值,包括:所述待定位节点测量所述待定位节点和所述至少两个参考节点的网络距离的初始值,作为所述本地距离矩阵中的第一元素集合中的元素的取值;所述待定位节点根据所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述至少两个参考节点之间的网络距离的初始值,作为所述本地距离矩阵中的第二元素集合中的元素的取值。
- 如权利要求1-5中任一项所述的方法,其特征在于,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述低秩矩阵的秩小于或等于d,其中,d表示所述网络坐标系统的坐标的维度。
- 如权利要求1-6中任一项所述的方法,其特征在于,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述待定位节点和所述至少两个参考节点的网络距离的目标值包括所述待定位节点和所述至少两个参考节 点的入距离的目标值和出距离的目标值,所述入距离用于指示所述至少两个参考节点到所述待定位节点的网络距离,所述出距离用于指示所述待定位节点到所述至少两个参考节点的网络距离,所述待定位节点根据所述待定位节点和所述至少两个参考节点的网络距离的目标值,以及所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述待定位节点在所述网络坐标系统中的坐标,包括:所述待定位节点根据以下公式,确定所述待定位节点在所述网络坐标系统中的坐标:其中,Ain表示所述待定位节点和所述至少两个参考节点的入距离的目标值,Aout表示所述待定位节点和所述至少两个参考节点的出距离的目标值,X表示所述待定位节点的用于计算所述出距离的坐标,Y表示所述待定位节点的用于计算所述入距离的坐标,Uout表示所述至少两个参考节点的用于计算所述入距离的坐标组成的向量,Vin表示所述至少两个参考节点的用于计算所述出距离的坐标组成的向量。
- 如权利要求1-7中任一项所述的方法,其特征在于,所述方法还包括:所述待定位节点向所述网络坐标系统中的所述目标节点发送请求信息,所述请求信息用于请求所述目标节点在所述网络坐标系统中的坐标;所述待定位节点根据所述待定位节点在所述网络坐标系统中的坐标和所述目标节点在所述网络坐标系统中的坐标,预测所述待定位节点和所述目标节点之间的网络距离。
- 如权利要求1-8中任一项所述的方法,其特征在于,所述网络坐标系统中的两个节点之间的网络距离用于衡量所述两个节点之间的网络的质量。
- 一种用于预测网络距离的装置,其特征在于,所述装置为网络坐标系统中的待定位节点,所述装置包括:第一确定单元,用于与至少两个参考节点进行通信,以确定本地距离矩阵中的至少部分元素的取值,所述本地距离矩阵中的一个元素Qij用于记录所述本地距离矩阵的第i行对应的节点和第j列对应的节点的网络距离的初始值,所述待定位节点和所述至少两个参考节点的网络距离的初始值记录在所述本地距离矩阵中的第一元素集合中,i、j为大于或等于0的整数;构建单元,用于根据所述本地距离矩阵中的至少部分元素的取值,构建所述本地距离矩阵;分解单元,用于对所述本地距离矩阵进行低秩稀疏分解,得到低秩矩阵;第一获取单元,用于获取所述低秩矩阵的第一元素集合中的元素的取值,作为所述待定位节点和所述至少两个参考节点的网络距离的目标值;第二获取单元,用于与所述至少两个参考节点进行通信,以获取所述至少两个参考节点在所述网络坐标系统中的坐标;第二确定单元,用于根据所述待定位节点和所述至少两个参考节点的网络距离的目标值,以及所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述待定位节点在所述网络坐标系统中的坐标,所述待定位节点在所述网络坐标系统中的坐标用于预测所述待定位节点与目标节点的网络距离,所述目标节点是所述网络坐标系统中的除所述待定位节点以外的任意节点。
- 如权利要求10所述的装置,其特征在于,所述低秩矩阵的每个元素大于或等于0。
- 如权利要求10或11所述的装置,其特征在于,所述本地距离矩阵等于所述低秩矩阵、稀疏矩阵和目标矩阵之和,且所述目标矩阵的所述至少部分元素的取值为0。
- 如权利要求10-12中任一项所述的装置,其特征在于,所述分解单元具体用于根据以下最优化模型,对所述本地距离矩阵进行低秩稀疏分解, 得到所述低秩矩阵:其中,Q表示所述本地距离矩阵,A表示所述低秩矩阵,E表示稀疏矩阵,G表示所述目标矩阵,π(G)=0表示所述目标矩阵的所述至少部分元素的取值为0,矩阵B≥0表示所述矩阵B中的每个元素均大于或等于0,||A||*表示矩阵A的核范数,||E||1表示矩阵E的L1范数,λ是权值,且λ大于0。
- 如权利要求10-13中任一项所述的装置,其特征在于,所述本地距离矩阵还包含第二元素集合,所述本地距离矩阵中的第二元素集合中的元素用于记录所述至少两个参考节点之间的网络距离的初始值,所述第一确定单元具体用于测量所述待定位节点和所述至少两个参考节点的网络距离的初始值,作为所述本地距离矩阵中的第一元素集合中的元素的取值;根据所述至少两个参考节点在所述网络坐标系统中的坐标,确定所述至少两个参考节点之间的网络距离的初始值,作为所述本地距离矩阵中的第二元素集合中的元素的取值。
- 如权利要求10-14中任一项所述的装置,其特征在于,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述低秩矩阵的秩小于或等于d,其中,d表示所述网络坐标系统的坐标的维度。
- 如权利要求10-15中任一项所述的装置,其特征在于,所述网络坐标系统是基于矩阵分解模型的网络坐标系统,所述待定位节点和所述至少两个参考节点的网络距离的目标值包括所述待定位节点和所述至少两个参考节点的入距离的目标值和出距离的目标值,所述入距离用于指示所述至少两个参考节点到所述待定位节点的网络距离,所述出距离用于指示所述待定位节点到所述至少两个参考节点的网络距离,所述第二确定单元具体用于根据 以下公式,确定所述待定位节点在所述网络坐标系统中的坐标:其中,Ain表示所述待定位节点和所述至少两个参考节点的入距离的目标值,Aout表示所述待定位节点和所述至少两个参考节点的出距离的目标值,X表示所述待定位节点的用于计算所述出距离的坐标,Y表示所述待定位节点的用于计算所述入距离的坐标,Uout表示所述至少两个参考节点的用于计算所述入距离的坐标组成的向量,Vin表示所述至少两个参考节点的用于计算所述出距离的坐标组成的向量。
- 如权利要求10-16中任一项所述的装置,其特征在于,所述装置还包括:发送单元,用于向所述网络坐标系统中的所述目标节点发送请求信息,所述请求信息用于请求所述目标节点在所述网络坐标系统中的坐标;预测单元,用于根据所述待定位节点在所述网络坐标系统中的坐标和所述目标节点在所述网络坐标系统中的坐标,预测所述待定位节点和所述目标节点之间的网络距离。
- 如权利要求10-17中任一项所述的装置,其特征在于,所述网络坐标系统中的两个节点之间的网络距离用于衡量所述两个节点之间的网络的质量。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2016/101309 WO2018058629A1 (zh) | 2016-09-30 | 2016-09-30 | 用于预测网络距离的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108605305A true CN108605305A (zh) | 2018-09-28 |
CN108605305B CN108605305B (zh) | 2023-05-05 |
Family
ID=61763051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680019916.9A Active CN108605305B (zh) | 2016-09-30 | 2016-09-30 | 用于预测网络距离的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10749754B2 (zh) |
EP (1) | EP3509366B1 (zh) |
CN (1) | CN108605305B (zh) |
WO (1) | WO2018058629A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110445652A (zh) * | 2019-08-08 | 2019-11-12 | 北京众享比特科技有限公司 | 网络距离预测方法、装置、终端主机和介质 |
CN116781595A (zh) * | 2023-08-25 | 2023-09-19 | 苏州海加网络科技股份有限公司 | 先验聚类网络坐标系统优化方法、装置及计算机存储介质 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11037330B2 (en) * | 2017-04-08 | 2021-06-15 | Intel Corporation | Low rank matrix compression |
CN108957395B (zh) * | 2018-04-18 | 2022-06-10 | 江苏省送变电有限公司 | 一种隧道内噪声免疫的移动目标三维定位方法 |
CN111432505B (zh) * | 2020-03-26 | 2020-11-03 | 深圳市腾远智拓电子有限公司 | 一种基于WiFi的无线组网传输系统 |
CN116017281B (zh) * | 2022-12-30 | 2023-10-24 | 深圳市中承科技有限公司 | 一种基于超宽带通信技术的室内定位方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070005292A1 (en) * | 2005-06-22 | 2007-01-04 | Jin Holly H | Scalable sensor localization for wireless sensor networks |
CN101350635A (zh) * | 2008-09-05 | 2009-01-21 | 清华大学 | 稀疏测量集上基于最短路径的传感器网络节点自定位方法 |
US20130096922A1 (en) * | 2011-10-17 | 2013-04-18 | Fondation de I'Institut de Recherche Idiap | Method, apparatus and computer program product for determining the location of a plurality of speech sources |
CN104968047A (zh) * | 2015-06-30 | 2015-10-07 | 中国地质大学(武汉) | 一种面向移动网络中节点网络距离的预测方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6148211A (en) * | 1997-09-05 | 2000-11-14 | Motorola, Inc. | Method and system for estimating a subscriber's location in a cluttered area |
US7948917B2 (en) | 2005-10-27 | 2011-05-24 | Alcatel-Lucent Usa Inc. | Routing internet communications using network coordinates |
US8229017B1 (en) * | 2007-12-13 | 2012-07-24 | Marvell International Ltd. | Transmit beamforming utilizing channel estimation matrix decomposition feedback in a wireless MIMO communication system |
US8326324B2 (en) * | 2008-01-08 | 2012-12-04 | Wi-Lan, Inc. | Systems and methods for location positioning within radio access systems |
WO2010035565A1 (ja) * | 2008-09-29 | 2010-04-01 | 日本電気株式会社 | 距離メトリック推定システム、座標算出ノード、距離メトリック推定方法及びプログラム |
US8144611B2 (en) | 2009-02-10 | 2012-03-27 | Microsoft Corporation | Network coordinate systems using IP information |
CN102143576B (zh) * | 2010-01-29 | 2014-12-10 | 中兴通讯股份有限公司 | 终端定位系统和终端定位方法 |
US8825813B2 (en) | 2010-12-28 | 2014-09-02 | Microsoft Corporation | Distributed network coordinate system based on network performance |
US9294875B2 (en) * | 2011-09-30 | 2016-03-22 | Electronics And Telecommunications Research Institute | Method for determining position of terminal in cellular mobile communication system |
CN104601385A (zh) * | 2013-10-31 | 2015-05-06 | 浙江大学 | 基于地理位置的WebService服务质量预测方法 |
US9392533B1 (en) * | 2013-12-03 | 2016-07-12 | Sprint Spectrum L.P. | Methods and systems for determining a position of a user equipment device in a multi-band wireless communication system |
CN103840985A (zh) * | 2014-02-28 | 2014-06-04 | 浙江大学 | 基于用户邻域的Web Service服务质量预测方法及装置 |
US9697656B2 (en) * | 2014-08-19 | 2017-07-04 | Sensormatic Electronics, LLC | Method and system for access control proximity location |
AU2014410620B2 (en) * | 2014-11-05 | 2018-07-05 | Huawei Technologies Co., Ltd. | Method and apparatus for obtaining location information |
US9986410B2 (en) * | 2014-11-06 | 2018-05-29 | Samsung Electronics Co., Ltd. | Terminal and distance estimation method thereof |
DE102014224797A1 (de) * | 2014-12-03 | 2016-06-09 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Positionsbestimmung von Sensorknoten eines Sensornetzwerkes |
KR102284044B1 (ko) * | 2015-09-10 | 2021-07-30 | 삼성전자주식회사 | 무선 통신 시스템에서 위치 추정 방법 및 장치 |
JP6676369B2 (ja) * | 2015-12-25 | 2020-04-08 | ローム株式会社 | サーマルプリントヘッドおよびサーマルプリンタ |
CN107526057A (zh) * | 2016-06-21 | 2017-12-29 | 中兴通讯股份有限公司 | 定位终端的方法及装置 |
US10425788B2 (en) * | 2018-02-08 | 2019-09-24 | King Fahd University Of Petroleum And Minerals | Equal distance different members node placement method and system |
-
2016
- 2016-09-30 EP EP16917379.6A patent/EP3509366B1/en active Active
- 2016-09-30 WO PCT/CN2016/101309 patent/WO2018058629A1/zh unknown
- 2016-09-30 CN CN201680019916.9A patent/CN108605305B/zh active Active
-
2019
- 2019-04-01 US US16/371,909 patent/US10749754B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070005292A1 (en) * | 2005-06-22 | 2007-01-04 | Jin Holly H | Scalable sensor localization for wireless sensor networks |
CN101350635A (zh) * | 2008-09-05 | 2009-01-21 | 清华大学 | 稀疏测量集上基于最短路径的传感器网络节点自定位方法 |
US20130096922A1 (en) * | 2011-10-17 | 2013-04-18 | Fondation de I'Institut de Recherche Idiap | Method, apparatus and computer program product for determining the location of a plurality of speech sources |
CN104968047A (zh) * | 2015-06-30 | 2015-10-07 | 中国地质大学(武汉) | 一种面向移动网络中节点网络距离的预测方法 |
Non-Patent Citations (2)
Title |
---|
JIE CHENG: "RNC: A high-precision Network Coordinate System" * |
李善仓、傅鹏、张德远: "无线传感器网络中的分布式节点定位方法" * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110445652A (zh) * | 2019-08-08 | 2019-11-12 | 北京众享比特科技有限公司 | 网络距离预测方法、装置、终端主机和介质 |
CN116781595A (zh) * | 2023-08-25 | 2023-09-19 | 苏州海加网络科技股份有限公司 | 先验聚类网络坐标系统优化方法、装置及计算机存储介质 |
CN116781595B (zh) * | 2023-08-25 | 2023-11-24 | 苏州海加网络科技股份有限公司 | 先验聚类网络坐标系统优化方法、装置及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20190229997A1 (en) | 2019-07-25 |
WO2018058629A1 (zh) | 2018-04-05 |
US10749754B2 (en) | 2020-08-18 |
EP3509366A1 (en) | 2019-07-10 |
EP3509366B1 (en) | 2020-11-11 |
CN108605305B (zh) | 2023-05-05 |
EP3509366A4 (en) | 2019-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108605305B (zh) | 用于预测网络距离的方法和装置 | |
WO2019090954A1 (zh) | 一种预测方法及终端、服务器 | |
Summers et al. | Distributed model predictive consensus via the alternating direction method of multipliers | |
Zhang et al. | Estimating network degree distributions under sampling: An inverse problem, with applications to monitoring social media networks | |
Chen et al. | Distributed cubature information filtering based on weighted average consensus | |
Goulet | Bayesian dynamic linear models for structural health monitoring | |
US10728105B2 (en) | Higher-order network embedding | |
Banerjee et al. | Using machine learning to assess short term causal dependence and infer network links | |
Ge et al. | Distributed H∞ filtering over sensor networks with heterogeneous Markovian coupling intercommunication delays | |
Necoara et al. | A random coordinate descent method on large-scale optimization problems with linear constraints | |
CN116681104B (zh) | 分布式空间图神经网络的模型建立及实现方法 | |
Fu et al. | GRAP: Grey risk assessment based on projection in ad hoc networks | |
US20130262661A1 (en) | Solving under-determined problems for networks | |
JPWO2018150798A1 (ja) | モデル推定システム、方法およびプログラム | |
CN110689110A (zh) | 处理交互事件的方法及装置 | |
CN104468272A (zh) | 流量矩阵的估计方法和装置 | |
Zhou et al. | Student's $ t $ VAR Modeling With Missing Data Via Stochastic EM and Gibbs Sampling | |
Aragues et al. | Feature-based map merging with dynamic consensus on information increments | |
US9754049B2 (en) | Characterizing success pathways in networked graphs | |
Ghadiri et al. | Improving the Bit Complexity of Communication for Distributed Convex Optimization | |
Wan et al. | Estimating modes of a complex dynamical network from impulse response data: Structural and graph‐theoretic characterizations | |
JP7024687B2 (ja) | データ分析システム、学習装置、方法、及びプログラム | |
JP6596794B2 (ja) | 品質劣化推定装置、品質劣化推定方法、及びプログラム | |
CN113255921A (zh) | 测量系统、方法、装置及设备 | |
Mahyar et al. | A low-cost sparse recovery framework for weighted networks under compressive sensing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |