“计算力学”的版本间的差异
(→模式重构机器) |
(→实例) |
||
第214行: | 第214行: | ||
5. 如果模型复杂度收敛,意味着重建好了一个合适的ϵ-机器,程序退出。 | 5. 如果模型复杂度收敛,意味着重建好了一个合适的ϵ-机器,程序退出。 | ||
− | == | + | ==混沌动力学实例== |
− | + | 接下来将采用具体的方法来演示如何将计算力学的理论付诸实践。要演示的是混沌动力学中的逻辑斯谛映射(logistic map),特别是其周期倍增的混沌路径。用于重建模型的数据流来自逻辑斯谛映射的轨迹,当它以吸引子上的初始条件启动时,可以让观察到的过程是平稳的。轨迹是通过迭代映射<math>x_{n+1}=f(x_n)</math>生成的,迭代函数为<math>f(x) = rx(1-x)</math>,其中非线性参数<math>\begin{matrix}r&\in&[0,4]\end{matrix}</math>,初始条件<math>x_0\in[0,1]</math>,迭代函数的最大值出现在<math>x_c = \frac12</math>。通过二元分割观察轨迹<math>\mathbf{x}=x_0x_1x_2x_3\ldots </math> ,将其转换为离散序列<math>\mathcal{P}=\{x_n\in[0,x_c)\Rightarrow s=0,x_n\in[x_c,1]\Rightarrow s=1\} </math>,这种划分是“生成”的,这意味着足够长的二进制序列来自任意小的初始条件间隔。因此,可以使用粗粒化的观测来研究迭代函数<math>\mathcal{P} </math>中的信息处理。 | |
− | == | ||
− | |||
− | [[ | ||
− | |||
− | === | ||
− | |||
− | |||
==参考文献== | ==参考文献== |
2024年9月11日 (三) 17:40的版本
计算力学(Computational Mechanics)是一套数学框架,试图从历史序列的形态(Morph)系综中寻找、总结规律,并预测未来。“寻找、总结规律、预测未来”属于“智能活动”的一种,在许许多多的“智能活动”背后又有着潜在的更一般的规律。潜在的一般的规律,往往来源于对微观态进行粗粒化形成宏观态的因果涌现。计算力学从信息论出发,采用计算的视角,定义出模式,因果态,各态之间的转换等重要概念,并最终将“智能”抽象为支持通用计算的ϵ-机器。ϵ-机器被有关学者从理论上证明,有着宏观态上的信息封闭性和计算封闭性,可以展现出极大的预测能力和极小的复杂性。ϵ-机器有序对的因果态对所有长度未来[math]\displaystyle{ \overset{\to}{S} }[/math]而言还有着强同质性(Strict Homogeneity of Causal States)。
问题背景
自然和社会现象
复杂系统的涌现问题由来已久[1][2][3][4]。最吸引人的和使人迷惑的自然模式是那些在高度结构化的联合行为随着时间涌现于简单子系统的交互。鸟群以步调一致地形式飞行,鱼儿在没有领头带领以连贯的序列群组流转并突然共同转向的方式游动。蚊群形成复杂的社会,生存继承自特异化的社会分工。几个世纪前,木星大气中五彩斑斓的混沌运动形成了被称之为“大红斑”的巨大漩涡,至少已存在二百到三百五十年,期间还在不断地改变颜色和形状。
这些观察构成直观的涌现定义,为了让它更可用,得有人说明“那些东西”是什么,并且它“新”在哪里。否则,表述就不够详细,甚至有些空洞。普通的机制能引导多样现象的涌现吗?同时代的科学和数学能提供什么语言去精确地描绘这些系统中涌现的不同组织?
现象的层次递进
我们取智能体对环境的适应度为指标,可将绝大多数智能活动整理出层次性,数理和逻辑,从而纳入科学研究[5]对应的数学框架,进而使其和环境共同演化。在计算力学的宇宙模型里,现象(Phenomenon)提升为主体的内在涌现,相对来说需要经历三个层次:
- 直觉涌现(Intuitive emergence)。系统中已经发生相对智能体来说之前没有建立内部结构的现象,也是“新颖的”。例子有环境中偶然会出现地震;
- 斑图涌现(Pattern emergence)。智能体捕捉到这个新的现象,并能从动力系统的斑图构型(Pattern formation)中识别这种特定现象。例子有对于地震这种现象在观察者看来是一种地壳滑移;
- 内在涌现(Intrinsic emergence)。具有识别和建立现象对应结构的智能体,组成新的环境,使得系统出现新的秩序,就达到了内在涌现层次。例子有主体通过收集地震数据,能分析出环境的一些结构信息,从而更新自己的计算模型;
只有达到了层次3,现象才进入内在涌现环节,融入到环境并得到保持,否则只是随机扰动。
智能体对三个层次的涌现,使用相应量化方法和计算机理论模型,以及机载的实际计算设备,进行计算模型建立。理论上已经证明图灵机具有通用图灵机的计算能力,且与元胞自动机的计算能力等价。这些计算能力包括算术方法和数理逻辑。
使用适当的假设和划分方法,在科学领域也称为映射,在复杂科学里一种特殊的映射可以称为粗粒化,能够获取一定程度上计算的下列特性:
- 封闭(完备)性。
- 一致性。
智能体一旦完成计算的封闭(完备)性和一致性的建立,那么对现象的分析就达到了基本的科学研究阶段,能建立相应的科学理论体系,进入动力系统的范畴。而如果要形成计算视角下的内在涌现,则还要面向复杂问题,建立多层次的理论。
多尺度复杂性
实际的科研课题,往往具有以下特征和性质:
这些课题转换为计算问题,则带有相当的复杂度,可以先辅以主体定性的视角,再加以专门的计算复杂度理论加以研究,可以得出非常好的性质,定量工作也需保持在线。计算复杂度理论属于复杂系统理论一个分支,在复杂系统当中,对应的研究还有复杂网络、超图等相关领域,各个领域对所研究的课题都准备了相应的定性分析和量化方法。计算力学在大量借助这些成熟的科学方法的基础上,还进行了相应的优化方法确定。
复杂度量化
度规升维
计算复杂度也可认为是算术复杂度,理论上可以简化到二值计算。二值是符号里的0和1,是计算学所用的基本单位。通过组合0和1可以形成复杂的数学和逻辑,以及加入编解码器形成字符串。计算力学将经典复杂科学理论的部分核心“将自然过程二分为秩序和噪声”吸收了进来,也是相关文献[2]提到的创新方式。即我们可以利用复杂科学的粗粒化方法,将隐藏在自然现象中的过程压缩到极简的秩序(order,符号0)和随机(randomness,符号1),然后制定相应的运算法则,就能完成一种二值计算系统的建立,有兴趣的读者可以参阅布尔代数的相关内容。
在人工环境中使用二分法时,原始的随机过程,经过一定程度的累积,依赖于具体的粗粒化方法,有可能会呈现出一定的分布,导致计算复杂性的出现。这种计算复杂性经过抽象和形式化,使用不同的实体和规则,能形成不同的复杂度度量方法。但终究我们要具有将度规升维的能力,尊重现实,才能找到更佳的方案。
柯式复杂度
柯式复杂度是大家普遍公认的复杂度度量方法,在Jean-Paul Delahaye和Hector Zenil对复杂系统量化方法研究的工作中[6],认为最天然的计算设备的模型需要有一定的表达能力,并定义一个字符串s对于通用图灵机U的柯尔莫哥洛夫-蔡汀(Kolmogorov-Chaitin)复杂度[math]\displaystyle{ K_{u}(s) }[/math]为输出该字符串s的最短程序p的二进制长度。
[math]\displaystyle{ K_{u}(s) = min\{\lvert p \rvert, U(p) = s \} }[/math]
下标u是对应通用图灵机的代号,U是运行程序p的通用图灵机的实体。
为提高通用性,忽略各图灵机之间的差异,将柯氏复杂度定义进一步定义为:
[math]\displaystyle{ K(x) := C_m(x) = min\{ \lvert \lang M,w \rang \rvert: 通用计算机M在输入w时停机并输出x \} }[/math]
按照前式标准化为:
[math]\displaystyle{ K(x) := C_m(x) = min\{ \lvert \lang M,w \rang \rvert: M(w) = x \} }[/math]
这里的w等于前式的p,即输出x的程序源代码字符串。x等于前式的s,即待输出的字符串。
在文献[6]中确定柯式复杂度的定义时,使用了两种不同的计算模型:
- 确定性图灵机(deterministic Turing machines (TM))。能够模拟神经元,一般以串行方式运行代码。
- 一维元胞自动机(CA)。以并行方式同时更新单个时间步上的所有元胞。
做了计算性能的比较,实验结果显示两者有着很强的相互关联,而且两者均可将输出字符串构成支持反转和补余操作的对称群。
柯式复杂度的主要注解包括因为停机问题而导致的不可计算性,以及它高度依赖编程语言的选择。虽然柯式复杂度有上述问题,但仍能揭示计算和模拟的本质。不同的计算模型形成了复杂度的分水岭,又来到常量E的一处浅滩:
定理:总能找到一个常量E,对于任意的字符串s,两种计算模型U1和U2的柯式复杂度满足:
[math]\displaystyle{ \lvert K_{U_1}(s) - K_{U_2}(s) \rvert \lt E }[/math]
即,在误差条件E以内,有程序P能让计算模型U1模拟U2,智能体能借助程序P沿着复杂度的沟壑通向2050。
统计复杂度
定义及符号[math]\displaystyle{ C_{μ} }[/math]
下标μ依赖于测度和分布,同柯式复杂度[math]\displaystyle{ C_{u} }[/math]的下标u含义不完全相同,对应的计算模型M的分类和分布,也依赖于具体的理论实现。
统计复杂度可用于线性系统的复杂性量化,也可用于非线性动态系统中复杂系统因果涌现复杂性的量化。香农熵基于概率分布,但对于确定性混沌却有些不足,统计复杂度则能量化宏观态上出现的确定性混沌。
统计复杂度(statistical complexity)是复杂系统深度的量化方式之一,用[math]\displaystyle{ C_{\mu} }[/math]符号来表示。其中μ依赖于测度和分布。跟统计力学中的量化理论有关,基于测度系统的定义。在部分混沌物理学的文献中,也被记作α。
在1989年《Inferring Statistical Complexity》[1]这篇文献里,复杂度的阶次符号为α,在2001年文献[4]中的符号为μ,这里我们统一使用μ。
μ-阶图复杂度
μ-阶图复杂度即为μ-阶图的概率算术复杂度,[math]\displaystyle{ C_{μ=0}=\log \lvert \mathbf{V} \rvert }[/math]。其中[math]\displaystyle{ \mathbf{V} }[/math]为μ-阶图的顶点集合。
在集智俱乐部的《因果涌现读书会》因果几何上,会对连续系统的因果涌现做更详细的介绍,有兴趣的可以参考下。
0-阶图复杂度([math]\displaystyle{ C_{μ=0} }[/math])和蔡汀-柯尔莫哥洛夫复杂度不同,0-阶图复杂度带有概率分布且依赖带有随机整数寄存器的图灵机。
μ-阶图复杂度([math]\displaystyle{ C_{μ} }[/math])是区别于信息论的量化复杂度的方法,后者基于维度[math]\displaystyle{ d_μ }[/math]和熵[math]\displaystyle{ h_μ }[/math]。
拓扑复杂度
当μ-阶图复杂度的μ为零时,μ-阶图复杂度也称为拓扑复杂度。由ϵ-机器的特征值给出。
统计复杂度
μ-阶图复杂度的μ = 1时,复杂度的量化方式为统计复杂度,带有热力学的“高温限制”。这里的统计复杂度也是1-阶图复杂度,即为香农熵。由ϵ-机器的物征向量给出。 统计复杂度(statistical complexity)是复杂系统深度的量化方式之一,用[math]\displaystyle{ C_{\mu} }[/math]符号来表示。这里的对应于因果涌现量化(有效信息EI),统计复杂度[math]\displaystyle{ C_{\mu} }[/math]越小,有效信息EI越大。
统计复杂度的下界,从周期行为和频段耦合中得出,是带二阶项的相位转换。
复杂度目标
经过演化,因果链能形成形式上的闭环,这里闭环在后文的因果态里,是指因果态在所有有效态中,统计复杂度最小等特征和属性。在管理学中,类似于使用组织行为学的知识,构建特定的反应链,从而完成特定目标。
几乎所有自然当中的时间相关系统,经过复杂度的划分和优化,再通过计算力学对结构的检验和测量,能展现出多尺度的涌现属性和特征。
因果态
因果态的定义
在计算力学中,宇宙被视为一个确定性动力系统(DS),即使规则和初始条件是确定的,随着规模的增长,系统也会变得极为复杂。由于系统内的智能体(Agent)的计算资源有限,无法测量和预测其内外部环境的所有行为,这些不能预测的部分对智能体来说就相当于是随机扰动,所以智能体被视为一个随机动力系统(SDS)。智能体试图构建和维持一个对其环境具有最大预测能力的内部模型,以提高其自身对环境的适应性和生存能力。
智能体对外部环境的测量精度一般都是有限的,测量结果只能描述外部环境的“模糊状态”,智能体需要对测量结果粗粒化后才能识别“模糊状态”中的模式。若将测量对象过去未来的所有信息视为限制在离散值、离散时间上的稳定随机过程,用双无限序列可数集合[math]\displaystyle{ \overleftrightarrow{S}=⋯s_{-2} s_{-1} s_0 s_1 s_2… }[/math]表示,则测量结果为[math]\displaystyle{ \overleftrightarrow{S} }[/math]中任意随机变量的序列。基于时间[math]\displaystyle{ t }[/math]可以将[math]\displaystyle{ \overleftrightarrow{S} }[/math]分为单侧前向序列[math]\displaystyle{ s_t^→=s_t s_{t+1} s_{t+2} s_{t+3}… }[/math]和单侧后向序列[math]\displaystyle{ s_t^←=⋯s_{t-3} s_{t-2} s_{t-1} s_t }[/math]两个部分,所有可能的未来序列[math]\displaystyle{ s_t^→ }[/math]形成的集合记作[math]\displaystyle{ \overrightarrow{S} }[/math],所有可能的历史序列[math]\displaystyle{ \overleftarrow{s_t} }[/math]形成的集合记作[math]\displaystyle{ \overleftarrow{S} }[/math]。
按照一定的划分方法( partitioni)将[math]\displaystyle{ \overset{\leftarrow}{S} }[/math]划分为若干个互斥且全面的子集,那么每个子集就是一个有效态(effective state),这些有效态的集合记作[math]\displaystyle{ \mathcal{R} }[/math],划分方法可以是任意函数映射[math]\displaystyle{ η }[/math],用公式表示为[math]\displaystyle{ \eta{:}\overleftarrow{S}\mapsto\mathcal{R} }[/math],也可以将有效态理解为将[math]\displaystyle{ \overset{\leftarrow}{S} }[/math]中的某段序列粗粒化后得到的宏观态。
上图为某种划分方法的示意图,将集合[math]\displaystyle{ \overset{\leftarrow}{S} }[/math]划分为某类有效态[math]\displaystyle{ \mathcal{R}=\{\mathcal{R}_i:i=1,2,3,4\} }[/math],值得注意的是,[math]\displaystyle{ \mathcal{R}_i }[/math]不必形成紧致集,也可以是康托集或其他更特殊的结构,上图为了示意清楚才这样画的。
用来划分集合[math]\displaystyle{ \overset{\leftarrow}{S} }[/math]的映射可以有很多种,若某一种划分方法能够在预测能力最强的同时消耗的计算资源最少,那么它肯定是最优的划分。为了找到这种最优的划分,需要定义因果态的概念,因果态就是智能体对测量结果进行处理后,根据其内部模型(尤其是状态结构)识别出的模式,并且这种模式不随时间发生变化。形式化定义为:对于任意的时间点[math]\displaystyle{ t }[/math] 和[math]\displaystyle{ t^{'} }[/math],给定过去状态[math]\displaystyle{ s_t^← }[/math]的条件下,未来状态[math]\displaystyle{ s^→ }[/math]的分布与给定过去状态[math]\displaystyle{ s_{t^{'}}^← }[/math]的条件下,未来状态[math]\displaystyle{ s^→ }[/math]的分布相同。那么[math]\displaystyle{ t }[/math] 和[math]\displaystyle{ t^{'} }[/math]的关系就记作[math]\displaystyle{ t∼t^{'} }[/math],“[math]\displaystyle{ ∼ }[/math] ” 表示由等效未来状态所引起的等价关系,可以用公式表示为:[math]\displaystyle{ t∼t^{'} \triangleq Pr(s^→ |s_t^← )=Pr(s^→ |s_{t^{'}}^← ) }[/math],若[math]\displaystyle{ t }[/math] 和[math]\displaystyle{ t^{'} }[/math]对未来状态预测的分布相同,则定义他们具有相同的因果态(casual state)。
如上图所示,在[math]\displaystyle{ t_9 }[/math]和[math]\displaystyle{ t_{13} }[/math]时刻分别对应一个状态,这两个状态处于相同的因果态,因为对未来的预测具有相同的分布;在[math]\displaystyle{ t_{11} }[/math]时刻的状态,则与[math]\displaystyle{ t_9 }[/math]和[math]\displaystyle{ t_{13} }[/math]时刻处于不同的因果态。
因果态的主要性质
因果态是一种特殊的划分方法,它的划分函数记作[math]\displaystyle{ \epsilon }[/math],公式为[math]\displaystyle{ \epsilon{:}\overleftarrow{S}\mapsto2^{\overset{\leftarrow}{S}} }[/math],其中[math]\displaystyle{ 2^{\overset{\leftarrow}{S}} }[/math]是[math]\displaystyle{ \overleftarrow{S} }[/math]的幂集。根据因果态的定义,则存在如下关系:[math]\displaystyle{ \epsilon(\stackrel{\leftarrow}{s})\equiv\{\stackrel{\leftarrow}{s}^{\prime}|\mathrm{P}(\stackrel{\rightarrow}{S}=\stackrel{\rightarrow}{s}\mid\stackrel{\leftarrow}{S}=\stackrel{\leftarrow}{s})=\mathrm{P}(\stackrel{\rightarrow}{S}=\stackrel{\rightarrow}{s}\mid\stackrel{\leftarrow}{S}=\stackrel{\leftarrow}{s}^{\prime}),\mathrm{for~all~}\overrightarrow{s}\in\overrightarrow{S},\stackrel{\leftarrow}{s}^{\prime}\in\stackrel{\leftarrow}{S}\} }[/math],其中[math]\displaystyle{ \mathcal{S} }[/math]为因果态的集合,[math]\displaystyle{ \stackrel{\leftarrow}{s} }[/math]为历史序列的随机变量,[math]\displaystyle{ \mathcal{S} }[/math]是[math]\displaystyle{ \mathcal{R} }[/math]的一种最优形式,因为[math]\displaystyle{ \mathcal{S} }[/math]的如下性质。
(1)最大预测性————因果态集合[math]\displaystyle{ \mathcal{S} }[/math]在有效态集合[math]\displaystyle{ \mathcal{R} }[/math]的所有类型中,它的预测能力最强:对于所有有效态[math]\displaystyle{ \mathcal{R} }[/math]和正整数[math]\displaystyle{ L }[/math],都有[math]\displaystyle{ H[\stackrel{\rightarrow}{S}^L|\mathcal{R}]\geq H[\stackrel{\rightarrow}{S}^L|\mathcal{S}] }[/math],[math]\displaystyle{ \stackrel{\rightarrow}{S}^L }[/math]为[math]\displaystyle{ L }[/math]个长度的未来序列集合,[math]\displaystyle{ H[\stackrel{\rightarrow}{S}^L|\mathcal{R}] }[/math]和[math]\displaystyle{ H[\stackrel{\rightarrow}{S}^L|\mathcal{S}] }[/math]是[math]\displaystyle{ \stackrel{\rightarrow}{S}^L }[/math]的条件熵。它的证明过程如下:
[math]\displaystyle{ \epsilon(\stackrel{\leftarrow}{s})\equiv\{\stackrel{\leftarrow}{s}^{\prime}|\mathrm{P}(\stackrel{\rightarrow}{S}=\stackrel{\rightarrow}{s}\mid\stackrel{\leftarrow}{S}=\stackrel{\leftarrow}{s})=\mathrm{P}(\stackrel{\rightarrow}{S}=\stackrel{\rightarrow}{s}\mid\stackrel{\leftarrow}{S}=\stackrel{\leftarrow}{s}^{\prime}) }[/math]
[math]\displaystyle{ \mathrm{P}(\stackrel{\rightarrow}{S}=\stackrel{\rightarrow}{s} |\mathcal{S}=\epsilon(\stackrel{\leftarrow}{s}))=\mathrm{P}(\stackrel{\rightarrow}{S}=\stackrel{\rightarrow}{s}\mid\stackrel{\leftarrow}{S}=\stackrel{\leftarrow}{s}) }[/math]
[math]\displaystyle{ H[\stackrel{\rightarrow}{S}^L|\mathcal{S}]~=~H[\stackrel{\rightarrow}{S}^L|~\stackrel{\leftarrow}{S}] }[/math]
[math]\displaystyle{ H[\stackrel{\to}{S}^L|\mathcal{R}] \geq H[\stackrel{\to}{S}^L|\stackrel{\leftarrow}{S}] }[/math]
[math]\displaystyle{ H[\stackrel{\rightarrow}{S}^L|\mathcal{R}]\geq H[\stackrel{\rightarrow}{S}^L|\mathcal{S}] }[/math]
(2)最小复杂度————在相同预测能力的前提下,因果态集合[math]\displaystyle{ \mathcal{S} }[/math]在有效态集合[math]\displaystyle{ \mathcal{R} }[/math]的所有类型中,它的统计复杂度最小:设[math]\displaystyle{ \hat{\mathcal{R}} }[/math]为满足性质(1)中不等式等号成立的有效态,则对于所有的[math]\displaystyle{ \hat{\mathcal{R}} }[/math],都有[math]\displaystyle{ C_\mu(\hat{\mathcal{R}})\geq C_\mu(\mathcal{S}) }[/math]。
上文中已经介绍了柯式复杂度和统计复杂度的基本概念,如果[math]\displaystyle{ s^L }[/math]表示对过程的测量结果的前[math]\displaystyle{ L }[/math]个序列,那么它们之间的关系可以近似的表示为:
[math]\displaystyle{ K(s^L )≈C_μ (s^L )+h_μ L }[/math]
如果在已确定描述语言(程序)的情况下,柯式复杂度[math]\displaystyle{ K(s^L ) }[/math]可以理解为描述[math]\displaystyle{ s^L }[/math]所用的总信息量。
[math]\displaystyle{ h_μ }[/math]为香农熵率,是信息不确定性程度的归一化指标,信息的不确定性越高,香农熵率越大。[math]\displaystyle{ h_μ }[/math]在这里可以理解为误差率, 则[math]\displaystyle{ h_μ L }[/math]为允许损失的随机信息量。
统计复杂度[math]\displaystyle{ C_μ (s^L ) }[/math]可以理解为允许存在误差率[math]\displaystyle{ h_μ }[/math]的情况下,描述[math]\displaystyle{ s^L }[/math]所用的最少信息量。
结合本条性质,求[math]\displaystyle{ C_μ (s^L ) }[/math]就是求[math]\displaystyle{ s^L }[/math]对应的因果态的统计复杂度,也就是说想要计算[math]\displaystyle{ C_μ (s^L ) }[/math]需要先找到[math]\displaystyle{ s^L }[/math]对应的因果态。
那么公式可以解释为:序列[math]\displaystyle{ s^L }[/math]的总信息量≈被归纳的因果态信息量+放弃归纳的随机信息量
(3)最小随机性————在相同预测能力的前提下,因果态集合[math]\displaystyle{ \mathcal{S} }[/math]在有效态集合[math]\displaystyle{ \mathcal{R} }[/math]的所有类型中,它的随机性最小:设[math]\displaystyle{ \hat{\mathcal{R}} }[/math]和[math]\displaystyle{ \hat{\mathcal{R}}^{\prime} }[/math]为满足性质(1)中不等式等号成立的有效态,则对于所有的[math]\displaystyle{ \hat{\mathcal{R}} }[/math]和[math]\displaystyle{ \hat{\mathcal{R}}^{\prime} }[/math],都有[math]\displaystyle{ H[\hat{\mathcal{R}}^{\prime}|\hat{\mathcal{R}}]\geq H[\mathcal{S}^{\prime}|\mathcal{S}] }[/math],其中[math]\displaystyle{ \hat{\mathcal{R}}^{\prime} }[/math]和[math]\displaystyle{ \mathcal{S}^{\prime} }[/math]分别是该过程的下一时刻有效态和下一时刻因果态。
用互信息的角度去理解的话,上式等价于[math]\displaystyle{ I(\mathcal{S}^{\prime};\mathcal{S})\geq I(\hat{\mathcal{R}}^{\prime};\hat{\mathcal{R}}) }[/math],可以理解为任意有效态对它自己下一时刻的互信息中,其中因果态的互信息最大,若不考虑Do干预,因果态和因果涌现理论中最大化有效信息所得到的宏观态意义相同。
若想更深入的理解因果态的性质可以阅读James Crutchfield的两篇论文[1][7],里面有因果态更多的性质和对应的形式化证明过程。
模式重构机器
智能体如何处理测量结果才能识别其中因果态呢?为了解决这个问题,计算力学建立了名为模式重构机器(ϵ-machine)的模型,它可以重构测量结果中的序列,去除随机噪音后识别其中的因果态。模式重构机器的大小可以用统计复杂度衡量,它的形式化定义可以用公式表示为[math]\displaystyle{ M=(\mathcal{S},T) }[/math],其中[math]\displaystyle{ T }[/math]为状态到状态映射的集合,满足[math]\displaystyle{ S_{(t+1)}=TS_t }[/math],[math]\displaystyle{ S }[/math]为集合[math]\displaystyle{ \mathcal{S} }[/math]中的任意一个因果态,它类似于一个粗粒化后的宏观动力学。[math]\displaystyle{ T_{ij}^{\left ( s \right )} }[/math]为两个因果态[math]\displaystyle{ S_i }[/math]和[math]\displaystyle{ S_j }[/math]之间的因果态转移概率映射,[math]\displaystyle{ T_{ij}^{(s)}\equiv\mathrm{P}(\mathcal{S}'=\mathcal{S}_j,\stackrel{\to}{S}^1=s|\mathcal{S}=\mathcal{S}_i) }[/math]。每个[math]\displaystyle{ \mathcal{S} }[/math]都有[math]\displaystyle{ \epsilon }[/math]函数和[math]\displaystyle{ T }[/math]函数,这两个函数可以组成一个有序对[math]\displaystyle{ \left \{ \epsilon,T \right \} }[/math],通过学习[math]\displaystyle{ \epsilon }[/math]和[math]\displaystyle{ T }[/math]函数可以提高机器识别因果态的准确度。
多层模式重构机器
模型创新
由于智能体的计算资源有限,若测量结果中的数据量超过模型的处理极限时,就需要对原有模型进行创新(重构模型)以保障在计算资源不变的情况下智能体对外界的有效预测,创新方法主要是通过寻找原有模型状态组之间的相似性,在原有模型识别到的因果态中抽象出更高层级的因果态组。下表中列举了一种模型创新方法:
上表为因果时间序列建模层级,展示了可能的前四个层级,但这个过程是开放式的,可以不止四个层级。每个层级根据其模型类别定义。模型本身由状态(圆圈或方块)和转移(标记箭头)组成。每个模型都有一个独特的起始状态,由一个内嵌的圆圈表示。数据流本身是最低层级。通过将序列测量分组为重复子序列,从数据流中构建出深度为的树。下一个层级的模型,即具有状态和转移的有限自动机(FA),通过将树节点分组从树中重构。所示的最后一个层级,字符串生成机器(PM),通过将FA状态分组并推断出操控寄存器A中字符串的生成规则来构建。
考虑一个由[math]\displaystyle{ m }[/math]个测量结果构成的数据流[math]\displaystyle{ s }[/math],如果它是周期性的,那么第0级(Level 0),即测量结果本身,它的表示方法依赖于[math]\displaystyle{ m }[/math]。在极限[math]\displaystyle{ m\to\infty }[/math]情况下,第0级会产生一个无穷大的表示。当然,第0级是最准确的数据模型,尽管它几乎没有任何帮助,几乎不值得被称为“模型”。相比之下,一个深度为[math]\displaystyle{ D }[/math]的树将给出一个有限表示,即使数据流的长度是无限的,只要数据流具有周期小于等于[math]\displaystyle{ D }[/math]。这个树有长度为[math]\displaystyle{ D }[/math]的路径,由数据流的周期给出。这些路径中的每一个都对应于[math]\displaystyle{ s }[/math]中重复模式的一个不同阶段。如果[math]\displaystyle{ s }[/math]是非周期性的,那么树模型类将不再是有限的,并且与[math]\displaystyle{ m }[/math]无关。 事实上,如果数据流具有正熵([math]\displaystyle{ h_μ>0 }[/math]),那么树的大小将呈指数增长,[math]\displaystyle{ \approx\left\|\mathcal{A}\right\|^{Dh_{\mu}} }[/math] ,因为[math]\displaystyle{ D }[/math]的增加解释了[math]\displaystyle{ s }[/math] 中长度[math]\displaystyle{ D }[/math]不断增加的子序列。粗略地说,如果数据流具有随时间衰减得足够快的相关性,则下一级(随机)有限自动机将给出有限表示。状态数[math]\displaystyle{ \left\|\mathrm{V}\right\| }[/math]表示数据流中的内存量,因此表示[math]\displaystyle{ s }[/math]中测量值之间存在相关性的典型时间。但也有可能第 2 级不提供有限表示。那么就需要另一个级别(第 3 级)。
模型重构算法
1. 在最低水平上,设定0级模型为描述数据本身,即M0=s1s2s3...;
2. 从更低模型重构模型Ml=Ml-1/~,其中~表示l级上的因果等价类;操作的含义是,在l-1级上被区别对待的状态在l级上可以被视为同一个因果态。此时S和T都更新了;
3. 收集更多的数据,增大序列长度L,得到更加精确的一系列模型Ml;
4. 如果随着L增大,模型的复杂度发散,即[math]\displaystyle{ \lVert M_l \rVert \to \infty }[/math],那么回到第二步,得到更高级模型Ml+1;
5. 如果模型复杂度收敛,意味着重建好了一个合适的ϵ-机器,程序退出。
混沌动力学实例
接下来将采用具体的方法来演示如何将计算力学的理论付诸实践。要演示的是混沌动力学中的逻辑斯谛映射(logistic map),特别是其周期倍增的混沌路径。用于重建模型的数据流来自逻辑斯谛映射的轨迹,当它以吸引子上的初始条件启动时,可以让观察到的过程是平稳的。轨迹是通过迭代映射[math]\displaystyle{ x_{n+1}=f(x_n) }[/math]生成的,迭代函数为[math]\displaystyle{ f(x) = rx(1-x) }[/math],其中非线性参数[math]\displaystyle{ \begin{matrix}r&\in&[0,4]\end{matrix} }[/math],初始条件[math]\displaystyle{ x_0\in[0,1] }[/math],迭代函数的最大值出现在[math]\displaystyle{ x_c = \frac12 }[/math]。通过二元分割观察轨迹[math]\displaystyle{ \mathbf{x}=x_0x_1x_2x_3\ldots }[/math] ,将其转换为离散序列[math]\displaystyle{ \mathcal{P}=\{x_n\in[0,x_c)\Rightarrow s=0,x_n\in[x_c,1]\Rightarrow s=1\} }[/math],这种划分是“生成”的,这意味着足够长的二进制序列来自任意小的初始条件间隔。因此,可以使用粗粒化的观测来研究迭代函数[math]\displaystyle{ \mathcal{P} }[/math]中的信息处理。
参考文献
- ↑ 1.0 1.1 1.2 James P. Crutchfield, Karl Young. Inferring Statistical Complexity. PHYSICAL REVIEW LETTERS, VOLUME 63, NUMBER 2. 10 JULY 1989
- ↑ 2.0 2.1 James P. Crutchfield. The Calculi of Emergence: Computation, Dynamics, and Induction. SFI 94-03-016. 1994
- ↑ James E. Hanson, James P. Crutchfield. Computational Mechanics of Cellular Automata: An Example. SFI WORKING PAPER: 1995-10-095
- ↑ 4.0 4.1 Cosma Rohilla Shalizi, James P. Crutchfield. Computational Mechanics: Pattern and Prediction, Structure and Simplicity. February 1, 2008
- ↑ Jochen Fromm. Types and Forms of Emergence. Distributed Systems Group, Electrical Engineering & Computer Science, Universität Kassel, Germany. Mon, 13 Jun 2005
- ↑ 6.0 6.1 Jean-Paul Delahaye, Hector Zenil. Towards a stable definition of Kolmogorov-Chaitin complexity. Fundamenta Informaticae XXI 1–15. 2008
- ↑ Shalizi, C. R.. & Crutchfield, J. P. (2001). Computational Mechanics: Pattern and Prediction, Structure and Simplicity,Journal of Statistical Physics,104(3/4).817-879.
编者推荐
计算力学和因果涌现关系密切,计算力学借鉴了因果涌现大量的概念、算法以及模型,并提出了因果态和统计复杂度概念和涌现的量化方法。下面是一些链接能够帮助读者更好的了解因果涌现的相关信息:
因果涌现读书会
读书会通过阅读前沿文献,加深我们对因果、涌现等概念的理解;聚焦于寻找因果与涌现、多尺度等概念相结合的研究方向;并探索复杂系统多尺度自动建模的研究方向。并探索复杂系统多尺度自动建模的研究方向。分享近期发展起来的一些理论与工具,包括因果涌现理论、机器学习驱动的重整化技术,以及自指动力学正在发展一套跨尺度的分析框架等。
涌现与因果的结合创造了因果涌现的概念。这是一套利用因果性来定量刻画涌现的理论体系,本季读书会通过阅读前沿文献,加深我们对因果、涌现等概念的理解;聚焦于寻找因果与涌现、多尺度等概念相结合的研究方向;并探索复杂系统多尺度自动建模的研究方向。第二季读书会更加集中在探讨因果科学与因果涌现之间的关系,以及对涌现进行定量刻画,聚焦于寻找因果与涌现、多尺度等概念相结合的研究方向;并探索复杂系统多尺度自动建模的研究方向。
因果涌现第三季的读书会中,将进一步围绕因果涌现的核心研究问题『因果涌现的定义』以及『因果涌现的辨识』来进行深入的学习和讨论,对 Erik Hoel 提出的 Causal Emergence,Causal Geometry 等因果涌现的核心理论进行深入的探讨和剖析,并且详细梳理其中涉及到的方法论,包括从动力学约简、隐空间动力学学习等其他研究领域中学习和借鉴相关的研究思路,最后探讨因果涌现的应用,包括基于生物网络、脑网络或者涌现探测等问题展开扩展,发掘更多的实际应用场景。