Complex dynamical systems are notoriously difficult to model because some degrees of freedom (e.g., small scales) may be computationally unresolvable or are incompletely understood, yet they are dynamically important. For example, the small scales of cloud dynamics and droplet formation are crucial for controlling climate, yet are unresolvable in global climate models. Semi-empirical closure models for the effects of unresolved degrees of freedom often exist and encode important domain-specific knowledge. Building on such closure models and correcting them through learning the structural errors can be an effective way of fusing data with domain knowledge. Here we describe a general approach, principles, and algorithms for learning about structural errors. Key to our approach is to include structural error models inside the models of complex systems, for example, in closure models for unresolved scales. The structural errors then map, usually nonlinearly, to observable data. As a result, however, mismatches between model output and data are only indirectly informative about structural errors, due to a lack of labeled pairs of inputs and outputs of structural error models. Additionally, derivatives of the model may not exist or be readily available. We discuss how structural error models can be learned from indirect data with derivative-free Kalman inversion algorithms and variants, how sparsity constraints enforce a "do no harm" principle, and various ways of modeling structural errors. We also discuss the merits of using non-local and/or stochastic error models. In addition, we demonstrate how data assimilation techniques can assist the learning about structural errors in non-ergodic systems. The concepts and algorithms are illustrated in two numerical examples based on the Lorenz-96 system and a human glucose-insulin model.
翻译:复杂动力系统因其部分自由度(如小尺度过程)可能计算上不可解析或未被完全理解,却具有重要动力学意义而 notoriously 难以建模。例如,云动力学和液滴形成的小尺度过程对气候调控至关重要,但在全球气候模型中无法解析。针对未解析自由度影响的半经验闭合模型通常已存在,并编码了重要的领域特定知识。基于此类闭合模型,通过学习结构误差对其进行修正,可成为融合数据与领域知识的有效途径。本文阐述了一种学习结构误差的通用方法、原理与算法。我们方法的关键在于将结构误差模型内置于复杂系统模型中,例如置于未解析尺度的闭合模型中。这些结构误差通常以非线性方式映射到可观测数据。然而,由于缺乏结构误差模型的输入-输出标签对,模型输出与数据之间的失配仅能间接反映结构误差信息。此外,模型的导数可能不存在或不易获取。我们讨论了如何利用无导数卡尔曼反演算法及其变体从间接数据中学习结构误差模型,稀疏性约束如何强化“不造成损害”原则,以及结构误差建模的多种方式。我们还探讨了使用非局部和/或随机误差模型的优势。此外,我们展示了数据同化技术如何辅助在非遍历系统中学习结构误差。相关概念与算法通过基于Lorenz-96系统和人体葡萄糖-胰岛素模型的两个数值算例进行了说明。