病毒传播问题的研究由来已久,而一再的病毒流行使得这一领域长期以来吸引着人们的注意。
在对病毒传播过程的描述各种模型中,“易感-感染-易感”(SIS )模型是研究者经常的选择。
关于SIS 模型,可以简单的描述为:一个易感的个体在和一个具有传染性的个体的接触中,在单位时间以一定的概率(β)被感染,同时,已感染的个体以概率(γ)被治愈又重新成为健康(易感)的个体。
实际中大量的问题可以利用网络(图)进行描述,比如在传染病问题的描述中,个体(人、动物、计算机等)可以看作网络的节点,当个体之间有可以导致病毒传播的接触时在两个个体之间连边。
比如,对于接触性传染病,个体存在两种状态,健康的(易感的)和已感染的;将这些个体作为网络的节点,由于两个个体之间的亲密接触可能导致病毒的传播,因此可在两者之间进行连边。
一个个体所接触的其它个体数量称为该节点的度(边数)。
所谓二部网络(图),是网络中的节点可分成两类(比如男性和女性,雄性和雌性等),边仅仅存在于两类节点之间。
在经典的传染病学模型中,总是假定病毒赖以传播的网络具有匀质性,即网络中节点有基本相同的度,但一些研究表明,这一假设远远背离实际情况。
因此,发现实际网络的一些特性,并研究这样的网络上的病毒传播问题具有理论和实际意义。
本题我们主要研究二部网络上的病毒传播问题,根据附件提供的一个二部网络(由10000个A 类节点和10000个B 类节点构成)的节点度的数据,完成以下任务:1.根据“附件”提供的数据data.xls ,选择适当的坐标,作出节点连接度和其出现频率的图形,观察这种类型的连接度数据大致服从什么分布?2.生成上述网络,可以采用如下的机制:先生成一个小型的二部图,随后在A类中加入一个新节点并向B 类中的节点连边,该边指向B 类中i 号节点的概率正比于i 号节点当前的连接度,而后在B 类中产生新节点,以同样的方式向A 类连边,当这两个步骤进行足够多次之后即可得到满足数据文件特点的网络。
根据这里所提供的生成机制,发现节点连接度分布的表达式。
3.在这类网络上考虑“易感-感染-易感”(SIS )模型,得到较平稳时期的得病数量以及A 类和B 类的得病比例。
(参数γ=0.1, 考虑到两类个体的感染率可以不同,分析中假定A 类个体的感染率为B 个体感染率的2倍,即A β=2B β,并分别取B 类个体的感染率B β=0.01,0.02,0.03)。
由于考虑PC 机的计算速度,模拟时网络规模不要太大,可选择500+500的二部网络。
4.对我们的模型进行理论的分析,看看是否和我们的模拟结果一致。
问题分析问题背景的分析:随着卫生设施的改善,医疗水平的提高以及人类文明的不断改善,诸如霍乱、天花等曾经肆虐全球的传染性疾病已经得到有效的控制。
但是,一些新的、不断变异着的传染病毒却悄悄向人们袭来。
20世纪80年代十分险恶的艾滋病毒突袭人间,至今仍在蔓延;随后SAS病毒、H1N1病毒广泛传播,给人们的生命财产带来极大的危险,一度引起了人们的恐慌。
但病毒传播问题的研究由来已久,而一再的病毒流行使得这一领域长期以来吸引着人们的注意。
长期以来,建立传染病的数学模型来描述传染病的传播过程,分析受感人数的变化规律,探索制止传染病蔓延的手段等,一直是人们关心的话题。
不同类型传染病的传播过程有其各自不同的特点,但这里我们不可能从医学的角度一一分析各种传染病的传播特点,而只是按照一般的传播机理建立数学模型。
对于问题一:选择适当的坐标,做出节点连接数和其出现频率的图形。
该题只需要我们对附件中的数据进行一定程度的处理,得到节点连接度与其出现频率的关系。
对于问题二:需要从一个小型的二部图出发,按照题目中要求的机制不断的进行推测。
先在A类中加入新的节点,按照一定的概率连接到B类中的i号节点;再从B类节点中出发,连接到A类中的节点。
通过不断地重复这个步骤,找出节点连接度分布的表达式。
对于问题三:利用问题二的产生机制,在A类中加入新的节点,先判断它是否患病,再判断与之相连的B类节点是否患病,在相连的基础上,判断它们能否能够传染。
再从B类节点出发,连接到A类中的节点。
通过不断地重复这个步骤,得到较平稳时期的得病数量以及A类和B类的得病比例。
对于问题四:需要对自己的模型进行理论的分析,然后和问题三中计算机模拟出来的数据进行比较,判断计算机模型的结果与理论之间的差距。
基本假设假设一:假设人在感染病毒后,可能被治愈,但不会死亡。
假设二:二部网络是度不相关的。
假设三:一个节点的感染密度仅仅是该节点度的函数。
假设四:问题二和问题三的随机机理是符合实际的。
假设五:问题三中的病人数可以由电脑随机定。
模型建立问题一:节点连接度和其出现频率的关系问题一的思想:因为这是一个数据处理的过程,所以我们先是对数据进行处理,得到A 、B 类节点连接度()A d i 、()B d j 及其出现概率()A f j 、()B f j 的表格。
为了发现它们之间服从什么分布,我们先是用Matlab 软件中的cftool 指令拟合出表格中的数据服从的曲线,然后再对这条曲线进行验证,是否可以作为概率分布的曲线,最终得出它们服从的分布。
具体步骤如下:步骤一:数据处理由附件中的数据,我们可以整理出A 、B 两类节点连接度()A d i 、()B d j 与其出现频率()A f j 、()B f j 的数据,如表1和表2表1 A 类节点连接度()A d i 及其出现频率()A f jA 类节点连接度()A d i出现频率()A f j A 类节点连接度()A d i 出现频率()A f j A 类节点连接度()A d i 出现频率()A f j 10.6626 17 0.0010 33 0.0001 20.1679 18 0.0009 35 0.0001 30.0703 19 0.0009 37 0.0001 40.0316 20 0.0003 38 0.0002 50.0185 21 0.0007 39 0.0003 60.0109 22 0.0002 41 0.0001 70.0077 23 0.0005 45 0.0001 80.0054 24 0.0002 47 0.0001 90.0041 25 0.0001 48 0.0001 100.0027 26 0.0001 49 0.0001 110.0024 27 0.0001 53 0.0001 120.0017 28 0.0002 64 0.0001 130.0016 29 0.0003 68 0.0001 140.0011 30 0.0001 72 0.0001 150.0009 31 0.0001 75 0.0001 16 0.0010 320.0001 96 0.0002表2 B 类节点连接度()B d j 及其出现频率()B f jB 类节点连接度()B d j 出现频率()B f j B 类节点连接度()B d j 出现频率()B f j B 类节点连接度()B d j 出现频率()B f j1 0.6639 18 0.0006 38 0.00012 0.1696 19 0.0005 39 0.00013 0.0644 20 0.0010 40 0.0001 4 0.0353 21 0.0003 41 0.00015 0.0186 22 0.0002 44 0.0001 6 0.0111 23 0.0004 46 0.00017 0.0078 24 0.0001 48 0.0001 8 0.0065 25 0.0001 49 0.0001 9 0.0034 27 0.0001 50 0.0001 10 0.0042 28 0.0003 54 0.0001 11 0.0023 29 0.0002 59 0.0002 12 0.0015 30 0.0002 61 0.0001 13 0.0013 31 0.0003 65 0.0001 14 0.0009 32 0.0001 71 0.0001 15 0.0007 33 0.0001 73 0.0001 16 0.0011 34 0.0002 86 0.0001 17 0.0009 36 0.0001 由表1和表2的数据,我们通过Matlab 软件中的cftool 指令对表1和表2中的数据进行曲线拟合(程序见附录一),结果如图1和图2。
图1 A 类节点连接数及其出现频率关系A 、B 类节点连接度的分布函数为:()() 2.0630.6639A A f i d x -=,()()0.2.0660.6653B B f j d j -=, (1)图2 B 类节点连接度及其出现频率关系它们的拟合程度均为0.9994,拟合程度非常的接近1,所以在拟合方面,可以认为它们是符合的。
但作为概率密度函数,其性质之一是()1f x dx +∞-∞=⎰.但(1)式是离散的函数,其概率总和为1的验证可转化为()11nx f x ==∑.(2)即对(1)式进行(2)式的检验。
由Matlab 软件(附录程序二)验证得知,其概率之和不能达到1.所以需要对表1和表2的数据重新进行处理。
步骤三:数据的再处理由步骤二可知,如果我们直接对数据进行拟合,拟合度最好的却不一定是能用的,因为它的概率之和不一定为1。
所以我们先对概率和为1这一性质进行检验,再从概率和为1的前提下挑出拟合程度最好的。
在以上的思想下,我们运用Matlab 软件再次编程。
编程的思想:由步骤二中画出的散点图以及其拟合函数,我们先假设其概率分布函数为形如r y ax -=的幂律函数,且()1,10r ∈;其中r 不是整数(从问题四的理论分析考虑)。
因为要求所有x 出现的概率总和为1,所以先假定当x 的值为20000的时候为无穷大,然后在()2000011x f x ==∑的前提下分别求出(1,10)r ∈时其对应的残差,然后选择残差最小的那个r。
具体程序见附录程序三。
在该程序运行之后,我们得到A、B两类个体连接度与其出现频率的散点图。
如图3和图4。
图3 A类节点连接度及其出现频率图4 B类节点连接度及其出现频率图5 拟合后A类节点连接度及其出现频率关系图6 拟合后B 类节点连接度及其出现频率关系并求出A 、B 类概率分布函数中的参数分别为:2A r =.16,0.6593A a =,2.17B r =,0.6622B a =此时我们把散点图和幂律函数连接在一起(这样方便我们观察)。
如图5和图6可以发现,A 类节点连接度的概率分布的函数关系是 2.170.6622y x -=。
B 类节点连接度的概率分布的函数关系是 2.170.6622y x -=。
它们的残差分别为20.9989A R =,20.9988B R =.这两条曲线对A 、B 两类的拟合程度均非常的好。