舆论的力量---数学建模初探(SI模型)
在高中时除了物理竞赛没有学习外,竞赛的五大学科剩下的四门均有所涉猎及参加,因而精力分散太多。因此下定决心大学时可以广泛涉猎知识,但是主攻的竞赛只能有两个ACM和MCM,如今虽然高考完挂,但学术之心尚存,而SIR模型对我来说便是数学海洋中的一块拾贝
舆论的力量一向是被政府所重视的,所以在战时拥有自己的电台,掌握说话权是相当的重要。对于商人,他们希望他们促销打折的消息迅速的传播,同样对于普通百姓来说,家长里短,一个消息的传播往往是复杂而多变的,因此研究消息传播的一般规律显得尤为重要。现在我们迫切想知道一般来说对于一个消息,经过一段时间后能够有多少人得到它?
为方便讨论,做如下假设:初始时知道这个消息的人数为P0,经过时间t后知道这个消息的人数为f(t)。
我们先猜想下f(t)会有些什么性质?首先它是递增的---短期内如果不是患上阿尔兹海默症的人群的话,知道一个消息的人数只可能越来越多。其次可以预计当t趋向于正无穷时f(t)将会趋于一个定值---全人类的数目是有限的,当时间过得越长,消息的扩散也就趋于饱和,
尝试建立模型,假设每人单位时间内会接触k个人并将消息准确传播给这k个人,那么在△t内知道这一消息增加的人数为f(t+△t)-f(t),它又等于t时刻知道这一消息的所有人在△t这段时间内传播的人数,即可列出方程:f(t+△t)-f(t)=kf(t)* △t
由f(t+△t)≈f(t)+f’(t)* △t将上式改写成微分方程:df/dt =kf(t)
该方程属于可分离变量型,容易求出通解为f(t)=C*e^(kt)将f(0)=P0代入求出特解为:f(t)=P0*e^(kt)
突然我们发现,花了那么大力气竟然求出来一个无界的函数!!分析过程的每一步,我们发现,问题出在f(t)个人单位时间接触的k个人除了不知道这个消息的人外还有已经知道这个消息的即f(t)中的人,这就迫使我们另辟蹊径,即本文的主题SI模型。
设消息受众的总人数为N(例如某市百货商场打折这一消息的N就是该市的总人数)f(t)不再表示t时刻知道消息的人数,而是t时刻知道消息的人数占总人数N的比率,所以此时知道消息的人数表示成N*f(t),而不知道该消息的人数为N*(1-f(t)),这样建模的好处便是我们顺利分出了知道消息的人与不知道消息的人, 每人每天接触的k人里有k*f(t)是以前听过消息的,k*(1-f(t))人是以前没听过消息的
k的意义如前所述,因此在△t时间内知道该消息增加了N*[f(t+△t)-f(t)],类似于上面一个模型的讨论,只是k变成了k*(1-f(t)),f(t)成了N*f(t)得到:
N*[f(t+△t)-f(t)]=[k*(1-f(t))]*[ N*f(t)]* △t
对上式进行同样的处理得到微分方程:df/dt=k*[1-f(t)]*f(t)
等等这个微分方程怎么那么像混沌里面的虫口模型的方程?没错这个就是著名的逻辑蒂斯方程,只是在研究混沌现象时我们研究它的离散形式也就是差分方程,而这里我们研究的是微分方程,本质上是一样的。顺便一提,还记得高中生物书上说当种群没有受到食物,空间等因素的制约时是J型曲线,反之是S型曲线么?J型曲线对应的便是上面一个模型 ,而S型曲线即对应这里的逻辑蒂斯方程
这个微分方程是有解析解的,并且仍然属于可分离变量型的。结果很容易求,但由于百度空间传图不方便,自行脑补吧
然后就是这个模型最初的建立不是研究消息的传播,而是传染病的传播,因此除了SI模型外还有SIS(可治愈并被再次感染)SIR(可治愈并获得免疫不再被感染),其中SIR模型的微分方程无解析解,因此得用maltab进行分析,当然也可以用欧拉法自行画出微分方程的图。如今相关模型已经成为一门系统的学科即传染病动力学。
舆论的力量---数学建模初探(SI模型)的更多相关文章
- Python小白的数学建模课-B5. 新冠疫情 SEIR模型
传染病的数学模型是数学建模中的典型问题,常见的传染病模型有 SI.SIR.SIRS.SEIR 模型. 考虑存在易感者.暴露者.患病者和康复者四类人群,适用于具有潜伏期.治愈后获得终身免疫的传染病. 本 ...
- Python小白的数学建模课-B6. 新冠疫情 SEIR 改进模型
传染病的数学模型是数学建模中的典型问题,常见的传染病模型有 SI.SIR.SIRS.SEIR 模型. SEIR 模型考虑存在易感者.暴露者.患病者和康复者四类人群,适用于具有潜伏期.治愈后获得终身免疫 ...
- Python小白的数学建模课-B4. 新冠疫情 SIR模型
Python小白的数学建模课-B4. 新冠疫情 SIR模型 传染病的数学模型是数学建模中的典型问题,常见的传染病模型有 SI.SIR.SIRS.SEIR 模型. SIR 模型将人群分为易感者(S类). ...
- Python小白的数学建模课-09 微分方程模型
小白往往听到微分方程就觉得害怕,其实数学建模中的微分方程模型不仅没那么复杂,而且很容易写出高水平的数模论文. 本文介绍微分方程模型的建模与求解,通过常微分方程.常微分方程组.高阶常微分方程 3个案例手 ...
- Matlab与数学建模
一.学习目标. (1)了解Matlab与数学建模竞赛的关系. (2)掌握Matlab数学建模的第一个小实例—评估股票价值与风险. (3)掌握Matlab数学建模的回归算法. 二.实例演练. 1.谈谈你 ...
- Python小白的数学建模课-16.最短路径算法
最短路径问题是图论研究中的经典算法问题,用于计算图中一个顶点到另一个顶点的最短路径. 在图论中,最短路径长度与最短路径距离却是不同的概念和问题,经常会被混淆. 求最短路径长度的常用算法是 Dijkst ...
- Python小白的数学建模课-10.微分方程边值问题
小白往往听到微分方程就觉得害怕,其实数学建模中的微分方程模型不仅没那么复杂,而且很容易写出高水平的数模论文. 本文介绍微分方程模型边值问题的建模与求解,不涉及算法推导和编程,只探讨如何使用 Pytho ...
- Python小白的数学建模课-12.非线性规划
非线性规划是指目标函数或约束条件中包含非线性函数的规划问题,实际就是非线性最优化问题. 从线性规划到非线性规划,不仅是数学方法的差异,更是解决问题的思想方法的转变. 非线性规划问题没有统一的通用方法, ...
- Python小白的数学建模课-15.图论基本概念
图论中所说的图,不是图形图像或地图,而是指由顶点和边所构成的图形结构. 图论不仅与拓扑学.计算机数据结构和算法密切相关,而且正在成为机器学习的关键技术. 本系列结合数学建模的应用需求,来介绍 Netw ...
随机推荐
- poj2677 Tour
题意: 双调欧几里得旅行商问题. 思路: dp.定义dp[i][j](i <= j)为从点j从右向左严格按照x坐标递减顺序走到点1,之后再从点1从左向右严格按照x坐标递增的顺序走到点i,并且在此 ...
- Android studio 时间选择器
相当简单加载 gradle文件然后做一个textview即可. 1.首先我们要在build.gradle中写上这一行代码: compile 'com.feezu.liuli:timeselector: ...
- js数组引用
总结归纳: 1.普通的赋值是复制栈区内容. 2.基本类型的数据在栈区存放数据自身,var a=b; //a与b无关. 引用类型数据在栈区存放数据地址. var a=b; //a,b联动 3.基本数据 ...
- Runtime理解
动态语言 OC是一门不折不扣的动态语言,所以它的很多机制都是动态运行时决定的.这点和C语言不一样,C语言是静态绑定,也就是编译后所有的一切都已经决定了.这一点和C语言的函数指针有些类似,很多时候函数指 ...
- life of a NPTL pthread
这是2013年写的一篇旧文,放在gegahost.net上面 http://raison.gegahost.net/?p=91 March 7, 2013 life of a NPTL pthread ...
- vim下ctrl + s 僵死问题的解决
vim下ctrl + s 僵死问题的解决 vim 使用vim习惯性手残Ctrl+S ,解决方法 : Ctrl + Q 就能恢复了
- (转)Spring的三种实例化Bean的方式
http://blog.csdn.net/yerenyuan_pku/article/details/52832793 Spring提供了三种实例化Bean的方式. 使用类构造器实例化. <be ...
- Android(java)学习笔记167:横竖屏切换时Activity的生命周期
1.横竖屏切换的生命周期 默认情况下横竖屏切换,先销毁再创建 2.有的时候,默认情况下的横竖屏切换(先销毁再创建),对应用户体验是不好的,比如是手机游戏横竖屏切换对游戏体验非常不好,下面两种方 ...
- Java集合(四)--基于JDK1.8的ArrayList源码解读
public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess ...
- 输入3个数a,b,c,按大小顺序输出。
题目:输入3个数a,b,c,按大小顺序输出. 思路: 根据最简单的, 经典的C语言算法, 两两相互交换得到他们的顺序 public class 第三十四题abc三个数大小排序 { public sta ...