


















第一次接触"控制论"这个词,是大学《信息论》课本的脚注里。当时只觉得那是个挺浪漫的术语——cybernetics,希腊语 κυβερνήτης,意思是"舵手"。多年后我才意识到,这门学科真正想讲的是一件极其朴素的事: 任何系统要保持稳定,都得有人(或某个机制)拿着舵,根据偏差不断微调方向 。维纳在 1948 年把它正式立成一门学问,覆盖机械、生物、电子、社会——但它本质上只关心几件事:目标、感知、反馈、修正、稳态。
最近我重新捡起这个概念,是因为发现 AI 编码冒出来的"Harness Engineering"思潮,几乎一比一地在重演控制论的老故事——只不过这次,舵柄被装在了 LLM Agent 上。
仔细想想,软件工程从一开始就是控制论的拥趸:
但它们也都有一个共同的边界—— 只能处理"机械可判定"的属性 。
至于真正决定一个系统死活的问题:
2017 年那篇 Attention 论文之后发生的事,本质上是把"以前只有人能做的事"变成了一种可以被批量生产的能力。LLM 第一次让两件事同时成立:
我把 Harness Engineering 拆成三个层次来理解,每一层都对应控制论里的一个经典概念。
OpenAI 团队公开过他们的内部 Agent loop 大概是这样的:
人类输入意图(setpoint)
│
▼
Agent 生成代码(actuator)
│
▼
Lint / 测试 / 架构守卫执行(sensor)
│
▼
错误信号回流给 Agent(feedback)
│
▼
Agent 自我修正(control)
│
└──── 直到所有信号都收敛 ────┐
│
▼
收敛到目标
这是教科书式的负反馈控制系统。如果把里面的"Agent"换成"温度调节阀",把"测试"换成"温度计",这就是恒温器。
人类的角色变了。我们不再"敲代码"——我们 设计这个闭环 :决定哪些东西算 setpoint,决定哪些信号是 sensor,决定误差容忍度,决定什么时候要把系统拉出来人工干预。
控制论里有个反直觉的真相: 减少自由度,比增加智能更能让系统稳定 。瓦特调速器之所以能工作,不是因为它"很聪明",而是因为它的机械结构物理上就只允许"转速高 → 阀门关小"这一种因果链。
Harness Engineering 把这个原则贯彻到了极致—— 让 AI 不可能越界,而不是请它别越界 :
控制论给这种设计的术语是: 用环境约束替代行为约束(constraint shaping) 。结果就是系统的稳态空间被人为收窄,AI 再"聪明"也只能在这个空间里跳舞。
这是 Harness Engineering 最有意思的地方,也是真正把它从"高级 CI"提升到"自组织系统"的地方。
控制论里的二阶(second-order cybernetics)讲的是: 不仅控制系统行为,还控制控制系统的规则 。Heinz von Foerster 的话糙理不糙——"一阶控制让系统稳定,二阶控制让系统进化"。
落到 Harness Engineering 上:
一阶 二阶 Agent 通过测试 人类把"Agent 上次犯的错"沉淀成一条新规则 Lint 检查代码风格 出现新的反模式 → 加新的 Lint rule CI 阻断坏 PR 后台有 Agent 定期扫描技术债、自动修复 测试套件验证行为 测试套件本身根据新发现的边界条件自动扩张
这条二阶回路的存在意味着: 这个系统每被使用一次,它的"自我控制能力"就强一点 。它不会因为暴露了更多场景而变得脆弱,反而会因为新场景被编码进规则而变得更稳。
控制论里有一个专门的词形容这种性质—— 反脆弱(antifragile) 。一个反脆弱系统接受冲击后不是恢复原状,是变得比之前更强。
控制论的图腾,就是瓦特那个带重锤的飞球调速器。在它出现之前,蒸汽机旁边必须站一个工人,盯着压力表手动开关阀门。这个工人很重要,他的判断决定了机器的死活。
调速器装上之后,这个工人没有失业——但他的工作变了。他不再拧阀门,他开始 设计更好的调速器 :怎么让响应更灵敏,怎么避免共振,怎么在高负载下不失稳。
设计调速器的工人,没有再回去拧阀门。不是因为他们做不到,而是因为这件事已经没有意义。
Harness Engineering 想做的事,本质上是同样的位移:
让程序员从"逐行写代码的工人"变成"设计代码生产闭环的控制系统工程师"。
这不是浪漫化叙事。这是控制论一个世纪以来反复发生的剧本—— 任何一个领域,只要它的关键反馈回路能被自动化闭合,从业者的工作就会上移一层 。
Harness Engineering 是把"写代码"从一门 手工艺 ,重新定义成一项 控制系统设计 ——它不再追问"你能写多快",而是追问"你设计的这个反馈系统,能不能在没有你看着的情况下持续收敛到正确的状态"。
这件事不是 AI 时代的新发明。维纳在 1948 年就讲完了。我们只是花了 70 多年,等到了一种感知/执行能力足够强的"执行器",才让控制论第一次有机会进入软件工程的高层语义闭环。
所以,下次再有人问"AI 取代程序员了吗"——可以反问一句:
瓦特调速器普及之后,那个拧阀门的工人,算不算被取代了?
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。