全文HTML
--> --> -->目前, 有一些工作从网络的拓扑度量出发给出网络牵制控制选点的策略. 比如, 文献[1]提出, 当网络受控节点较少时, 应当优先控制度大的节点, 当受控节点较多时, 应当优先控制度较小的节点. Wang和Chen[5], Song和Cao[12], 以及Ali和Soleyman[13]研究了基于度指标的选点方案, 倾向于控制度最大的节点; Rong等[14]、Jia和Li[15]讨论基于介性中心度(betweenness centrality, BC)的牵制控制方案. 文献[16]提出了一种基于数据流的牵制控制策略, 该策略在实际网络中可以获得与基于BC的牵制方案相似的效果, 但计算量更小. 文献[17]使用K-shell分解法来寻找处于网络中心位置的节点, 发现K-core值更大的节点能更有利于网络传播. 文献[18]提出根据节点的森林距离大小来选择网络的控制节点, 优先选择森林距离较小的节点, 且该策略可以应用在有向网络及非连通网络中. 文献[19]依据矩阵扰动理论得出推论, 可以根据Laplacian矩阵的最大特征值对应特征向量的最大分量选择控制节点, 所得节点对网络Laplacian矩阵的特征值影响最大. 但是, 这些工作都只能从某个或某些拓扑度量出发指导性地建议牵制选点方案, 或者对某类特性的网络提供针对性的建议, 很难给出一个精准的方案, 在实际应用时效果不好把握. 本文在我们前期工作[1]的基础上, 结合Laplacian删后矩阵最小特征值的图谱性质, 提出了牵制控制多个节点的节点组筛选算法, 能精准地找出最优的受控节点集合. 该方法不局限于特定属性的复杂网络, 对任何类型的网络都适用.





假设网络的目标状态s(t)满足:




接下来, 提出本文要研究的问题, 即优化(2)式左端项. 当网络的受控节点数




















































定理1[1] 假设网络拓扑结构用图G表示. 图G的节点集为











其次, 假设通过初步筛选之后剩余了n个节点, 在这n个节点中满足不等式(5)的节点组合, 理论上有













牵制控制多个节点算法最优

























需要说明的是, 筛选条件(11)式计算简单, 仅需要知道节点的度即可. 而筛选条件(10)式计算量相对大些, 还需要计算受控节点集的内部连边数, 比筛选条件(11)式准确程度更高. 所以在实际仿真中, 可以结合两者实现计算复杂度和精准程度上的平衡, 也可以只采用其中的一个式子. 基于以上实现过程, 现将选取多个牵制节点的算法列出如下.
算法1
步骤1 选择度排名前l的节点当作初始控制节点, 然后计算其特征值


步骤2 将

步骤3 递归计算剩余节点中的满足条件(11)的节点组合;
步骤4 在第3步的基础上, 计算剩余节点中的满足条件(10)的节点组合;
步骤5 逐个计算剩余节点组合对应的删后矩阵的








2
4.1.算法初步应用和最优控制节点集的讨论
例1 考虑参数设置为N = 1000, q = 5的一个BA无标度网络, 该网络以5个节点的环状图作为初始网络, 每次增加一个新的节点, 且依照度优先连接策略连接到网络中已有的q个节点上. 生成的BA网络见图1. 根据本文的算法, 将受控节点数l从2增加到4, 来观察最优受控节点集的情况. 节点的度排序情况见表1.
Figure1. A generated BA network. Different colors represent different node-degrees in the network; nodes in red have relative large degrees, and nodes in blue have small degrees.
节点的度 | 128 | 122 | 103 | 98 | 87 | 86 | 75 | 63 | 60 | 58 | 53 | 51 | 51 | 49 | 47 | 43 | 42 |
节点编号 | 2 | 11 | 3 | 18 | 1 | 9 | 4 | 8 | 14 | 31 | 21 | 17 | 10 | 63 | 34 | 20 | 13 |
表1节点度排序及节点编号(BA网络, N = 1000, q = 5)
Table1.Degree ordering and node numbering in a BA network with N = 1000 and q = 5.
牵制控制两个节点, 即l = 2的情况. 如果枚举法需计算499500次998阶矩阵的最小特征值. 根据算法1, 首先选择节点集合{2, 11}控节点集, 计算此时的




















牵制控制三个节点, 即l = 3情况. 如果采用枚举法需计算166167000次997阶矩阵的最小特征值. 根据算法1, 首先选择节点集合{2, 11, 3}作为初始的受控节点集合, 计算此时的















牵制控制四个节点, 即l=4情况. 根据算法1, 首先选择节点集合{2, 11, 3, 18}作为初始的受控制节点集, 计算此时的







从上面的实验结果可以看出, 当受控节点数由少变多时, 比如从控制3个节点增加到控制4个节点时, 最优受控节点组合分别是{2, 3, 18}、{2, 11, 18, 9}, 优化的受控节点集合不是在控制3个节点的优化组合上加上一个节点, 而是在原有的基础上有所删减、有所变化的节点集合. 这就说明, 当受控节点数目l增加时, 最优受控节点集不能通过贪心选点策略得出.
2
4.2.算法1减少优化$\lambda_{1}\left( L_{N-l}\right)$
的计算量的有效性分析
为了客观评价本文算法减少计算量的效果, 这里给出两个指标:首次筛选剩余节点n(算法1第二步), 度筛选后剩余节点组合R(算法1第三步). 这两个指标能体现算法1在筛选中的效果. 这两个指标的计算结果均为10次重复实验取平均.
1) 首次筛选剩余节点数n相关仿真结果及分析
用n表示首次筛选(算法1第二步)后剩余的节点数, 实验结果在表2中列出. n是一个重要的指标, 它很大程度决定了本文算法的计算复杂度, 因为










网络参数 | l = 2 | l = 3 | l = 4 | l = 5 | l = 6 |
NW: N = 1000, P = 0.05 | 3.9 | 11.9 | 30.3 | 51.0 | 89.1 |
NW: N = 1000, P = 0.025 | 11.3 | 27.9 | 53.4 | 132.9 | 216.1 |
BA: N = 1000, q = 10 | 5.7 | 13.2 | 18.6 | 22.1 | 38.4 |
BA: N = 1000, q = 8 | 6.7 | 14.2 | 22.5 | 51.2 | 176.3 |
BA: N = 1000, q = 5 | 7.1 | 15.3 | 67.1 | 177.5 | 1000 |
BA: N = 1000, q = 3 | 10.2 | 55.7 | 1000.0 | 1000.0 | 1000.0 |
表2通过步骤2筛选后的剩余节点数n
Table2.Number of remaining nodes n after Step 2 in Algorithm 1.
2) 剩余节点的组合数量R相关仿真结果及分析
用R表示通过算法1第三步筛选后的节点组合数量. 指标R是










网络参数 | l = 2 | l = 3 | l = 4 | l = 5 | l = 6 |
NW: N = 1000, P = 0.05 | 5.1 | 33.3 | 216.1 | 1136.5 | 4245.8 |
NW: N = 1000, P = 0.025 | 18.2 | 215.6 | 1009.5 | 1.1 × 104 | 4.7 × 104 |
BA: N = 1000, q = 10 | 3.3 | 11.5 | 34.3 | 163.1 | 1801.6 |
BA: N = 1000, q = 8 | 6.3 | 16.3 | 83.8 | 233.5 | 2583.7 |
BA: N = 1000, q = 5 | 21.6 | 69.5 | 306.5 | 2203.8 | 2.4 × 104 |
BA: N = 1000, q = 3 | 25.3 | 307.3 | 4376.2 | 2.2 × 105 | 4.5 × 106 |
表3通过步骤3筛选后剩余节点的组合数量R
Table3.Number of combinations R of remaining nodes after Step 3 in Algorithm 1.
2
4.3.本文算法与其他选点策略的对比
本节将对当前常用牵制控制选点策略与本文算法运用在实际网络中, 进行算法选点效果的对比. 首先介绍当前常用选点策略. 1)度选点算法. 依据节点度排序来选择受控节点, 该算法无需额外计算量, 故通常在控制多个节点时, 采用度选点算法比较方便. 2) BC (betweenness centrality[14])选点策略. 该策略基于介数中心度选点, 旨在找出位于网络的重要路径上的节点. 3) K-shell算法[22], 选取K-core值大的节点. 4)最近提出的基于ESI指标的算法[19]. 5)本文算法, 筛选计算出最优
将以上5种策略运用在实际网络Dolphin网络及Email网络[23]中, 不同策略所得的选点及相应的




受控 节点数 | 度算法 | BC算法 | K-shell算法 | ESI算法 | 本文算法 |
l = 2 | (15, 46) ${\lambda _1} = 0.1001$ | (37, 2) ${\lambda _1} = 0.1376$ | (19, 30) ${\lambda _1} = 0.0828$ | (15, 38) ${\lambda _1} = 0.0995$ | (15, 18) ${\lambda _1} = 0.2549$ |
l = 3 | (15, 46, 38) ${\lambda _1} = 0.1053$ | (37, 2, 41) ${\lambda _1} = 0.2344$ | (19, 30, 46) ${\lambda _1} = 0.0935$ | (15, 38, 46) ${\lambda _1} = 0.1053$ | (15, 14, 46) ${\lambda _1} = 0.3664$ |
l = 4 | (15, 46, 38, 52) ${\lambda _1} = 0.1064$ | (37, 2, 41, 38) ${\lambda _1} = 0.2511$ | (19, 30, 46, 52) ${\lambda _1} = 0.0950$ | (15, 38, 46, 51) ${\lambda _1} = 0.1069$ | (62, 14, 46, 2) ${\lambda _1} = 0.4662$ |
l = 5 | (15, 46, 38, 52, 34) ${\lambda _1} = 0.1072$ | (37, 2, 41, 38, 8) ${\lambda _1} = 0.2710$ | (19, 30, 46, 52, 22) ${\lambda _1} = 0.0960$ | (15, 38, 46, 51, 39) ${\lambda _1} = 0.1078$ | (15, 38, 52, 18, 14) ${\lambda _1} = 0.5399$ |
表4不同算法在Dolphin网络中的选点及

Table4.Node-selections and the corresponding

受控 节点数 | 度算法 | BC算法 | K-shell算法 | ESI算法 | 本文算法 |
l = 2 | (105, 333) ${\lambda _1} = 0.0881$ | (333, 105) ${\lambda _1} = 0.0881$ | (299, 389) ${\lambda _1} = 0.0383$ | (105, 42) ${\lambda _1} = 0.0879$ | (105, 23) ${\lambda _1} = 0.0894$ |
l = 3 | (105, 333, 16) ${\lambda _1} = 0.1169$ | (333, 105, 23) ${\lambda _1} = 0.1243$ | (299, 389, 424) ${\lambda _1} = 0.0392$ | (105, 42, 333) ${\lambda _1} = 0.1202$ | (105, 333, 23) ${\lambda _1} = 0.1243$ |
l = 4 | (105, 333, 16, 23)${\lambda _1} = 0.1518$ | (333, 105, 23, 578) ${\lambda _1} = 0.1490$ | (299, 389, 424, 552) ${\lambda _1} = 0.0494$ | (105, 42, 333, 16) ${\lambda _1} = 0.1481$ | (105, 333, 23, 42) ${\lambda _1} = 0.1535$ |
l = 5 | (105, 333, 16, 23, 42) ${\lambda _1} = 0.1801$ | (333, 105, 23, 578, 76) ${\lambda _1} = 0.1774$ | (299, 389, 424, 552, 571) ${\lambda _1} = 0.0520$ | (105, 42, 333, 16, 76) ${\lambda _1} = 0.1770$ | (105, 333, 23, 42, 41) ${\lambda _1} = 0.1843$ |
表5不同算法在Email网络中的选点及

Table5.Node-selections and the corresponding


Figure2. Visualization of nodes selections on the Dolphin network underfour strategies (


Figure3. Visualization of nodes selections on the Email network under four strategies: (a) Using the degree-based pinning scheme; (b) using the BC-based pinning scheme; (c) using the ESI-based pinning scheme; (d) using our proposed algorithm.
在上述仿真中可见, 本文算法相较于其他算法, 能计算出控制节点数较少情况下(l ≤ 6)的最优控制节点集, 一定程度上填补了准确找出最优受控节点算法的空缺. 但本文算法针对控制节点较多情况, 尽管能够一定程度上缩减计算量, 但剩余计算量仍然较大, 难以直接计算.
通过下面的例1说明删后主子矩阵及其特征值蕴含了原矩阵的隐藏信息.
例1 见图4, 原网络A, B不同, 删去节点4后的网络相同, 但是删后子矩阵不同, 其特征值也不同. 网络A的删后矩阵最小特征值为1, 网络B的删后矩阵最小特征值为0.4679. 这说明了节点4在网络A中比在网络B中更重要. 在这个简单的例子中, 虽然删后网络相同, 但是删后主子矩阵特征值保留了原网络的隐藏信息.

Figure4. The structures of networks A and B are different, but the remaining structures are the same after deleting node 4. (a) network A and its Laplacian matrix; (b) network A deleting node 4 and its Laplacian matrix; (c) network B and its Laplacian matrix; (d) network B deleting node 4 and its Laplacian matrix.
下面给出一些例子说明删后矩阵最小特征值方法应用在节点组重要性排序上的有效性.
例2 一个简单链状网络上的分析. 见图5所列5个节点的链状网络.

Figure5. Chain graph with N = 5 and its Laplacian matrix.
在该网络中, 对于一个节点的重要性排序, 节点1, 2, 3的


例3 一根水平樑如何选择两个基点(l=2)将它吊起呢?假设樑长度为1, 然后作细等分(只要细分足够密, 离散网络的节点组排序可以逼近连续问题的基点选择), 分点视为节点, 便成为N个节点的链. 设N=82, 根据对称性, 第一个基点节点从节点1—41中选, 另一个从82—42中选. 图6刻画了



Figure6. The relationship of

例4 寻找正方形网络中最重要的2个节点组成的节点组. 在正方形网格中选两个最重要的节点使得


Figure7. Pinning two nodes in a square lattice. The optimal options are shown by red nodes: (a) The square with 24 × 24 nodes; (b) the square with 31 × 31 nodes; (c) the square with 40 × 40 nodes; (d) the square with 45 × 45 nodes.
接着, 在正方形网络中寻找最重要的4个节点, 发现找到的最优节点组也处于对称位置, 但多数情况都不是位于对角线上, 大正方形网络分成4个小正方形网络, 最优控制节点在4个小正方形找中心节点偏移一格的位置上, 见图8(a)和图8(c)所示情形; 也有落在对角线上的情形, 见图8(b).

Figure8. Pinning four nodes in a square lattice. The optimal options are shown by red nodes: (a) The square with 24 × 24 nodes; (b) the square with 27 × 27 nodes; (c) the square with 32 × 32 nodes.
例5 社团的重要性. 比较三个社团在网络中的重要性, 见图9, 其中红色8个节点, 蓝色7个节点, 绿色6个节点. 它们的Laplacian矩阵的删后主子矩阵最小特征值分别为0.1905, 0.1792, 0.1597, 说明红色组最重要, 其次为蓝色, 最后为绿色.

Figure9. Compare the importance of three communities in a network, in which red, blue, and green colors implicit three different communities. This network is taken from Ref. [24].