
数事载本与变用
MATLAB在网络传染病模拟中的应用
贾俊波
(中北大学理学院山西太原030051)
应用研究
摘要:网络传染病是网络科学研究的一个重要课题,但由于疾病的特殊性,在人群中遗行传染病试验是不可行的。本文以单网络传染病模型为例,介绍了使用MATLAB对模型进行随机模拟的原理以及过程,并且分步骤设计出了相应的MATLAB模拟程序,得到了网络传染病的随机模拟结果,从而为网络传案病模型的正确性提供了可行的验证方法。
关键词:复杂网络MATLAB网络传染病随机模拟
中图分类号:0175 1引言
文献标识码:A
文章编号:1007-9416(2016)02-0107-02
网络传染病模型将所研究的人群抽象成网络,所研究人群的接
随着信息技术的发展",人们步人了一个网络化的时代。生产生活中的interet网、信息通信网、社交明友网、交通运输网、电力输送网、演员合作网、文章引用网等各种各样的复杂网络时时处处围绕在人们身边。面对这些网络化的复杂系统,网络科学应运而生,它借用数学中图论的知识,将所研究的复杂系统抽象成由节点和节点之闻的连边组成的网,从面进行研究,比如intermet网就是将具有独立处理信息能力的计算机看作节点,计算机之间的连接看作连边。社交朋友网就是将社会中的每个人看作节点,人与人之间的朋友关系看作连边。
网络传染病是网络科学中的一个重要研究课题",它将每个人看作网络中的节点,将人与人之间的接触看作网络节点之间的连边,从面具有传染性的疾病在人们之间的传插播就可以用网络科学的方法来研究。针对具体传染病的传播机制,以及所考患网络的拓扑结构,网络科学专家建立了不同的网络传染病模型,用来研究疾病的传播情况和预测传染规模,从而采取相应的措施来控制疾病的蔓延。但由于疾病的特殊性,疾病不能够在人群中进行试验,所建立模型的正确性不能通过试验得到验证,因此计算机的仿真或模拟对网络传染病的研究就显得尤为重要。MATLAB是一个数值计算功能强大且易于编写程序的软件,本文以一个简单的网络传染病模型为例,具体研究了MATLAB在网络传染病模拟中的原理和实现过程。 2网络传染病模型
2.1人群网络
300 250 200 150 100
50
1
%
5
10
+β =0.2, y=0.2 β=0.2, y=0.8
15
20
图1网络上染病者随时间变化图
25
触方式不同,对应的网络拓扑结构也就不同。常见的网络主要有四种,包括规则网络、随机网络、小世界网络和无标度网络。如果所研究的人群为同在一个教室的全班同学,则网络可认为是随机网络中的全连通图,若所研究的人群为一个城市或国家的人群,则网络可认为是无标度网络,
2.2疾病传播机制
疾病的传插机制也与所研究的传染病有关,对于嘛疹、症疾、肺结核、性病、艾滋病等诸多具体的疾病,它们的传插涉及到接触传播、垂直传播和虫媒传播等不同传播方式。同时还会涉及到是否考患疾病的潜伏期,对病人的隔离,因病或因接种而获得的免疫力以及免疫力的丧户等因素。
根据人们的健康状况,通常将人群分为易感者(S)和染病者(I),因此网络中的节点将对应于易感者、染病者两种状态中的一种。传染病的传播通常考虑的是接触传播,即染病节点通过接触将疾病以一定概率β传染给易感者节点,染病节点同时以另一概率恢复为易感者节点。
2.3网络传染病模型
为了MATLAB程序的简便以及以后的扩展,这里考虑一种简单的网络传染病模型。假设所研究的网络为静态网络,即节点不会增加和减少,连边也不会断开和重连。同时所研究的节点状态只有两种,即S和I。对应的网络传染病模型为:
[d[]
=P[S][] p
+ L dt
(1)
其中,[S]和[]分别表示易感者节点和染病者节点在t时刻的
数量,其中[S]表示易感者和染病者的连边数。 3MATLAB的模拟过程
使用MATLAB对网络传染病模型进行模拟时,可以将模拟过程分为三个步骤,分别是网络的初始化、网络的演化和网络的统计。
3.1网络的初始化
网络的初始化就是使用MATLAB设置初始化的网络,主要包括设置初始网络的邻接矩阵4和网络节点状态向量B。其中,
a α,.2 -- a,,N
=V
A2, d2.2 *. d.
, ,**,
(2)
邻接矩阵A为N×N的矩阵,N为网络的节点数,元素a,为
收移日期:2015-12-16
作者简介:贯俊波(1990一),男,山西普相人,在读硕士,主要从事复杂网络方面的研究
107