复杂网络期末复习总结
度、度分布的概念
度:在网络中,度是一个用来描述节点(即网络中的个体)的重要性的概念。节点的度是指与该节点直接相连的边的数量。
度分布:度分布是描述网络中每个节点度数的概率分布。它是一个统计量,可以反映整个网络的结构特征。
节点
n
的度k(n) = 该节点的连接数
平均度
<k>
度函数:
P(k) : 一个随机选取的节点有 k 个连接的概率
介数(中心性)概念
任意一对节点间最短路径所经过的次数
一个节点的介数就是一个节点在网络中所有最短路径中出现的频率
介数反映了相应的节点或边在整个网络中的作用和影响力,是一个全局几何量。
介数用于描述节点之间的连接强度和在网络中的重要性。介数可以通过计算节点之间的最短路径长度来衡量节点之间的连通性,从而反映节点在网络中的地位和作用。介数在现实生活中的意义非常广泛,以下是列举的一些可能的现实意义:
- 社交网络分析:介数可以帮助我们分析社交网络中节点之间的连接强度和信息传播效率。例如,高介数的节点可能在网络中扮演着信息传播的关键角色,对于社交网络中的群体动态和信息传播具有重要的影响。
- 网络安全:介数可以用于分析网络攻击路径和防御策略。例如,攻击者可以通过寻找高介数的节点来攻击网络,因此了解节点的介数分布可以帮助我们更好地防御网络攻击。
- 交通网络分析:介数可以用于分析交通网络中节点之间的连通性和运输效率。高介数的节点可能在网络中扮演着重要的交通枢纽角色,对于交通网络的运行和优化具有重要的意义。
介数中心性:
从每块中的任一节点到其他某块中的任一节点的最短路径必然要经过节点H。
这种以经过某个节点的最短路径的数目来刻画节点重要性的指标就称为介数中心性(Betweeness centrality),简称介数(BC)。计算介数中心性:
计算介数中心性(Betweenness Centrality)通常涉及以下几个步骤:
确定网络的最短路径:
- 对于网络中的每一对节点 ( (s, t) ),找出所有最短路径。最短路径可以使用如Dijkstra算法或Floyd-Warshall算法来计算。
计算每个节点的介数中心性:
- 对于每个节点 ( v )(不包括起点和终点),计算在所有最短路径中 ( v ) 出现的次数。
- 对于每一对节点 ( (s, t) ),如果存在多条最短路径,那么每条路径对节点 ( v ) 的贡献应考虑为 ( \frac{1}{\text{路径数}} )。
- 对于每个节点 ( v ),其介数中心性 ( C_B(v) ) 定义为它出现在所有最短路径中的次数的总和,通常标准化为 ( \frac{C_B(v)}{(\text{节点数} - 1)(\text{节点数} - 2)/2} )。
标准化:
- 为了使介数中心性的值与网络大小无关,通常对介数中心性进行标准化。
聚集系数
聚类系数是一个度量网络中节点聚集成群体的倾向。具体来说,它衡量一个节点的邻居节点之间相互连接的程度。在一个给定的节点上,聚类系数计算的是该节点的邻居之间实际存在的边数与可能存在的最大边数之间的比例。
例如,在社交网络中,一个人的聚类系数高意味着他们的朋友彼此之间也很可能是朋友。高聚类系数通常表明网络中存在紧密连接的社区或群体。相反,低聚类系数可能表明网络的联系更为分散。
在复杂网络分析中,聚类系数是理解网络结构特征的重要工具,它有助于揭示网络中的社区结构、小世界特性等。不同类型的网络(如社交网络、生物网络、技术网络)的聚类系数特性可能有显著差异。
集聚系数(群系数)(Clustering coefficient): 朋友的朋友还是不是朋友的情况
集聚系数及其分布
$$
M=\sum_{l\in E;x,y\in N_v}\varphi^x_l\varphi^y_l\C_v=\frac{M}{C^2_n}
$$
正则网络的集聚系数(a) 全连接网络
C = 1
(b) 最近邻居网络
C=3/4
(c) 星形网络 $$C_{star}=0\ or\ c_{star}=1$$
随机网络的集聚系数
C=p=<k>/N<<1
粒子群算法
粒子群算法是一种基于鸟群捕食行为的优化算法,它利用群体中的个体对信息的共享和运动的演化来求解问题。
粒子群优化(Particle Swarm Optimization,PSO)是一种基于种群的随机优化技术,其基本思想是受到鸟群觅食行为的启示。PSO 是一种群体智能(群体智能是一组集体智能,涵盖了多代理环境下的群体交互)。在一个 PSO 算法中,有一个种群在问题空间内飞行,每个个体(在这里被称为“粒子”)都有一个由速度和位置构成的向量。粒子通过追踪最佳粒子(个人的最佳)和整个群体中的最佳粒子(全局最佳)来更新其位置和速度。
PSO 算法的基本步骤包括初始化、速度和位置的设定、个体最佳和全局最佳的设定、更新速度和位置、以及更新个体最佳和全局最佳。
PSO 算法的主要优点包括:易于实现、收敛速度快、适用于解决不同类型的问题。这些优点使得 PSO 成为机器学习、神经网络和其他优化领域的重要候选者。
但是,虽然 PSO 有其优点,但它在算法的具体实现中仍有一些挑战需要克服,如学习率的设计、维数的影响以及全局搜索的难题等。因此,在使用 PSO 时,需要根据具体问题进行调整和优化。
什么是小世界网络
这种网络属性意味着一些彼此并不相识的人,可以通过一条很短的熟人链条被联系在一起
小世界网络是一种复杂网络模型,它具有两个主要的特点:
- 节点度分布遵循幂律分布,即节点的度k(与该节点直接相连的节点数目)服从一个非常窄的小世界网络分布。这使得网络中的很多节点具有相对较高的度,从而保证了网络的聚集程度和连通性。
- 网络的平均路径长度非常短,即小世界效应显著。这意味着信息在网络中的传播速度非常快,信息传播的效率非常高。
这种网络结构可以解释为,在网络中,一个人的朋友的朋友可能也是他的熟人,而网络中的节点数量却远少于实际的网络连接数量。这种特性使得小世界网络模型在社交网络、社交媒体、信息传播等领域得到了广泛的应用和关注。
无标度网络特点
无标度网络是一种特殊的网络模型,其特点是节点的度分布遵循幂律分布,即大多数节点的度数相对较低,但也有少数节点具有非常高的度数,呈现出一种无标度的特性。
无标度网络的特点主要体现在以下几个方面:
节点度分布的随机性:无标度网络中的节点度数分布是随机的,而且是非均衡的。这意味着节点的度数不是均匀分布的,而是集中分布在少数几个高度的节点上。
节点度的随机涨落:无标度网络中的节点度分布存在一个标度因子,而大多数节点的度数接近这个标度因子,但少数节点可能存在较大的偏差,从而导致节点的度数存在随机涨落。
网络的自相似性:无标度网络具有自相似性,即网络中的不同尺度具有相似的结构。这意味着在网络中,不同的节点之间存在着相似的关系,而这种关系并不是完全随机的。
总之,无标度网络是一种特殊的网络模型,具有高度聚集性和自相似性等特点。这些特点使得无标度网络在许多领域中得到了广泛的应用和关注,如社交网络、信息传播、互联网等。
六度分离概念
六度分离概念是一个社交概念,指认为世界上任何两个人之间都只有六个人连接。这个概念是由哈佛大学的心理学教授Stanley Milgram在1967年提出的,他通过“小世界理论”认为,通过六度分离,任何两个不相识的人都可以通过熟人朋友等建立联系,形成一个社会网络。这个概念也说明了社交网络中人与人之间的联系的普遍性和重要性。
混沌可预测性,混沌可预测吗?可长期预测还是可短期预测
混沌系统是否可预测取决于预测的时间尺度。一般来说,混沌系统在短期内的行为可能具有一定的可预测性,这是因为混沌系统通常具有敏感依赖于初值的特点,这意味着小的初始扰动在系统的演化过程中可能会放大,从而导致短期内的行为表现出一定的规律性。
然而,对于长期预测,混沌系统的可预测性变得更为复杂。一方面,混沌系统的动力学性质决定了它在长期内的行为可能呈现出随机性或复杂性,表现出“蝴蝶效应”的特点,即一个小扰动可能会在大范围内产生影响。这使得混沌系统的长期预测变得非常困难,甚至是不可能的。另一方面,对于某些混沌系统,如洛伦茨吸引子和 Rossler 吸引子等,在一定的条件下,长期行为也可能具有一定的可预测性。
总的来说,混沌系统是否可预测取决于预测的时间尺度。在短期内,混沌系统可能具有一定的可预测性,而在长期内,其行为可能呈现出随机性和复杂性,不可预测。不过,通过数学模型、计算机模拟和经验数据等手段,我们可以尝试对混沌系统进行短期或长期预测,从而为实际应用提供参考。
列举复杂网络相关期刊
复杂网络是一个多学科交叉的研究领域,覆盖物理学、计算机科学、数学和社会科学等多个领域。以下是一些主要的与复杂网络相关的期刊及其特点:
- Physical Review E
- 特点:专注于统计、非线性和软物质物理学的研究。它包括了复杂网络的物理和数学特性的研究。
- Social Networks
- 特点:专注于社交网络的理论和实证研究。涵盖社交网络分析的方法和应用,包括社交网络中的结构和功能。
- Network Science
- 特点:涵盖网络科学的广泛主题,包括网络结构、动态和建模。适合跨学科研究,涉及社会学、经济学、计算机科学等领域。
- Journal of Complex Networks
- 特点:集中在复杂网络的数学、物理和计算机科学方面。包括网络理论的发展和网络模型的应用。
- Advances in Complex Systems
- 特点:研究复杂系统的多学科期刊,包括复杂网络的理论和应用研究。关注系统之间的相互作用和网络行为。
- IEEE Transactions on Network Science and Engineering
- 特点:由IEEE出版,集中在网络科学和工程领域的应用研究。包括网络动力学、优化和网络中的数据分析。
- Chaos: An Interdisciplinary Journal of Nonlinear Science
- 特点:专注于混沌理论及其在各种系统中的应用,包括复杂网络。涉及物理、工程、生物学和其他自然科学领域。
- European Physical Journal B
- 特点:涵盖凝聚态物理、统计物理、原子分子和光物理等领域,包括复杂网络的物理特性研究。
- Computational Social Networks
- 特点:专注于计算方法在社交网络分析中的应用。包括网络模型、社交媒体分析和社交网络挖掘等。
- Discrete Dynamics in Nature and Society
- 特点:涉及自然和社会科学中的离散动态系统,包括网络理论、图论和应用数学在复杂系统中的应用。
用遗传算法求解函数最大值,课上专门说过。给一个函数,给一个范围,求最大值
下面解释用遗传算法求函数$$ f(x)=x2, x^2[0,31]$$的最大值的一些重要步骤。这里只介绍第一代群体的生成过程与结果
(1) 编码
由于在该例中$$x\in [0,31]$$,因此,将变量x编码为5位长的二进制形式。如x=13可表示为01101(2) 初始群体的生成
随机产生初始群体的每个个体,群体的大小为4(如表1).
(3)适应度计算
将每个个体x的函数值 f(x)作为该个体的适应度。如个体01101的适应度为 $$f(13)=13^2=169$$
(4) 选择
计算每个个体的适应度所占的比例 $$\frac{f_i}{\sum^n_{j=1}f_i}$$(5) 交叉与变异
这里采用简单交叉操作:首先对配对库中的个体进行随机配对;其次,在配对个体中随机设定交叉处,配对个体彼此交换部分信息(如表1)。于是得到4个新个体,这4个新个体就形成了新一代群体。 比较新旧群体,不难发现新群体中个体适应度的平均值和最大值都有明显的提高。由此可见,新群体中的个体的确是朝着期望的方向进化了。
利用混沌神经网络求解函数最小值
例如,求$\min\left( x_{1}^{2} + 2x_{2}^{2} \right) = E$
- 求偏导
$$\frac{\partial E}{\partial x_{1}} = 2x_{1}\frac{\partial E}{\partial x_{2}} = 4x_{2}$$
- 带入混沌神经网络
$$\begin{aligned}
& x_{1}(t) = \frac{1}{1 + e^{- y_{1}(t)\left( 1 + \varepsilon_{1}(t)) \right.\ }} \
& y_{1}(t + 1) = ky_{1}(t) + \alpha\left( - 2x_{1} \right) - z_{1}(t)\left( x_{1}(t) - I_{0} \right) \
& z_{1}(t + 1) = (1 - \beta)z_{1}(t) \
& \varepsilon_{1}(t + 1) = (1 - \gamma)\varepsilon_{1}(t)
\end{aligned}$$$$\begin{aligned}
& x_{2}(t) = \frac{1}{1 + e^{- y_{2}(t)\left( 1 + \varepsilon_{2}(t)) \right.\ }} \
& y_{2}(t + 1) = ky_{2}(t) + \alpha\left( - 4x_{2} \right) - z_{2}(t)\left( x_{2}(t) - I_{0} \right) \
& z_{2}(t + 1) = (1 - \beta)z_{2}(t) \
& \varepsilon_{2}(t + 1) = (1 - \gamma)\varepsilon_{2}(t)
\end{aligned}$$(tips!注意到,偏导的地方要写成偏导的相反数!并且有n个偏导就要写n*4个式子)
- 使用混沌神经网络迭代计算求解,得到最小值时,$x_{1} = 0,x_{2} = 0$,函数值$E = 0$。
交叉耦合构造散列函数
该方法以交叉耦合映象格子为核心,
充分利用其不同于普通时空混沌系统的优良的混乱扩散特性 .首先
,将明文分组并行注入交叉耦合映象格子的各格点
.然后通过多轮混沌迭代使其具有良好的混沌特性 ,并同时利用
Logistic映射作为密钥生成器,对结果进行混沌调制。主模块:
①将消息 M分割成 t个消息块 $M_{1}\ldots,M_{t}$ 每个消息块包含 n个字节
,且最后一个块填充 Mt =*…*10… 0l(M).其中,
l(M)表示M的长度的二进制形式, 长度为 64 bit,不足 64 bit时高位添 1个介符
1再补 0。n可根据实际需要取值。②将每个消息块中各字节元素按对应的ASCII码线性变换,线性变换公式为
$$C_{i,j} = \left{ \begin{aligned}
& - \frac{M_{i,j}}{128}\ \ \ \ & & 0 \leqslant A\left( M_{i,j} \right) \leqslant 127 \
& \frac{M_{i,j} - 128}{128}\ \ \ \ & & 128 \leqslant A\left( M_{i,j} \right) \leqslant 225
\end{aligned}\ (1) \right.\ $$③令第 i个消息块对应 $C_{i,1}\ldots,C_{i,n}$分别为交叉耦合映象格子中
n个格子初值,
且$x_{0}(1) = C_{i,1},x_{0}(2) = C_{i,2},\ldots,x_{0}(n) = C_{i,n}.$其中,
$x_{0}(0)$和$x_{0}(n + 1)$由密钥生成模块产生.④应用交叉耦合映象格子模型进行 R轮初值迭代, 得到
$x_{R}(1)\ldots,x_{R}(n).$⑤根据式 (1), 对 $x_{R}(1)\ldots,x_{R}(n)$进行逆变换,
得到$X_{R}(1)\ldots,X_{R}(n).$⑥将$X_{R}(1)\ldots,X_{R}(n).$循环左移$L_{i}$字节,得到
$Y_{R}(1)\ldots,Y_{R}(n).$⑦每个消息块依次执行 ③ ~ ⑥, t个消息块即可变为 t组
$Y_{R}(1)\ldots,Y_{R}(n).$⑧将得到的 t组 n字节 $Y_{R}(1)\ldots,Y_{R}(n).$按比特位异或,得到 8n bit的
Hash值.密钥生成模块:
①将 128 bit初始密钥线性映射到 0 ~ 1之间, 作为 Logistic映射的初值。
②第 i组消息在主模块中的子密钥以第 i-1 组中第 2个子密钥的值作为初值,
分别迭代 100 + A(i)和 100 +A(i)+n+1轮得到.③将最后一组消息所对应的第 2个子密钥作为初值,迭代 t轮, 得到
t个实数$s_{1}\ldots,s_{t}$.主模块中移动字节数 $L_{i} = s_{i}(n - 1)$