什么是演化博弈?
Evolutionary Gaming Theory(EGT), 演化博弈,或曰,进化博弈。顾名思义,演化博弈同传统博弈的不同之处就在于,其模仿了类似于生物进化的形式。在一个达尔文式的框架之下,参与博弈的节点通过给定的规则竞争,然后根据结果改变自身的策略。与传统的博弈论不同的是,这里,参加博弈的双方不再是被认为具有超级理性的个体,而是在不断的试错、评估中,动态的调整自己的策略
本次博弈,我们将会尝试构建(指直接调用别人写的库)一个复杂的随机网络,该网络具有两种不同的节点,他们会按照一定的概率选择“分享”与“不分享”两种策略。每个节点会与图中所有的其他节点博弈,计算其收益,并依照一定的概率改变其策略,改变其初值,并查看最终的演变情况与稳定状态。
关于Networkx
networkx是一个python包,用于创建、操作和研究复杂网络的结构、动态和功能.NetworkX出生于2002年5月。最初的版本是由AricHagberg、DanSchult和PieterSwart在2002年和2003年设计和编写的。第一次公开发布是在2005年4月。
NetworkX提供:
- 研究社会、生物和基础设施网络结构和动态的工具;
- 一种适用于多种应用的标准编程接口和图形实现;
- 为协作性、多学科项目提供快速发展环境;
- 与现有的数值算法和C、C++和FORTRAN代码的接口;
- 能够轻松处理大型非标准数据集。
Networkx的相关知识将在下一篇文章里面讲解。
Reference:官方文档
什么是无标度网络?
Scale-free network, 无标度网络。在很多实际模型抽象出的网络当中,节点之间节点度的分布是不均匀的,是依照幂率分布的。少数节点连接着大多数的点,而大多数节点只与很少的点连接。如果用公式描述的话,则是: P ( k ) ∼ k − γ P(k) \sim k^{-\gamma} P(k)∼k−γ 。意即:在网络中,节点度为 k k k 的点所占的比例大致服从 k − γ k^{-\gamma} k−γ,其中 γ \gamma γ的取值大致为2~3之间。不过,关于无标度网络的具体数学特性,学界仍有争论(参考)。
无标度网络最为经典的生成算法是Barabási-Albert算法,其大致的内容为:
1.增长:从一个具有 m 0 m_0 m0 个节点的联通网络开始,每次引入一个新的节点, 并且连到 m m m 个已经存在的节点上,这里 m < = m 0 m <= m_0 m<=m