一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于神经进化的物联网拓扑结构生成方法

2022-10-22 06:12:12 来源:中国专利 TAG:


1.本发明涉及物联网领域,尤其涉及一种基于神经进化的物联网拓扑结构生成方法。


背景技术:

2.物联网技术作为信息时代的新产物正在逐步发展,规模不断增大,其所涉及的领域也愈发广泛,例如智慧医疗、智能车联网、智慧城市、智能家居和智能穿戴设备。广泛分布的物联网设备通过终端的传感器等设备与现实世界进行交互,将各类信息进行传输,为各种相关应用提供数据支持。其中,鲁棒的网络拓扑结构是保障物联网高效稳定数据传输质量的基础。特别是当物联网受到拓扑层面的威胁时,鲁棒的网络拓扑可以缓解由于设备失效链路不稳定等问题所带来的级联崩溃。因此,鲁棒的网络拓扑结构对物联网有十分重要的意义。现在主要采用对物联网的已有网络拓扑结构进行优化的方法来提高网络拓扑结构的鲁棒性。
3.但是,现有提高物联网的网络拓扑鲁棒性的方法存在不足:采用网络拓扑结构优化方法是针对设备数目固定的物联网拓扑结构,一旦有新的设备(或者称节点)增加到物联网结构中,上述的网络拓扑结构优化方法就难以满足设备数动态变化的物联网结构,导致如果继续使用原有的网络结构拓扑优化方法将会消耗大量的时间和计算资源,降低提高网络拓扑结构鲁棒性的效率。


技术实现要素:

4.本发明所要解决的技术问题是针对上述现有技术提供一种能够提高网络结构鲁棒性的基于神经进化的物联网拓扑结构生成方法。
5.本发明解决上述技术问题所采用的技术方案为:基于神经进化的物联网拓扑结构生成方法,其特征在于,包括如下步骤:
6.步骤1,将物联网拓扑结构中的每一个网络拓扑作为一个个体,且由所有的个体形成针对该物联网拓扑结构的种群;其中,每个个体内的限制区域内随机设置一个节点;
7.步骤2,对形成的该种群做初始化处理,得到初始化种群;其中,初始化种群内的个体为初始化个体,初始化个体内设置的节点为初始节点;
8.步骤3,在每个初始化个体的通信范围内随机添加一个节点,且令添加的该节点与该初始化个体内的初始节点建立连接,并以建立连接后的所有初始化个体作为第一代种群;
9.步骤4,对最新种群内的个体进行个体生长,且由生长后的所有个体形成候选种群;
10.步骤5,对候选种群内的每个个体做模拟恶意攻击,并计算每个生长后个体的鲁棒性指标;
11.步骤6,将所有生长后个体依照鲁棒性指标大小按比例筛选出具有较大鲁棒性指
标的生长后个体,且由所有筛选出来的生长后个体形成针对该候选种群的下一代种群;
12.步骤7,对所形成下一代种群中具有最小节点数的个体的节点数目是否大于需求数目值做出判断处理:
13.当该具有最小节点数的个体的节点数目大于需求数目值时,转入步骤8;否则,转入执行步骤4;
14.步骤8,在当前种群的前一代种群中且具有符合需求节点数量要求的个体中选取最优个体,并将该最优个体作为所需要鲁棒的物联网拓扑结构。
15.改进地,在所述基于神经进化的物联网拓扑结构生成方法中,在步骤3中,在每个初始化个体的通信范围内随机添加一个节点的过程如下:
16.步骤31,在每个初始化个体的通信范围内随机添加一个全连接motif;其中,该全连接motif由三个节点互相连接而成;
17.步骤32,以该全连接motif中的任一个节点作为被随机添加的所述节点。
18.进一步地,在所述基于神经进化的物联网拓扑结构生成方法中,所述最优个体为具有最佳鲁棒性指标的个体。
19.再进一步地,在所述基于神经进化的物联网拓扑结构生成方法中,所述鲁棒性指标为r值。
20.可选择地,在所述基于神经进化的物联网拓扑结构生成方法中,所述个体生长的方式为变异操作或者交叉操作。
21.作为变异操作的第一种方式,在所述基于神经进化的物联网拓扑结构生成方法中,所述变异操作过程为:在待生长个体内随机选择一个节点,并在被选择的该节点的通信范围内的随机位置添加一个新节点,且建立被选择的节点与该新节点之间的连接。
22.针对上述第一种方式的变异操作,再改进,在所述基于神经进化的物联网拓扑结构生成方法中,所述变异操作过程还包括:在所述添加的新节点基础上再增加两个节点,以该新节点与该增加的两个节点组成一个新的motif。
23.作为变异操作的第二种方式,在所述基于神经进化的物联网拓扑结构生成方法中,所述变异操作过程为:
24.计算待生长个体每条边对应的motif数量,且以该motif数量作为每条边被选中作为变异位置概率的权重值;其中,motif数量与其对应边被选中作为变异位置的概率成反相关,每条边即为该待生长个体中的一个连接;
25.根据所得每条边对应的motif数量,计算每条边被选中作为变异位置的概率;其中,假设待生长个体有n个边,第i个边对应新增的motif数量标记为mi,第i个边被选中作为变异位置的概率标记为pi:
[0026][0027]
其中,p和q均为常数,m
max
表示n个数量值m1~mn中的最大值,m
min
表示n个数量值m1~mn中的最小值;0《p≤m
min
,q》p;
[0028]
在待生长个体的所有边中依上述概率随机选择一个边作为变异位置,并在该被选择边的两端点的通信范围交集内随机位置添加一个新节点;
[0029]
将该新节点与被选择边的两个端点分别连接,且断开该被选择边的两个端点之间
的连接。
[0030]
针对上述第二种方式的变异操作,再改进,在所述基于神经进化的物联网拓扑结构生成方法中,所述变异操作过程还包括:在所述添加的新节点基础上再增加两个节点,以该新节点与该增加的两个节点组成一个新的motif。
[0031]
作为变异操作的第三种方式,在所述基于神经进化的物联网拓扑结构生成方法中,所述变异操作过程为:
[0032]
计算待生长个体所有可添加边对应新增的motif数量,且以该motif数量作为每条边被选中作为变异位置概率的权重值;其中,motif数量与其对应边被选中作为变异位置的概率成正相关,每条边即为该待生长个体中的一个连接;
[0033]
根据所得每条边对应新增的motif数量,计算每条边被选中作为变异位置的概率;其中,假设待生长个体有n个边,第j个边添加后参与的motif数量标记为mj,第j个边被选中作为变异位置的概率标记为pj:
[0034][0035]
其中,p和q均为常数,m
max
表示n个数量值m1~mn中的最大值,m
min
表示n个数量值m1~mn中的最小值;0《p≤m
min
,q》p;
[0036]
在待生长个体的所有可添加边中依上述概率随机选择一条边作为变异位置,并将被随机选择的该条边添加到待生长个体所对应的网络拓扑中。
[0037]
再改进,在所述基于神经进化的物联网拓扑结构生成方法中,所述生长后个体的r值计算方式如下:
[0038][0039]
其中,mcsk表示经过第k次恶意攻击移除度数最高的节点及其连接时剩余网络拓扑中的最大连通子图节点数量,k为网络拓扑中的节点总数量。
[0040]
与现有技术相比,本发明的优点在于:
[0041]
首先,该发明通过对物联网拓扑结构中的所有个体(即网络拓扑)形成针对该物联网拓扑结构的种群做初始化处理,得到初始化种群,在初始化种群内每个初始化个体的通信范围内随机添加一个全连接motif,且令该全连接motif中的任一个节点与对应初始化个体内的初始节点建立连接,并以建立连接后的各初始化个体作为第一代种群的待生长个体,并令所有待生长个体进行个体生长后形成候选种群,而后再对候选种群内的每个个体做模拟恶意攻击,计算每个生长后个体的鲁棒性指标,且以鲁棒性指标筛选出候选种群的下一代种群,直到将基于需求节点数量的筛选得到的个体作为最优个体,并将该最优个体作为所需要鲁棒的物联网拓扑结构,实现了每添加一个全连接motif即可以使得个体生长出三个节点,这样增加了个体的节点生长速度,而且针对个体增加三个节点只需要计算一次该个体的鲁棒性指标,降低了计算工作量和耗时,避免了个体每生长一个节点就要去计算一次个体的鲁棒性指标所导致的增加计算耗时的缺陷;
[0042]
其次,该发明在针对个体的变异操作过程中,通过将待生长个体的motif结构作为网络拓扑的局部特征,待生长个体在添加新节点的同时也会伴随着加入与该新节点相关联的motif(包含了该新节点),这样可以不断增加网络拓扑中的motif数量,大幅提升物联网
拓扑结构生成效率和鲁棒性能,并且将计算所得生长后个体的r值作为网络拓扑的全局特征,实现了综合使用局部特征和全局特征有效降低了拓扑生成算法复杂度;
[0043]
其次,该发明基于神经进化的方式,将遗传算法应用于鲁棒的物联网拓扑结构生成过程,在确保网络鲁棒性的同时进行网络拓扑增长(即个体生长),解决了其他网络拓扑优化方法在网络添加节点后需要重新进行全部优化而导致的高耗时问题,提高了鲁棒的网络拓扑的生成效率。
[0044]
最后,motif(三个节点的全连接motif)是指重复出现的网络子结构,研究表明网络拓扑中motif的数量与网络拓扑的鲁棒性成正比,motif数量越多,网络拓扑就越鲁棒。该发明多处利用motif(三个节点的全连接motif)作为网络拓扑生成的基础单元以及引导结构,拓扑生长过程中节点的添加会伴随着motif的加入,可以大幅提升整体方法的效率;同时节点添加位置的选择也受到motif结构的数量分布影响,可以有效提升所生成拓扑的鲁棒性。
附图说明
[0045]
图1为本发明实施例中基于神经进化的物联网拓扑结构生成方法流程示意图。
具体实施方式
[0046]
以下结合附图实施例对本发明作进一步详细描述。
[0047]
本实施例首先提供一种基于神经进化的物联网拓扑结构生成方法。参见图1所示,该实施例的基于神经进化的物联网拓扑结构生成方法包括如下步骤:
[0048]
步骤1,将物联网拓扑结构中的每一个网络拓扑作为一个个体,且由所有的个体形成针对该物联网拓扑结构的种群;其中,每个个体内的限制区域内随机设置一个节点;
[0049]
步骤2,对形成的该种群做初始化处理,得到初始化种群;其中,初始化种群内的个体为初始化个体,初始化个体内设置的节点为初始节点;
[0050]
步骤3,在每个初始化个体的通信范围内随机添加一个全连接motif,且令该全连接motif中的任一个节点与对应初始化个体内的初始节点建立连接,并以建立连接后的所有初始化个体作为第一代种群;其中,此处通过添加的该全连接motif来提高对应初始化个体的网拓扑结构的鲁棒性;并且,研究表明网络拓扑中motif的数量与网络拓扑的鲁棒性成正比,motif数量越多,网络拓扑就越鲁棒;
[0051]
步骤4,对最新种群内的个体进行个体生长,且由生长后的所有个体形成候选种群;其中,根据实际需要,此处个体生长的方式为变异操作或者交叉操作;
[0052]
例如,在执行完毕步骤3并转入执行步骤4时,此时的最新种群就是步骤3得到的第一代种群;最新种群即要执行该步骤4时已经存在的种群,该已经存在的种群被用来执行步骤4中的个体生长;
[0053]
步骤5,对候选种群内的每个个体做模拟恶意攻击,并计算每个生长后个体的鲁棒性指标;其中,在该实施例中,此处的鲁棒性指标为r值,每一个生长后个体的r值计算方式如下:
[0054]
[0055]
其中,mcsk表示经过第k次恶意攻击移除度数最高的节点及其连接时剩余网络拓扑中的最大连通子图节点数量,k为网络拓扑中的节点总数量;在恶意攻击过程中,恶意攻击的总次数与网络拓扑中的节点总数量是相同的,两者等值;
[0056]
步骤6,将所有生长后个体依照鲁棒性指标大小按比例筛选出具有较大鲁棒性指标的生长后个体,且由所有筛选出来的生长后个体形成针对该候选种群的下一代种群;
[0057]
具体到该实施例中,假设在一个种群中,先将该种群内的所有生成后个体所对应的鲁棒性指标按照大小顺序做降序排序,然后针对降序排序处理后的该种群,按照一定的预设比例把鲁棒性指标数值靠前的生成后个体筛选出来,以由被筛选出来的这些生成后个体形成针对该候选种群的下一代种群;
[0058]
例如,假设在一个种群g中,该种群g内有100个生长后个体,这100个生长后个体所对应的鲁棒性指标按照大小顺序降序排序后,得到的鲁棒性指标序列是r1~r100,这样,就按照预设比例30%对鲁棒性指标序列(r1~r100)做出筛选,以把鲁棒性指标r靠前的30%这些指标所对应的生长后个体筛选出来,即被筛选出来的个体为生长后个体c1(对应鲁棒性指标r1)、生长后个体c2(对应鲁棒性指标r2)、

、生长后个体c29(对应鲁棒性指标r29)和生长后个体c30(对应鲁棒性指标r30),然后把这30个生长后个体c1~c30形成针对该种群g的下一代种群;
[0059]
步骤7,对所形成下一代种群中具有最小节点数的个体的节点数目是否大于需求数目值做出判断处理:
[0060]
当该具有最小节点数的个体的节点数目大于需求数目值时,转入步骤8;否则,转入执行步骤4;
[0061]
步骤8,在当前种群的前一代种群中且具有符合需求节点数量要求的个体中选取最优个体,并将该最优个体作为所需要鲁棒的物联网拓扑结构。其中,最优个体为具有最佳鲁棒性指标的个体,即在该实施例中,选取具有最大r值的个体作为最优个体,并将该最优个体作为所需要鲁棒的物联网拓扑结构。
[0062]
作为变异操作的第一种方式,该实施例中的变异操作可以为:在待生长个体内随机选择一个节点,并在被选择的该节点的通信范围内的随机位置添加一个新节点,且建立被选择的节点与该新节点之间的连接;以及,在所述添加的新节点基础上再增加两个节点,以该新节点与该增加的两个节点组成一个新的motif。
[0063]
作为变异操作的第二种方式,该实施例中的变异操作也可以为:
[0064]
计算待生长个体每条边对应的motif数量,且以该motif数量作为每条边被选中作为变异位置概率的权重值;其中,motif数量与其对应边被选中作为变异位置的概率成负相关,每条边即为该待生长个体中的一个连接;
[0065]
根据所得每条边对应的motif数量,计算每条边被选中作为变异位置的概率;其中,假设待生长个体有n个边,第i个边对应新增的motif数量标记为mi,第i个边被选中作为变异位置的概率标记为pi:
[0066][0067]
其中,p和q均为常数,m
max
表示n个数量值m1~mn中的最大值,m
min
表示n个数量值m1~mn中的最小值;0《p≤m
min
,q》p;
[0068]
在待生长个体的所有边中依上述概率随机选择一个边作为变异位置,并在该被选择边的两端点的通信范围交集内随机位置添加一个新节点,且在所述添加的新节点基础上再增加两个节点,以该新节点与该增加的两个节点组成一个新的motif;
[0069]
以及,将该新节点与被选择边的两个端点分别连接,且断开该被选择边的两个端点之间的连接。
[0070]
其中,针对第二种方式的变异操作,“在待生长个体的所有边中依上述概率随机选择一个边作为变异位置”的具体操作过程做如下:
[0071]
步骤s1,在待生长个体的所有边中随机选择一个边,并得到该被随机选择的边所对应的被选中作为变异位置的概率;
[0072]
步骤s2,根据该被随机选择的边是否被接受作为变异位置做出判断处理:
[0073]
当该被随机选择的边被接受作为变异位置,则将该被随机选择的边作为上述的变异位置;否则,转入步骤s1,直到选择出一个边被接受作为变异位置。
[0074]
具体举例如下:假设某一个待生长个体的所有边为边e1、边e2和边e3,基于上述被选中作为变异位置的概率计算公式可知,边e1被选中作为变异位置的概率是p1、边e2被选中作为变异位置的概率是p2以及边e3被选中作为变异位置的概率是p3,p1 p2 p3≠1;则首先在三个边e1、e2和e3中随机选择一个边ei,该边ei被接受成为变异位置的概率是pi,1≤i≤3;一旦被随机选择的该边ei未被接受成为变异位置,则再次从三个边e1、e2和e3中随机选择一个边ei,直到被随机选择出的边被接受成为变异位置。当然,待生长个体的所有边中的每一个边都有可能被多次随机选出,直到最终选择出的边被接受成为变异位置。
[0075]
作为变异操作的第三种方式,该实施例中的变异操作还可以为:
[0076]
计算待生长个体所有可添加边对应新增的motif数量,且以该motif数量作为每条边被选中作为变异位置概率的权重值;其中,motif数量与其对应边被选中作为变异位置的概率成正相关,每条边即为该待生长个体中的一个连接;
[0077]
根据所得每条边对应新增的motif数量,计算每条边被选中作为变异位置的概率;其中,假设待生长个体有n个边,第j个边添加后参与的motif数量标记为mj,第j个边被选中作为变异位置的概率标记为pj:
[0078][0079]
其中,p和q均为常数,m
max
表示n个数量值m1~mn中的最大值,m
min
表示n个数量值m1~mn中的最小值;0《p≤m
min
,q》p;
[0080]
在待生长个体的所有可添加边中依上述概率随机选择一条边作为变异位置,并将被随机选择的该条边添加到待生长个体所对应的网络拓扑中。
[0081]
其中,针对第三种方式的变异操作,“在待生长个体的所有可添加边中依上述概率随机选择一条边作为变异位置”的具体操作过程做如下:
[0082]
步骤a1,在待生长个体的所有可添加边中随机选择一个边,并得到该被随机选择的边所对应的被选中作为变异位置的概率;
[0083]
步骤a2,根据该被随机选择的边是否被接受作为变异位置做出判断处理:
[0084]
当该被随机选择的边被接受作为变异位置,则将该被随机选择的边作为上述的变异位置;否则,转入步骤a1,直到选择出一个边被接受作为变异位置。
[0085]
具体举例如下:假设某一个待生长个体的所有可添加边l1、边l2和边l3,基于上述被选中作为变异位置的概率计算公式可知,边l1被选中作为变异位置的概率是p1、边l2被选中作为变异位置的概率是p2以及边l3被选中作为变异位置的概率是p3,p1 p2 p3≠1;则首先在三个可添加边l1、l2和l3中随机选择一个边lj,该边lj被接受成为变异位置的概率是pj,1≤j≤3;一旦被随机选择的该边lj未被接受成为变异位置,则再次从三个可添加边l1、l2和l3中随机选择一个边lj,直到被随机选择出的边被接受成为变异位置。当然,待生长个体的所有可添加边中的每一个边都有可能被多次随机选出,直到最终选择出的边被接受成为变异位置。
[0086]
针对该实施例的第一种变异操作和第二种变异操作,实现了每添加一个全连接motif即可以使得个体生长出三个节点,这样增加了个体的节点生长速度,而且针对个体增加三个节点只需要计算一次该个体的鲁棒性指标,降低了计算工作量和耗时,避免了个体每生长一个节点就要去计算一次个体的鲁棒性指标所导致的增加计算耗时的缺陷。
[0087]
另外,按照上述概率公式分别计算对应边被选中作为变异位置的概率,可以使得参与motif数量越多的边被移除的概率越小,即其被添加的概率越大;相反,参与motif数量少的边则有更大的概率被移除,即其被添加的概率越小。同时,在概率公式设计时,分母位置利用归一化方法融合了当前motif数量分布的极差(最大值与最小值之间的差值),可以有效地将上下界(即最大值和最小值)不固定的数据映射到(0,1)的概率区间上。
[0088]
至于该实施例的交叉操作,即在候选种群中随机选择两个待生长个体进行融合,即将两个待生长个体的节点集和边集分别对应取并集,进行融合拼接。利用交叉操作得到的结果节点数和连接数均会大幅增长,少量的交叉操作可以加速种群的进化速度,进而更快得到目标拓扑结果。
[0089]
该实施例的物联网拓扑结构生成方法通过对物联网拓扑结构中的所有个体(即网络拓扑)形成针对该物联网拓扑结构的种群做初始化处理,得到初始化种群,在初始化种群内每个初始化个体的通信范围内随机添加一个全连接motif,且令该全连接motif中的任一个节点与对应初始化个体内的初始节点建立连接,并以建立连接后的各初始化个体作为第一代种群的待生长个体,并令所有待生长个体进行个体生长后形成候选种群,而后再对候选种群内的每个个体做模拟恶意攻击,计算每个生长后个体的鲁棒性指标,且以鲁棒性指标筛选出候选种群的下一代种群,直到将基于需求节点数量的筛选得到的个体作为最优个体,并将该最优个体作为所需要鲁棒的物联网拓扑结构,实现了每添加一个全连接motif即可以使得个体生长出三个节点,这样增加了个体的节点生长速度,而且针对个体增加三个节点只需要计算一次该个体的鲁棒性指标,降低了计算工作量和耗时,避免了个体每生长一个节点就要去计算一次个体的鲁棒性指标所导致的增加计算耗时的缺陷;
[0090]
在针对个体的变异操作过程中,通过将待生长个体的motif结构作为网络拓扑的局部特征,待生长个体在添加新节点的同时也会伴随着加入与该新节点相关联的motif(包含了该新节点),这样可以不断增加网络拓扑中的motif数量,大幅提升物联网拓扑结构生成效率和鲁棒性能,并且将计算所得生长后个体的r值作为网络拓扑的全局特征,实现了综合使用局部特征和全局特征有效降低了拓扑生成算法复杂度;
[0091]
该实施例的物联网拓扑结构生成方法还将遗传算法应用于鲁棒的物联网拓扑结构生成过程,在确保网络鲁棒性的同时进行网络拓扑增长(即个体生长),解决了其他网络
拓扑优化方法在网络添加节点后需要重新进行全部优化而导致的高耗时问题,提高了鲁棒的网络拓扑的生成效率。
[0092]
另外需要说明的是,motif(三个节点的全连接motif)是指重复出现的网络子结构,研究表明网络拓扑中motif的数量与网络拓扑的鲁棒性成正比,motif数量越多,网络拓扑就越鲁棒。该发明多处利用motif(三个节点的全连接motif)作为网络拓扑生成的基础单元以及引导结构,拓扑生长过程中节点的添加会伴随着motif的加入,可以大幅提升整体方法的效率;同时节点添加位置的选择也受到motif结构的数量分布影响,可以有效提升所生成拓扑的鲁棒性。
[0093]
尽管以上详细地描述了本发明的优选实施例,但是应该清楚地理解,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献