微生物群落控制的理论框架
原文:A theoretical framework for controlling complex microbial communities.
目的:提出一种控制微生物群落的理论框架,使得在这个框架下,可以使用生态网络识别其驱动物种的最小集合,并通过对其进行操作以控制整个群落。
模型基础
用
x
(
t
)
∈
R
N
x(t) \in \mathbb R^N
x(t)∈RN表示一个微生物群落在
t
t
t时刻的状态,它是一个
N
N
N维向量,第
i
i
i个维度
x
i
(
t
)
x_i(t)
xi(t)表示第
i
i
i个物种的丰度,
i
=
1
,
⋯
,
N
i=1,\cdots,N
i=1,⋯,N。假设它随时间的演化满足微分方程:
x
˙
(
t
)
=
f
(
x
(
t
)
)
,
f
:
R
N
→
R
N
\dot x(t)=f(x(t)),f:\mathbb R^N \to \mathbb R^N
x˙(t)=f(x(t)),f:RN→RN
其中 f f f用来对物种固有增长率以及物种之间的交互关系建模。通常 f f f是未知的,并且很难通过观察、实验进行推断,但此处假设 f f f是亚纯函数,这个假设并不强,而且可以适用于大部分生态模型。常用的 f f f的例子如下:
- Generalized Lotka-Volterra (GLV) f ( x ) = diag ( x ) ( A x + r ) f(x)=\text{diag}(x)(Ax+r) f(x)=diag(x)(Ax+r) 其中 A A A为interaction matrix, r r r是固有增长率向量
- Pairwise Interaction Model f x ( x ) = q i ( x i ) + ∑ j = 1 N a i j h i j ( x i , x j ) f_x(x)=q_i(x_i)+\sum_{j=1}^N a_{ij}h_{ij}(x_i,x_j) fx(x)=qi(xi)+j=1∑Naijhij(xi,xj)其中 A = ( a i j ) N × N A=(a_{ij})_{N \times N} A=(aij)N×N为interaction matrix, { q i } \{q_i\} {qi}是固有增长率向量, h i j h_{ij} hij代表物种 i i i对物种 j j j丰度变化的响应。
用有向图 G = ( X , E ) \mathcal G=(X,E) G=(X,E)表示生态网络,其中节点 X = { x 1 , ⋯ , x N } X=\{x_1,\cdots,x_N\} X={x1,⋯,xN}代表物种,边 ( x j → x i ) ∈ E (x_j \to x_i) \in E (xj→xi)∈E代表物种 j j j对物种 i i i的增长率存在直接影响。从数学上来讲,微生物群落控制的目标是使得初始状态为 x 0 = x ( 0 ) x_0=x(0) x0=x(0)的生态网络经过一段时间后状态演化为 x d x_d xd,一般假设系统不会自行演化为 x d x_d xd。为了控制微生物群落,选择 M M M个物种作为驱动物种(atuated species),将驱动物种的丰度记为 u ( t ) ∈ R M u(t) \in \mathbb R^M u(t)∈RM(比如 u j ( t ) < 0 u_j(t)<0 uj(t)<0代表在 t t t时刻降低第 j j j个驱动物种的丰度, u j ( t ) > 0 u_j(t)>0 uj(t)>0代表在 t t t时刻增加第 j j j个驱动物种的丰度)。将驱动物种纳入生态网络 G \mathcal G G中,得到controlled ecological network G C = ( X ∪ U , E ∪ B ) \mathcal G^C = (X \cup U,E \cup B) GC=(X∪U,E∪B),其中新增节点 U = { u 1 , ⋯ , u M } U=\{u_1,\cdots,u_M\} U={u1,⋯,uM}代表驱动物种,新增边 B = { ( u j → x i ) } B=\{(u_j \to x_i)\} B={(uj→xi)}代表第 j j j个驱动物种对第 i i i个物种的的增长率存在直接影响。
根据引入的控制变量修正生态系统的演化模型为:
x
˙
(
t
)
=
f
(
x
(
t
)
)
+
g
(
x
(
t
)
)
u
(
t
)
\dot{x}(t)=f(x(t))+g(x(t))u(t)
x˙(t)=f(x(t))+g(x(t))u(t)
其中 g : R N → R M g:\mathbb R^N \to \mathbb R^M g:RN→RM,用它表示驱动物种对生态网络的影响,假设 g g g也是亚纯函数,并且 ( u j → x i ) ∈ B (u_j \to x_i) \in B (uj→xi)∈B时, g i j ≠ 0 g_{ij} \ne 0 gij=0。
识别驱动物种
U = { u 1 , ⋯ , u M } U=\{u_1,\cdots,u_M\} U={u1,⋯,uM}成为驱动物种的条件是 { f , g } \{f,g\} {f,g}代表的演化模型 x ˙ ( t ) = f ( x ( t ) ) + g ( x ( t ) ) u ( t ) \dot{x}(t)=f(x(t))+g(x(t))u(t) x˙(t)=f(x(t))+g(x(t))u(t)不存在autonomous elements(或称这个模型accessible),即不存在函数 ξ \xi ξ,使得 F ( ξ , ξ ( 1 ) , ⋯ , ξ ( ν ) ) = 0 F(\xi,\xi^{(1)},\cdots,\xi^{(\nu)})=0 F(ξ,ξ(1),⋯,ξ(ν))=0,其中 ν ∈ Z \nu \in \mathbb Z ν∈Z, F F F是亚纯函数。
下面贴上一段原文,这段原文的主要作用是推导continuous与impulse control scheme的模型accessible的条件等价(continuous scheme的含义是控制 u ( t ) u(t) u(t)连续变化,impulse control scheme的含义是让 u ( t ) u(t) u(t)只在部分时间点具有非0值,其他时候都为0),这个结论可以降低实验设计的难度,避免需要寻找连续控制驱动物种丰度的方法。
另外,在无法直接证明 G C \mathcal G^C GC为accessible system时,另一种可行的方案是验证 G C \mathcal G^C GC是否满足以下条件:
- 每个节点都可以作为从以驱动物种为起点的有向路径的终点;
- 存在一系列回路或路径,它们互不相交但经过所有节点
这个结论的推导与证明可以看原文Structural accessibility characterizes the generic absence of autonomous elements.部分,以及附录第三节。
原文提出可以用一种maximum matching与strongly-connected component decomposition结合的算法计算minimum sets of driver species。
操纵驱动物种
考虑impulse control sequence
{
u
(
t
k
)
:
t
k
∈
T
}
\{u(t_k):t_k \in \mathbb T\}
{u(tk):tk∈T},接下来的目标是根据目标
x
d
x_d
xd,确定control sequence的取值。用
L
L
L表示prediction horizon,在
t
k
t_k
tk时刻,使用已知信息,即当前各种群丰度
x
(
t
k
)
x(t_k)
x(tk)、增长率的演化规律
{
f
,
g
}
\{f,g\}
{f,g}以及接下来
L
L
L期的control sequence
{
u
t
k
,
⋯
,
u
t
k
+
L
−
1
}
\{u_{t_k},\cdots,u_{t_{k+L-1}}\}
{utk,⋯,utk+L−1},预测的未来
L
L
L期的丰度为
{
x
^
t
k
+
1
,
⋯
,
x
^
t
k
+
1
+
L
}
\{ \hat x_{t_{k+1}},\cdots,\hat x_{t_{k+1+L}}\}
{x^tk+1,⋯,x^tk+1+L},则最优control sequence为
U
k
,
L
∗
=
arg min
U
k
,
L
∈
R
M
×
L
J
x
d
(
X
^
k
,
L
,
U
k
,
L
)
,
U
k
,
L
∈
Ω
U_{k,L}^*= \argmin_{U_{k,L} \in \mathbb R^{M \times L}} J_{x_d}(\hat X_{k,L},U_{k,L}),U_{k,L} \in \Omega
Uk,L∗=Uk,L∈RM×LargminJxd(X^k,L,Uk,L),Uk,L∈Ω
其中 Ω \Omega Ω代表控制序列需要满足的约束, J J J表示某种cost function。因此确定control sequence的方法就是求解这个动态规划。