学习数学建模,对所有大致模型做一个了解和学习,参考《数学模型》和《算法建模与应用》
1 如何建立数学模型
这部分已经在另一篇博客说过,不赘余了。
2 初等模型
非常简单的入门介绍,做过数学高中题目的都知道了。
3 优化模型
简单的初等优化模型,可以直接利用关系建立方程式,然后直接利用微积分、导数知识直接求解析解。
4 线性规划
在这里,我们关心有稍微复杂一点的多变量,但是每个变量跟目标函数是线性关系的情况。当变量多于二维时,可以考虑matlab求解,但是高维的话,只能考虑贪心等等了。
当建模完成的时候,我们关心的就是如何求解、以及模型分析其实际意义、和模型检验了。但是在什么情况下才能用线性规划呢?
线性规划求解感染树、机器学习的目标函数、多播Qos问题的贪心近似算法,这些问题其实因为决策变量就是高维随机变量,导致尽管目标函数很简单,精确求解也是不可能的,只能启发、贪心、演化类算法求解,比如机器学习的目标函数的求解方法有性能保证吗?没有,很多都是基于统计学和数据来做。
5 微分方程模型
描述实际现象的某些特性(可微、连续或者近似可微)随时间而演变的过程、分析它的变化规律、预测未来性态、研究控制手段。
5.1 最简单的SI模型
但是很明显,该模型是有很多问题的,比如有效接触的人群中,有健康人也有病人。那么改进假设,假设人群中有感染者与非感染者两种。再将其延伸到SIR、SEIR模型中,还是分析其各种状态人数和t的关系。
这一部分,和《网络科学导论》中分析感染人数几乎是一致的,但是后者拥有配对近似和度近似两种手段建立更精确的传播人数近似。
5.1 模型SIR
在SIR模型方面,经过一定假设建立的方程组发现居然没有解析解,所以只能够利用数值解在matlab画图。进而分析s(t),i(t)
随时间t变化规律,这里涉及到了相轨线分析。
模型验证
假如有了现实的这个模型的某些数据,我们并没有解析解,但是有数值解。所以先用模型画图,再查看现实数据是否拟合,拟合不错就算建模成功。
后面还有经济增长模型、正规战与游击战、谣言在体内的分布、香烟过滤嘴的作用、人口的预测与控制、烟雾扩散与控制、万有引力定理的发现等等,因为跟我的方向没啥关系,就没关注。
6 代数方程以及差分方程
6.1 首先了解差分方程与微分方程区别
一、微分方程与差分方程的区别:
1、定义不一样:微分方程指描述未知函数的导数与自变量之间的关系的方程(比如传染病模型);差分方程又称递推关系式(比如DMP和NETSLEUTH算法和RC都可算递推式),是含有未知函数及其差分,但不含有导数的方程。
2、解不完全一样:微分方程的解是一个符合方程的函数,在初等数学的代数方程,其解是常数值;差分方程的解是满足该方程的函数,也就是解析解。
3、应用不完全一样:微分方程的应用可以解决许多与导数有关的问题。物理中许多涉及变力的运动学、动力学问题,很多可以用微分方程求解,微分方程在化学、工程学、经济学和人口统计等领域都有应用;差分方程多用于模型应用。
二、差分方程是微分方程的离散化。(这句话是比较重点的。)
6.2 按年龄分组的人口模型(差分方程和线代的双重使用)
这个模型就是一个差分方程组构建的模型,用来判断种群中每个年龄组的人数。(就是DMP和NETSLEUTH算法的理论。)
那么数学建模关心的是该模型的稳态分析。
该稳态分析在说,一旦确定了L矩阵,那么其就有唯一的单重正特征根和正特征向量。而该特征值还是最大的,该正特征向量就表示稳态后每个年龄段的种群数目所占比例。(特征向量的几何意义就是变换后只是同等比例增大减少的向量),那么年龄组的稳态人数比例紧紧的跟最大特征值和特征向量有关系了。
如果我们想要找到最开始的源点,可以针对每个节点建立这样一个方程组。看下经过多少t后有着跟现有观察节点最相似的向量。
6.3 其他模型
投入产出模型、CT技术的图像重建、蜘蛛网模型、减肥计划),因为跟我的方向没啥关系或者没什么人研究,所以没细看。
7 稳定性模型
动态系统的不动点研究。
暂时没有发现跟我的方向有关、或者有人研究这个,没细看。
9 概率模型
必须考虑随机性的模型。
9.1 报童的诀窍
可以离散转连续,然后进行求导,导数=0.发现需要满足(3)式就可以。做p(r)的图,发现其满足图1的关系就是极值点。那么分析极值点两边的递增还是递减,肯定是左边递增的。然后当n满足(3)式,取极值。也就是卖不完和卖完的各自总和概率之比=(a-b)/(b-c)。
9.2 随机人口模型
重点把握用微分模型和概率模型建立的人口模型区别和联系。
那么用概率模型怎么做呢?
利用概率模型建模过程 +差分方程,推导出来的t时刻人口数目期望。其求解出来居然和微分方程建立的是一模一样的。
有必要对生灭过程、分支过程做一个了解的。
12 马氏链模型
12.1 健康模型
构建状态以及状态转移矩阵,关心其稳态分析。
网络传播的,类似DMP,NETSLEUTH算法,都可以算是一种构建每个节点感染状态和时间的关系,无非这种就是高维节点的各种状态变换,而教科书描述是单个节点状态的变换矩阵。而本书构建状态和状态转移矩阵,关心其稳态的。但我有些疑问,有些问题长的很不像马氏链能搞定的,怎么等同?比如12.2
* 其实也有点像差分方程,不过是有概率的递推式(差分)构建。和第9章的概率模型构建人口模型也类似。
12.2 钢琴的存储策略
应用稳态分析和全概率公式。
首先假设第n周需求量是符合泊松分布,然后直接得到状态和状态转移矩阵。
判别是正则链还是吸收链,判断其状态稳态,得到所要求解问题事件,利用全概率公式、条件概率公式、等等得到其结果。