ARTICLE · 1240782
AI能从运行数据里找公式:PySR给环保工程师的新工具
蘑菇头逛 GitHub:从开发者分享软件的GitHub出发,寻找环保行业值得应用的技术。本期项目是PySR,下面按实际用途展开。
PySR 能从数值数据中搜索可读的数学公式。对环保工程师,它提供了一种新办法:把流量、压差、能耗等记录变成可以逐项检查的候选关系,用来研究设备特性、比较工况,或为现有计算模型补一段经验公式。
找的不只是系数,还有公式形状
平时做回归,我们往往先定一个形式:直线、二次曲线,或者某种已知经验式,再让软件求系数。PySR 做的是符号回归,它还能在允许的运算规则内,搜索变量应该怎样组合。
给它流量和压差,它可以尝试加、减、乘、除等结构,并比较候选公式的误差与复杂度。工程师得到的成果,可以是一组长短不同、精度不同的表达式,从中挑选值得进一步验证的关系。
它属于机器学习工具,使用 Python 接口,核心搜索引擎由 Julia 实现。这里的 AI 不靠聊天模型凭语言猜一个公式,而是让候选表达式在数据上接受计算和比较。这正是我觉得它值得环保人留意的地方。

定义测点、记录流量与压差,是研究管段特性关系的起点。
用一段管路看清楚这个问题
先设一个透明的作者算例:某固定管段在水温、阀位等条件不变的测试范围内,假定压降与流量平方成正比。这里的三组数是按已知关系构造的,没有运行 PySR,也不是现场实测。
设流量 Q=10 m³/h 时,管段压降 ΔP=5 kPa;Q=20 m³/h 时,ΔP=20 kPa;Q=30 m³/h 时,ΔP=45 kPa。流量变成2倍和3倍,对应压降分别变成4倍和9倍。
让 q=Q÷(10 m³/h),p=ΔP÷(5 kPa),两者都成了无量纲比值。三组数据就是 q=1、2、3,p=1、4、9。已知构造关系可以简写成 p=q²。
符号回归要回答的问题是:只看输入与输出,在规定的算子和复杂度内,能否找到这种简洁关系?真实数据带着测量误差,候选公式可能不止一个,系数也未必刚好整齐;没有跑过搜索,就不能说工具已经找到了它。
这个小例子也提醒我:压降—流量关系与泵的扬程—流量曲线是不同对象。测点究竟跨过哪段管路,仪表记录的是什么,必须先定义清楚,不能把两个压力表随手一减就当成同一种设备特性。

已知假设关系构造的作者算例,用于说明公式搜索问题,未运行 PySR。
把工程知识写进搜索范围
搜索空间越宽,可能组合出的表达式越多,计算开销和筛选难度也会增加。我会先用少量有物理意义的变量,限制可用算子与公式长度。没有明显理由时,不急着把三角函数和多层指数都加进去。
PySR 支持配置算子、表达式复杂度、结构约束与损失函数,也能提供变量单位,并对量纲不一致的表达式施加惩罚。这些能力给工程经验留出了位置,但参数怎样设置,仍需要使用者决定。
量纲检查很有价值。例如浓度与电耗不能直接相加;两个浓度相除则可能形成无量纲比值。可量纲相容,也只通过了一道检查:一个式子是否符合变化方向、是否会在正常范围突然发散,还得逐项看。
若使用归一化数据,更要保存基准值。前面 p=q² 换回工程单位时,需要带回10 m³/h和5 kPa这两个基准。把公式抄进 Excel 却丢了换算关系,得到的数字再漂亮也没有意义。
最低误差,不等于最有用的公式
对于真实运行记录,我会先按时间和工况留出独立验证数据,再进行搜索。不能把连续几分钟的相似记录随机打散,让训练和验证都见过几乎同一段运行状态,然后据此认为公式已经可靠。
候选式还要与简单基准比较:原来的经验公式、线性或二次回归,谁在同一批未参与搜索的数据上表现更好?如果一个很长的表达式只改善一点误差,却难以解释和维护,简单模型可能更适合交付。
我还会观察残差,也就是预测与实际的差值。若差值总随水温、阀门状态或运行时长改变,可能遗漏了变量或状态。此时继续增加公式长度,未必比补齐工况信息更有效。
同样,相关关系不能直接成为操作指令。历史上进水负荷高时加药多,不代表沿着拟合公式增加药量就能提高处理效果。操作人员原有的控制动作已经混在数据里,需要另行设计验证。
从一段可解释的设备特性开始
我会优先选流量与固定管段压降这类边界较清楚的问题。准备数据时,同时保留测点、单位、时间、仪表状态、水温和阀位等信息,排查错位与坏点,区分稳定运行和启停过程。
交给搜索的目标也要小:先比较几种工况下的候选关系,检查公式能否在保留数据上成立。换管径、改阀位或超出原流量范围后,要重新验证,不能默认旧公式继续适用。
例如同样流量下,某次实测压降明显偏离参考关系,就可以安排核对仪表、阀位和管路状态。公式先提供值得检查的差异,不替代堵塞诊断;数据范围与状态标签越清楚,比较才越有用。
一份有用的交付物,应同时包含公式、变量定义、单位换算、适用范围、验证误差和版本。它可以进入分析表或计算工具,帮助工程师反复核算;是否进入自动控制,还需要另外的工程验证。
我看重 PySR,是因为它让数据分析多了一种可以讨论的成果:一条能读、能算、能质疑的表达式。真正值得带回现场的,是公式与工况、测量和验证一起留下来的那套依据。















































































