距离上次更新已经 2126 天了,文章内容可能已经过时。

课程主页:https://see.stanford.edu/Course/EE263

这次回顾第十讲,这一讲结束了线性自治动力系统部分的内容。

化学反应

  • 化学反应涉及n种化学物质;xi是化学物质i的浓度

  • 反应动力学的线性模型为

    dxidt=ai1x1++ainxn
  • 上述模型是一些反应的良好模型; A通常很稀疏

来看一个具体例子,考虑Ak1Bk2C的反应,对应线性系统为

x˙=[k100k1k200k20]x

对于k1=k2=1,初值x(0)=(1,0,0),作图得到

注意到动力矩阵的每一列和为0,我们计算如下量:

ddt(1Tx(t))=1Tx˙(t)=1TAx(t)=0

所以

1Tx(t)=1Tx(0)

即化学物质的质量守恒。

有限状态离散时间的马尔可夫链

z(t){1,,n}是随机序列,并且

Prob(z(t+1)=i|z(t)=j)=Pij

其中PRn×n是状态转移矩阵。

将概率分布z(t)表达为n维向量:

p(t)=[Prob(z(t)=1)Prob(z(t)=n)]

所以

Prob(z(t)=1,2, or 3)=[11100]p(t)

在上述定义下,可以得到如下递推式

p(t+1)=Pp(t)

P通常为稀疏矩阵。

马尔可夫链可以用图像表示,其中

  • 节点表示状态
  • 边展示转移概率

例如

上图对应的递推式为

p(t+1)=[0.90.71.00.10.1000.20]p(t)

连续系统的数值积分

计算x˙=Ax,x(0)=x0的近似解。

假设h是很小的时间间隔,简单的近似(前向欧拉)为

x(t+h)x(t)+hx˙(t)=(I+hA)x(t)

将上述系统离散化,递推可得

x(kh)(I+hA)kx(0)

高阶线性动力系统

x(k)=Ak1x(k1)++A1x(1)+A0x,x(t)Rn

其中x(m)表示m阶导数。定义新变量

z=[xx(1)x(k1)]Rnk

那么

z˙=[x(1)x(k)]=[0I0000I0000IA0A1A2Ak1]z

上述系统的框图为

在平衡点附线性化

考虑非线性,和时间无关的微分方程:

x˙=f(x)

其中f:RnRn

假设xe是平衡点,即

f(xe)=0

(所以x(t)=xe满足微分方程)

假设x(t)xe附近,那么

x˙(t)=f(x(t))f(xe)+Df(xe)(x(t)xe)

δx(t)=x(t)xe,上述系统可以重写为

δx˙(t)Df(xe)δx(t)

例子:单摆

二阶非线性微分方程为

ml2θ¨=lmgsinθ

x=[θθ˙],将上述系统重写为1阶微分方程

x˙=[x2(g/l)sinx1]

平稳点为xe=0,在xe=0处线性化上述系统得到

δx˙=[01g/l0]δx

线性化是否有效?

线性化系统通常有效,但是有时候效果也不太好,考虑如下两个例子。

例1:

x˙=x3,xe=0

对于x(0)>0,解为x(t)=(x(0)2+2t)1/2

线性化系统为δx˙=0,解为常数。

例2:

z˙=z3,ze=0

对于z(0)>0,解为z(t)=(z(0)22t)1/2

线性化系统为δz˙=0,解为常数。

对应图像为

可以看出线性化的系统效果明显不好。