改进神经 PDE 求解器自动设计:引入领域特定语言

arXiv cs.AI 论文

摘要

本文介绍了 ADSL-PDE,一种领域特定语言,为神经 PDE 求解器的自动设计提供结构化搜索空间,通过抽象底层实现细节来提高搜索效率和优化稳定性。基于该表示构建的进化代理在 PDE 基准测试的前十次迭代中实现了超过 52% 的性能提升。

arXiv:2608.04384v1 公告类型:新 摘要:神经 PDE 求解器自动设计从根本上说是一个搜索空间表示问题。在不受限制的 Python 程序空间中,有效求解器构成了一个极其稀疏的子集:大多数候选程序在语法上不正确、语义上不兼容或数值上不稳定。因此,直接代码生成迫使 LLM 将大部分搜索能力花费在处理实现失败上,而不是推理求解器质量。ADSL-PDE 通过在求解器概念与可执行代码之间引入结构化搜索状态来应对这一挑战。它表示决定神经 PDE 求解器的功能决策(架构、物理约束、目标、采样和优化),同时抽象掉底层实现细节。一个确定性编译器将每个有效的搜索状态映射到可执行的求解器。实际上,ADSL-PDE 重塑了搜索空间:它移除了大片无效程序区域,增加了有意义候选的密度,并保留了发现前所未见设计所需的组合自由度。因此,求解器进化可以基于设计决策而非代码工件进行操作。基于这一表示,我们的进化代理利用经验反馈迭代地提出、评估和优化求解器搜索状态。在多个 PDE 基准测试中,ADSL-PDE 提高了搜索效率和优化稳定性,在前十次进化迭代中实现了超过 52% 的提升。这些结果表明了 LLM 驱动的自动设计的一个更广泛原则:有效的代理不仅需要更强的推理能力,更需要一种将探索集中在有效且关键决策上的搜索表示。
查看原文
查看缓存全文

缓存时间: 2026/08/06 07:42

# 使用领域专用语言改进神经 PDE 求解器的自动设计
来源:https://arxiv.org/html/2608.04384

###### 摘要

神经 PDE 求解器自动设计从根本上说是一个搜索空间表示问题。在无限制的 Python 程序空间中,有效求解器构成一个极其稀疏的子集:大多数候选程序在语法上不正确、语义上不兼容或数值上不稳定。因此,直接代码生成迫使 LLM 将大部分搜索能力花费在处理实现失败上,而不是用于推理求解器质量。ADSL-PDE 通过在求解器概念与可执行代码之间引入结构化搜索状态来解决这一挑战。它表示决定神经 PDE 求解器的功能决策——架构、物理约束、目标函数、采样和优化——同时抽象掉底层实现细节。一个确定性编译器将每个有效的搜索状态映射到一个可执行的求解器。实际上,ADSL-PDE 重新塑造了搜索空间:它消除了大片的无效程序区域,增加了有意义候选的密度,并保留了发现前所未见设计所需的组合自由度。因此,求解器进化可以作用于设计决策而非代码工件。基于这一表示,我们的进化代理使用经验反馈迭代地提出、评估和改进求解器搜索状态。在多个 PDE 基准测试中,ADSL-PDE 同时提高了搜索效率和优化稳定性,在前十次进化迭代内实现了超过 52% 的性能提升。这些结果表明了 LLM 驱动的自动设计的一个更广泛原则:有效的代理不仅需要更强的推理能力,还需要一种能够将探索集中在有效且关键的决策上的搜索表示。

## 引言

神经偏微分方程(PDE)求解器自动设计已成为 AI for Science 中的一个重要研究方向,旨在自动发现有效的求解器设计,同时减少对人类专业知识的依赖 (Raissi et al. 2019 (https://arxiv.org/html/2608.04384#bib.bib2); Lu et al. 2021 (https://arxiv.org/html/2608.04384#bib.bib3); Li et al. 2021 (https://arxiv.org/html/2608.04384#bib.bib4))。该任务涉及在包含网络架构、损失函数、采样策略和训练超参数的结构化设计空间中进行搜索。现有方法大致可分为基于搜索的方法和基于代理的方法。基于搜索的方法使用神经架构搜索、进化算法或贝叶斯优化,在预定义的搜索空间内识别求解器配置 (Elsken et al. 2019 (https://arxiv.org/html/2608.04384#bib.bib5); Zoph and Le 2017 (https://arxiv.org/html/2608.04384#bib.bib6); Real et al. 2019 (https://arxiv.org/html/2608.04384#bib.bib7))。尽管在某些情况下有效,但这些方法受限于人工设计搜索空间,可能无法涵盖神经 PDE 求解器设计的全部范围。基于代理的方法则利用大语言模型的推理和代码生成能力,迭代地生成和改进求解器 (Yao et al. 2023 (https://arxiv.org/html/2608.04384#bib.bib9); Schick et al. 2023 (https://arxiv.org/html/2608.04384#bib.bib10); Wu et al. 2025 (https://arxiv.org/html/2608.04384#bib.bib1))。然而,它们大多直接生成 Python 代码,要求代理同时处理求解器设计和实现细节,如框架语法、函数调用和依赖管理。这大大增加了搜索复杂性,并可能导致无效程序和不稳定的训练。因此,基于搜索的方法受限于过度受限的空间,而基于代理的方法则面临过大且实现负担过重的空间。两者都无法为可靠且灵活的神经 PDE 求解器自动设计提供有效的表示。

参照图注:图 1:使用 ADSL-PDE 重塑神经 PDE 求解器搜索空间。(a) ADSL-PDE 使用结构化模式表示求解器设计,将其映射到模块化后端,并限制代理只能编辑 ADSL 程序。(b) 这种语言设计消除了无限制 Python 空间中无生产效率的区域,产生了一个更小且更密集的有效求解器候选搜索空间。(c) 由此产生的结构化搜索空间能够实现更有效的优化;定量结果见表 3 (https://arxiv.org/html/2608.04384#Sx4.T3)。领域专用语言(DSL)长期以来一直被用于软件工程中,为专门任务提供紧凑且结构化的表示 (Fowler 2010 (https://arxiv.org/html/2608.04384#bib.bib11); Parr 1998 (https://arxiv.org/html/2608.04384#bib.bib12))。受此思想启发,我们提出了 ADSL-PDE(面向代理的 PDE 求解器进化领域专用语言,Agent-oriented Domain-Specific Language for PDE Solver Evolution),一种专为神经 PDE 求解器设计定制的 DSL,以解决现有基于代理的自动设计方法在表示上的局限性。如图 1 (https://arxiv.org/html/2608.04384#Sx1.F1) 所示,ADSL-PDE 的核心思想是重塑神经 PDE 求解器自动设计的搜索空间。与直接生成 Python 代码的方法不同,ADSL-PDE 将求解器设计语义与实现逻辑解耦。语言前端显式表示高层设计组件,包括网络架构、物理约束、损失公式和训练策略,而确定性后端将这些规范转换为可执行的求解器。这种设计允许代理通过修改结构化的设计脚本而非反复操作复杂且易出错的实现代码来进化神经 PDE 求解器。

我们的贡献总结如下:

(1) 我们将表示确定为神经 PDE 求解器自动设计中的关键瓶颈,并强调语言设计在实现高效基于代理的求解器进化中的关键作用。

(2) 我们提出了 ADSL-PDE,一种面向代理的领域专用语言和进化框架,将神经 PDE 求解器设计从无限制的代码生成转变为结构化的设计空间探索。

(3) 我们在多个 PDE 基准测试上验证了 ADSL-PDE,它持续提高了搜索效率,并在前十次进化迭代内实现了超过 52% 的性能提升。

参照图注:图 2:Darcy-Flow 和 Burgers 上的综合得分。带阴影带的实线曲线表示基于 DSL 的结果,而较浅的虚线曲线表示不使用 DSL 的结果。

## 相关工作

### 神经 PDE 求解器

神经 PDE 求解器广泛用于科学机器学习。物理信息神经网络将控制方程纳入训练目标 (Raissi et al. 2019 (https://arxiv.org/html/2608.04384#bib.bib2)),而 DeepONet、FNO 和 U-NO 等神经算子学习 PDE 输入与解之间的映射 (Lu et al. 2021 (https://arxiv.org/html/2608.04384#bib.bib3); Li et al. 2021 (https://arxiv.org/html/2608.04384#bib.bib4); Rahman et al. 2022 (https://arxiv.org/html/2608.04384#bib.bib16))。基于图的模拟器支持不规则网格和复杂几何 (Pfaff et al. 2021 (https://arxiv.org/html/2608.04384#bib.bib17)),PDEBench 和 PDENNEval 提供了对这些求解器家族的系统评估 (Takamoto et al. 2022 (https://arxiv.org/html/2608.04384#bib.bib18); Wei et al. 2024 (https://arxiv.org/html/2608.04384#bib.bib19))。然而,它们的性能强烈依赖于任务:PINN 对梯度不平衡、损失加权、采样和优化敏感 (Wang et al. 2021 (https://arxiv.org/html/2608.04384#bib.bib20), 2023a (https://arxiv.org/html/2608.04384#bib.bib21)),而神经算子和基于图的方法则依赖于不同的数据表示和归纳偏置。因此,我们专注于跨多个求解器家族表示和探索求解器设计,而不是提出另一个固定架构。

### 神经 PDE 求解器的自动设计

神经求解器设计已经通过架构搜索、进化算法和超参数优化实现自动化 (Elsken et al. 2019 (https://arxiv.org/html/2608.04384#bib.bib5); Zoph and Le 2017 (https://arxiv.org/html/2608.04384#bib.bib6); Real et al. 2019 (https://arxiv.org/html/2608.04384#bib.bib7))。PDE 特定方法如 Auto-PINN、NAS-PINN 和 PINN-DARTS 搜索预定义的 PINN 架构或训练空间 (Wang et al. 2023b (https://arxiv.org/html/2608.04384#bib.bib22); Wang and Zhong 2024 (https://arxiv.org/html/2608.04384#bib.bib23); Li and Chen 2025 (https://arxiv.org/html/2608.04384#bib.bib24))。更新的方法,包括 PINNsAgent、Lang-PINN 和 CodePDE,使用 LLM 生成或改进 PDE 求解器实现 (Wu et al. 2025 (https://arxiv.org/html/2608.04384#bib.bib1); He et al. 2025 (https://arxiv.org/html/2608.04384#bib.bib25); Li et al. 2025 (https://arxiv.org/html/2608.04384#bib.bib26))。AlphaEvolve 和 OpenEvolve 进一步将基于 LLM 的变异与自动评估和种群选择相结合 (Novikov et al. 2025 (https://arxiv.org/html/2608.04384#bib.bib27); Sharma 2025b (https://arxiv.org/html/2608.04384#bib.bib28))。传统搜索方法受限于预定义空间,而代码生成代理则必须同时处理求解器设计和底层实现。ADSL-PDE 则进化可被确定性验证和编译的结构化求解器规范。

### 面向代理的语言与结构化表示

领域专用语言为专门任务提供了紧凑的抽象 (Fowler 2010 (https://arxiv.org/html/2608.04384#bib.bib11)),最近的研究表明表示可以影响 LLM 推理和内部特征激活 (Yang et al. 2026 (https://arxiv.org/html/2608.04384#bib.bib29); Zhang et al. 2025 (https://arxiv.org/html/2608.04384#bib.bib30))。LMQL 引入了面向语言模型生成的约束和控制流 (Beurer-Kellner et al. 2023 (https://arxiv.org/html/2608.04384#bib.bib31)),而 PAL 和 Logic-LM 将自然语言问题转换为可执行的程序化或符号化形式 (Gao et al. 2023 (https://arxiv.org/html/2608.04384#bib.bib32); Pan et al. 2023 (https://arxiv.org/html/2608.04384#bib.bib33))。结构化代理接口包括用于语法感知代码操作的 CodeStruct (Kim et al. 2026 (https://arxiv.org/html/2608.04384#bib.bib34))、用于代理上下文构建的 ACDL (Peleg-Pelc et al. 2026 (https://arxiv.org/html/2608.04384#bib.bib35)),以及用于可执行驾驶场景的 Extended Scenic (Safa et al. 2026 (https://arxiv.org/html/2608.04384#bib.bib15))。与这些系统不同,ADSL-PDE 集成了领域语义、静态验证、后端编译、评估器反馈和迭代优化,使用一种 PDE 特定的语言作为神经求解器进化的表示空间和动作空间。

## 方法

### PDE 问题建模

我们考虑一个定义在时空域 Ω×[0,T] 上的通用 PDE 任务,目标解为 u:Ω×[0,T]→R^{d_u}。问题写成

N[u](x,t) = f(x,t),  (x,t)∈Ω×[0,T], (1)
B[u](x,t) = g(x,t),  (x,t)∈∂Ω×[0,T],
u(x,0) = u_0(x),  x∈Ω,

其中 N 和 B 分别表示微分算子和边界算子。

神经 PDE 求解器由一组耦合的设计选择决定,而不仅仅由其网络架构决定。我们将求解器设计表示为结构化模式

z = (T, F, A, C, S, R, E), (2)

其中 T 表示 PDE 任务,F 表示求解器家族,A 表示神经架构,C 表示物理约束,S 表示采样策略,R 表示训练方案,E 表示评估协议。给定任务 T,求解器自动设计搜索一个具有强验证性能的有效模式 z∈Z_T^valid。ADSL-PDE 在此模式层面表示和进化求解器设计,而不是直接在实现代码上进行搜索。

### ADSL-PDE 概述

ADSL-PDE 的框架由两个耦合的组件组成:语言系统和进化系统。语言系统定义了求解器设计的表达、检查和执行方式,而进化系统定义了 LLM 代理如何在反馈下修改求解器设计。

给定一个初始 DSL 程序,LLM 代理通过编辑求解器级别的字段而不是低级实现代码来提出修改后的程序。解析器将程序转换为类型化的中间表示(IR),其中求解器组件及其依赖关系被显式表示。然后验证器检查该 IR 是否满足任务级、求解器级和后端级约束。只有通过验证的候选程序才会被传递给编译器,编译器在确定性后端下实例化一个可执行的神经 PDE 求解器。

编译后的求解器首先通过一个快速训练阶段进行评估。有希望的候选被选择进行完整训练,而无效或表现不佳的候选被转换为结构化反馈。该反馈与代理编辑的 DSL 字段对齐,使得后续修改能够针对有意义的求解器设计决策,如损失加权、采样密度、架构深度、激活函数或优化调度。通过这种方式,ADSL-PDE 将基于代理的求解器进化从无限制的代码生成转变为可验证的求解器模式搜索。

表 1:与手动设计的函数学习和算子学习基线的比较。报告指标为 MSE 或相对 L_2 误差(取决于基准测试),数值越低表示性能越好。几何平均值基于可用条目计算,不包括缺失结果。每个基准测试的最佳结果以粗体显示。

### ADSL 语言设计

ADSL-PDE 被设计为一种面向代理的神经 PDE 求解器设计语言。其目的不仅仅是提供一种配置格式,而是重塑 LLM 代理的动作空间。ADSL 不允许代理生成任意 Python 代码,而是暴露一组紧凑的求解器级原语,这些原语对应于上述求解器模式的组件。一个完整的 ADSL 程序包含用于 PDE 任务、求解器家族、网络架构、物理约束、采样器、训练器、评估器和进化策略的类型化块。

前端语言遵循可控表达力的原则。它比 Python 更具限制性,因为代理不能定义任意函数、导入外部库、修改后端训练循环或绕过编译器。同时,它比固定的超参数表更具表达力,因为它允许代理修改有意义的 PDE 求解器决策,包括架构深度和宽度、激活函数、残差和边界损失权重、自适应采样策略、优化器选择、学习率调度和训练阶段。此外,在由专用超参数控制的频率下,代理可以通过组合来自高性能求解器的设计元素来合成新的求解器实现,并在验证后将其注册到后端代码库中。

相似文章

用于自动神经算子发现的智能体AI科学社区

arXiv cs.LG

本文提出了一种由虚拟实验室组成的智能体AI科学社区,能够自主发现用于偏微分方程问题的神经算子架构。通过引用经济体系下的LLM规划器、数值工作者和评审者,该系统生成了高精度的混合架构,结果表明算子家族之间不存在普遍优胜者。