注:本文是刘然对常微分方程模型的简介

什么是常微分方程模型

常用的回归分析聚焦于直接建立响应变量和协变量之间的关系,之后根据建立的模型进行分析和预测,比如常见的线性回归模型:。

而如果我们感兴趣的变量是随时间变化的,那么还有另外一种常用的建模方式:建立变量与变量对时间的导数之间的关系,这就是我们这里要介绍的常微分方程模型。容易理解,常微分方程模型是利用常微分方程来刻画变量之间的关系的模型。假设我们关心的变量为,常微分方程的数学形式写作:

这里是线性或者非线性的函数,是未知的参数。在这种数学形式下,我们不是直接去建立变量之间的函数关系,而是通过常微分方程给出变量的导数和变量自身之间的函数关系。由于这里的一般大于1,这里给出的常微分方程一般是一个常微分方程组,构成了一个常微分方程系统。

常微分方程模型在自然科学和社会科学中都得到了广泛的应用,比如神经科学中用来描述神经元发放的Hodgkin-Huxley Model,经济学中描述经济增长的Solow growth Model,以及传染病学中描述感染人数的SIR Model。

常微分方程模型相比一般的回归模型有哪些优势?

第一,在一些情况下,考虑变量的导数的建模比直接考虑变量本身的建模要更直接简便;第二,所建立的常微分方程可能比回归模型更能揭示出数据的生成机制,也就更能帮助我们理解数据以及与数据相关联的现象的本质特点。

一个具体的例子

https://www.shangxueba.com/ask/7834114.html

生物学高考时我们常常见到这个例子。在一个生态系统中,捕食者和被捕食者的数量随时间变化,变化规律如图,问两条曲线哪一条代表捕食者,哪一条代表被捕食者?相信大家很容易就能给出答案:波峰在先的是被捕食者,波峰在后的是捕食者。现在,如果需要进一步通过建模刻画出两者之间的关系,我们该怎么做呢?显然,二者都是随时间变化的非线性函数,很难直接给出他们之间的关系,更没有办法知道数据为什么是这个样子。但是,通过考虑影响变量导数的因素,我们可以给出刻画生态系统的常微分方程模型。令和分别代表被捕食者和捕食者的数量,我们先考虑的导数,导数代表了变化速度,那么被捕食者的数量的变化速度和哪些因素有关呢?这一速度应该随着被捕食者种群规模的增大而增大。这一点很好理解,比如说在其他条件不变的情况下,只兔子构成的种群在单位时间内变化的规模也应该比只兔子构成的种群大,所以,我们可以把方程写作:

这里代表了变化率,那么这个变化率和什么有关呢?显然,变化率应该随着捕食者数量的增大而减小,因为数量更多的捕食者增大了每一个捕食者被吃掉的概率,所以我们令,这里是被捕食者在没有捕食者存在时的自然增长率,是一个正数,使得越大时越小。所以我们得到类似的,我们可以通过分析给出的导数的形式。这两个式子合在一起,就是生态学上著名的Lotka-Volterra Model。

利用龙格库塔法之类的数值求解常微分方程的算法,我们可以给出Lotka-Volterra Model的数值解如下图。方程清晰地复现出了我们看到的趋势。这里的模型既能够唯相地给出预测与推断,也能够通过对种群数量动力学机制的刻画让我们明白我们观察到的现象从何而来。

实际中的统计分析

值得注意的是,上文中我们关心的指的是系统变量的真实值,它是关于时间t的一个函数(如果模型的形式正确,那么就是常微分方程的解)。但在实践中,我们通常不可能观察到准确的连续数据,而只能得到一些带有误差的离散时间点上的观测数据,,比如在上面的例子中实际得到的数据点可能是这样的:

我们通常可以假设如下关系,

注意这里的都是维的。和回归模型一样,这里的代表随机误差项,每个分量往往满足均值为零、方差有限等条件。

而常微分方程中的参数(比如前例中的)一般来说也都是未知的,这样,统计学者的任务就不光要建立符合实际的模型,而且要通过观测得到的实际数据来估计未知参数。比如可以先求常微分方程的解析解或数值解(注意这里的解依赖于的值)然后利用最小二乘法的思路写出这个解和数据点的差值平方和,以此作为目标函数进行优化求解,也就是说:

求得参数的估计值后我们可以再进一步去做更深入的统计推断。

如果觉得本文不错,请点赞关注!

微分方程模型_常微分方程模型简介相关推荐

  1. 生成模型和判别模型_生成模型和判别模型简介

    生成模型和判别模型 Intro 介绍 Recently I gave a presentation at work, where I explained how I solved some probl ...

  2. 线程监视器模型_为什么模型验证如此重要,它与模型监视有何不同

    线程监视器模型 建模基础 (MODELING FUNDAMENTALS) Once the model development steps are complete, model validation ...

  3. ansys电力变压器模型_变压器模型……一切是如何开始的?

    ansys电力变压器模型 Transformer models have revolutionised the field of Natural Language Processing but, ho ...

  4. 动机模型_一个模型教你如何激发学习动机

    作为青少年生涯导师,经常被问到通过生涯规划能够提分吗?怎么去通过生涯规划达成提升成绩,我通常比较关注的是激发学生的学习动机,如何唤醒学习动机和激发学习动机是我经常探索思考的课题. 什么是学习动机? 说 ...

  5. python做什么模型_主题模型初学者指南[Python]

    引言 近年来涌现出越来越多的非结构化数据,我们很难直接利用传统的分析方法从这些数据中获得信息.但是新技术的出现使得我们可以从这些轻易地解析非结构化数据,并提取出重要信息. 主题模型是处理非结构化数据的 ...

  6. python结构方程模型_结构方程模型:方法与应用_结构方程模型公式

    讲解清晰,适合MPLus学习者!注意这是王济川的书! 第一章 绪论( Introduction) 11模型表述( Model formulation 1.11测量模型( Measurernent mo ...

  7. Java多线程_1_Java内存模型_内存模型的3大特性

    Java内存模型: 内存分布情况及其关系: 主内存:Java内存模型规定所有的变量都保存在主内存中 工作内存:每个线程都有自己的工作内存,保存了该线程使用到的变量的主内存副本拷贝 主内存与工作内存的关 ...

  8. 开源 三层模型_开源模型将如何超越其他模型

    开源 三层模型 定义项目不只是讨论可交付成果的结果. 对于项目经理,此定义是关于学习如何平衡一系列相互关联的元素. 在创建过程中,项目经理必须管理依赖关系和项目的关键链. 项目经理还必须与各种利益相关 ...

  9. java lda主题模型_主题模型(一):LDA 基本原理

    一. 数学基础 *** 二项分布*** 二项分布为N重伯努利分布,则事件成功k次的概率可表示为: *** 多项分布 *** 多项分布是二项分布在高维度上的推广: *** Beta分布 *** 其中, ...

  10. python绘制太阳系模型_太阳系模型Python列表操作困难

    这是我在这里的第一篇文章. 所以我尝试用可视化的python制作一个太阳系模型.我将每个行星定义为一个球体,有半径.与太阳的距离.质量和动量变量.然后将每个行星(或天体)放入一个列表结构中.正如你现在 ...

最新文章

  1. Java基础:基本数据类型包装类
  2. POJ 3167 Cow Pattern ★(KMP好题)
  3. Android 中的线程及 AsyncTask(线程形态之一)解析一下
  4. python绘制坐标点画出半径_24行Python代码让小球“弹”起来
  5. python博弈论代码_使用 40 多行的 Python 代码实现一个简单的演化过程
  6. python unittest库的入门学习
  7. 英特尔核芯显卡控制面板没有了_「有趣」第41期:被英特尔取消发售的CPU长啥样?...
  8. php mongoclient使用,PHP使用mongoclient简单操作mongodb数据库示例
  9. 清除工程目录下多余文件和文件夹
  10. kubernetes 架构及应用场景
  11. Apache-Tomcat-Ajp文件读取漏洞(CVE-2020-1938、CNVD-2020-10487)
  12. C# ActiveX 网页打包验证自动升级
  13. Java并发编程-Volatile和Syncronized关键字
  14. redis 加锁新方法 - jedisCluster.set(key,value,NX,EX,expireSeconds);
  15. java中左移运算符解释_java左移右移运算符
  16. 《大话脑影像》之:趣谈散点图与相关系数
  17. Centos 7搭建DNS(5)智能DNS
  18. [C语言] 联想手机szb格式的制作工具,部分开源代码(仅提供程序思想);
  19. [SCOI2010]传送带
  20. 每天坚持多一点,美丽就能多一点

热门文章

  1. VS2015各版本的区别
  2. CorelDRAW 文字排版用了这些方法肯定有意想不到的效果呈现
  3. ADF实现主副控件联动的方法
  4. 重装win10提示“Windows无法安装到这个磁盘,选中的磁盘具有MBR分区表,在EFI系统上,windows只能安装...”
  5. matlab正弦波用示波器测失真,请教下,自己做个正弦波信号发生器,如何测试波形的失真大小?...
  6. 个人收集资料分享(电子、计算机相关)
  7. 显卡对决nbsp;NVIDIAnbsp;GTnbsp;555Mnbsp;VS…
  8. 分时操作系统与分布式操作系统
  9. 2019程序员好书盘点:这些畅销新书的时间轴你对上没?
  10. 百度离线地图服务器搭建