通过网络执行分布式任务的方法与流程

文档序号:30711441发布日期:2022-07-10 16:02阅读:105来源:国知局
通过网络执行分布式任务的方法与流程

1.本发明涉及一种通过网络执行分布式任务的方法。本发明特别适用于需要限制网络内对任务有贡献的节点数量的应用。


背景技术:

2.随着诸如物联网等概念变得越来越常见,必须更加重视大规模公共网络中的数据隐私,以确保这些网络的安全,而免受数据盗窃的威胁。
3.大多数当前的分布式处理技术都致力于提高用于有限规模网络的算法的灵活性和收敛速度,而没有对信息共享的约束,也没有对预期信号隐私级别的概念。
4.这样的技术不适用于在无边界公共网络(例如,无边界公共无线传感器网络(wsn))中维护数据隐私。
5.在wsn内的分布式处理应用中,期望限制对分布式任务有贡献的节点数量。全球网络共识或路由汇总是用于分布式任务的标准方法。这样的技术有可能使远处的节点得到与查询节点附近的节点相同的估计。此外,这些技术通常无法防御不希望的节点对任务的加入。
6.这样的技术有可能遭受隐私缺乏,即,子网缺乏确定其共识或汇总估计而使外部节点不知道该估计或者使外部节点不可能强行加入该任务的能力。
7.各种方法尝试保留各个节点消息的隐私。然而,尚未解决聚合任务在不加约束的情况下通过网络散布的能力问题。
8.本发明的至少优选实施例的目的是解决上述缺点中的至少一些。附加的或替代性的目的是至少为公众提供有用的选择。


技术实现要素:

9.根据本发明的一个方面,一种在包括多个节点的网络上执行分布式任务的方法包括:多个网络节点观察数据;将第一线性码函数应用于由该多个网络节点中的至少一个网络节点观察到的数据以获得至少一个函数输出;将错误应用于该至少一个函数输出;从这些网络节点中选择的查询节点执行混合程序来聚合节点观察值,以获得第一组聚合值,直到满足停止标准为止;将第二线性码函数应用于该组聚合值以获得返回到它们的观察域的第二组聚合值;以及该查询节点输出该第二组聚合值。
10.本说明书中使用的术语

包括(comprising)’意指“至少部分由
……
组成”。当解释本说明书中的包含术语

包括(comprising)’的每个表述时,还可以存在除该词之后的那个或那些特征以外的特征。相关的术语诸如“包括(comprise)”和“被包括(comprises)”将以相同的方式进行解释。
11.在实施例中,当该查询节点具有来自最大数量的节点的聚合节点观察值时,这些停止标准被满足。
12.在实施例中,该方法进一步包括至少部分地根据汉明距离来确定该最大节点数
量。
13.在实施例中,该方法进一步包括至少部分地通过检测这些聚合节点观察值中的符号错误的阈值数量来确定该最大节点数量。
14.在实施例中,该方法进一步包括执行路由程序以确保这些聚合节点观察值不包括来自单个节点的多个观察值。
15.在实施例中,该路由程序包括树协议。
16.本发明在一方面包括几个步骤。这些步骤中的一个或多个相对于其他步骤中的每一个的关系、体现构造特征的装置、以及适于影响这些步骤的元素的组合和部件的布置都在以下详细披露内容中举例说明。
17.对于本发明所涉及的领域的技术人员而言,在本发明的构造上的许多改变以及多种广有差异的实施例和应用会自身显现,而不背离所附权利要求中定义的本发明的范围。本文中的披露和描述完全是说明性的,并且不意图进行任何意义上的限制。在本文提及具有本发明所涉及的领域中的已知等同物的特定整数时,这些已知等同物被视为被结合在本文中,如同单独阐述一样。
18.此外,当以马库什(markush)组的方式描述本发明的多个特征或方面时,在本领域内的技术人员将理解还以马库什组中任一个单独的成员或多个成员的子组的方式来对本发明进行描述。
19.如本文所使用的,名词之前的

(多个)’意指名词的复数和/或单数形式。
20.如本文所使用的,术语

和/或’意指

和’或

或’或者这两者。
21.意图是,提及本文披露的数字范围(例如1至10)也包含提及该范围内的所有有理数(例如1、1.1、2、3、3.9、4、5、6、6.5、7、8、9和10)还以及该范围内的任何有理数范围(例如2至8、1.5至5.5和3.1至4.7),因此,本文明确披露的所有范围的所有子范围都在此被明确地披露。这些仅是具体意图的示例,并且在所列举的最小值与最大值之间的数值的所有可能组合应被认为在本技术中以类似的方式被明确地陈述。
22.在本说明书中参考了专利说明书、其他外部文件、或其他信息来源,这通常是为了提供用于讨论本发明的特征的背景。除非另外明确声明,否则对这些外部文件或这种信息源的参考不应被解释为承认这些文件或这些信息来源在任何辖区内是现有技术或形成了本领域公共常识的一部分。
23.在本说明书的描述中,可能提及不在所附权利要求范围内的主题。该主题对于本领域技术人员来说应该是容易识别的,并且可以有助于如当前所附权利要求中定义地那样实践本发明。
24.尽管本发明广义上如上文所定义的,但本领域技术人员将理解本发明不限于此,并且本发明还包括以下描述给出示例的实施例。
附图说明
25.现在将仅参照附图通过示例的方式描述执行分布式任务的方法的优选形式,在附图中:
26.图1示出了本发明被配置为在其中操作的无边界公共无线传感器网络(wsn)的示例;
27.图2示出了图1中的节点的示例;
28.图3示出了由节点执行的一般处理任务的示例;
29.图4示出了由节点执行的特定处理任务的示例;
30.图5示出了用于执行图4的处理任务的步骤的方法的示例;以及
31.图6示出了由节点执行的特定处理任务的示例。
具体实施方式
32.图1示出了无边界公共无线传感器网络(wsn)100的示例。该网络100包括多个节点。节点的示例在102、104、106、108、110、112和114处示出。多个节点各自配备有位于其上的处理器、双向通信系统和用于进行特定信号处理任务的传感器。下面进一步描述节点配置的示例。
33.网络100或wsn内的节点被配置为使用这些节点相应的双向通信系统彼此通信。
34.那些配备有传感器的节点各自保存观察数据。当用户希望开始分布式任务时,用户选择节点,该节点此后将被认为是分布式任务的查询节点。出于实际原因和隐私原因,查询节点将任务散布到附近节点的子集。
35.在实施例中,分布式任务包括查询节点108。查询节点108(在图1中示出为节点i)将分布式任务散布或分配到附近的节点(例如,节点110、节点112和节点114)。节点108、110、112和114共同形成连接的子网络120。
36.在下文的符号中,形成wsn 100的一组节点被称为而形成子网络120的一组节点被称为其中
37.如下文将进一步描述的,子网络120协作解决分布式任务,同时还限制不在子网络120内的节点加入分布式任务的能力。子网络120外部的节点的示例包括节点102、104和106。
38.实际上,因为不需要通过整个公共网络100传播信息,所以小于网络100的任务子网络120允许执行更高效的计算。出于隐私目的,这种减少的信息传播距离意味着通过排除距离查询节点非常远的节点,可以更容易地保持预期的隐私级别。
39.图2示出了图1中的节点(例如,查询节点108)的示例。在实施例中,节点108包括或连接到传感器202、接收器204、发射器206和输出模块208。
40.在实施例中,传感器202被配置为执行特定信号处理任务。由传感器202执行的任务的一个示例是监测声学信号。
41.应当理解,传感器202是被配置用于数据采集的设备的一个示例。在其他实施例中,由远离查询节点108的位置的(多个)数据中心和/或(多个)计算机来计算数据。在这种情况下,网络100处理从(多个)数据中心和/或(多个)计算机获得的数据,此数据来源作为由传感器202获得数据的替代方案。
42.接收器204被配置为从网络100内的其他节点接收数据。在实施例中,接收器204被配置为从网络100内物理上靠近节点108的其他节点接收数据。在实施例中,物理上靠近节点108的节点被称为关于节点108的节点邻域。在实施例中,节点邻域包括从网络100和/或子网络120中选择的节点。
43.发射器206被配置为向网络100内的其他节点发射数据。为了清楚起见,接收器204和发射器206被示为分立的模块。应当理解,接收器204和发射器206可以提供为分立的模块或单个组合的模块。
44.在实施例中,输出模块208被配置为显示或以其他方式输出分配给查询节点108的查询结果。
45.查询节点108包括消息量化器210。在实施例中,消息量化器210被配置为接收来自传感器202的观察数据。观察数据被量化以产生消息
46.编码器212从消息量化器210接收消息。编码器212使用线性码来编码消息以产生码字
47.错误引擎214从编码器212接收码字并应用随机符号错误。例如,u(n,λ)是λ维离散错误向量,其中,每个维度的整数取自{0,

,n-1}。
48.聚合器218从错误引擎214接收包含错误的码字。
49.聚合器218还从接收器204接收码字,该接收器被配置为接收从网络100中的其他节点(例如,来自图1的节点110和节点102)发射的数据。如上所述,在实施例中,接收器204接收从节点108本地的节点邻域内的其他节点发射的数据。
50.在实施例中,聚合器218被配置为执行混合程序,该混合程序将从传感器202的观察值获得的码字和由接收器204从网络100中的其他节点接收的码字作为输入。
51.聚合器218测试至少一个停止标准。在实施例中,只有朝向查询节点108的前馈数据流。在这种情况下,该至少一个停止标准包括确定查询节点已经接收到对分布式任务的响应,诸如,完成在以查询节点108为根的节点树上的值的聚合。
52.在实施例中,该至少一个停止标准至少部分地基于在码字中检测到的错误的数量。当错误的数量保持低于阈值时,码字被传递到发射器206以发射到网络100中的其他节点。
53.应当理解,随着网络100中的其他节点使用它们自己的错误引擎引入额外的错误,聚合器218检测到的错误的数量会增加。
54.查询节点108使用输出模块208来输出来自聚合器218的估计。
55.解码器222从聚合器218接收码字。解码器222对码字进行解码以产生消息。
56.消息反量化器224从解码器222接收消息。消息反量化器224反量化消息以产生数据。该数据被输出模块208接收并作为任务或查询的输出呈现给用户。
57.在实施例中,消息反量化器224和/或输出模块208仅存在于查询节点108中。在实施例中,消息反量化器224和/或输出模块208存在于节点邻域的其他节点中,但被配置为在与其相关联的节点是查询节点的情况下操作。
58.在实施例中,消息反量化器224和/或输出模块208存在于特殊类别的节点中。在实施例中,网络包括节点,其中每个节点可以用作查询节点,但是消息反量化器224和输出模块208仅在查询节点中是活动的。在实施例中,只有网络100中的节点的子集可以用作查询节点。
59.图3示出了由图1所示的网络100和/或网络120中的至少一些节点执行的处理任务的示例。该方法涉及分布式私有聚合(dpa)。
60.在实施例中,网络120是针对处理任务定义的。一旦建立了网络120,处理任务通常以分布式方式执行而无需中央协调。
61.该方法的形式记法如下所述:
[0062][0063]
查询节点108使用传感器202来观察300数据。网络100和/或网络120中的其他节点也观察数据。查询节点108和网络100中的其他节点包括观察数据的多个网络节点。
[0064]
在实施例中,量化在每个节点i处的观察到数据以产生消息
[0065]
使用线性码来编码302这些消息以产生码字在实施例中,线性码是预先定义的。例如,可以将第一线性码函数应用于由多个网络节点中的至少一个网络节点观察到的数据以获得至少一个函数输出。
[0066]
编码后,将错误独立地应用304于每个节点。在实施例中,这些错误包括随机符号错误。在实施例中,u(n,λ)是λ维离散多元均匀分布,每个维度的整数独立地取自{0,1,...,n-1}。在实施例中,将错误应用于通过第一线性码函数获得的至少一个函数输出。
[0067]
在实施例中,聚合器218(参见图2)执行一般混合程序,直到满足停止标准306为止。取决于所需的聚合类型,由单独的例程确定308混合矩阵p
k+1
。在实施例中,查询节点108(参见图1)执行混合程序来聚合节点的观察值,以获得第一组聚合值,直到满足停止标准306为止。
[0068]
在示例中,图3所示的方法使用r=p的素域并具有混合矩阵使用整数算术模数p执行更新从而保证不会溢出。
[0069]
随着混合中包括更多观察值,当前聚合实例中的符号错误的数量增加。在实施例中,如果期望,则在相同的索引ei处应用310附加错误。
[0070]
在实施例中,可以在错误解码发生之前加入任务的最大节点数量是通过所使用的线性码的汉明距离d和/或通过在每个节点处引入的符号错误的数量来确定的。
[0071]
在实施例中,d的值和/或在每个节点处引入的符号错误的数量是预定义的。
[0072]
一旦满足停止标准,就解码312由聚合器218执行的混合产生的码字。解码过程的示例形式记法是
[0073]
在实施例中,解码312包括将第二线性码函数应用于该组聚合值以获得返回到它们的观察域的第二组聚合值。查询节点108然后输出314私有聚合程序的估计。在实施例中,查询节点108输出第二组聚合值。
[0074]
图4提供了图3的一般方法的专门示例。图4中所示的方法400示出了分布式私有汇总(dps)的示例。
[0075]
在许多情况下,可能期望对查询子网络120上的节点值执行简单的路由汇总(参见图1)。给定适当的路由程序,分布式路由汇总有可能与在整个网络上重复执行平均共识迭代相比显著更快地在查询节点108处产生输出。
[0076]
执行分布式汇总需要考虑一些因素。首先,需要跨子网络执行路由程序,使得当在查询节点处累积值时,消息在汇总中仅被包括一次。
[0077]
在实施例中,为此目的,使用树协议移除某些子网络边,从而产生以查询节点为根的树图。
[0078]
方法400的形式记法如下所述:
[0079][0080]
方法400描述了针对素域r=p的特定情况的分布式私有汇总(dps)程序。
[0081]
查询节点108使用传感器202观察402数据。网络100和/或网络120中的其他节点也观察数据。在实施例中,量化在每个节点i处的观察数据被以在与之间进行映射。
[0082]
由在与之间映射的线性编码器212(参见图2)编码404传感器数据。预定义的代码长度n和预定义的符号错误数量λ也是必要的。
[0083]
每个节点确定将出错的码字符号索引的数量λ。将这些错误应用406于传感器数据。
[0084]
在实施例中,聚合器218执行汇总程序,直到满足停止标准408为止。在实施例中,当树被缩减为仅包含查询节点时,停止标准被达到或满足。
[0085]
节点继续观察信号并从其他节点接收数据。汇总任务是在任务子网络上定义的。在实施例中,汇总任务包括确定410叶节点的总和。
[0086]
确定边集从而将一般任务图转换为以查询节点q为根的树图。通过先量化再编码节点观察值ui来计算初始码字在实施例中,聚合器218被配置为从叶节点到根遍历树进行迭代求和。
[0087]
在每次迭代k中,使用树边来定义叶节点集叶节点的直接父节点集和/或表示为的连接到叶节点的所有边的集。
[0088]
每个叶节点的父节点将其前一码字与其所有相邻叶节点的码字的总和(定义为叶节点的父节点的相邻节点与当前叶节点的交集)存储为
[0089]
然后通过从前一树边集中移除当前叶边集来更新当前树边集。
[0090]
一旦满足停止标准,查询节点处的最终输出就是汇总终止后经解码和反量化的码字。解码412并输出414码字。
[0091]
图5示出了用于执行来自图4的确定叶节点的总和的步骤410的方法500的一个示例。确定边集从而将一般任务图转换为以查询节点q为根的树图。方法500遍历树进行迭代求和,直到满足停止标准502为止。停止标准的一个示例是确定不存在剩余的未经求和的叶节点。
[0092]
在尚未满足停止标准时,在每次迭代k中,使用树边来定义504树参数,树参数包括叶节点集叶节点的直接父节点集和表示为的连接到叶节点的所有边的集。
[0093]
每个叶节点的父节点将其编码的观察到的数据和其所有相邻叶节点的码字的总和存储506为该总和定义为存在于叶节点的父节点的相邻节点和当前叶节点中的交集的码字以及叶节点的父节点的编码的观察值的总和。
[0094]
然后通过从前一树边集中移除当前叶边集来更新508当前树边集。现在存在于每个新定义的叶节点中的呈码字形式的总和是方法500的结果,该结果将用于供来自图4的方法400进行后续处理。方法500输出510码字。
[0095]
图6示出了由图1所示的网络100和/或网络120中的至少一些节点执行的处理任务的示例。该方法涉及分布式私有共识(dpc)。该程序允许以限制通过网络的信息传播距离的方式执行分布式共识。
[0096]
该方法的形式记法如下所述:
[0097][0098]
方法600有可能允许以限制通过网络的信息传播的方式执行分布式共识。
[0099]
确定602静态混合矩阵p。在实施例中,方法600需要预定义的代码长度n和预定义的符号错误数量λ。由于共识是在有限域上执行的,因此必须特别注意。
[0100]
例如,任务子网络基数可以不是域特征的整数倍,即:
[0101][0102]
实际上,上述方程可以通过使域大小大于预期的最大任务子网络基数来保证,而通常都是这种情况。接下来,当确定602混合矩阵p时,可以通过同时满足以下方程来确定p的项:
[0103][0104][0105][0106]cp
(s)=s
n-1
(s-1),
[0107]
其中,c
p
(s)是矩阵p的特征多项式,其未定元由s的幂给出。上述方程中的前3个很容易满足,仅需要p共享底层物理网络的稀疏模式并且是双重随机的即可。由第4个方程给
出的对特征多项式的要求不太直接,并且需要对p的行列式进行分布式计算。
[0108]
假定满足上述方程,每个节点确定在共识持续时间内将出错的λ码字符号索引。
[0109]
查询节点108(参见图1)使用传感器202(参见图2)观察604数据。网络100和/或网络120中的其他节点也观察数据。在实施例中,量化在每个节点i处的观察数据被以在与之间进行映射以产生消息。
[0110]
编码606这些消息以在与之间进行映射。
[0111]
考虑到这些要求,每个节点通过确定在共识持续时间内将出错的λ码字符号索引来应用608错误。
[0112]
节点继续观察信号并在任务子网络上定义共识任务。通过先量化再编码节点观察值ui来计算初始码字
[0113]
在迭代共识的每个阶段,每个节点通过从u
(r,s)
中采样新符号值来将错误应用608于其预定的符号错误索引。符号[
·
]ei用于在向量ei中包含的索引处选择向量(
·
)中的元素。
[0114]
每个节点与本地邻域ni共享其出错的码字,然后取加权平均值。在实施例中,确定加权平均值包括执行610混合步骤。混合步骤610涉及使用静态混合矩阵p进行码字混合。
[0115]
然后量化经反量化的局部加权平均值以给出新的码字
[0116]
当迭代共识在停止标准下终止612时,诸如,在一定次数的迭代之后或当局部更新变化降低至低于某个值时,可以解码614码字然后进行反量化以给出子网络平均值的估计在实施例中,任务子网络中的所有节点都得到混合的子网络值。然后,输出616结果。
[0117]
本发明的以上描述包括本发明的优选形式。可以在不偏离如由所附权利要求书限定的本发明的范围的情况下对本发明做出修改。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1