pnas07 bongard

6
M 非非 Josh Bongard* 非 Hod Lipson* *Mechanical and Aerospace Engineering and Computing and Information Science, Cornell University, Ithaca, NY 14853 Edited by Richard E. Lenski, Michigan State University, East Lansing, MI, and approved April 7, 2007 (received for review October 25, 2006) 非非非非非非非非非非非非非 统一一 ,。 (非非非非非)非 非非非非非非非非非非非 非非非非非非非非非非非 非非非非非非非非非非非非非 非非非非非非非非非非非非 非非非非非非非非非非非非非非 一。 ( 非 非非 非 非 非 )非非非非非非非非非非 非非非非非非非非非 非非非非非非非非非非非非非非非非非非 非非非非非非非. 非非非非非非非非非非非非非非非 非非非非 非非非 非 非非非非非非非非非 非非非非非非非非 非非非非非非 、、。 explan atory 非非非非非非非非非非非非非非 非非非 非非'非非非非'非非非非非非非非非 非非非非非非非 非非非非非非非非非非非非非非非 一统 coevolution | modeling | symbolic identification 科科科科科 科科科科科科科科科科科科科科科 科科科科科科科科科科科科 (1–3)科科科 科科科 。,(56) 科科 科科科科科科科科科科科 , 。一, ,。一 统统 科科科科科科科科科科科科科科科科 科 科科科科科科科 科科科科科科科科科科科科科科科 科科 科科科科 科 科 科 科科科科 。一,一 科科科科科科科科科科 科科科科科科科科科科科科科科科科科科科科科科科科科科科(Fig.1.step b) (科'科科'') 科科科科科科科科科科 (Fig.stepc) (Fig.1 setp c) 科科 科科科科科科科科 ,一。 非非 科科科科科科 (4)科科科科科科科 (8–16)科 科 科科科科 科科科科科科科科科科科科科 科科科科科科科科科科 。, 科科科科科科科科科科科科科 科 :,, ;科科科科 科科科科科科 ,, '科科科科科' 17-20 ;科科科 ,一 '科科科科科'科科科 科 科 科科 科 科科 ,, 。。非非 科科科科科科 科科科科科科 ,一。 (21–24)科 科 科 科 科 ,。,, (科科)科科(25) (科科)科科科科科 科科 (26) 。, 科科科科科科科科科科科科科科科科科科科科科科科科科科(2728) 科科科科科科科 。,一,一 科科科科(科科)科科科科科科科科科科科科科科科 科 (48–16)[科 supporting inf ormation (SI) Table 4]. 科科科 一。 科科 ,。 科科科科科科 科科科科科科 。, (7)科科科科科科科 科 科科科科科科科科科科科科科科科 一,一 ,。: 统统 Author contributions:J.B. and H.L. designed research; J.B. performe d research; J.B. and H.L. analyzed data; and J.B. and H.L. wrote the paper. The authors declare no conflict of interest. This article is a PNAS Direct Submission. To whom correspondence should be sent at the present address:Department of Computer Science, University of Vermont, Burlington, VT 05405.E-mail: [email protected]. This article contains supporting information online at www.pnas.org/cgi/content/full/ 0609476104/DC1. © 2007 by The National Academy of Sciences of the USA www.pnas.org/cgi/doi/10.1073/pnas.0609476104 PNAS | June 12, 2007 | vol. 104 | no. 24 | 9943–9948

Upload: shuhang-li

Post on 18-Jun-2015

69 views

Category:

Technology


0 download

DESCRIPTION

Pnas07 bongard

TRANSCRIPT

Page 1: Pnas07 bongard

M

COM

PUTE

R SC

IEN

CAP

PLIE

D BI

OLO

GIC

AL S

CIEN

CES

非线性动力系统的自动反向工程Josh Bongard*† 和 Hod Lipson*‡

*Mechanical and Aerospace Engineering and ‡Computing and Information Science, Cornell University, Ithaca, NY 14853

Edited by Richard E. Lenski, Michigan State University, East Lansing, MI, and approved April 7, 2007 (received for review October 25, 2006)

复杂非线性动力学中出现在许多科学和工程领域中,但直观上求解这些微分方程是非常具有挑战性的任务。符号化为复杂网络系统建立模型的能力是理解它们的关键所在,在许多学科的一个公开问题。这里我们首次介绍一种方法,可以直接根据时间序列数据自动为为非线性耦合动力学系统生成符号方程。该方法适用于任何可以使用非线性常微分方程组描述的系统,并假定(可能是噪声)的所有变量的时间序列可以观测。以前的对自动耦合物理系统线性模型的符号建模方法产生的是线性模型或要求提供一个事先手算的非线性模型。这里介绍的进展通过允许为每个(可能有联系的)变量分离地建模来实现,智能地干扰和破坏系统来提取其难被观察的特征,并在建模过程中自动简化方程 .。我们可以在四个模拟和两个实际系统生成力学、生态学、系统生物学中论证此方法。与数值模型不同,符号模型含有 explan atory 值,表明对无模型符号非线性系统辨识的自动'逆向工程'方法在我们在未来进一步更复杂的系统理解中可能发挥越来越大的作用。

coevolution | modeling | symbolic identification

科学和工程的任何分支代表的都是随时间变化的微分方程组的系统,其中每个方程描述了单变量的变化率其他变量的状态的一个函数关系。这些方程的结构通常首先手工得出,在

某些情况下会用回归方法(1–3)识别这些方程的参数。非参数方法,作为假定线性或产生数值模式(5、6),不能能揭示完整的内部结构复杂的系统。然而一个关键是仅仅通过扰动自动揭示控制方程,然后以智能化的检测系统,就像科学家在实验系统展示时的做法。实现这一障碍在于缺乏有效的的方法来搜索该

符号空间方程和假设事先收集的数据对建模过程是必要的

罕见的却能反映系统的信息能在不被察觉的情况下丢失。在这一情况下, 获取一个未知系统的主要驱动力的特征结构时很具有挑战性的,除非这个系统被非常特殊的方式扰动粗参数扫描或随机抽样是不可能抓住其中的微妙细节,所以是被动机

综合从基本运算符和操作组成的多个模型来解释观察到的行为(Fig.1.step b)。第二个过程合成新的初始条件(新'测试''),引起在候选模型的预测中最大不符合(Fig.stepc)然后最佳测试被用于从隐藏系统提取新的行为(Fig.1,setp c)。这个交替周期将继续,直到满足一些终止准则。

分划,自动探测和修剪非线性系统的符号回归方法的此前已经被提出了几个,但仅限于生产线性模型(4)或应用于由一个或几个交互变量(8–16)组成的系统。在这里,我们介绍一种扩展的用来自动回归方法,这里介绍使其成为可能的三种改进:分划,其中方程描述系统的每个变量可以单独合成,从而显著减少搜索空间;自动探测,建模的同时可以试验,开始自动'科学的流程' ( 17-20) ;和剪断,一个'奥卡姆剃刀'的过程,当它们合成时自动简化和重建的模型,以增加它们的准确性,加快它 们的计算,并使其更简洁和容易被人理解。我们描述了这三个部分并在几个模拟和真实动力系统验证了它们的性能。

分划。分划允许算法合成方程式分别描述每个变量,尽管他们的作用是可以联系在一起的。随机优化(21–24)是用于合成方程,它非常适合用于由构建模块组成的可扩充空间。贝叶斯网络,虽然受欢迎,却不能为变量之间的相互依赖关系(周期)建模(25)、其是生物和其他规则(反馈)网络中经常遇到的一种模式和基本操作(26)。事实上,含有许多相互依赖关系网络的建模与已被列为重点研究科学(27、28)。当使用分划,而不是集成所有变量的待选方程在一起时,一个单变量的候选方程被合成通过替换系统观测到的行为(方法)中其他变量的引用数据这使我们能够推断出该系统的结构组成变量和其他推断方法更高维的联系关系(4、8–16)[见 supporting information (SI) Table 4].

自动探测。自动探测把一个被动的建模算法转换成发现过程中的积极参与者。而不是被动地接受系统研究中的数据,

学习方法,依靠前期准备数据的离线分析也可能是无效的。 也可能是无效的。相反,主动学习(7)过程能够产生新的扰动或寻求提供信息的部分数据集,此数据集基于内部产生可能能够更好的追踪这些重要的隐藏的系统特征的假设。

在这里我们介绍一个方法,用于从一个隐藏的非线性耦合系统的自动合成常微分方程的结构和参数,给予选择性扰动系统的能力或由它产生的噪声数据重的选择性样本。此方法包含两个步骤:首先

Author contributions:J.B. and H.L. designed research; J.B. performed research; J.B. and H.L. analyzed data; and J.B. and H.L. wrote the paper.

The authors declare no conflict of

interest. This article is a PNAS

Direct Submission.

†To whom correspondence should be sent at the present address:Department of Computer Science, University of Vermont, Burlington, VT 05405.E-mail: [email protected].

This article contains supporting information online at www.pnas.org/cgi/content/full/ 0609476104/DC1.

© 2007 by The National Academy of Sciences of the USA

www.pnas.org/cgi/doi/10.1073/pnas.0609476104 PNAS | June 12, 2007 | vol. 104 | no. 24 | 9943–9948

Page 2: Pnas07 bongard

控制 a = 1.85×106±6.49×105 6 = 1.51×105 ± 1.65×105

完整的算法 þ = —46.31 ± 12.55 s = 26.48 ± 3.27μ = —11.18 ± 17.48 $ = —50.53 ± 7.02

b

*

Candidate models Candidate tests

表 1.噪声的推论、合成系统

合成系统dx

2y2 log x

dx

y x

dtdy x

y dt 5dy sin y

xy 单摆y x

dt 6 dt ? 候选

初始时间 时间 目标 d0/dt = m

dm/dt = —9.8sin(0)dx 3

y 1 dx

y1.8 log

x条件 y 最好的模型 d0/dt = m

dt y 1dy x 2

dt ydy x

y x x dm/dt = —9.79987sin(0)

dt x2 1 dt 4x

时间 模型 中间模型 d0/dt = m

推断过程生成几个不同的候选符号模型,其运行时匹配传感器收集的数据 推断过程

c 推断过程生成了几种可能的新候选测试disambiguate competing models (make them disagree

dm/dt = —9.8682sin(0) Lotka–Volterra 两个物种之间的种间竞争

目标 dx/dt = 3x — 2xy —x2dy/dt = 2y —xy — y2

事先测试它不 知道那个模型是正

确的. 最初

它们的预测). 最好的模型 dx/dt = 3.0014x — 2xy — x2 dy/dt = 2.0001y — xy — y2

输出 (传感器)

条件 (actuators)

中间模型 dx/dt = 2.9979x — 2.0016xy—x2

dy/dt = 1.999y — 0.917xy—1.005y2高度衰退

目标 dx/dt = —x9y11

dy/dt = —x11y9a 概念图显示合成算法的流程。实验通过设置初始条件下,扰动隐藏系统谭厚记录它行为的时间序列最初,这个实验是随机的;随后,它是步骤 c 生成的最好的测试。

Fig. 1 概念图显示合成算法的流程图。周期(a、b、c)重复进行,直到设定时间已过。

c 中的虚线箭头表示两种模型的预测状态变量 y 未来的行为的分叉。在物理系统上执行的 c 中最好的测试是一系列初始条件,其导致模型不符合

它们预测大多数预测(标有星号)。框架产生精确的模型依靠在内部产生,智能测试中逐步积累关于系统的信息 。

通过定期丢弃旧的测试,代之以新的,该算法不仅为静态系统建模,同时可以通过其当前状态模型不断追踪变化的

系统。

自动合成模型用于创建定制的反驳尽可能多的模型的测试。在这项工作中,测试被认为是一组组成系统所有变量的初始值:例如,在推导描述单摆方程时(表 1 和表 3),测试是一组摆臂的角度和角速度所需的初始值。由于新的、信息提炼测试 不能从这个模型组或系系统行为分析得出,候选测试被优化来最大程度的反驳提供这些初始条件时得到模型地预测。经过固定时间的优化后,最好的测试会被在系统上执行和记录结果行为,或先事先提供数据会被扫描来查找在该变量的值最接近这个测试的时间步长。以下时间间隔然后被提取出来并提供给建模过程。另外的结果倾向于导致当前模型组到一个新数据组的事先优化。这种交替的周期建模和测试会在一定时期内继续(Fig.1)。

修剪。修剪在优化处理过程中会自动简化简化和重构模型。随机模型组和算法开始时,模型模型优化发生;针对所有目前为止观测到系统数据,计算模型的误差;创建每个已存在的模型的副本并在副本中引入小,随机的变化;评估计算新模型;然后使用修改,更准确的副本的模型,替换那些不太准确在这项工作,模型表示为方程组,而方程组表示为嵌套的子表达式。在多次试验中,会观察到这些表达式变得很庞大,但是在评估期间很多的子表达式的返回值的范围很窄。这是一个过拟合的现象(29、30),在涉及基于嵌套表达式方法的文献中(22)通常称为膨胀(31):此模型来解释所观察到的数据,也几乎不能解释其他看不见的数据

最好模型 dx/dt = —0.925x9y11

dy/dt = —1.0585x11y9

中间模型 dx/dt = 0.77x6y7—0.7x7y9—0.7x7y8

dy/dt = —5.47x5y7 + 2.69x4y 7

+2.33x5y6 + 2.03x4y6

—1.58x3y6 — 1.36x4y5

+0.68x3y5

大肠杆菌的乳糖操纵子目标 dG/dt = A2/(A2+1)—0.01G+0.001

dA/dt = G(L/(L+1)—A/(A+1))dL/dt = —GL/(L+1)

最好模型 dG/dt = 0.96A2/(0.96A2+1) dA/dt = G(L/(L+1)—A/(A+1))dL/dt = —GL/(L+1)

中间模型 dG/dt = (A2—0.05A)/(A2—0.05A+1)dA/dt = (G+0.02)(L/(L+1)—A/(A+1))dL/dt = —0.65(1.97G—G/(G+1) +0.08L2)L/(L+1)

针对每个上面所示的四个合成系统进行了三十次独立试验 (±0.08 噪声).目标系统本身和最好的和中间试验生成的最终模型所示。0, 摆臂和竖直线之间的角度; m,角速度; x, 物种的种群数 1; y, 物种的种群数 2; G, Þ乳糖浓度 ; A, 别乳糖; L, 乳糖.

。.在开始修剪时,当从旧的模型创建一个新的模型时,新模型中的子表达式偶尔被替代成一个常量,此常量是从一个范围中均匀选取,而该范围由从原始模型中的相应表达式的输出最小值和最大值组成这个过程往往产生更精确、更简单的模型,使它们更具有可读性。

表 2.从实际数据的生物网络的得到的推论

算法 1 算法 2

Common form dh/dt = a+þh+μl dl/dt=6+sh+$l

Means and standard deviations

平均和标准差 a = 3.42×106±1.56×106 6 = 3.10×105 ± 2.34 × 105

控制 þ = —67.82 ± 45.62 s = 32.66 ± 4.06完整的算法 μ = —10.97 ± 52.24 $ = —63.16 ± 5.63

一个控制算法(which fully samples the data set) 和 完整的算法(which uses automated sampling of the data set) 都在历史报雪兔(h)和加拿大猞猁(I)数量的数据上运行(36).

两种算法运行时三十独立试验,以及最佳模式(针对所有观测系统数据的最低错误)输出。

Page 3: Pnas07 bongard

9944 | www.pnas.org/cgi/doi/10.1073/pnas.0609476104 Bongard and Lipson

Page 4: Pnas07 bongard

COM

PUTE

R SC

IEN

CAP

PLIE

D BI

OLO

GIC

AL S

CIEN

CES

表 3.物理摆的推论

框是平的 框旋转 —1.57rad 框选装 —2.6rad

一般形式 d0/dt = am + þ

dm/dt = μsin(60 + ) + f(0, m)

分数匹配模型控制实验 4 of 30 (13%) 26 of 30 (87%) 6 of 30 (20%)完整的算法 21 of 30 (70%) 29 of 30 (97%) 20 of 30 (67%)

平均和标准差 a = 1.0040 ± 0.0009 a = 1.0008 ± 0.0014 a = 1.0039 ± 0.0011þ = 0.0001 ± 0.0001 þ = 0.0028 ± 0.0035 þ = —0.0003 ± 0.0007μ = —19.43 ± 2.67 μ = —20.45 ± 1.06 μ = —22.61 ± 0.696 = 1.104 ± 0.047 6 = 1.0009 ± 0.0032 6 = 1.0110 ± 0.0492 = 0 ± 0 = —1.575 ± 0.026 = —2.6730 ± 0.1149

剩余函数 f(0,m)={—0.2080, —0.29(m+1.45),—0.05m(m+5.48), —0.24(m+0.98),—0.26(m+1.4), ...}

f(0,m)={1.98sin(0), cos(1.350),—0.204( m—2.57), sin(—4.020),cos(—2.110), ...}

f(0,m)={cos(1.210), cos(—5.050), 0,sin(0), cos(1.120), ...}

控制算法(完全样本数据集)和完整的算法(样本数据集使用自动探测)都具有相同的行为提出三个隐藏的物理系统 (SI Fig. 6 a–c).系统唯一的不同在于框的旋转(角度偏移),改变变量之间的关系(角度和角速度)。每个系统被扰动来产生的时间序列数据(SI Fig. 6 d–f).这两种算法针对对每个数据集运行了 30此;每个试验进行了 2分钟。每个试验中,模型对所有观测系统数据的最低错误输出。这些模型往往发现适合一般形式 。估计算法的平均参数也显示,伴随着模型剩余函数

结果该算法应用到四个合成的系统,和两个物理系统。

合成系统的应用将该算法应用到一个隐藏的系统,实验者必须指定:(i)系统的分量(如 变量),以及如何观察它们;(ii)运算符(代数、分析和/或其它特定余域的功能)和操作数(变量和参数范围),可以用来描述行为和这些变量之间的关系;(iii)允许的最大模型复杂度(这项工作确定了允许的最大深度的子表达式);(iv)可能测试的空间(这里即变量的一系列初始条件);及(v)终止条件(在这里,允许计算时间的分钟)。

该方法应用被应用到四个合成系统(表 1)和两个实际系统(表2和表 3)。合成系统(表 1)是隐藏算法中的一组微分方程组,在这组微分方程组中推荐测试(初值)被输入和噪声时间序列数据被输出。对于所有合成系统,在数据产生后,通过在时间序列每个值每个变量添加随机值产生课观测噪声,随机值从[-0.08、0.08]范围中均匀选择。为了实现方便,添加均匀噪声,而非高斯噪声。Fig.2显示了与一个综合系统对立的两个算法的样品试验(忽略摩擦单摆)。

表 1报告从算法推断出范例模型,此模型分别对应于四个力学动力系统(非线性单摆)、生态系统(LotkaVolterra equaoutputs 一组随机的初始条件,而不是寻找的信息集),

并没有应用分划和修剪。第二个控制实验是同第一次,但采用分划。第三控制实验使用分区和自动探测,但是没有修剪。每个控制实验的三十个试验运行,而最终模型的平均误差和尺寸被计算出并与实际算法输出的模型进行了比较(分划、自动探测和修剪)。Fig.3 和 SI Fig. 4 分别报道模型的错误和大小的平均值可以看出,在单摆和乳糖操纵子模型中分划提高了模型精度;在所有系统中自动探测提高了模型精度(尽管对于摆提升很微小);修剪在乳糖操纵子系统中提高了模型精度;除了高维系统的所有系统中修剪减少了模型平均尺寸。其余四种控制算法,其中一项或多项推荐

a(3 sec) b(8 sec) c(15 sec) d(26 sec) e(1 min) f(5 min)

g(2 sec) h(5 sec) i(9 sec) j(15 sec) k(21 sec) l(5 min)

描述为一个共同的资源的种间竞争),是一个人为制造的系统和高度,和遗传学(大肠杆菌乳糖操纵子模型)。对于每个系统,30个独立实验进行,各个试验产生的最终模型评估出前所未见的系统行为的主体。对于每个系统,关于此数据的模型获得了最低且中位的误差(称为模型的目的错误),其显示出传达了该算法的一致性。所有四个系统是由相同的算法推断出,只有轻微的变化:对于钟摆来讲,除基本的代数运算符外三角运算提供;乳糖操纵子,Hill 函数

(a) d /dt = 0.45*-7.63d /dt = sin( - ) ñ cos( / ( / t))

(b) d /dt = -3.23d /dt = cos(sin( )) -3.6 / cos( ) / -2.09 /

(c) d /dt = 1.14d /dt = cos(sin( ))( + ) ^ (-3.97t - ) /

(d) d /dt = ñ((((0.33+ ) / ) / )+6.78t)

d /dt = sin( + ( -0.26) / (t+2.04) + 8.94 )

(e) d /dt = ñ (0.33+ / ) / ( +6.78t)d /dt = sin( + ( -0.27) / (t+2.04) + 8.94)

(f) d /dt = ñ (3.08/2t cos( ) +3.89t+t)d /dt = sin( + ( +t) / (t+2.04) + 8.94 )

(g) d /dt =d /dt = -5.78 sin(sin( )) -

(h) d /dt =d /dt = -1.54 sin(0.58 )/0.38

(i) d /dt =d /dt = sin( -13.37 / 7.85 / t ) / 0.38

(j) d /dt = + t - td /dt = sin( -16.3 / 7.85 / sin( ) ) / 0.38

(k) d /dt =d /dt = sin( -16.26 / 8.3 / sin( ) ) / 0.21

(l) d /dt =d /dt = sin(t-t) ñ 9.79987sin( )

x/(x + 1) 当作一个可能方程构造块来提供为了确定分划,自动探测,和修剪的重要性,三个控制实验也对比这些系统的运行。第一次控制实验使用用随机测试而不是自动探测推荐的那些(试验阶段

Fig. 2. 针对单一合成时,典型的不成功和成功的实验摆(with ± 0.08 noise).(a–f) 在没有分划,自动探测和修剪情况下六个成功的系统被算法生成以及靠这些模型产生的相图(g–l)从其它三个方法都被使用的典型实验中生成的成功模型的行 为,

以及相应的相图

Bongard and Lipson PNAS | June 12, 2007 | vol. 104 | no. 24 | 9945

Page 5: Pnas07 bongard

平均客

观误

110 控制+P分划+自动探测+S修剪

010

−110

-210

-310

摆 Lotka−Volterra High Degree 乳糖操纵子

Fig. 3. 当四中算法应用到四种合成系统产生的平均模型误差(± 0.08的噪声)每种算法变体被使用时的 30个独立的实验每个实验最好的模型被输出 最佳的模型作为一个针对观测噪声系统的行为最小误差的模型被确定。该模型通过实现未见的没有噪音行为被计算出,存在客观误差 这样,一个模型,实现正确的方程结构和参数值应该达到零目标错误。[物理系统中客观误差不能被计算出, 就像没有噪声的行为不存在。客观误差是只用来确定对合成系统算法的变体的相对性能.]每个块报道这些最佳模型的平均客观误差阴影表示算法的变体 (深灰色,没有分区,自动探测,或修剪;灰色的,只有分区;浅灰色、分区和自动探测;白色、分区、自动探测和代码段)误差表明一个单位的标准偏差

算法被禁用,没有显示:此报道算法都足以说明展示趋势,当不同的应用,与之相比跨度经过了只有两个,一个,或者没有分量使用时,其表明使用所有三个变量显著提升了建模。

Fig.2报告表现出对合成摆系统的传统测试,其没有使用三个算法增强(分别为 Fig.2 a–f 和 g–l)。可以看出,分划允许该算法能够快速找出第一个变量,自动探测使最初地结构性错误模型失效(Fig.2g)。最后,修剪算法产生一个紧凑可读的结果(图。2l),而对照实验从来不能做到。

分划可以提高建模,因为没有它,在一个方程中错误会引起其它相关变量行为的差异,很难定位候选模型中的错误所在。众所周知,模型分量之间的相互依存关系阻碍基于梯度的搜索方法(32–34)。分划允许不准确的定位,但它也使搜索更容易处理:没有分划时,模型空间变量的数目成倍增加;使用分划时,空间以多项式速率增长(见材料和方法的简单的推导)。最后,分区允许为每个变量的并行建模,进一步加快建模过程。

自动探测也提高了建模,因为它已被证明是理论上在其它域中最佳(35)地和实际有用的(18、19)。更具体地说,当应用于动力系统测试之间的边界定位吸引盆地(分岔地区)系统(SI Fig.5 a,b 和 d),和/或引发极端行为(SI Fig.5c),从而加快建模。伴随者观察后,越来越精确的模型将有分叉区域接近系统,所以行为中的不符合会给出一组初始条件,其被选定在这些区域内。同时,通过推荐来自同一区域的相似测试,在这些测试中该算法能有效地消除可观测噪声。同样,在很高维的系统中(表 1 和 SI Fig.5c ), 当一个或两个变量被设定接近他们的最大允许值时,系统只在变量内产生变化。;

自动探测往往集中在该区域内的测试。

物理系统的应用完整的算法和控制算法也被应用到两个物理系统中:一个描述兔子和猞猁数量变化(表 2)生态数据组和物理摆

的三个变体(SI Fig. 6 a–f a 和 Table 3).算法被应用于两系统,且只有一个变化:当应用到摆时,除了标准的代数三角函数也被提供。与模拟系统不同,从建模开始前,时间序列数据开始被收集。对于生态系统的应用,采用历史数据(36);物理摆采用的是手动生成数据。对于生态系统的应用,自动探测完整算法要求从 91年开始 10年跨度的数据:该算法优化了一系列初始条件,然后在数据集中查找种群最符合这些条件的年;然后接下来的十年的数据被里提取并用于进一步的建模。该控制算

法和完整的算法是一样的,除了它被给出 10年跨度逐步覆盖的整个数据集:第一个周期提供从 1845年到 1855年的系统行为,第二个周期提供从 1855年到 1865 行为,以此类推。对于物理摆,根据自动探测算法要求这组数据的 0.2-s跨度。该控

制算法和完整的算法是一样的,除了它被给出了逐步覆盖整个数据集的 0.2s 的跨度,第一个周期提供从 1845年到 1855年的系统行为,第二个周期提供从 1855年到 1865 行为,以此类推

从 0.2到 0.4s 的行为,等。结果表明,对于物理系统,模型往往汇聚了常见的结构;推导出的参数值的平均和标准偏差值表明了对这些实际系统算法的一致性(平均82试验聚集在一个共同的结构,请参阅表 2和表 3)。虽然,在生态数据集中(Table 2),由于数据集均匀采样,控制算法产生更好的参数的一致性,结果表明,当应用到两个旋转摆(Table 3):许多实验产生线性近似值[例如 μsin(60+)将更逼近μ(60+)],该控制算法比完整的算法具有更低的结构一致性,。这可以解释观察,自动探测更倾向于表现出非线性行为的时间跨度,如摆从摇摆到旋转动作的过渡(SI Fig. 6e).这个观测可以被测试,应用该算法(包括使用和不使用自动探测)。到一个展示线性和增长的非线性行为的系统,如在一个无序运动的过渡期间按照假设,自动探测将专注于在过渡行为时数据收集,因此捕捉系统的非线性比没有不用自动探测要好。两个系统,常见的模型结构被发现具有解释性价值。在生态

数据集的情况下,模型表明被捕食种群以恒定速率增加,但随着种群增加增加率减少,这是种群增长的一个共同特征(37);捕食者增加后,被捕食种群数量下降;捕食者的减少与他们数量成正比;及它们的增长正比与被捕食者的数量。虽然系统所提出的模型是线性的(可能因为修剪的简化效果),与通常用于解释这些现象更复杂的非线性模型(38)相比,推导出方程提取的意义是类似的。

在摆的例子中,在基础系统变化的响应中,此算法产生一致和精确的模型。此外,第一个系统的剩余函数(表 3)相当一致,因为它们是速度的函数,而速度可以显示建模系统的固有摩擦

9946 | www.pnas.org/cgi/doi/10.1073/pnas.0609476104 Bongard and Lipson

Page 6: Pnas07 bongard

COM

PUTE

R SC

IEN

CAP

PLIE

D BI

OLO

GIC

AL S

CIEN

CES

可扩展性。为了测试可扩展性,没有分划的完整算法和控制算法都进行了 18次随机非线性系统建模, 每次的变量逐次递增。就像在 SI Table 4中总结的, 大多数情况下推荐的算法产生最精确的方案 (平均来讲, 测试的 71%, 见 SI Table4) 对于上升为 6 个变量的所有系统。相比之下,不分划时,只有 18个系统中的 1 个总是被测出。作为比较,在文献(8–16)中报道的结构识别方法至今没有对超过四个变量系统建模。对于有四个变量系统,只报道了一个线性模型(4)。

讨论这里我们揭示了一个统一计算框架,用来自动推理非线性、耦合动力学系统的模型,其从直接系统集成或噪声时间序列数据得来,有可能是很高维的。实际系统中的数据可以验证了该方法,其该系统的基本方程是未知的:此方法得到的一系列具有相似结构的模型,往往是该类系统目前已知的最佳模型。该方法已被证明,具有可扩展性和多变量、存在相互依存关系和非线性的系统可以成功被识别。

不考虑上述框架的可扩展性,考虑的状态变量的的数量级仍然小于生物学系统应用成百上千个成分在今后的工作中,现有的识别分离成分的方法,如聚类和关联的方法,来识别蛋白的一个子集在一个特定的代谢途径(39),其可以补充这一框架的工作。这样,使用现有的方法,分量将首先被推测出;然后,该框架可以连续很撑而不是静态建模

。最近发现生物体的基因表达在不同条件下(41)表现为拓扑变化,此发现表明未来需要这种动态建模范式。我们的研究结果表明,该方法可用于自动生成详细的、可测试这种复杂多变的系统的假设:不仅仅是推理大型生物网络相关变量之间的相关性,(42、43)如基因调控和代谢网络,而是还会通过积极的合成来自动推断含有周期性依赖和反馈回路的因果关系。事实上,积极的合成已被确认为一种新的理解生物系统方式(44)。这样的自动化可以证明在我们在模型越来越复杂的耦合现象中的探索是很关键的,其被定义为 21世纪最前沿的科学(27、28)。

材料和方法在这里本次论证中,我们介绍了三个主要的工具用来实现耦合、非线性动力系统自动化推理和系统的描述更加容易处理,。

分划。分划放宽了一个模型必须由所有变量一次产生方程组的约束。没有分划,我们使用标准的第四阶 RungeKutta 方法(45)来整合两种隐藏的系统和候选模型的微分方程。在分划时,当变量 i 的微分方程被合成时,其他变量的引用被真实数据替换。关于分划的更多详细信息,请参阅 SI Text。

建模。候选模型作为一组互相联系的分量的普通模型

(1) (k)分别被表示。

这个推荐的框架的当前的局限是,它限制了所有变量都可见的系统。不过,未来该框架还可以应用到一些变量是不可观测的系统中。在运用分划时,不受不可观测变量的系统成分可能逐渐建立成正确的模型,而被不可观测变量影响的模型误差变量将保持高位。这种二分法能自动检测并利用来定位看不见的系统成分的影响:变量可以被分类,依据为模型误差随时间的变化。其他技术可以用来澄清不能观测的系统成分和分离出来的变量之间的关系。

用在这项工作的离散时间序列可能会导致合成模型结构的偏差。在今后的工作中,模型的分量可以被扩大来生成镇对时间序列数据的不同子集模型,并且其是以不同的频率采样的。这些模型的共性可以被集成到一个单一模型,并确保最终模型对系统数据采样频率不敏感。

最后,通过不断丢弃旧的结果替换成新数据,该系统通过不断地生成其最近状态模型,可以跟踪不断变化的系统。采用从混沌建模技术在不断追踪系统,但不是显式地建模(40),则可以扩展框架,来不断地合成混沌系统的显式模型,这期间持续地改变内部结构。

结论。对自动建模要求不懂增长的领域之一就有生物系统生物网络往往是相互深度联系,分划算法被证明的单独为网络分量建模的能力在应用到更大的变量不是都可见的网络时,其价值可能会不断攀升。此外,不断请求新数据而不是在预测的数据中摘取的能力开辟了新的道路

微分方程 dx1/dt = fm , ..., dxk/dt = fm .方程是编码为嵌套的层次结构符号表达式。然后一个模型组成一组嵌套表达式,其中的每个表达式 i编码方程描述变量 i 随时间的变化。在执行期间,用户提供了一组可能的运算符和操作数,其用来组成方程组在第一个时间步骤的整合中,每个方程中的每个操作数被设置为初始条件,然后每个表达式被计算出。每个表达式的返回值将表示该变量计算出的导数。在随后的时间步长李,变量将被更新为他们当前值,并且表达式进行重新计算。候选模型的输出,将被设置为 k个变量的时间序列。使用分划时,候选模型只会编码成单个表达式,来确定当前变量的演化受到调查。

到目前为止,模型对所有从系统观察的时间序列进行了优化因此,在此算法的建模阶段中(图。 1b),每个模型被集成 p次,其中 p 大小是系统提供过初始条件,以及由此产生的行为的次数。模型误差就变成了所有的观测时间序列的平均误差。我们用 hill 模型的 climber(46)对模型进行优化。在计算之后

每个模型历经了随机干扰。如果被干扰的模型预测比原有的模式错误要少,与原始模型会被代替为被干扰的模型;否则,干扰模型被丢弃。为了创建干扰,在表达式中被随机选择的一个节点被一个新的随机运算符或操作数替代。如果该节点从一个操作数的运算符变成了一个算子,根据任意的算子新的随机表达式会被创建。如果是从算子变成了一个操作数,提供老运算符的参数表达式被删除。如果操作数是一个变量,一个新的变量 在 范 围 [x1, ... , xk]均匀地选择出。 如果操作数为常数,此常常数是均匀地在浮点数范围[10、10],以 0.5 的概率选择,或者一个从一个高斯分布(µ =常数值;o = |0.5 常数值|)选择的较小的值会添加到当前常量。

Bongard and Lipson PNAS | June 12, 2007 | vol. 104 | no. 24 | 9947

Page 7: Pnas07 bongard

在第一个建模阶段期间,五种随机模型经过 1000次迭代被创建和优化。在第二个及后续期间的前期阶段,模型优化后,估计已经开始,。如果分划被使用,优化过程进入 k时期:在每一个时期,描述第 i 个变量的五个候选方程被迭代优化 1000此/k。5k的方程组将被重新打包成五个每个都由由k的方程组组成的候选模型。在最后的建模通过阶段,这个含有最低错误的模型被输出。

自动探测。自动探测背后关键的概念是,一个隐藏系统的大多数含有信息的干扰一项因素,该因素造成该系统候选模型的预测中不符合的最显著因素(35)。如 Fig.1 所示,建模交替测试:新的初始条件('测试'')被优化,然后最好的一个或是直接在系统执行来获取新的行为(Fig.1a)或用于从时间序列数据选择一个新的样本。在每个测试阶段初(Fig.1c),五个测试的一组被随机地创建,其中的初始条件被均匀从用户指定的范围中选择。然后将每个测试计算出当前模型组可引起方差的大小。计算质量测试详情,请参阅 SI Text我们使用 hill 模型的 climber对测试进行优化。在所有五个

候选测试的质量被计算出之后,每个候选测试是随机扰动。如果被干扰测试在模型预测中比原来的测试创造了更多的不符合,将换原始的测试替换成干扰测试。为了创建扰动,一个变量被随机选择,和少量的高斯噪声(µ=当前值;o=|0.5*当前值|)一起添加到其初始值。这个过程持续 100次迭代,此时提供最高质量的测试提供给系统,或者用于定位一个新的样本数据集。

修剪使用修剪时,在合成期间,通过的每个运算符和操作数的最小值和最大值被记录下来。在创建的扰动模型中,一个子表达式可能会被一个常量值替代,该常量值由节点先前产生的最小值最大值的区间范围均匀选取

1. Hosmer DW, Lemeshow S (2000) Applied Logistic Regression (Wiley, New York), 2nd Ed.

2. Draper NR, Smith H (1998) Applied Regression Analysis (Wiley, New York), 3rd Ed.

3. Ljung L (1999) System Identification:Theory for the User (Prentice–Hall, Englewood Cliffs, NJ).

4. McKinney BA, Crowe JE, Voss HU, Crooke PS, Barney N, Moore JH (2006) Phys Rev E 73:021912(1–7).

5. Hornik K, Stinchcombe M, White H (1989) Neural Networks 2:359–366.6. Park J, Sandberg IW (1991) Neural Comput 3:246–257.7. Baram Y, Yaniv RE, Luz K (2004) J Machine Learning Res 5:255–291.8. Andrew HW (1996) Proceedings of the Second International

Conference on Adaptive Computing in Engineering Design and Control (University of Plymouth, Plymouth, UK), pp 57–62.

9. Angeline PJ, Fogel DB (1997) Proc SPIE 3077:409–417.10.Gray GJ, Murray-Smith DJ, Li Y, Sharman KC, Weinbrenner T (1998)

Control Eng Practice6:1341–1352.

11.Koza JR, Bennett FH, Andre D, Keane MA (1999) Genetic Programming III:Darwinian Invention and Problem Solving (Morgan Kaufmann, San Francisco).

12.Tan KC, Li Y (2002) Control Eng Practice 10:673–684.13.Winkler S, Affenzeller M, Wagner S (2005) Systems Sci 31:5–14.14.Chen Y, Yang J, Zhang Y, Dong J (2005) Int J Comput Cognit 3:19–26.15.Rodriguez-V´azquez K, Fleming PJ (2005) Knowledge Inf Syst 8:235–

256.16.Gray GJ, Weinbrenner T, Murray-Smith DJ, Li Y, Sharman KC (1997)

Second International Conference on Genetic Algorithms in Engineering Systems:Innovations and Applications (Inst of Electrical Engineers, London), pp 308–313.

17.King RD, Whelan KE, Jones FM, Reiser PG, Bryant CH, Muggleton SH, Kell DB, Oliver SG (2004) Nature 427:247–252.

18.Bongard J, Lipson H (2005) J Machine Learning Res 6:1651–1678.19.Bongard J, Lipson H (2005) Trans Evol Comput 9:361–384.20.Bongard J, Zykov V, Lipson H (2006) Science 314:1118–1121.21.Kirkpatrick S, Gelatt Jr CD, Vecchi MP (1983) Science 220:671–680.22.Koza J (1992) Genetic Programming:On the Programming of Computers

by Means of Natural Selection (MIT Press, Cambridge, MA).23.Goldberg D (1989) Genetic Algorithms in Search, Optimization and

Machine Learning(Addison–Wesley, Boston).

24.Foster JA (2001) Nat Rev Genet 2:428–436.

。这允许一个小小表达式值的改变,同时减少表达式的大小。

隐藏系统。单摆系统描述了一个单一的、非驱动的,不减弱的摆,它的旋转不受限制。LotkaVolterra 方程组是一个特殊描述种间对公共资源的竞争的例子(38)。高维的合成系统随机被生成,其限制为每个变量只包含单一项,每个项必须有 20维。方程生成,直到发现是数值稳定的一对。在大肠杆菌中描述乳糖代谢乳糖操纵子系统改编自 Keener and Sneyd(47)。该系统的初始条件假定了 β-半乳糖苷酶的起始浓度,别乳糖和乳糖可以在外部设置,以及由此产生的行为可以被观察:Dekel 和 Alon(48)描述了这样一个实验装置。事实上,现代系统生物学技术越来越能够自动改变系统和测量基因组规模上的动态输出(49)。捕食者–被捕食者的数据,产生模型见 Table 2,表明了雪兔和加拿大猞猁种群数量的变化,(此数据由哈德逊湾公司收集。)57.2×5.1厘米物理摆,臂重 438克,和其角度被 Novotechnik RFC 4800–600手臂和钟摆的基础之间非接触式旋转传感器记录。合成系统见 SI Table 4其遵循 LotkaVolterra竞争方程方程的一般形式被生成(38)。在每个系统中的每个方程被随机生成,其包含两项,是第二次,每项被范围[-3,3]的一个整数参数化。每个系统的数值稳定性都被测试。

Documentation, code, executables, and data from this paper are avail- able at http://ccsl.mae.cornell.edu.我们感谢埃与 Erez Dekel,Uri Alon 有益的讨论。This work was supported in part by the Keck Future Initiative Grant NAKFI/SIG07 and by National Science Foun- dation Grant CMMI 0547376.This research was conducted using the resources of the Cornell Theory Center, which receives funding from Cornell University, New York State, federal agencies, foundations, and corporate partners.

25.de Hoon M, Imoto S, Kobayashi K, Ogasawara N, Miyano S (2003) Proc Pac Symp On Biocomp (World Scientific, Teaneck, NJ), pp 17–28.

26.Milo R, Itzkovitz S, Kashtan N, Levitt R, Shen-Orr S, Ayzenshtat I, Sheffer M, Alon U (2004) Science 303:1538–1542.

27.Wilson EO (1998) Consilience (Knopf, New York).28.Strogatz S (2001) Nature 410:268–276.29.Schaffer CA (1993) Machine Learning 10:153–178.30.Caruana R, Lawrence S, Giles L (2001) Advances in Neural

Information Processing Systems (MIT Press, Cambridge, MA), pp 402–408.

31.Banzhaf W, Langdon WB (2002) Genetic Programming and Evolvable Machines 3:81–91.

32.Kauffman SA (1994) The Origins of Order (Oxford Univ Press, New York).33.Weinberger ED (1991) Phys Rev A 44:6399–6413.34.Campos PRA, Adami C, Wilke CO (2002) Physica A 304:178–189.35.Seung HS, Opper M, Sompolinsky H (1992) in Proceedings of the Fifth

Workshop on Computational Learning Theory (ACM Press, New York), pp 287–294.

36.Odum EP (1953) Fundamentals of Ecology (Saunders, Philadelphia).37.May RM (1976) Nature 261:459–467.38.Volterra V (1926) J Cons Perm Int Exp Mer 3:3–51.39.Getz G, Levine E, Domany E (2000) Proc Natl Acad Sci USA 97:12079–

12084.40.Danforth CM, Yorke JA (2006) Phys Rev Lett 96:144102(1–7).41.Luscombe NM, Babu MM, Yu H, Snyder M, Teichmann SA, Gerstein M

(2004) Nature431:308–312.

42. Husmeier D (2003) Bioinformatics 19:2271–2282.43.Friedman N, Linial M, Nachman I, Pe’er D (2000) J Comp Biol 7:601–620.44.Wikswo JP, Prokop A, Baudenbacher F, Cliffel D, Csukas B, Velkovsky M

(2006) IEE Proc Nanobiotechnol 153:81–101.45.Butcher JC (1987) The Numerical Analysis of Ordinary Differential

Equations:Runge-Kutta and General Linear Methods (Wiley-Interscience, New York).

46.Russell SJ, Norvig P (1995) Artificial Intelligence:A Modern Approach (Prentice–Hall, Upper Saddle River, NJ).

47.Keener J, Sneyd J (1998) Mathematical Physiology (Springer, New York).48.Dekel E, Alon U (2005) Nature 436:588–592.49.Alon U (2006) An Introduction to Systems Biology:Design Principles of Biological Circuits

(Chapman & Hall/CRC, Boca Raton, FL).

9948 | www.pnas.org/cgi/doi/10.1073/pnas.0609476104 Bongard and Lipson