1 复杂网络攻击策略
1.1 复杂网络攻击策略评价函数
1.2 复杂网络攻击策略计算
2 二进制粒子群算法原理
3 基于二进制粒子群算法的攻击策略
3.1 二进制粒子群向量表示
3.2 基于二进制粒子群算法的攻击策略适应度求解算法
表1 基于二进制粒子群算法的攻击策略适应度求解算法 |
| 输入:粒子Xi、邻接矩阵A |
|---|
| 输出:粒子Xi的适应度函数值 |
| 步骤:① 根据t时刻粒子 ,对网络的邻接矩阵A进行置零操作得到剩余网络邻接矩阵A'; ② 初始化节点访问向量visited和信息记录矩阵MN×N,令k=1; ③ 根据向量visited和矩阵MN×N两个判定条件,依次遍历粒子 的每一个节点 ,如果 未被访问且存在,利用深度优先搜索的思想递归搜索 所在连通子图的所有节点,并将 所在连通子图的所有节点记录到矩阵MN×N的第k行,令k=k+1; ④ 若k≤N转③,否则循环结束; ⑤ 根据矩阵M的记录结果计算剩余网络的连通分支数ω(G-S)和最大连通子图的阶数τ(G-S),根据适应度函数计算粒子 的适应度值。 |
3.3 基于二进制粒子群的攻击策略求解算法
表2 基于二进制粒子群的攻击策略求解算法 |
| 输入:邻接矩阵A、节点访问向量visited、信息记录矩阵M |
|---|
| 输出:网络G的最优适应度函数值和最优粒子解 |
| 步骤:① 初始化参数w、c1、c2、Vmin、Vmax、进化次数maxgen和种群规模sizepop。 ② 随机初始化粒子位置pop(i,j)和速度V(i,j),并计算适应度值fitness(i); ③ 计算适应度函数个体极值fitnessgmin和群体极值fitnesszmin并利用gmin和zmin记录对应粒子; ④ 利用公式(2)和(3)计算粒子第t+1时刻的速度; ⑤ 根据粒子第t+1时刻的速度,更新第t+1时刻粒子的位置; ⑥ 利用基于二进制粒子群算法的攻击策略适应度值算法计算第t+1时刻粒子的适应度函数值; ⑦ 利用第t+1时刻粒子的适应度值更新fitnessgmin、fitnesszmin、gmin和zmin; ⑧ t达到迭代次数算法停止,否则转④。 |
中国指挥与控制学会会刊 