基于Matlab的传染病动力学模型仿真平台 - 范文中心

基于Matlab的传染病动力学模型仿真平台

12/30

基于Matlab的传染病动力学模型仿真平台

Simulation Platform of Epidemic Dynamics Model Based on MATLAB 摘要:开发了基于Matlab的传染病动力学模型仿真平台,通过对传染病动力学模型进行动态仿真,可以对传染病动力学模型的变化进行观察和分析,同时在该仿真平台上,采用时滞微分方程、脉冲微分方程等数值算法实现对传染病模型进行数值模拟,是一个十分实用、方便的仿真操作平台。

关键字:传染病动力学模型;数值仿真;Matlab;时滞微分方程

Abstract:A simulation platform of epidemic dynamics model is developed by using Matlab. The simulation platform can be used in dynamics simulation of epidemic dynamics model, and the simulation could be used in results analysis. Based on the platform, Delay differential equations and impulsive differential equations of numerical algorithm can be used to numerical simulation of epidemic model and the multivariable control system simulation.

Keywords: Epidemic Dynamics Model,Numerical Simulation,Matlab,Delay Differential Equations

1 引言

近年来,作为传染病研究的手段之一,利用计算机对传染病动力学模型进行数值仿真越来越受到人们的重视。诸如MATLAB中ODE45、DDE23等程序包,被人们普遍使用于传染病动力学模型的仿真中。近年来随着研究工作的深入,大量新的模型也逐渐受到人们的重视,如:时滞微分传染病模型;脉冲传染病模型;常微分、偏微分混合的传染病模型等。由于ODE45、DDE23等程序包不是针对传染病动力学模型所开发,无法解决以上这些模型的仿真问题,这些都给相关研究工作造成了一定的困难。本文利用MATLAB提供的图形化用户界面(GUI),结合时滞微分方程、脉冲微分方程等数值算法,并考虑传染病动力学模型的实际研究情况,开发了一套简单、实用的传染病动力学模型数值仿真平台。 2 传染病动力学模型的建立

从模型的数学结构来看,传染病动力学模型分为常微分模型、时滞微分模型、脉冲微分模型和偏微分模型等多种形式。以下以脉冲接种作用下的时滞传染病动力学模型为例,介绍模型的建立方法。“时滞”可以反映传染病的潜伏期,患者对疾病的感染期和恢复者对疾病的免疫期等实际现象,因此使用“时滞”模型更贴近实际。如Cooke等人将时滞因素引入到SEIRS传染病模型中,用时滞项来反映传染病的潜伏期,建立了如图1所示的仓室框图。

图1 SEIRS模型的仓室框图

在此模型中,将传染地区的人群分为四类:用S(t),E(t),I(t),R(t)分别表示t时刻易感者、在潜伏期的感染者、染病者和移出者的数量。箭头所指方向可以清楚的显示出各类人群流动的情况,τ>0是模型的时滞项,代表疾病在人群中的潜伏期,r>0表示感染者被治愈后返回到易感人群中的速率,β>0是传染率系数,δ为感染者被治愈的比例,称为恢复率系数。在以上假设条件下,同时考虑脉冲接种因素,则对应的传染病动力学模型为:

dS/dtI(t)S(t)I(t)dE/dtS(t)I(t)S(t)I(t) (1) dI/dtS(t)I(t)I(t)

dR/dtI(t)I(t)

S(nT)(1p)S(nT) nZ (2) R(nT)R(nT)pS(nT)

其中p是类易感群体S(t)的脉冲接种率,T为脉冲接种周期。上述模型实质上是一个脉冲作用下具有时滞的微分方程组,对上述脉冲时滞微分模型进行数值仿真,就是对系统(1)

(2)求解,通过研究该方程组解的变化,从而得到传染病的发展趋势等相关内容。 3 传染病动力学模型仿真系统的设计与实现

开发传染病动力学模型仿真系统的主要目的是建成一套能适应目前传染病动力学研究需要,且方便、快捷的数值仿真平台。

3.1 系统组成

传染病动力学模型仿真系统主要分为四个部分:

1)模型分类 系统可仿真的传染病动力学模型包括:常微分传染病模型、时滞微分传染病模型、偏微分传染病模型、常微分与偏微分混合型传染病模型等。

2)参数设定 对模型中的各项参数进行设定,其中包括:对种群类别的设定(如仿真SIR模型,即需选定易感类群体S(t)、染病类群体I(t)、恢复类群体R(t));仿真图形中曲线颜色、曲线线型以及曲线宽度、群体初始量的设定等。此外还可以对传染病模型的相关系数进行设定,如:种群出生率、传染率系数、脉冲接种率、时滞量和垂直传染率等。

3)仿真图形显示 系统图形仿真可将模型解的变化(即传染病的发展趋势等内容)以图像的形式显示出来,图像形式包括:二维曲线图,三维曲线图和三维曲面图。

4)文件输出 系统可以将绘制的图形和数值试验数据以文件形式保存输出。

3.2 系统采用的数值算法与仿真实现

考虑运算速度和精度的需要,系统对不同的模型采用不同的数值方法,其中常微分模型采用嵌入式Runge-Kutta算法进行仿真,偏微分模型系统利用Matlab中PDE工具箱进行仿真。下面只给出脉冲作用下非线性时滞传染病模型的数值解法。首先时滞微分方程的一般形式如下:

y(t)f(t,y(t),y(t)),tt0 (3) y(t)(t),tt0

这里:f:[0,]CCC,Y:RC,0,(t)C是给定向量函数,其中y(t)是方程的时滞项。下面用Runge-Kutta法给出求解上述问题的数值解法形式。

T令(A,b,c)表示给定的Runge-Kutta方法,其中A(aij)ss,b(b1,b2,,bs),NNNNN

c(c1,c2,,cs),bi1,ci[0,1],1is。对应的Runge-Kutta方法具体形式如Ts

i1

下:

sYiyn1hijf(tn1cjh,Yj),i1,,sj1  (4) syyhbf(tch,Y)nn1in1jii1

取步长h/m,m为正整数,将(4)式应用于方程(3),得:

s(n)Yyhf(tch,Y,Z),i1,,sin1ijnjjjj1  (5) syyhbf(tch,Y,Z(n))nn1injiji1

如果用“~”符号表示精确解和数值解的近似,则yn~y(tn),Zj(n)~y(tncjh)代表第n次迭代后时滞项的近似值,其中tnt0nh。此外,对于脉冲项的处理,可以将离散点tn整除脉冲周期T,若tn能整除脉冲周期T,则yn可加上或减去相应的数值。将以上算法应用于系统(1)(2),其对应的MATLAB核心代码如下:

%ST等存贮离散网格点处计算值;tau为时滞项;h为步长%

ST=[];ET=[];IT=[];RT=[];m=tau/h;…

for i=1:tf/h % tf为运算终值 %

if (i

z1=exp(t-tau);

z2=exp(2*(t-tau));

else % t>0时,所取离散网格点处数值 %

z1=ST(1,i-m);

z2=IT(1,i-m);

end

%脉冲项处理,T为脉冲接种周期%

if mod(i*h,T)==0

st=(1-p)*st;

rt=rt+p*st;

end

%以下为四级四阶Runge-Kutta方法,F1,F2,F3为方程右端函数%

k11=F1(beta,gamma,y1,y2,z2);

k21=F2(beta,gamma,y1,y2,z1,z2);

k31=F3(beta,delta,y2,z1,z2);

k12=F1(beta,gamma,y1+h*k11/2,y2+h*k21/2,z2);

k22=F2(beta,gamma,y1+h*k11/2,y2+h*k21/2,z1,z2);

k32=F3(beta,delta,y2+h*k21/2,z1,z2);

k13=F1(beta,gamma,y1+h*k12/2,y2+h*k22/2,z2);

k23=F2(beta,gamma,y1+h*k12/2,y2+h*k22/2,z1,z2);

k33=F3(beta,delta,y2+h*k22/2,z1,z2);

k14=F1(beta,gamma,y1+h*k13,y2+h*k23,z2);

k24=F2(beta,gamma,y1+h*k13,y2+h*k23,z1,z2);

k34=F3(beta,delta,y2+h*k23,z1,z2);

st=st+h/6*(k11+2*k12+2*k13+k14);

et=et+h/6*(k21+2*k22+2*k23+k24);

it=it+h/6*(k31+2*k32+2*k33+k34);

rt=1-st-et-it;

ST=[ST st];ET=[ET y2];IT=[IT y3];RT=[RT y4];

t=t+h;

end

3.3 仿真平台运行实例

以脉冲作用下的常微分SIR传染病模型为例,介绍传染病动力学模型仿真系统的部分界面。图2为参数设定窗口,用户可以在该界面中选择模型的各项参数,包括群体类别、图形参数以及脉冲接种率等,图3为模型仿真结果的三维图形输出窗口。

图2 选择模型参数窗口

图3 模型仿真图像窗口

4 结论

由于要建立与实际情况接近的数学模型,就需要增加模型系统的复杂性,从而对用纯粹数学方法研究模型造成了很大的困难。如:种群规模变动的具有时滞的传染病模型的动力学性态、脉冲作用下具有年龄结构的AIDS模型等问题,目前在理论上还没有得以完全解决。本文所开发的传染病动力学模型仿真系统以MATLAB为软件平台,应用GUI开发用户界面,并利用微分方程数值算法模拟传染病模型的各种性态,验证理论分析结果,从而为传染病动力学的相关科研工作提供了简捷、实用的仿真平台。

本文作者创新点:

本文利用MATLAB提供的图形化用户界面(GUI),结合时滞微分方程、脉冲微分方程等数值算法,开发了传染病动力学模型数值仿真平台,有效地解决了ODE45、DDE23等数值算法程序包无法直接对时滞微分传染病模型、脉冲传染病等新模型求解的问题。

参考文献

[1]M. E. Alexander, S.M. Moghadas. Periodicity in an epidemic model with a generalized nonlinear incidence[J]. Math. Biosci., 2004,189(1): 75–96.

[2]K. L. Cooke, P van den Driessche. Analysis of an SEIRS epidemic model with two delays. J. Math. Biol., 1996, 35(2): 240-260.

[3]魏巍,舒云星.基于非线性观测器的疾病发生率的估计[J]. 微计算机信息,2007,1: 26-27.

[4]匡蛟勋.泛函微分方程的数值处理[M]. 北京: 科学出版社.1999.


相关内容

  • 雷达电子战仿真系统设计
    第8卷第4期 2010年8月 信息与电子工程 V01.8.No.4Aug.,2010 INFORMATIONANDELECTRONICENGINEERING 文章编号:1672-2892(2010)04-0393-05 雷达电子战仿真系统设 ...
  • 四旋翼飞行器的动力学建模及PID控制
    第31卷第1期 V01.31 No.1 辽宁工程技术大学学报(自然科学版) JournalofLiaoningTechnicalUniversity(NaturalScience) 2012年2月 Feb. 2012 文章编号:1008-0 ...
  • 三相瞬时功率理论在有源电力滤波器仿真中的研究
    第35卷第6期2013年12月 光学仪器 OPTICAL V01.35,No.6December,2013 INSTRUMENTS 文章编号:1005-5630(2013)06-0058-06 三相瞬时功率理论在有源电力滤波器仿真中的研究 ...
  • 伺服驱动器测试方法的仿真研究
    第7期2012年7月 组合机床与自动化加工技术 Modular Machine Tool &Automatic Manufacturing Technique No.7Jul.2012 文章编号:1001-2265(2012)07- ...
  • MATLAB在电力系统三相短路故障分析中的应用
    M ATLAB 在电力系统三相短路故障分析中的应用电子质量(2013第10期) MAT LAB 在电力系统三相短路故障分析中的应用 Application of M ATLAB in the Analysis of the Three-ph ...
  • 移动通信课程设计
    直接序列扩频通信系统仿真设计 摘 要:本文主要论述了直接序列扩频通信的基本原理,分析了直接序列扩频通信抗干扰的性能,说明了直扩系统发送端的功能框架,根据原理图完成扩频通信仿真系统发射机.接收机部分模块设计:误码率分析模块部分,完成前后扩频解 ...
  • 磁力提升型控制棒驱动机构提升动作过程动力学分析
    磁力提升型控制棒驱动机构提升动作过程动力学分析 磁力提升型控制棒驱动机构提升动作过程动力学分析 邓 强,陈西南,刘 佳,杨 博,杨晓晨,于天达 (中国核动力研究设计院核反应堆系统设计技术重点实验室,四川 成都 610041) 摘要:磁力提升 ...
  • 蓝宙电子智能创新实验室
    智能创新实验室建设方案 芜湖蓝宙电子科技有限公司 -飞思卡尔大学计划官方合作伙伴 版 本:Version 2.0 所 有 者:蓝宙电子 日 期:2014.03.12 目录 一. 二. 实验室介绍 . .................... ...
  • 四旋翼飞行器仿真 实验报告
    动态系统建模仿真 实验报告(2) 姓 名 : 学 号 : 指导教师 : 院 系 : 2014.12.28 四旋翼飞行器仿真 1实验内容 基于Simulink 建立四旋翼飞行器的悬停控制回路,实现飞行器的悬停控制: 建立GUI 界面,能够输入 ...
  • 一种新型的电梯能量回馈并网系统
    计算机系统应用 http://www.c-S-&org.ca 2012年第2l卷第3期 一种新型的电梯能量回馈并网系缈 彭继慎,王伟伟,宋立业 (辽宁工程技术大学电气与控制工程学院,葫芦岛125105) 摘要:针对普通电梯变频器不能 ...